/** * Sistema de cache optimizado para rate limiting y datos frecuentes * Implementación in-memory con TTL y LRU eviction */ declare class MemoryCache { private cache; private maxSize; private defaultTTL; private cleanupInterval; constructor(maxSize?: number, defaultTTL?: number); set(key: string, value: T, ttl?: number): void; get(key: string): T | null; delete(key: string): boolean; has(key: string): boolean; clear(): void; size(): number; destroy(): void; private evictLRU; private cleanup; getStats(): { total: number; active: number; expired: number; maxSize: number; }; } export declare const rateLimitCache: MemoryCache<{ count: number; resetTime: number; }>; export declare const apiKeyCache: MemoryCache<{ id: string; userId: string; scopes: string[]; status: "active" | "inactive" | "expired"; expiresAt: string | null; failedAttempts: number | null; lockedUntil: string | null; }>; export declare const userCache: MemoryCache<{ id: string; role: string; email: string; }>; export declare function getCacheKey(prefix: string, ...parts: string[]): string; export declare function invalidatePattern(cache: MemoryCache, pattern: string): void; export {}; //# sourceMappingURL=cache.d.ts.map