import { EditorColor, EditorHeading, EditorListType, EditorTextAlign } from '..';
import { Editor } from '@tiptap/core';
import { Icon } from 'itlab-icons';
import { ComputedRef, Ref } from 'vue';
export type EditorCommand = {
    label: string;
    icon: Icon;
    isActive?: boolean | undefined;
    isDisabled: boolean;
    execute: () => boolean | undefined;
};
export type StaticEditorCommand = Omit<EditorCommand, 'execute' | 'isDisabled'> & Partial<Pick<EditorCommand, 'execute' | 'isDisabled'>>;
export type EditorCommandGroup = {
    parent: StaticEditorCommand;
    groups: Record<string, EditorCommand[]>;
};
export declare function useEditorCommands(editor: Ref<Editor | undefined>): ComputedRef<EditorCommands>;
export declare class EditorCommands {
    private readonly editor;
    constructor(editor: Ref<Editor | undefined>);
    clearFormat(): EditorCommand;
    setLink(): EditorCommand;
    toggleBlockquote(): EditorCommand;
    toggleCode(): EditorCommand;
    toggleCodeBlock(): EditorCommand;
    undo(): EditorCommand;
    redo(): EditorCommand;
    setColor(color: EditorColor): EditorCommand;
    unsetColor(): EditorCommand;
    setTextAlign(textAlign: EditorTextAlign): EditorCommand;
    setTextAlignLeft(): EditorCommand;
    setTextAlignCenter(): EditorCommand;
    setTextAlignRight(): EditorCommand;
    setTextAligns(): EditorCommand[];
    toggleBold(): EditorCommand;
    toggleItalic(): EditorCommand;
    toggleUnderline(): EditorCommand;
    toggleStrike(): EditorCommand;
    toggleTextFormats(): EditorCommand[];
    setParagraph(): EditorCommand;
    toggleArticle(): EditorCommand;
    toggleFootnote(): EditorCommand;
    toggleHeading(heading: EditorHeading): EditorCommand;
    toggleHeading1(): EditorCommand;
    toggleHeading2(): EditorCommand;
    toggleHeading3(): EditorCommand;
    toggleSuperscript(): EditorCommand;
    toggleSubscript(): EditorCommand;
    private get canLiftListItem();
    private get canToggleAnyList();
    unsetList(): EditorCommand;
    toggleList(listType: EditorListType): EditorCommand;
    toggleOrderedList(): EditorCommand;
    toggleBulletList(): EditorCommand;
    toggleTaskList(): EditorCommand;
    sinkListItem(): EditorCommand;
    liftListItem(): EditorCommand;
    insertTable(): EditorCommand;
    addTableRowBefore(): EditorCommand;
    addTableRowAfter(): EditorCommand;
    addTableColumnBefore(): EditorCommand;
    addTableColumnAfter(): EditorCommand;
    deleteTable(): EditorCommand;
    deleteTableRow(): EditorCommand;
    deleteTableColumn(): EditorCommand;
    mergeTableCells(): EditorCommand;
    splitTableCells(): EditorCommand;
    toggleTableHeaderColumn(): EditorCommand;
    toggleTableHeaderRow(): EditorCommand;
    toggleTableHeaderCell(): EditorCommand;
}
