exports[`test test.js 1`] = ` "class A { foo(): A { return this; } } class B extends A { foo(): B { return this; } } class C extends A {} var a: A = new B(); a.foo = function(): C { return new C(); } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ class A { foo(): A { return this; } } class B extends A { foo(): B { return this; } } class C extends A {} var a: A = new B(); a.foo = function(): C { return new C(); }; " `;