declare function _(value: Array): _; declare function _(value: T): _; declare module _ { export function each( //list: List, //iterator: ListIterator, context?: any): void; interface ListIterator { (value: T, index: number, list: T[]): TResult; } } declare class _ { each(iterator: _.ListIterator, context?: any): void; } module MyModule { export class MyClass { public get myGetter() { var obj:any = {}; return obj; } } }