UNPKG

@apiratorjs/locking

Version:

A lightweight library providing both local and distributed locking primitives (mutexes, semaphores, and read-write locks) for managing concurrency in Node.js.

18 lines 864 B
import { AcquireParams, DistributedMutexConstructorProps, IDistributedMutex, IReleaser, MutexToken } from "../types"; export declare class InMemoryDistributedMutex implements IDistributedMutex { private readonly _inMemoryDistributedSemaphore; constructor(props: DistributedMutexConstructorProps); waitForUnlock(): Promise<void>; get name(): string; get isDestroyed(): boolean; runExclusive<T>(fn: () => Promise<T> | T): Promise<T>; runExclusive<T>(params: AcquireParams, fn: () => Promise<T> | T): Promise<T>; readonly implementation: string; destroy(): Promise<void>; acquire(params?: { timeoutMs?: number; }, acquireToken?: MutexToken): Promise<IReleaser<MutexToken>>; cancel(errMessage?: string): Promise<void>; isLocked(): Promise<boolean>; } //# sourceMappingURL=in-memory-distributed-mutex.d.ts.map