export declare class LRUCache<K, V> {
    private capacity;
    private cache;
    private head;
    private tail;
    private defaultTtl;
    private hits;
    private misses;
    constructor(capacity?: number, defaultTtl?: number);
    private addToFront;
    private removeNode;
    private moveToFront;
    private evictLRU;
    set(key: K, value: V, ttl?: number): void;
    get(key: K): V | null;
    has(key: K): boolean;
    delete(key: K): boolean;
    clear(): void;
    size(): number;
    getStats(): {
        size: number;
        capacity: number;
        hitRate: number;
        hits: number;
        misses: number;
    };
    mget(keys: K[]): (V | null)[];
    mset(entries: Array<[K, V, number?]>): void;
}
//# sourceMappingURL=lru-cache.d.ts.map