=== tests/cases/conformance/types/specifyingTypes/typeLiterals/functionLiteralForOverloads2.ts === // basic uses of function literals with constructor overloads class C { >C : C constructor(x: string); >x : string constructor(x: number); >x : number constructor(x) { } >x : any } class D { >D : D >T : T constructor(x: string); >x : string constructor(x: number); >x : number constructor(x) { } >x : any } var f: { >f : { new (x: string): C; new (x: number): C; } new(x: string): C; >x : string >C : C new(x: number): C; >x : number >C : C } = C; >C : typeof C var f2: { >f2 : { new (x: string): C; new (x: number): C; } new(x: string): C; >T : T >x : string >C : C new(x: number): C; >T : T >x : number >C : C } = C; >C : typeof C var f3: { >f3 : { new (x: string): D; new (x: number): D; } new(x: string): D; >T : T >x : string >D : D >T : T new(x: number): D; >T : T >x : number >D : D >T : T } = D; >D : typeof D