@nesvet/n
Version:
Various utilities
21 lines • 760 B
TypeScript
type Value<T> = PromiseLike<T> | T;
type Resolve<T> = (value: Value<T>) => void;
type Reject = (reason?: any) => void;
type Options = {
signal?: AbortSignal;
timeout?: number;
};
export declare class StatefulPromise<T> extends Promise<T> {
constructor(executor?: (resolve: Resolve<T>, reject: Reject) => void, options?: Options);
isPending: boolean;
isFulfilled: boolean;
isRejected: boolean;
state: "fulfilled" | "pending" | "rejected";
result?: T | unknown;
readonly resolve: (value: Value<T>) => void;
readonly reject: (reason?: any) => void;
static resolved<U>(value: U): StatefulPromise<U>;
static rejected(reason: unknown): StatefulPromise<never>;
}
export {};
//# sourceMappingURL=StatefulPromise.d.ts.map