UNPKG

ajsfw

Version:
29 lines (28 loc) 1.28 kB
import * as storageProviders from "../storageProviders"; import { ICachedResource } from "./ICachedResource"; import { IAjsStorage } from "./IAjsStorage"; import { StorageType } from "../enums"; export declare abstract class AjsStorage implements IAjsStorage { protected _supported: boolean; readonly supported: boolean; protected _maxCacheSize: number; readonly cacheSize: number; protected _usedSpace: number; readonly usedSpace: number; protected _resources: ICachedResource[]; readonly resources: ICachedResource[]; protected _storageProvider: storageProviders.IStorageProvider; readonly storageProvider: storageProviders.IStorageProvider; readonly abstract type: StorageType; constructor(cacheSize: number); abstract initialize(): Promise<void>; clear(): Promise<void>; addResource(resource: ICachedResource): Promise<void>; getResource(url: string): Promise<ICachedResource>; updateResource(resource: ICachedResource): Promise<void>; removeResource(url: string): Promise<void>; protected _getResourcesInfo(): Promise<ICachedResource[]>; private __cleanCache(requiredSpace?); private __resourceInfoJSONReviver(key, value); private __getResourceIndex(url); }