UNPKG

synapse-storage

Version:

Набор инструментов для управления состоянием и апи-запросами

29 lines (28 loc) 1.65 kB
import { IEventEmitter, ILogger, LocalStorageConfig, StorageType } from '../storage.interface'; import { StorageKeyType } from '../utils/storage-key'; import { SyncBaseStorage } from './sync-base-storage.service'; export declare class LocalStorage<T extends Record<string, any>> extends SyncBaseStorage<T> { protected static readonly STORAGE_TYPE: StorageType; readonly type: StorageType; constructor(config: LocalStorageConfig<T>, eventEmitter?: IEventEmitter, logger?: ILogger); static create<T extends Record<string, any>>(config: LocalStorageConfig, eventEmitter?: IEventEmitter, logger?: ILogger): LocalStorage<T>; protected doInitialize(): Promise<this>; protected doGet(key: StorageKeyType): any; protected doSet(key: StorageKeyType, value: any): void; protected doRemove(key: StorageKeyType): boolean; protected doUpdate(updates: Array<{ key: StorageKeyType; value: any; }>): void; protected doClear(): void; protected doKeys(): string[]; protected doHas(key: StorageKeyType): boolean; /** Персистентное хранилище: по умолчанию НЕ чистим данные на destroy (симметрично IndexedDB). */ protected get clearOnDestroyDefault(): boolean; /** Версия схемы хранится отдельным sidecar-ключом, не засоряя сам state. */ private get versionStorageKey(); protected readPersistedVersion(): number | undefined; protected writePersistedVersion(version: number): void; protected clearPersistedVersion(): void; protected doDestroy(): Promise<void>; }