TypeScript/tests/baselines/reference/objectLitIndexerContextualType.js

40 lines
617 B
TypeScript

//// [objectLitIndexerContextualType.ts]
interface I {
[s: string]: (s: string) => number;
}
interface J {
[s: number]: (s: string) => number;
}
var x: I;
var y: J;
x = {
s: t => t * t, // Should error
};
x = {
0: t => t * t, // Should error
};
y = {
s: t => t * t, // Should not error
};
y = {
0: t => t * t, // Should error
};
//// [objectLitIndexerContextualType.js]
var x;
var y;
x = {
s: function (t) { return t * t; }
};
x = {
0: function (t) { return t * t; }
};
y = {
s: function (t) { return t * t; }
};
y = {
0: function (t) { return t * t; }
};