TypeScript/tests/baselines/reference/hidingConstructSignatures.types
2014-08-15 14:37:48 -07:00

60 lines
688 B
Plaintext

=== tests/cases/compiler/hidingConstructSignatures.ts ===
interface C {
>C : C
(a: string): string;
>a : string
}
interface D extends C {
>D : D
>C : C
new (a: string): number; // Should be ok
>a : string
}
interface E {
>E : E
new (a: string): {};
>a : string
}
interface F extends E {
>F : F
>E : E
new (a: string): string;
>a : string
}
var d: D;
>d : D
>D : D
d(""); // string
>d("") : string
>d : D
new d(""); // should be number
>new d("") : number
>d : D
var f: F;
>f : F
>F : F
new f(""); // string
>new f("") : string
>f : F
var e: E;
>e : E
>E : E
new e(""); // {}
>new e("") : {}
>e : E