QueueStorage
Defined in: storage/interface.ts:14
Storage backend interface Implement this for your preferred storage (GitHub Issue, Redis, etc.)
Type Parameters
Section titled “Type Parameters”T extends QueueItem = QueueItem
Methods
Section titled “Methods”acquireLock()
Section titled “acquireLock()”acquireLock(
holder,ttlMs):Promise<boolean>
Defined in: storage/interface.ts:31
Acquire a distributed lock
Parameters
Section titled “Parameters”holder
Section titled “holder”string
Identifier for the lock holder
number
Time-to-live in milliseconds
Returns
Section titled “Returns”Promise<boolean>
true if lock acquired, false if already locked
getLock()
Section titled “getLock()”getLock():
Promise<QueueLock|null>
Defined in: storage/interface.ts:47
Get the current lock info
Returns
Section titled “Returns”Promise<QueueLock | null>
isLocked()
Section titled “isLocked()”isLocked():
Promise<boolean>
Defined in: storage/interface.ts:42
Check if a lock is currently held
Returns
Section titled “Returns”Promise<boolean>
read()
Section titled “read()”read():
Promise<QueueState<T>>
Defined in: storage/interface.ts:18
Read the current queue state
Returns
Section titled “Returns”Promise<QueueState<T>>
releaseLock()
Section titled “releaseLock()”releaseLock(
holder):Promise<void>
Defined in: storage/interface.ts:37
Release a distributed lock
Parameters
Section titled “Parameters”holder
Section titled “holder”string
Must match the holder that acquired the lock
Returns
Section titled “Returns”Promise<void>
write()
Section titled “write()”write(
state):Promise<void>
Defined in: storage/interface.ts:23
Write the queue state
Parameters
Section titled “Parameters”QueueState<T>
Returns
Section titled “Returns”Promise<void>