import { ObjectUpdateType } from '../../../../ObjectUpdateType';
import { Dict } from '../../../../types/Dict';
import { IStorage } from '../../../../types/global/IStorage';
import { J } from '../../../../types/interface/J';
import { Unlisten } from '../../../../types/Unlisten';
export declare class Storage_ implements J {
    private _storage;
    constructor(storage: IStorage);
    read(): Promise<Dict<string>>;
    write(data: Dict<string>): Promise<void>;
    get(name: string): Promise<string>;
    set(name: string, data: string): Promise<void>;
    delete(name: string): Promise<any>;
    deepSet(path: string[], data: any): Promise<void>;
    deepGet(path: string[]): Promise<any>;
    deepDelete(path: string[]): Promise<void>;
    keys(): Promise<string[]>;
    hasKey(name: string): Promise<boolean>;
    subscribe(path: string[], key: string, listener: (type: ObjectUpdateType, path: string[], key: string, data: any) => void): Unlisten;
}
