import { Observable } from 'rxjs'; import { DDP_COLLECTIONS } from './ddp-names'; export declare abstract class DDPCacheEngine { abstract getItem(key: string): Observable; abstract setItem(key: string, value: any): any; abstract removeItem(key: string): any; } /** * DDPStorage */ export declare class DDPStorage { readonly lastSyncTime: Date; private _lastSyncTime; private _cacheEngine; private _collections; private _subjects; constructor(); setCacheEngine(cacheEngine: DDPCacheEngine): void; loadFromCache(collectionsNames: DDP_COLLECTIONS[]): void; persistToStore(collectionsNames: DDP_COLLECTIONS[]): void; clearCache(collectionsNames: DDP_COLLECTIONS[]): void; getObservable(collectionName: DDP_COLLECTIONS): Observable; getItem(collectionName: DDP_COLLECTIONS, id: any): any; insertItem(collectionName: DDP_COLLECTIONS, item: any): void; updateItem(collectionName: DDP_COLLECTIONS, id: any, item: any): void; removeItem(collectionName: DDP_COLLECTIONS, id: any): void; private _insertOrUpdate; private _getCollection; private _checkAndInitCollection; }