/** * Caché LRU (Least Recently Used) de capacidad fija. * Combina un DoublyLinkedList (para rastrear orden de uso) con un Map (para acceso O(1) por clave). * El nodo al inicio de la lista es el menos usado recientemente; el del final, el más reciente. * Cuando la capacidad está llena, el elemento menos usado es evictado automáticamente. * @template K - Tipo de las claves. * @template V - Tipo de los valores. */ export declare class LRUCache { #private; constructor(capacity: number); /** * Obtiene el valor de la clave y la marca como la más recientemente usada. * @returns El valor, o undefined si la clave no existe. */ get(key: K): V | undefined; /** * Inserta o actualiza un par clave-valor. * Si la capacidad está llena, evicta el elemento menos recientemente usado. */ put(key: K, value: V): void; /** * Comprueba si la clave existe en el caché sin modificar el orden de uso. */ has(key: K): boolean; /** * Elimina una entrada del caché. * @returns true si existía, false si no. */ delete(key: K): boolean; /** * Vacía el caché completamente. */ clear(): void; /** * Número de entradas actuales en el caché. */ get size(): number; /** * Capacidad máxima del caché. */ get capacity(): number; /** * Indica si el caché está vacío. */ isEmpty(): boolean; /** * Retorna las entradas en orden de más reciente a menos reciente. */ entries(): [K, V][]; } //# sourceMappingURL=lru-cache.d.ts.map