import { Application, ComponentSchema, Module } from '@subscan/widget-core';
import { StorageHandler } from '../types';
import { JSONSchema7, JSONSchema7Object } from 'json-schema';
export declare class AppStorage {
    private storageHandler?;
    app: Application;
    modules: Module[];
    rawModules: Module[];
    static AppLSKey: string;
    static ModulesLSKey: string;
    constructor(defaultApplication?: Application, defaultModules?: Module[], storageHandler?: StorageHandler | undefined);
    createModule(): void;
    removeModule(v: string, n: string): void;
    saveComponents(type: 'app' | 'module', version: string, name: string, components: ComponentSchema[]): void;
    saveAppMetaData({ version, name }: {
        version: string;
        name: string;
    }): void;
    saveModuleMetaData({ originName, originVersion }: {
        originName: string;
        originVersion: string;
    }, { version, name, stateMap, properties, exampleProperties, }: {
        version: string;
        name: string;
        stateMap: Record<string, string>;
        properties: JSONSchema7;
        exampleProperties: JSONSchema7Object;
    }): void;
    private saveApplication;
    private saveModules;
    setApp(app: Application): void;
    setModules(modules: Module[]): void;
    setRawModules(modules: Module[]): void;
}
