import type { UmbTiptapToolbarValue } from '../../components/types.js';
import type { UmbTiptapToolbarExtension, UmbTiptapToolbarGroupViewModel, UmbTiptapToolbarRowViewModel } from '../types.js';
import { UmbContextBase } from '../../../../libs/class-api/index.js';
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
export declare class UmbTiptapToolbarConfigurationContext extends UmbContextBase {
    #private;
    readonly extensions: import("rxjs").Observable<import("../types.js").UmbTiptapExtensionBase[]>;
    readonly reload: import("rxjs").Observable<boolean>;
    readonly toolbar: import("rxjs").Observable<UmbTiptapToolbarRowViewModel[]>;
    constructor(host: UmbControllerHost);
    cloneToolbarValue(value?: UmbTiptapToolbarValue | null): UmbTiptapToolbarValue;
    filterExtensions(query: string): Array<UmbTiptapToolbarExtension>;
    getExtensionByAlias(alias: string): UmbTiptapToolbarExtension;
    isExtensionEnabled(alias: string): boolean;
    isExtensionInUse(alias: string): boolean;
    isValidToolbarValue(value: unknown): value is UmbTiptapToolbarValue;
    insertToolbarItem(alias: string, to: [number, number, number]): void;
    insertToolbarGroup(rowIndex: number, groupIndex: number): void;
    insertToolbarRow(rowIndex: number): void;
    moveToolbarItem(from: [number, number, number], to: [number, number, number]): void;
    removeToolbarItem(from: [number, number, number]): void;
    removeToolbarGroup(rowIndex: number, groupIndex: number): void;
    removeToolbarRow(rowIndex: number): void;
    setToolbar(value?: UmbTiptapToolbarValue | null): void;
    updateToolbarItem(aliases: Array<string>, to: [number, number]): void;
    updateToolbarRow(rowIndex: number, groups: Array<UmbTiptapToolbarGroupViewModel>): void;
}
