import ElementHelper from '../helpers/ElementHelper';
import CreatorBarOptions from '../interfaces/CreatorBarOptions';
import CreatorOptions from '../interfaces/CreatorOptions';
import ArenaServiceManager from './ArenaServiceManager';
import { ArenaNodeText } from '../interfaces/ArenaNode';
declare type Creator = {
    elem: ElementHelper;
    options: CreatorOptions;
    modifiers?: number;
    show: boolean;
};
export default class CreatorBar {
    private asm;
    enabled: boolean;
    elem: ElementHelper;
    list: ElementHelper;
    buttonWrapper: ElementHelper;
    availableCreators: {
        [key: string]: CreatorOptions;
    };
    creators: Creator[];
    showed: boolean;
    active: boolean;
    currentFocusElement: HTMLElement | undefined;
    keyDownListenerInstance: ((e: KeyboardEvent) => void);
    keyUpListenerInstance: ((e: KeyboardEvent) => void);
    constructor(asm: ArenaServiceManager);
    setOptions(creatorBarOptions: CreatorBarOptions): void;
    registerCreator(opts: CreatorOptions): void;
    private showHints;
    handleChangeSelection(): void;
    private keyUpListener;
    private keyDownListener;
    private activeCreator;
    private executeTool;
    private canShow;
    getElem(): HTMLElement;
    show(node: ArenaNodeText, target: HTMLElement): void;
    hide(): void;
    openList(): void;
    closeList(): void;
}
export {};
//# sourceMappingURL=CreatorBar.d.ts.map