UNPKG

berish-stober

Version:

Библиотека расширенного манипулирования хранилищем. Позволяет расширять функционал хранения данных посредством специальных обработчиков

24 lines (23 loc) 876 B
import { Serber as SerberClass } from 'berish-serber/dist/lib/serber'; declare const SYMBOL_STORAGE_NAME: unique symbol; export interface IStorageAdapter { getItem: (key: string) => Promise<any>; setItem: (key: string, value: any) => Promise<void>; removeItem: (key: string) => Promise<void>; onChange?: (cb: (key: string, value: any) => void) => (() => void); } export declare class Storage { protected storageAdapter: IStorageAdapter; protected serber: SerberClass; private [SYMBOL_STORAGE_NAME]; private onChangeListeners; constructor(storageAdapter: IStorageAdapter); setSerber(serber: SerberClass): this; setStorageName(value: string): this; getStorageName(): string; save(state: any): Promise<void>; load(): Promise<any>; clear(): Promise<void>; changes(cb: (state: any) => void): () => void; } export {};