Skip to main content

Methods

acquireLock()

Acquire a lock on a thread (returns null if already locked)

Parameters

string
required
number
required

Returns

Lock

appendToList()

Atomically append a value to a list. Trims to maxLength (keeping newest). Refreshes TTL.

Parameters

string
required
unknown
required
{ maxLength: number; ttlMs: number }

Returns

Promise<void>

connect()

Connect to the state backend

Returns

Promise<void>

delete()

Delete a cached value

Parameters

string
required

Returns

Promise<void>

dequeue()

Pop the next message from the thread’s queue. Returns null if empty.

Parameters

string
required

Returns

QueueEntry

disconnect()

Disconnect from the state backend

Returns

Promise<void>

enqueue()

Atomically append a message to the thread’s pending queue. Returns new queue depth.

Parameters

string
required
required
number
required

Returns

Promise<number>

extendLock()

Extend a held lock’s TTL. Implementations must compare the lock token and only extend a lock that is still held with that token — never create or resurrect one. Returns false when the lock is no longer held with this token (expired, released, or taken over).

Parameters

required
number
required

Returns

Promise<boolean>

forceReleaseLock()

Force-release a lock on a thread, regardless of ownership token. The previous lock holder’s handler continues running — only the lock is released. The old handler’s releaseLock() becomes a no-op (token mismatch).

Parameters

string
required

Returns

Promise<void>

get()

Get a cached value by key

Parameters

string
required

Returns

Promise<T | null>

getList()

Read all values from a list in insertion order. Returns empty array if key does not exist.

Parameters

string
required

Returns

Promise<T[]>

isSubscribed()

Check if subscribed to a thread

Parameters

string
required

Returns

Promise<boolean>

queueDepth()

Get the current queue depth for a thread.

Parameters

string
required

Returns

Promise<number>

releaseLock()

Release a lock

Parameters

required

Returns

Promise<void>

set()

Set a cached value with optional TTL in milliseconds

Parameters

string
required
T
required
number

Returns

Promise<void>

setIfNotExists()

Atomically set a value only if the key does not already exist. Returns true if set, false if key existed.

Parameters

string
required
unknown
required
number

Returns

Promise<boolean>

subscribe()

Subscribe to a thread (persists across restarts)

Parameters

string
required

Returns

Promise<void>

unsubscribe()

Unsubscribe from a thread

Parameters

string
required

Returns

Promise<void>