interface ErrorInjection { failAfter(n: number, error?: Error): void; failOn(pattern: RegExp, error?: Error): void; withLatency(minMs: number, maxMs?: number): void; clearInjections(): void; } interface MockOperation { type: "read" | "write" | "delete" | "list"; key?: string; timestamp: number; } interface MockOperations { operations: MockOperation[]; reads(): MockOperation[]; writes(): MockOperation[]; deletes(): MockOperation[]; reset(): void; } interface MockKVEntry { value: string; expiration?: number; metadata?: unknown; } /** * In-memory KVNamespace mock for unit testing. * Map-based storage with expiration support. */ declare function createMockKV(initialData?: Record): KVNamespace & { _store: Map; } & MockOperations & ErrorInjection; export { createMockKV };