|
3 | 3 | // Definitions by: Boris Yankov <https://github.com/borisyankov/> |
4 | 4 | // Definitions: https://github.com/borisyankov/DefinitelyTyped |
5 | 5 |
|
6 | | -interface Dict<T> { [key: string]: T; } |
| 6 | +interface Dictionary<T> { [key: string]: T; } |
7 | 7 |
|
8 | 8 | interface ErrorCallback { (err?: Error): void; } |
9 | 9 | interface AsyncResultCallback<T> { (err: Error, result: T): void; } |
10 | 10 | interface AsyncResultArrayCallback<T> { (err: Error, results: T[]): void; } |
11 | | -interface AsyncResultDictCallback<T> { (err: Error, results: Dict<T>): void; } |
| 11 | +interface AsyncResultObjectCallback<T> { (err: Error, results: Dictionary<T>): void; } |
12 | 12 | interface AsyncTimesCallback<T> { (n: number, callback: AsyncResultArrayCallback<T>): void; } |
13 | 13 |
|
14 | 14 | interface AsyncIterator<T> { (item: T, callback: ErrorCallback): void; } |
15 | 15 | interface AsyncResultIterator<T, R> { (item: T, callback: AsyncResultCallback<R>): void; } |
16 | 16 | interface AsyncMemoIterator<T, R> { (memo: R, item: T, callback: AsyncResultCallback<R>): void; } |
17 | 17 |
|
18 | | -interface AsyncWorker<T> { (task: T, callback: Function): void; } |
| 18 | +interface AsyncWorker<T> { (task: T, callback: ErrorCallback): void; } |
19 | 19 |
|
20 | | -interface AsyncTaskFn<T> { (callback: AsyncResultCallback<T>): void; } |
| 20 | +interface AsyncFunction<T> { (callback: AsyncResultCallback<T>): void; } |
| 21 | +interface AsyncVoidFunction { (callback: ErrorCallback): void; } |
21 | 22 |
|
22 | 23 | interface AsyncQueue<T> { |
23 | 24 | length(): number; |
24 | 25 | concurrency: number; |
25 | 26 | started: boolean; |
26 | 27 | paused: boolean; |
27 | | - push(task: T, callback?: AsyncResultArrayCallback<T>): void; |
28 | | - push(task: T[], callback?: AsyncResultArrayCallback<T>): void; |
29 | | - unshift(task: T, callback?: AsyncResultArrayCallback<T>): void; |
30 | | - unshift(task: T[], callback?: AsyncResultArrayCallback<T>): void; |
| 28 | + push(task: T, callback?: ErrorCallback): void; |
| 29 | + push(task: T[], callback?: ErrorCallback): void; |
| 30 | + unshift(task: T, callback?: ErrorCallback): void; |
| 31 | + unshift(task: T[], callback?: ErrorCallback): void; |
31 | 32 | saturated: () => any; |
32 | 33 | empty: () => any; |
33 | 34 | drain: () => any; |
@@ -86,23 +87,23 @@ interface Async { |
86 | 87 | concatSeries<T, R>(arr: T[], iterator: AsyncResultIterator<T, R[]>, callback: AsyncResultArrayCallback<R>): any; |
87 | 88 |
|
88 | 89 | // Control Flow |
89 | | - series<T>(tasks: Array<AsyncTaskFn<T>>, callback?: AsyncResultArrayCallback<T>): void; |
90 | | - series<T>(tasks: Dict<AsyncTaskFn<T>>, callback?: AsyncResultDictCallback<T>): void; |
91 | | - parallel<T>(tasks: Array<AsyncTaskFn<T>>, callback?: AsyncResultArrayCallback<T>): void; |
92 | | - parallel<T>(tasks: Dict<AsyncTaskFn<T>>, callback?: AsyncResultDictCallback<T>): void; |
93 | | - parallelLimit<T>(tasks: Array<AsyncTaskFn<T>>, limit: number, callback?: AsyncResultArrayCallback<T>): void; |
94 | | - parallelLimit<T>(tasks: Dict<AsyncTaskFn<T>>, limit: number, callback?: AsyncResultDictCallback<T>): void; |
95 | | - whilst(test: Function, fn: Function, callback: Function): void; |
96 | | - until(test: Function, fn: Function, callback: Function): void; |
97 | | - waterfall<T>(tasks: Function[], callback?: AsyncResultArrayCallback<T>): void; |
98 | | - waterfall<T>(tasks: Function, callback?: AsyncResultArrayCallback<T>): void; |
| 90 | + series<T>(tasks: Array<AsyncFunction<T>>, callback?: AsyncResultArrayCallback<T>): void; |
| 91 | + series<T>(tasks: Dictionary<AsyncFunction<T>>, callback?: AsyncResultObjectCallback<T>): void; |
| 92 | + parallel<T>(tasks: Array<AsyncFunction<T>>, callback?: AsyncResultArrayCallback<T>): void; |
| 93 | + parallel<T>(tasks: Dictionary<AsyncFunction<T>>, callback?: AsyncResultObjectCallback<T>): void; |
| 94 | + parallelLimit<T>(tasks: Array<AsyncFunction<T>>, limit: number, callback?: AsyncResultArrayCallback<T>): void; |
| 95 | + parallelLimit<T>(tasks: Dictionary<AsyncFunction<T>>, limit: number, callback?: AsyncResultObjectCallback<T>): void; |
| 96 | + whilst(test: () => boolean, fn: AsyncVoidFunction, callback: (err: any) => void): void; |
| 97 | + doWhilst(fn: AsyncVoidFunction, test: () => boolean, callback: (err: any) => void): void; |
| 98 | + until(test: () => boolean, fn: AsyncVoidFunction, callback: (err: any) => void): void; |
| 99 | + doUntil(fn: AsyncVoidFunction, test: () => boolean, callback: (err: any) => void): void; |
| 100 | + waterfall(tasks: Function[], callback?: AsyncResultArrayCallback<any>): void; |
99 | 101 | queue<T>(worker: AsyncWorker<T>, concurrency: number): AsyncQueue<T>; |
100 | 102 | priorityQueue<T>(worker: AsyncWorker<T>, concurrency: number): AsyncPriorityQueue<T>; |
101 | | - // auto(tasks: any[], callback?: AsyncResultArrayCallback<T>): void; |
102 | 103 | auto(tasks: any, callback?: AsyncResultArrayCallback<any>): void; |
103 | 104 | iterator(tasks: Function[]): Function; |
104 | | - apply<T>(fn: Function, ...arguments: any[]): AsyncTaskFn<T>; |
105 | | - nextTick<T>(callback: Function): void; |
| 105 | + apply(fn: Function, ...arguments: any[]): AsyncFunction<any>; |
| 106 | + nextTick(callback: Function): void; |
106 | 107 |
|
107 | 108 | times<T> (n: number, callback: AsyncTimesCallback<T>): void; |
108 | 109 | timesSeries<T> (n: number, callback: AsyncTimesCallback<T>): void; |
|
0 commit comments