function foo(bar:{a:number;}):number; function foo(bar:{a:string;}):string; function foo(bar:{a:any;}):any{ return bar } var x = foo({a:'foo'});