aboutsummaryrefslogtreecommitdiff
path: root/node_modules/promise/index.js.flow
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-12-10 21:51:33 +0100
committerFlorian Dold <florian.dold@gmail.com>2017-12-10 21:51:33 +0100
commit0469abd4a9c9270a1fdc962969e36e63699af8b4 (patch)
treef9864d4a4148621378958794cbbfdc2393733283 /node_modules/promise/index.js.flow
parent6947e79bbc258f7bc96af424ddb71a511f0c15a3 (diff)
upgrade dependencies
Diffstat (limited to 'node_modules/promise/index.js.flow')
-rw-r--r--node_modules/promise/index.js.flow44
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;