@xylabs/promise
Version:
Base functionality used throughout XY Labs TypeScript/JavaScript libraries
11 lines • 777 B
TypeScript
export type PromiseExSubFunc<T, TResult = T> = (value: T) => TResult;
export type PromiseExFunc<T> = (resolve?: PromiseExSubFunc<T, void>, reject?: PromiseExSubFunc<T, void>) => void;
export type PromiseExValueFunc<V> = (value?: V) => boolean;
export declare class PromiseEx<T, V = void> extends Promise<T> {
cancelled?: boolean;
private _value?;
constructor(func: PromiseExFunc<T>, value?: V);
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null | undefined, onvalue?: (value?: V) => boolean): Promise<TResult1 | TResult2>;
value(onvalue?: (value?: V) => boolean): this;
}
//# sourceMappingURL=PromiseEx.d.ts.map