var foo:(a:{():number; (i:number):number; })=>number; foo = function(this: void, a:string){return 5};