UNPKG

@ckeditor/ckeditor5-vue

Version:

Official Vue.js 3+ component for CKEditor 5 – the best browser-based rich text editor.

39 lines (38 loc) 3.04 kB
/** * @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<TEditorConstructor extends MultiRootEditorWithWatchdogRelaxedConstructor>(options: UseMultiRootEditorOptions<TEditorConstructor>): UseMultiRootEditorResult<ExtractEditorType<TEditorConstructor> & MultiRootEditor>; export type UseMultiRootEditorOptions<TEditorConstructor extends MultiRootEditorWithWatchdogRelaxedConstructor> = { editor: MaybeRefOrGetter<TEditorConstructor>; data: MaybeRefOrGetter<MultiRootEditorData>; rootsAttributes?: MaybeRefOrGetter<MultiRootEditorRootsAttributes | undefined>; config?: MaybeRefOrGetter<EditorConfig | undefined>; disabled?: MaybeRefOrGetter<boolean | undefined>; watchdogConfig?: MaybeRefOrGetter<WatchdogConfig | undefined>; disableWatchdog?: MaybeRefOrGetter<boolean | undefined>; disableTwoWayDataBinding?: MaybeRefOrGetter<boolean | undefined>; onReady?: (editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onDestroy?: (editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onChange?: (event: EventInfo, editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onFocus?: (event: EventInfo, editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onBlur?: (event: EventInfo, editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onUpdateData?: (data: MultiRootEditorData, event: EventInfo | null, editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onUpdateRootsAttributes?: (rootsAttributes: MultiRootEditorRootsAttributes, event: EventInfo | null, editor: ExtractEditorType<TEditorConstructor> & MultiRootEditor) => void; onError?: (error: Error | CKEditorError, description: MultiRootEditorErrorDescription<ExtractEditorType<TEditorConstructor> & MultiRootEditor>) => void; }; export type UseMultiRootEditorResult<TEditor extends MultiRootEditor> = { instance: Ref<EditorWithAttachedWatchdog<TEditor> | undefined>; roots: Ref<Array<string>>; data: Ref<MultiRootEditorData>; rootsAttributes: Ref<MultiRootEditorRootsAttributes>; setData(data: MultiRootEditorData): void; setRootsAttributes(rootsAttributes: MultiRootEditorRootsAttributes): void; addRoot(options: AddRootOptions): Promise<void>; removeRoot(name: string): Promise<void>; };