import { LockStore } from '../types/main.js'; import { D as DynamoDbOptions } from '../../drivers-ClN4eGOp.js'; import '@julr/utils/logger'; import 'knex'; import 'kysely'; import 'ioredis'; import '@aws-sdk/client-dynamodb'; /** * Create a DynamoDB store. */ declare function dynamodbStore(config: DynamoDbOptions): { factory: () => DynamoDBStore; }; declare class DynamoDBStore implements LockStore { #private; constructor(config: DynamoDbOptions); /** * Save the lock in the store if not already locked by another owner */ save(key: string, owner: string, ttl: number | null): Promise; /** * Delete the lock from the store if it is owned by the owner * Otherwise throws a E_LOCK_NOT_OWNED error */ delete(key: string, owner: string): Promise; /** * Force delete the lock from the store. No check is made on the owner */ forceDelete(key: string): Promise; /** * Check if the lock exists */ exists(key: string): Promise; /** * Extend the lock expiration. Throws an error if the lock is not owned by the owner * Duration is in milliseconds */ extend(key: string, owner: string, duration: number): Promise; } export { DynamoDBStore, dynamodbStore };