UNPKG

@daiso-tech/core

Version:

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

19 lines (18 loc) 955 B
/** * @module Lock */ import { type IReadableContext } from "../../../../execution-context/contracts/_module.js"; import { type IDatabaseLockAdapter, type ILockAdapter, type ILockAdapterState } from "../../../../lock/contracts/_module.js"; import { type TimeSpan } from "../../../../time-span/implementations/_module.js"; /** * @internal */ export declare class DatabaseLockAdapter implements ILockAdapter { private readonly adapter; constructor(adapter: IDatabaseLockAdapter); acquire(context: IReadableContext, key: string, lockId: string, ttl: TimeSpan | null): Promise<boolean>; release(context: IReadableContext, key: string, lockId: string): Promise<boolean>; forceRelease(context: IReadableContext, key: string): Promise<boolean>; refresh(context: IReadableContext, key: string, lockId: string, ttl: TimeSpan): Promise<boolean>; getState(context: IReadableContext, key: string): Promise<ILockAdapterState | null>; }