//// [interfaceWithConstructSignaturesThatHidesBaseSignature2.ts]
interface Foo {
    new (): { a: number; b: number };
}

interface Derived extends Foo {
    new (): { a: number }; // constructors not checked for conformance like a call signature is
}

var d: Derived;
var r = new d();

//// [interfaceWithConstructSignaturesThatHidesBaseSignature2.js]
var d;
var r = new d();
