/** * Leverages the unbounded SerialQueue and Semaphore to create a SerialQueue that will block when putting an item * if the queue size = maxQueueSize. */ export declare class BoundedSerialQueue { private readonly queue; private semaphore; constructor(maxQueueSize: number); start(): void; length(): number; cancel(): Promise; end(): Promise; /** * The caller will block until fn is succesfully enqueued. * The fn itself is execute asyncronously and its result discarded. */ put(fn: () => Promise): Promise; /** * The caller will block until fn is successfully executed, and it's result returned. */ exec(fn: () => Promise): Promise; syncPoint(): Promise; } //# sourceMappingURL=bounded_serial_queue.d.ts.map