import { EventEmitter } from '../../stencil-public-runtime';
import { BlockLanguages } from '../../models/block-languages';
import { BlockElement } from '../../models/element';
import { ElementAction } from '../../models/element-action';
import { ElementQuestion } from '../../models/element-question';
import { ElementLabels } from '../../models/labels';
export declare class ElementEditor {
    #private;
    private el;
    elementAction: ElementAction[];
    elementQuestion: ElementQuestion[];
    language?: string;
    languages: BlockLanguages;
    label: ElementLabels;
    name: string;
    value: BlockElement;
    onDelete: EventEmitter;
    onDuplicate: EventEmitter;
    private _tick;
    handleAction: (action: ElementAction, event: Event) => Promise<void>;
    watchLanguage(): void;
    create(path: string, el: any): Promise<void>;
    reattachMenu(): Promise<void>;
    componentWillLoad(): void;
    renderAction(action: ElementAction): any;
    renderQuestion(question: ElementQuestion): any;
    render(): any;
}
