import { ToolbarItem, ToolbarType } from '../../types/toolbar';
import { BaseClass } from '../base';
declare class ToolbarConfig extends BaseClass {
    private toolbars;
    private readonly defaultToolbars;
    private toolbarOrderMap;
    private initialized;
    private plugins;
    constructor(initialToolbars: ToolbarItem[]);
    private initToolbar;
    private initToolbarOrderMap;
    getDefaultToolbar(): ToolbarItem[];
    getToolbarOrder(type: ToolbarType): number;
    getAllToolbarsOrder(): {
        type: ToolbarType;
        order: number;
    }[];
    getAllToolbars(): ToolbarItem[];
    private getToolbarByType;
    private validateOrder;
    addToolItem(toolbarItem: ToolbarItem): void;
    setToolbarItemOrder(type: ToolbarType, newOrder: number): void;
    setToolbarOrder(orders: Record<ToolbarType, number>): void;
    removeToolItem(type: ToolbarType): void;
    updateToolbars(newToolbars: ToolbarItem[]): void;
    updateToolbarItem(type: ToolbarType, partialToolbarItem: Partial<ToolbarItem>): void;
    reset(): void;
    reorderToolbar(newOrder: ToolbarType[]): void;
    swapToolbarsPosition(firstType: ToolbarType, secondType: ToolbarType): void;
    registerMethod(name: string, method: (...args: any[]) => any, override?: boolean): void;
    unregisterMethod(name: string): void;
    callMethod(name: string, ...args: any[]): any;
    destroy(): void;
}
export declare const toolbarConfig: ToolbarConfig;
export {};
