/** * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options */ import { type MaybeRefOrGetter, type Ref } from 'vue'; import type { CKEditorError, EditorConfig, EventInfo, MultiRootEditor, WatchdogConfig } from 'ckeditor5'; import { type ExtractEditorType } from '@ckeditor/ckeditor5-integrations-common'; import { type EditorWithAttachedWatchdog } from '../utils/wrapWithWatchdogIfPresent.js'; import type { AddRootOptions, MultiRootEditorData, MultiRootEditorErrorDescription, MultiRootEditorRootsAttributes, MultiRootEditorWithWatchdogRelaxedConstructor } from './types.js'; export declare function useMultiRootEditor(options: UseMultiRootEditorOptions): UseMultiRootEditorResult & MultiRootEditor>; export type UseMultiRootEditorOptions = { editor: MaybeRefOrGetter; data: MaybeRefOrGetter; rootsAttributes?: MaybeRefOrGetter; config?: MaybeRefOrGetter; disabled?: MaybeRefOrGetter; watchdogConfig?: MaybeRefOrGetter; disableWatchdog?: MaybeRefOrGetter; disableTwoWayDataBinding?: MaybeRefOrGetter; onReady?: (editor: ExtractEditorType & MultiRootEditor) => void; onDestroy?: (editor: ExtractEditorType & MultiRootEditor) => void; onChange?: (event: EventInfo, editor: ExtractEditorType & MultiRootEditor) => void; onFocus?: (event: EventInfo, editor: ExtractEditorType & MultiRootEditor) => void; onBlur?: (event: EventInfo, editor: ExtractEditorType & MultiRootEditor) => void; onUpdateData?: (data: MultiRootEditorData, event: EventInfo | null, editor: ExtractEditorType & MultiRootEditor) => void; onUpdateRootsAttributes?: (rootsAttributes: MultiRootEditorRootsAttributes, event: EventInfo | null, editor: ExtractEditorType & MultiRootEditor) => void; onError?: (error: Error | CKEditorError, description: MultiRootEditorErrorDescription & MultiRootEditor>) => void; }; export type UseMultiRootEditorResult = { instance: Ref | undefined>; roots: Ref>; data: Ref; rootsAttributes: Ref; setData(data: MultiRootEditorData): void; setRootsAttributes(rootsAttributes: MultiRootEditorRootsAttributes): void; addRoot(options: AddRootOptions): Promise; removeRoot(name: string): Promise; };