/** * Redis Cache Adapter - Pure Redis caching implementation * Replaces PostgreSQL caching functionality to maintain database separation */ export interface RedisCacheEntry { key: string; data: T; contentHash: string; timestamp: Date; accessCount: number; lastAccessed: Date; expiresAt?: Date; metadata?: Record; } export declare class RedisCacheAdapter { private logger; private dbConnections; private redisClient; private keyPrefix; private isConnected; constructor(keyPrefix?: string); initialize(): Promise; /** * Get cached entry from Redis */ get(key: string, contentHash?: string): Promise | null>; /** * Set cached entry in Redis */ set(key: string, data: T, contentHash: string, ttl?: number): Promise; /** * Delete cached entry from Redis */ delete(key: string): Promise; /** * Invalidate entries matching a pattern */ invalidatePattern(pattern: RegExp): Promise; /** * Clear all cache entries with this prefix */ clear(): Promise; /** * Get cache statistics */ getStats(): Promise<{ totalKeys: number; memoryUsage: number; hitRate: number; }>; /** * Check if a key exists and is not expired */ exists(key: string): Promise; /** * Cleanup expired entries (Redis handles TTL automatically, but this can clean manual expires) */ cleanup(): Promise; close(): Promise; private createRedisKey; private extractOriginalKey; private updateAccessStats; } /** * Factory for creating Redis cache adapters with different prefixes */ export declare class RedisCacheFactory { static createCache(prefix: string): RedisCacheAdapter; static createSemanticCache(): RedisCacheAdapter; static createEmbeddingCache(): RedisCacheAdapter; static createResultCache(): RedisCacheAdapter; } //# sourceMappingURL=redis-cache-adapter.d.ts.map