diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-12-10 21:51:33 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-12-10 21:51:33 +0100 |
commit | 0469abd4a9c9270a1fdc962969e36e63699af8b4 (patch) | |
tree | f9864d4a4148621378958794cbbfdc2393733283 /node_modules/promise/index.js.flow | |
parent | 6947e79bbc258f7bc96af424ddb71a511f0c15a3 (diff) |
upgrade dependencies
Diffstat (limited to 'node_modules/promise/index.js.flow')
-rw-r--r-- | node_modules/promise/index.js.flow | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/node_modules/promise/index.js.flow b/node_modules/promise/index.js.flow new file mode 100644 index 000000000..78db68ccd --- /dev/null +++ b/node_modules/promise/index.js.flow @@ -0,0 +1,44 @@ +// @flow + +declare class ThenPromise<+R> extends Promise<R> { + constructor(callback: ( + resolve: (result: Promise<R> | R) => void, + reject: (error: any) => void + ) => mixed): void; + + then<U>( + onFulfill?: (value: R) => Promise<U> | U, + onReject?: (error: any) => Promise<U> | U + ): ThenPromise<U>; + + catch<U>( + onReject?: (error: any) => Promise<U> | U + ): ThenPromise<R | U>; + + // Extensions specific to then/promise + + /** + * Attaches callbacks for the resolution and/or rejection of the ThenPromise, without returning a new promise. + * @param onfulfilled The callback to execute when the ThenPromise is resolved. + * @param onrejected The callback to execute when the ThenPromise is rejected. + */ + done(onfulfilled?: (value: R) => any, onrejected?: (reason: any) => any): void; + + + /** + * Calls a node.js style callback. If none is provided, the promise is returned. + */ + nodeify(callback: void | null): ThenPromise<R>; + nodeify(callback: (err: Error, value: R) => void): void; + + static resolve<T>(object: Promise<T> | T): ThenPromise<T>; + static reject<T>(error?: any): ThenPromise<T>; + static all<Elem, T:Iterable<Elem>>(promises: T): ThenPromise<$TupleMap<T, typeof $await>>; + static race<T, Elem: Promise<T> | T>(promises: Array<Elem>): ThenPromise<T>; + + // Extensions specific to then/promise + + static denodeify(fn: Function): (...args: any[]) => ThenPromise<any>; + static nodeify(fn: Function): Function; +} +module.exports = ThenPromise; |