import { storageSymbol, Store } from './store'; export declare const objectCacheSymbol: unique symbol; export declare const cacheSizeSymbol: unique symbol; export declare const storeSymbol: unique symbol; export declare const asyncStoreSymbol: unique symbol; export declare const maxCacheSizeSymbol: unique symbol; /** * only cache object * raw string item are not cached * */ export declare class CachedObjectStore implements Store { private [objectCacheSymbol]; private [cacheSizeSymbol]; private [storeSymbol]; private [asyncStoreSymbol]; private [maxCacheSizeSymbol]; private constructor(); get [storageSymbol](): Storage; set storage(storage: Storage); get length(): number; clear(): void; clearCache(): void; getItem(key: string): string | null; getObject(key: string): T | null; key(index: number): string | null; keys(): string[]; removeItem(key: string): void; setItem(key: string, value: string): void; setObject(key: string, value: any): void; static create(dirpath: string, maxCacheSize?: number, maxStorageSize?: number): CachedObjectStore; }