/** * ModuleConfigCache — generic LRU cache for module config lookups * * Provides a bounded, TTL-based cache for runtime config discovery * (billing config, agent discovery, inference log info, etc.). * * Wraps lru-cache with: * - LRU eviction (bounded memory) * - TTL-based expiry * - Named logging for debugging * - clear() hook for future LISTEN/NOTIFY invalidation */ export interface ModuleConfigCacheOptions { /** Cache name (used in log prefix) */ name: string; /** Max entries before LRU eviction (default: 100) */ max?: number; /** TTL in milliseconds (default: 60_000) */ ttlMs?: number; } export declare class ModuleConfigCache { private cache; private log; readonly name: string; constructor(opts: ModuleConfigCacheOptions); get(key: string): T | undefined; set(key: string, value: T): void; delete(key: string): boolean; clear(): void; get size(): number; has(key: string): boolean; }