1 | import asyncDone from "async-done";
|
2 |
|
3 | export async function asyncDonePromise<T>(task: asyncDone.AsyncTask<T>): Promise<T> {
|
4 | return new Promise<T>((resolve, reject) => {
|
5 | asyncDone(task, (err: Error | null, res?: T): void => {
|
6 | // TODO: normalize lack of error to `null` (streams return `undefined`)
|
7 | if (err) {
|
8 | reject(err);
|
9 | } else {
|
10 | resolve(res!);
|
11 | }
|
12 | });
|
13 | });
|
14 | }
|
15 |
|
\ | No newline at end of file |