//// [intTypeCheck.ts] interface i1 { //Property Signatures p; p1?; p2?: string; p3(); p4? (); p5? (): void; p6(pa1): void; p7? (pa1, pa2): void; } interface i2 { //Call Signatures (); (): number; (p); (p1: string); (p2?: string); (...p3: any[]); (p4: string, p5?: string); (p6: string, ...p7: any[]); } interface i3 { //Construct Signatures new (); new (): number; new (p: string); new (p2?: string); new (...p3: any[]); new (p4: string, p5?: string); new (p6: string, ...p7: any[]); } interface i4 { // Used to be indexer, now it is a computed property [p]; //Index Signatures [p1: string]; [p2: string, p3: number]; } interface i5 extends i1 { } interface i6 extends i2 { } interface i7 extends i3 { } interface i8 extends i4 { } interface i9 { } class Base { foo() { } } interface i11 { //Call Signatures (); (): number; (p); (p1: string); (p2?: string); (...p3: any[]); (p4: string, p5?: string); (p6: string, ...p7: any[]); //(p8?: string, ...p9: any[]); //(p10:string, p8?: string, ...p9: any[]); //Construct Signatures new (); new (): number; new (p: string); new (p2?: string); new (...p3: any[]); new (p4: string, p5?: string); new (p6: string, ...p7: any[]); // Used to be indexer, now it is a computed property [p]; //Index Signatures [p1: string]; [p2: string, p3: number]; //Property Signatures p; p1?; p2?: string; p3(); p4? (); p5? (): void; p6(pa1): void; p7(pa1, pa2): void; p7? (pa1, pa2): void; } var anyVar: any; // // Property signatures // var obj0: i1; var obj1: i1 = { p: null, p3: function ():any { return 0; }, p6: function (pa1):any { return 0; }, p7: function (pa1, pa2):any { return 0; } }; var obj2: i1 = new Object(); var obj3: i1 = new obj0; var obj4: i1 = new Base; var obj5: i1 = null; var obj6: i1 = function () { }; //var obj7: i1 = function foo() { }; var obj8: i1 = anyVar; var obj9: i1 = new anyVar; var obj10: i1 = new {}; // // Call signatures // var obj11: i2; var obj12: i2 = {}; var obj13: i2 = new Object(); var obj14: i2 = new obj11; var obj15: i2 = new Base; var obj16: i2 = null; var obj17: i2 = function ():any { return 0; }; //var obj18: i2 = function foo() { }; var obj19: i2 = anyVar; var obj20: i2 = new anyVar; var obj21: i2 = new {}; // // Construct Signatures // var obj22: i3; var obj23: i3 = {}; var obj24: i3 = new Object(); var obj25: i3 = new obj22; var obj26: i3 = new Base; var obj27: i3 = null; var obj28: i3 = function () { }; //var obj29: i3 = function foo() { }; var obj30: i3 = anyVar; var obj31: i3 = new anyVar; var obj32: i3 = new {}; // // Index Signatures // var obj33: i4; var obj34: i4 = {}; var obj35: i4 = new Object(); var obj36: i4 = new obj33; var obj37: i4 = new Base; var obj38: i4 = null; var obj39: i4 = function () { }; //var obj40: i4 = function foo() { }; var obj41: i4 = anyVar; var obj42: i4 = new anyVar; var obj43: i4 = new {}; // // Interface Derived I1 // var obj44: i5; var obj45: i5 = {}; var obj46: i5 = new Object(); var obj47: i5 = new obj44; var obj48: i5 = new Base; var obj49: i5 = null; var obj50: i5 = function () { }; //var obj51: i5 = function foo() { }; var obj52: i5 = anyVar; var obj53: i5 = new anyVar; var obj54: i5 = new {}; // // Interface Derived I2 // var obj55: i6; var obj56: i6 = {}; var obj57: i6 = new Object(); var obj58: i6 = new obj55; var obj59: i6 = new Base; var obj60: i6 = null; var obj61: i6 = function () { }; //var obj62: i6 = function foo() { }; var obj63: i6 = anyVar; var obj64: i6 = new anyVar; var obj65: i6 = new {}; // // Interface Derived I3 // var obj66: i7; var obj67: i7 = {}; var obj68: i7 = new Object(); var obj69: i7 = new obj66; var obj70: i7 = new Base; var obj71: i7 = null; var obj72: i7 = function () { }; //var obj73: i7 = function foo() { }; var obj74: i7 = anyVar; var obj75: i7 = new anyVar; var obj76: i7 = new {}; // // Interface Derived I4 // var obj77: i8; var obj78: i8 = {}; var obj79: i8 = new Object(); var obj80: i8 = new obj77; var obj81: i8 = new Base; var obj82: i8 = null; var obj83: i8 = function () { }; //var obj84: i8 = function foo() { }; var obj85: i8 = anyVar; var obj86: i8 = new anyVar; var obj87: i8 = new {}; //// [intTypeCheck.js] var Base = (function () { function Base() { } Base.prototype.foo = function () { }; return Base; })(); var anyVar; // // Property signatures // var obj0; var obj1 = { p: null, p3: function () { return 0; }, p6: function (pa1) { return 0; }, p7: function (pa1, pa2) { return 0; } }; var obj2 = new Object(); var obj3 = new obj0; var obj4 = new Base; var obj5 = null; var obj6 = function () { }; //var obj7: i1 = function foo() { }; var obj8 = anyVar; var obj9 = new < i1 > anyVar; var obj10 = new {}; // // Call signatures // var obj11; var obj12 = {}; var obj13 = new Object(); var obj14 = new obj11; var obj15 = new Base; var obj16 = null; var obj17 = function () { return 0; }; //var obj18: i2 = function foo() { }; var obj19 = anyVar; var obj20 = new < i2 > anyVar; var obj21 = new {}; // // Construct Signatures // var obj22; var obj23 = {}; var obj24 = new Object(); var obj25 = new obj22; var obj26 = new Base; var obj27 = null; var obj28 = function () { }; //var obj29: i3 = function foo() { }; var obj30 = anyVar; var obj31 = new < i3 > anyVar; var obj32 = new {}; // // Index Signatures // var obj33; var obj34 = {}; var obj35 = new Object(); var obj36 = new obj33; var obj37 = new Base; var obj38 = null; var obj39 = function () { }; //var obj40: i4 = function foo() { }; var obj41 = anyVar; var obj42 = new < i4 > anyVar; var obj43 = new {}; // // Interface Derived I1 // var obj44; var obj45 = {}; var obj46 = new Object(); var obj47 = new obj44; var obj48 = new Base; var obj49 = null; var obj50 = function () { }; //var obj51: i5 = function foo() { }; var obj52 = anyVar; var obj53 = new < i5 > anyVar; var obj54 = new {}; // // Interface Derived I2 // var obj55; var obj56 = {}; var obj57 = new Object(); var obj58 = new obj55; var obj59 = new Base; var obj60 = null; var obj61 = function () { }; //var obj62: i6 = function foo() { }; var obj63 = anyVar; var obj64 = new < i6 > anyVar; var obj65 = new {}; // // Interface Derived I3 // var obj66; var obj67 = {}; var obj68 = new Object(); var obj69 = new obj66; var obj70 = new Base; var obj71 = null; var obj72 = function () { }; //var obj73: i7 = function foo() { }; var obj74 = anyVar; var obj75 = new < i7 > anyVar; var obj76 = new {}; // // Interface Derived I4 // var obj77; var obj78 = {}; var obj79 = new Object(); var obj80 = new obj77; var obj81 = new Base; var obj82 = null; var obj83 = function () { }; //var obj84: i8 = function foo() { }; var obj85 = anyVar; var obj86 = new < i8 > anyVar; var obj87 = new {};