//// [instantiatedBaseTypeConstraints.ts] interface Foo, C> { foo(bar: C): void; } class Bar implements Foo { foo(bar: string): void { } } //// [instantiatedBaseTypeConstraints.js] var Bar = (function () { function Bar() { } Bar.prototype.foo = function (bar) { }; return Bar; })();