declare abstract class ACache { options: Options; constructor(); configure(options: Options): void; abstract get(...args: any[]): any; abstract set(...args: any[]): void; abstract remove(...args: any[]): void; } export declare const Cookie: CookieStore_2; declare class CookieStore_2 extends ACache { get(key: string): any; set(key: string, value: any, options?: Options_2): void; remove(key: string, options?: Options_2): void; } export declare const IndexedDB: IndexedDBStore; export declare class IndexedDBStore extends ACache { timestramp: number; count: number; db: Promise | null; pending: Promise[]; constructor(options?: ACache['options']); getUid(): string; configure(options: ACache['options']): void; private concurrent; private task; close(target?: Promise): Promise; openDatabase(): Promise; openObjectStore(mode?: IDBTransactionMode): Promise; deleteDatabase(): Promise; write(data: any): Promise; read(id: string): Promise; update(id: string, data: object): Promise; delete(id: string): Promise; search(): Promise; get(key: string): Promise; set(key: string, value: any): Promise; remove(key: string): Promise; } declare class MemoryStorage { store: Record; getItem(key: string): any; setItem(key: string, val: any): void; removeItem(key: string): void; } declare interface Options { [key: string]: any; version?: string | number; versions?: Array; get?: (v: any) => any; set?: (v: string) => string; } declare interface Options_2 { days: number; path?: string; domain?: string; } declare interface Options_3 { session?: boolean; version?: string | number; } declare interface State { [key: string]: any; data?: any; } declare const Storage_2: StorageStore; export { Storage_2 as Storage } declare class StorageStore extends ACache { sessionStorage: MemoryStorage; localStorage: MemoryStorage; getInvoke(options?: Options_3): "sessionStorage" | "localStorage"; configure(options: ACache['options']): void; set(key: string, value: any, options?: Options_3): void; get(key: string, options?: Options_3): any; remove(key: string, options?: Options_3): void; } export { }