/** * String storage: redis_strings + coordination with redis_keys. */ import type Database from './driver.ts'; import type { KeyMeta, KeysStorage } from './keys.ts'; export interface StringSetOptions { updatedAt?: number; expiresAt?: number | bigint | null; existingMeta?: KeyMeta | null; replaceForeignType?: boolean; } export declare function createStringsStorage(db: Database, keys: KeysStorage): { get(key: Buffer): Buffer | null; set(key: Buffer, value: Buffer, options?: StringSetOptions): void; /** * Batch set: all key/value pairs in a single transaction. */ setMultiple(entries: { key: Buffer; value: Buffer; options?: StringSetOptions; }[]): void; delete(key: Buffer): void; /** * Copy key's value to newKey. Caller must ensure newKey row exists in redis_keys. */ copyKey(oldKey: Buffer, newKey: Buffer): void; }; export type StringsStorage = ReturnType;