I tried swapping it over to this (ie getting rid of the workaround):

	//map<TArray>(iterator: (element: T, key: string, list: any) => TArray[], context?: any): _ChainOfArrays<TArray>;
	//Not sure why this won't work, might be a TypeScript error?  
	map<TArray>(iterator: _.ObjectIterator<T, TArray[]>, context?: any): _ChainOfArrays<TArray>;

And it seemed to work just fine?  Do you need this workaround?