//// [rectype.ts] module M { interface I { (i:I):I; } export function f(p: I) { return f }; var i:I; f(i); f(f(i)); f((f(f(i)))); } //// [rectype.js] var M; (function (M) { function f(p) { return f; } M.f = f; ; var i; f(i); f(f(i)); f((f(f(i)))); })(M || (M = {}));