//// [subtypesOfAny.ts] // every type is a subtype of any, no errors expected interface I { [x: string]: any; foo: any; } interface I2 { [x: string]: any; foo: number; } interface I3 { [x: string]: any; foo: string; } interface I4 { [x: string]: any; foo: boolean; } interface I5 { [x: string]: any; foo: Date; } interface I6 { [x: string]: any; foo: RegExp; } interface I7 { [x: string]: any; foo: { bar: number }; } interface I8 { [x: string]: any; foo: number[]; } interface I9 { [x: string]: any; foo: I8; } class A { foo: number; } interface I10 { [x: string]: any; foo: A; } class A2 { foo: T; } interface I11 { [x: string]: any; foo: A2; } interface I12 { [x: string]: any; foo: (x) => number; } interface I13 { [x: string]: any; foo: (x:T) => T; } enum E { A } interface I14 { [x: string]: any; foo: E; } function f() { } module f { export var bar = 1; } interface I15 { [x: string]: any; foo: typeof f; } class c { baz: string } module c { export var bar = 1; } interface I16 { [x: string]: any; foo: typeof c; } interface I17 { [x: string]: any; foo: T; } interface I18 { [x: string]: any; foo: U; } //interface I18 { // [x: string]: any; // foo: U; //} interface I19 { [x: string]: any; foo: Object; } interface I20 { [x: string]: any; foo: {}; } //// [subtypesOfAny.js] // every type is a subtype of any, no errors expected var A = (function () { function A() { } return A; })(); var A2 = (function () { function A2() { } return A2; })(); var E; (function (E) { E[E["A"] = 0] = "A"; })(E || (E = {})); function f() { } var f; (function (f) { f.bar = 1; })(f || (f = {})); var c = (function () { function c() { } return c; })(); var c; (function (c) { c.bar = 1; })(c || (c = {}));