diff --git a/async/async-tests.ts b/async/async-tests.ts
index e7b57a1f8..fefc3fd2a 100644
--- a/async/async-tests.ts
+++ b/async/async-tests.ts
@@ -18,10 +18,10 @@ async.series([
function () { }
]);
-var data;
-function asyncProcess() { }
+var data = [];
+function asyncProcess(item, callback) { }
async.map(data, asyncProcess, function (err, results) {
- alert(results);
+ console.log(results);
});
var openFiles = ['file1', 'file2'];
diff --git a/async/async.d.ts b/async/async.d.ts
index 835c10777..6c06348d5 100644
--- a/async/async.d.ts
+++ b/async/async.d.ts
@@ -1,67 +1,71 @@
-// 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 AsyncMultipleResultsCallback { (err: string, results: T[]): any; }
+interface AsyncSingleResultCallback { (err: string, result: T): any; }
+interface AsyncTimesCallback { (n: number, callback: AsyncMultipleResultsCallback): void; }
+interface AsyncIterator { (item: T, callback: AsyncMultipleResultsCallback): void; }
+interface AsyncMemoIterator { (memo: T, item: T, callback: AsyncSingleResultCallback): void; }
+interface AsyncWorker { (task: T, callback: Function): void; }
-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 AsyncQueue {
+interface AsyncQueue {
length(): number;
concurrency: number;
- push(task: any, callback: AsyncCallback): void;
- saturated: AsyncCallback;
- empty: AsyncCallback;
- drain: AsyncCallback;
+ push(task: T, callback: AsyncMultipleResultsCallback): void;
+ saturated: AsyncMultipleResultsCallback;
+ empty: AsyncMultipleResultsCallback;
+ drain: AsyncMultipleResultsCallback;
}
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: AsyncMultipleResultsCallback): void;
+ forEachSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback): void;
+ forEachLimit(arr: T[], limit: number, iterator: AsyncIterator, callback: AsyncMultipleResultsCallback): void;
+ map(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ mapSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ filter(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ select(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ filterSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ selectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ reject(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ rejectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ reduce(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncSingleResultCallback);
+ inject(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncSingleResultCallback);
+ foldl(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncSingleResultCallback);
+ reduceRight(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncSingleResultCallback);
+ foldr(arr: T[], memo: T, iterator: AsyncMemoIterator, callback: AsyncSingleResultCallback);
+ detect(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ detectSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ sortBy(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ some(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ any(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ every(arr: T[], iterator: AsyncIterator, callback: (result: boolean) => any);
+ all(arr: T[], iterator: AsyncIterator, callback: (result: boolean) => any);
+ concat(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
+ concatSeries(arr: T[], iterator: AsyncIterator, callback: AsyncMultipleResultsCallback);
// 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;
- iterator(tasks): Function;
+ series(tasks: T[], callback?: AsyncMultipleResultsCallback): void;
+ series(tasks: T, callback?: AsyncMultipleResultsCallback): void;
+ parallel(tasks: T[], callback?: AsyncMultipleResultsCallback): void;
+ parallel(tasks: T, callback?: AsyncMultipleResultsCallback): void;
+ whilst(test: Function, fn: Function, callback: Function): void;
+ until(test: Function, fn: Function, callback: Function): void;
+ waterfall(tasks: T[], callback?: AsyncMultipleResultsCallback): void;
+ waterfall(tasks: T, callback?: AsyncMultipleResultsCallback): void;
+ queue(worker: AsyncWorker, concurrency: number): AsyncQueue;
+ // auto(tasks: any[], callback?: AsyncMultipleResultsCallback): void;
+ auto(tasks: any, callback?: AsyncMultipleResultsCallback): void;
+ iterator(tasks: Function[]): Function;
apply(fn: Function, ...arguments: any[]): void;
- nextTick(callback: AsyncCallback): void;
+ nextTick(callback: Function): void;
+
+ times (n: number, callback: AsyncTimesCallback): void;
+ timesSeries (n: number, callback: AsyncTimesCallback): void;
// Utils
memoize(fn: Function, hasher?: Function): Function;