tests/cases/compiler/propertySignatures.ts(2,13): error TS2300: Duplicate identifier 'a'. tests/cases/compiler/propertySignatures.ts(2,23): error TS2300: Duplicate identifier 'a'. tests/cases/compiler/propertySignatures.ts(14,12): error TS2304: Cannot find name 'foo'. ==== tests/cases/compiler/propertySignatures.ts (3 errors) ==== // Should be error - duplicate identifiers var foo1: { a:string; a: string; }; ~ !!! error TS2300: Duplicate identifier 'a'. ~ !!! error TS2300: Duplicate identifier 'a'. // Should be OK var foo2: { a; }; foo2.a = 2; foo2.a = "0"; // Should be error var foo3: { (): string; (): string; }; // Should be OK var foo4: { (): void; }; var test = foo(); ~~~ !!! error TS2304: Cannot find name 'foo'. // Should be OK var foo5: {();}; var test = foo5(); test.bar = 2;