import { Store } from "./Store";
import { IIcon, BlockTitleSettings, GuidValue } from "../models";
import { BlockTitleGlobalSettingsStore } from "./BlockTitleGlobalSettingsStore";
import { DirectionRuleStore } from "./DirectionRuleStore";
export interface SettingsValue {
    key: any;
    blockTitleSettings: BlockTitleSettings;
    icon: IIcon;
    customSettings: boolean;
    headerLevel?: GuidValue;
}
export declare class BlockTitleSettingsStore extends Store {
    blockTitleGlobalSettingsStore: BlockTitleGlobalSettingsStore;
    directionStore: DirectionRuleStore;
    private layoutBlockTitleSettingsId;
    private titleSettings;
    private subcribeHandle;
    private loadingPromise;
    onActivated(): void;
    onDisposing(): void;
    /**
    * Implementation of getters
    */
    getters: {
        globalSettings: () => BlockTitleSettings;
        layoutSettings: () => BlockTitleSettings;
        inheritedLayoutSettings: () => BlockTitleSettings;
        componentSettings: (key: any) => SettingsValue;
    };
    /**
     * Implementation of mutations
     */
    mutations: {
        setLayoutInheritageToGlobalSettings: () => void;
        setLayoutInheritageToCurrentLayoutSettings: () => void;
        setLayoutSettings: (key: any, newSettings: BlockTitleSettings) => void;
        setLayoutInheritage: (key: any) => void;
        setComponentIcon: (key: any, icon: IIcon) => void;
        removeComponentIcon: (key: any) => void;
        setComponentSettings: (key: any, blockTitleSettings: BlockTitleSettings, icon?: IIcon, headerLevel?: GuidValue) => void;
        revertComponentToGlobalSettings: (key: any) => void;
        setComponentTitleHeaderLevel: (key: any, headerLevel: GuidValue) => void;
    };
    /**
     * Implementation of actions
     */
    actions: {
        load: import("./Store").StoreAction<unknown, () => void, (result: unknown) => void, (failureReason: any) => void, () => any>;
    };
}
