export interface Semaphore { readonly promise: Promise; release(): void; } export declare function createSemaphore(): Semaphore; export declare function deferred(): { promise: Promise; resolve: (value: T | PromiseLike) => void; reject: (reason?: unknown) => void; }; //# sourceMappingURL=promise.d.ts.map