export declare class CacheManager {
    private cache;
    private cleanupInterval;
    constructor();
    /**
     * Store a value in cache with TTL
     */
    set<T>(key: string, value: T, ttlSeconds: number): void;
    /**
     * Get a value from cache if not expired
     */
    get<T>(key: string): T | undefined;
    /**
     * Check if a key exists and is not expired
     */
    has(key: string): boolean;
    /**
     * Delete a specific key
     */
    delete(key: string): boolean;
    /**
     * Clear all cache entries
     */
    clear(): void;
    /**
     * Get cache statistics
     */
    getStats(): {
        size: number;
        maxSize: number;
        hitRate?: number;
    };
    /**
     * Clean up expired entries
     */
    private cleanup;
    /**
     * Evict the oldest entry to make room
     */
    private evictOldest;
    /**
     * Destroy the cache manager and cleanup intervals
     */
    destroy(): void;
}
//# sourceMappingURL=cache.d.ts.map