import type { LRUCacheOptions } from "../types";
export declare class LRUCache<K, V> {
    private max;
    private ttl;
    private cache;
    private head;
    private tail;
    constructor(options: LRUCacheOptions);
    get(key: K): V | undefined;
    set(key: K, value: V): void;
    has(key: K): boolean;
    delete(key: K): boolean;
    clear(): void;
    get size(): number;
    keys(): K[];
    values(): V[];
    private isExpired;
    private moveToFront;
    private addToFront;
    private removeNode;
    private evictLRU;
}
