@worker-tools/resolvable-promise
Version:
A promise that is resolvable (or rejectable) after it was created.
18 lines (17 loc) • 1.08 kB
TypeScript
export declare type Resolve<T> = (value: T | PromiseLike<T>) => void;
export declare type Reject = (reason?: any) => void;
export declare type ResolvablePromiseInit<T> = PromiseLike<T> | ((resolve: Resolve<T>, reject: Reject) => void);
export declare class ResolvablePromise<T> implements Promise<T> {
#private;
constructor(init?: ResolvablePromiseInit<T> | null);
resolve(x: T | PromiseLike<T>): void;
reject(reason?: any): void;
/** @deprecated Name of this property might change */
get settled(): boolean;
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null): Promise<T | TResult>;
finally(onfinally?: (() => void) | null): Promise<T>;
readonly [Symbol.toStringTag] = "ResolvablePromise";
}
/** @deprecated */
export declare function resolvablePromise<T>(): ResolvablePromise<T>;