import type { SyncMap } from '@xyo-network/xl1-protocol/protocol-lib';
import { LRUCache } from 'lru-cache';
/** LruCacheMap implementation. */
export declare class LruCacheMap<K extends {}, V extends string | number | bigint | {}, FC = () => void> implements SyncMap<K, V> {
    private lruCache;
    /** Creates an instance with the supplied configuration. */
    constructor(options?: LRUCache.Options<K, V, FC>);
    /** Removes data through the clear operation. */
    clear(): void;
    /** Removes data through the delete operation. */
    delete(id: K): boolean;
    /** Returns get. */
    get(id: K): V | undefined;
    /** Returns many. */
    getMany(id: K[]): V[];
    /** Returns the has result exposed by this provider. */
    has(id: K): boolean;
    /** Updates set. */
    set(id: K, data: V): void;
    /** Updates many. */
    setMany(entries: [K, V][]): void;
}
//# sourceMappingURL=LruCacheMap.d.ts.map