import type { Editor } from '../externals.js';
import type { ManifestTiptapToolbarExtension, UmbTiptapToolbarElementApi } from './types.js';
import { UmbControllerBase } from '../../../libs/class-api/index.js';
import type { UmbPropertyEditorConfigCollection } from '../../core/property-editor/index.js';
export declare abstract class UmbTiptapToolbarElementApiBase extends UmbControllerBase implements UmbTiptapToolbarElementApi {
    #private;
    /**
     * The manifest for the extension.
     */
    manifest?: ManifestTiptapToolbarExtension;
    /**
     * The data type configuration for the property editor that the editor is used for.
     */
    configuration?: UmbPropertyEditorConfigCollection;
    /**
     * A method to execute the toolbar element action.
     * @see {ManifestTiptapToolbarExtension}
     * @param {Editor} editor The editor instance.
     */
    abstract execute(editor?: Editor): void;
    /**
     * Informs the toolbar element if it is active or not. It uses the manifest meta alias to check if the toolbar element is active.
     * @see {ManifestTiptapToolbarExtension}
     * @param {Editor} editor The editor instance.
     * @returns {boolean} Returns true if the toolbar element is active.
     */
    isActive(editor?: Editor): boolean;
    /**
     * Informs the toolbar element if it is disabled or not.
     * @see {ManifestTiptapToolbarExtension}
     * @param {Editor} editor The editor instance.
     * @returns {boolean} Returns true if the toolbar element is disabled.
     */
    isDisabled(editor?: Editor): boolean;
}
