import type { IViewBased } from "jodit/esm/types/index";
import type { AIAssistantDisplayMode, AIAssistantTheme } from "../../interface/index";
import { UIElement } from "jodit/esm/core/ui/index";
/**
 * Global settings component
 */
export declare class UIGlobalSettings extends UIElement<IViewBased> {
    private state;
    protected options: {
        allowEditDisplayMode: boolean;
        allowEditPanelWidth: boolean;
        allowEditTheme: boolean;
    };
    private displayModeSelect;
    private panelWidthInput;
    private themeSelect;
    className(): string;
    constructor(view: IViewBased, state: {
        displayMode: AIAssistantDisplayMode;
        panelWidth: number;
        panelHeight: number;
        theme: AIAssistantTheme;
    }, options: {
        allowEditDisplayMode: boolean;
        allowEditPanelWidth: boolean;
        allowEditTheme: boolean;
    });
    setParentView(view: IViewBased): this;
    /**
     * Build settings fields
     */
    private build;
    /**
     * Handle display mode change
     */
    private onDisplayModeChange;
    /**
     * Handle panel width change
     */
    private onPanelWidthChange;
    /**
     * Handle theme change
     */
    private onThemeChange;
    destruct(): void;
    protected onStateDisplayModeChange(): void;
    protected onStatePanelWidthChange(): void;
    protected onStateThemeChange(): void;
}
