import { OmniaTheming, BlockInstance } from "@omnia/fx/ux";
import { ToolbarExtension } from "../../ToolbarExtension";
import { TipTapEditor, IMessageBusSubscriptionHandler, GuidValue, IOmniaContext } from "@omnia/fx-models";
import { TextCompletionMenuBar, TextCompletionToolbarProperties } from "../../../../models";
export default class TextCompletionMenu extends ToolbarExtension implements TextCompletionToolbarProperties {
    menubar?: TextCompletionMenuBar;
    onContentChanged?: (content: string) => void;
    editor: TipTapEditor;
    editorId: GuidValue;
    private loc;
    subscriptionHandler: IMessageBusSubscriptionHandler;
    private textCompletionHandler;
    private multilingualStore;
    private aiSettingStore;
    private sidePanelContext;
    private aiService;
    omniaTheming: OmniaTheming;
    blockInstance: BlockInstance;
    protected omniaContext: IOmniaContext;
    selectedText: string;
    private aiSettings;
    private validateSelection;
    private isValidating;
    private isExecutingPrompt;
    private menuModel;
    private max_accept_token;
    mounted(): void;
    onValidateSelectionChange(newVal: boolean): void;
    created(): void;
    beforeDestroy(): void;
    private onClickOpenSidePanel;
    private getSelectionText;
    validateSelectedText(): Promise<void>;
    private setSelectedPrompt;
    renderMenuSelectionItem(): VueTsxSupport.JSX.Element;
    renderLoadingMenu(): VueTsxSupport.JSX.Element;
    renderMenu(isAnimatedGif: boolean, validated?: boolean): VueTsxSupport.JSX.Element;
    renderDefaultButtonBehavior(isAnimatedGif: boolean): VueTsxSupport.JSX.Element;
    render(): VueTsxSupport.JSX.Element;
}
