Represents a deferred promise.
import { Deferred } from '../src/index.js';const ok = new Deferred<number>();const err = new Deferred<number>();const timeout = new Deferred<number>(AbortSignal.timeout(0));queueMicrotask(() => ok.resolve(42));queueMicrotask(() => err.reject(new Error('oops')));setTimeout(() => timeout.resolve(42));console.log(await Promise.allSettled([ok, err, timeout])); Copy
import { Deferred } from '../src/index.js';const ok = new Deferred<number>();const err = new Deferred<number>();const timeout = new Deferred<number>(AbortSignal.timeout(0));queueMicrotask(() => ok.resolve(42));queueMicrotask(() => err.reject(new Error('oops')));setTimeout(() => timeout.resolve(42));console.log(await Promise.allSettled([ok, err, timeout]));
Gets the current state of the deferred promise.
DeferredState
Rejects the promise with a reason.
Resolves the promise with a value or the result of another promise.
Represents a deferred promise.