import { LockStore } from '../types/main.js'; import { R as RedisStoreOptions } from '../../drivers-ClN4eGOp.js'; import '@julr/utils/logger'; import 'knex'; import 'kysely'; import 'ioredis'; import '@aws-sdk/client-dynamodb'; /** * Create a new Redis store */ declare function redisStore(options: RedisStoreOptions): { factory: () => RedisStore; }; declare class RedisStore implements LockStore { #private; constructor(options: RedisStoreOptions); /** * 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 { RedisStore, redisStore };