UNPKG

440 BPlain TextView Raw
1
2type NullableError = Error | null;
3
4export function promisify(fn: (...args: any[]) => void): (...args: any[]) => any {
5 return (...args: any[]) => {
6 return new Promise((resolve, reject) => {
7 const nodeCallback = (err: NullableError, result: any) => {
8 if (err) reject(err);
9 else resolve(result);
10 };
11 fn.apply(null, [...args, nodeCallback]);
12 });
13 };
14}