import { ReactiveLayoutItemSettings } from "@omnia/fx/models";
import { VueComponentBaseProps, VueComponentBase, ThemeStore } from "../../..";
import { SettingsService } from "../../../../services";
import { LayoutCanvasStore, BlockCatalogStore } from "../../";
import { BlockTitleSettingsStore } from "../../../../stores";
import { BlockInstance } from "../../../../ux/BlockInstance";
export interface BlockSettingsProps extends VueComponentBaseProps {
}
export interface BlockSettingsEvents {
}
export declare class BlockSettingsPanel extends VueComponentBase<BlockSettingsProps, BlockSettingsEvents> {
    themeStore: ThemeStore;
    protected settingsService: SettingsService<any>;
    editorStore: LayoutCanvasStore;
    layoutItemStore: BlockCatalogStore;
    blockTitleSettingsStore: BlockTitleSettingsStore;
    private subscriptionHandler;
    blockInstance: BlockInstance;
    private ensuredProvideBlockInstance;
    private slots;
    private tabs;
    private block;
    private blockSettingsComponentIsLoaded;
    private model;
    iconSettingsModel: any;
    created(): void;
    onSettingsElementUpdated(settings: ReactiveLayoutItemSettings): void;
    setBlockSettingsComponentLoadingStatus(): void;
    mounted(): void;
    private populateData;
    private ensureProvideBlockInstance;
    /**
     * Eventhandler for close events
     * */
    private onClose;
    render(): VueTsxSupport.JSX.Element;
}
