==== tests/cases/compiler/foo_1.ts (2 errors) ====
    import foo = require("./foo_0");
    var x = new foo(true); // Should error
                ~~~
!!! foo_1.ts(2,13): error TS2082: Supplied parameters do not match any signature of call target:
!!! 	Type 'Boolean' is missing property 'a' from type '{ a: string; b: number; }'.
                ~~~
!!! foo_1.ts(2,13): error TS2085: Could not select overload for 'new' expression.
    var y = new foo({a: "test", b: 42}); // Should be OK
    var z: number = y.test.b;
==== tests/cases/compiler/foo_0.ts (0 errors) ====
    class Foo<T extends {a: string; b:number;}>{
        test: T;
        constructor(x: T){}
    }
    
    export = Foo;
    