UNPKG

@beenotung/tslib

Version:
8 lines (7 loc) 307 B
export interface Defer<A, E> { promise: Promise<A>; resolve: (a: A) => Promise<A>; reject: (e: E) => Promise<A>; } export declare function createDefer<A = void, E = Error>(): Defer<A, E>; export declare function resolveDefer<A, E>(defer: Defer<A, E>, a: A, f: () => E | Promise<E>): Promise<A>;