//// [augmentedTypeAssignmentCompatIndexSignature.ts] interface Foo { a } interface Bar { b } interface Object { [n: number]: Foo; } interface Function { [n: number]: Bar; } var o = {}; var f = () => { }; var v1: { [n: number]: Foo } = o; // Should be allowed var v2: { [n: number]: Bar } = f; // Should be allowed //// [augmentedTypeAssignmentCompatIndexSignature.js] var o = {}; var f = function () { }; var v1 = o; // Should be allowed var v2 = f; // Should be allowed