diff --git a/async/async.d.ts b/async/async.d.ts
index 835c10777..a1e1f12b9 100644
--- a/async/async.d.ts
+++ b/async/async.d.ts
@@ -1,67 +1,67 @@
-// Type definitions for Async 0.1
+// Type definitions for Async 0.1.23
// Project: https://github.com/caolan/async
// Definitions by: Boris Yankov
// Definitions: https://github.com/borisyankov/DefinitelyTyped
-interface AsyncCallback { (err: string, results: any): any; }
-interface AsyncIterator { (item, callback: AsyncCallback): void; }
-interface AsyncMemoIterator { (memo: any, item: any, callback: AsyncCallback): void; }
-interface AsyncWorker { (task: any, callback: Function): void; }
+interface AsyncCallback { (err: string, results: T[]): any; }
+interface AsyncIterator { (item: T, callback: AsyncCallback): void; }
+interface AsyncMemoIterator { (memo: T, item: T, callback: AsyncCallback): void; }
+interface AsyncWorker { (task: T, callback: Function): void; }
-interface AsyncQueue {
+interface AsyncQueue {
length(): number;
concurrency: number;
- push(task: any, callback: AsyncCallback): void;
- saturated: AsyncCallback;
- empty: AsyncCallback;
- drain: AsyncCallback;
+ push(task: T, callback: AsyncCallback): void;
+ saturated: AsyncCallback;
+ empty: AsyncCallback;
+ drain: AsyncCallback;
}
interface Async {
// Collections
- forEach(arr: any[], iterator: AsyncIterator, callback: AsyncCallback): void;
- forEachSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback): void;
- forEachLimit(arr: any[], limit: number, iterator: AsyncIterator, callback: AsyncCallback): void;
- map(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- mapSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- filter(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- select(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- filterSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- selectSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- reject(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- rejectSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- reduce(arr: any[], memo: any, iterator: AsyncMemoIterator, callback: AsyncCallback);
- inject(arr: any[], memo: any, iterator: AsyncMemoIterator, callback: AsyncCallback);
- foldl(arr: any[], memo: any, iterator: AsyncMemoIterator, callback: AsyncCallback);
- reduceRight(arr: any[], memo: any, iterator: AsyncMemoIterator, callback: AsyncCallback);
- foldr(arr: any[], memo: any, iterator: AsyncMemoIterator, callback: AsyncCallback);
- detect(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- detectSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- sortBy(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- some(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- any(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- every(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- all(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- concat(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
- concatSeries(arr: any[], iterator: AsyncIterator, callback: AsyncCallback);
+ forEach(arr: T[], iterator: AsyncIterator, callback: AsyncCallback): void;
+ forEachSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback): void;
+ forEachLimit(arr: T[], limit: number, iterator: AsyncIterator, callback: AsyncCallback): void;
+ map(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ mapSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ filter(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ select(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ filterSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ selectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ reject(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ rejectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ reduce(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncCallback);
+ inject(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncCallback);
+ foldl(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncCallback);
+ reduceRight(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncCallback);
+ foldr(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncCallback);
+ detect(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ detectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ sortBy(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ some(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ any(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ every(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ all(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ concat(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
+ concatSeries(arr: T[], iterator: AsyncIterator, callback: AsyncCallback);
// Control Flow
- series(tasks: any[], callback?: AsyncCallback): void;
- series(tasks: any, callback?: AsyncCallback): void;
- parallel(tasks: any[], callback?: AsyncCallback): void;
- parallel(tasks: any, callback?: AsyncCallback): void;
- whilst(test: Function, fn: Function, callback: AsyncCallback): void;
- until(test: Function, fn: Function, callback: AsyncCallback): void;
- waterfall(tasks: any[], callback?: AsyncCallback): void;
- waterfall(tasks: any, callback?: AsyncCallback): void;
- queue(worker: AsyncWorker, concurrency: number): AsyncQueue;
- //auto(tasks: any[], callback?: AsyncCallback): void;
- auto(tasks: any, callback?: AsyncCallback): void;
+ series(tasks: T[], callback?: AsyncCallback): void;
+ series(tasks: T, callback?: AsyncCallback): void;
+ parallel(tasks: T[], callback?: AsyncCallback): void;
+ parallel(tasks: T, callback?: AsyncCallback): void;
+ whilst(test: Function, fn: Function, callback: AsyncCallback): void; // TODO: generify
+ until(test: Function, fn: Function, callback: AsyncCallback): void; // TODO: generify
+ waterfall(tasks: T[], callback?: AsyncCallback): void;
+ waterfall(tasks: T, callback?: AsyncCallback): void;
+ queue(worker: AsyncWorker, concurrency: number): AsyncQueue;
+ //auto(tasks: any[], callback?: AsyncCallback): void;
+ auto(tasks: T, callback?: AsyncCallback): void;
iterator(tasks): Function;
apply(fn: Function, ...arguments: any[]): void;
- nextTick(callback: AsyncCallback): void;
+ nextTick(callback: AsyncCallback): void;
// Utils
memoize(fn: Function, hasher?: Function): Function;