///
// Tests by: Bart van der Schoor
// Note: replicate changes to all overloads in both definition and test file
// Note: keep both static and instance members inline (so similar)
// Note: try to maintain the ordering and separators, and keep to the pattern
var obj: Object;
var bool: boolean;
var num: number;
var str: string;
var err: Error;
var x: any;
var f: Function;
var func: Function;
var arr: any[];
var exp: RegExp;
var anyArr: any[];
var strArr: string[];
var numArr: number[];
var voidVar: void;
// - - - - - - - - - - - - - - - - -
var value: any;
var reason: any;
var insanity: any;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
interface Foo {
foo(): string;
}
interface Bar {
bar(): string;
}
// - - - - - - - - - - - - - - - - -
interface StrFooMap {
[key:string]:Foo;
}
interface StrBarMap {
[key:string]:Bar;
}
// - - - - - - - - - - - - - - - - -
interface StrFooArrMap {
[key:string]:Foo[];
}
interface StrBarArrMap {
[key:string]:Bar[];
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
var foo: Foo;
var bar: Bar;
var fooArr: Foo[];
var barArr: Bar[];
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
var numProm: Promise;
var strProm: Promise;
var anyProm: Promise;
var boolProm: Promise;
var objProm: Promise