/** * Minimal async mutex for serializing access to a resource. * * `acquire()` resolves only once all previously acquired holders have released, * so awaiting callers run one at a time in FIFO order. */ export declare class AsyncLock { /** Resolves when the currently-held lock (if any) is released. */ private _tail; /** * Acquires the lock, waiting until all previously-acquired holders release. * * Declare the result with `using` to release the lock at scope exit: * `using _lock = await lock.acquire()`. * * @returns A handle whose disposal releases the lock. Disposal is idempotent. */ acquire(): Promise<{ [Symbol.dispose](): void; }>; } //# sourceMappingURL=async-lock.d.ts.map