lexical-vue
Version:
An extensible Vue 3 web text-editor based on Lexical.
24 lines (23 loc) • 1.14 kB
TypeScript
import * as __VLS_VINE from 'vue-vine/internals';
import type { BaseBinding, Binding, BindingV2, Provider, UserState } from '@lexical/yjs';
import type { Klass, LexicalNode } from 'lexical';
import type { Doc } from 'yjs';
import type { InitialEditorStateType } from './types';
type AnyBinding = Binding | BindingV2;
interface SyncCursorPositionsOptions {
getAwarenessStates?: (binding: BaseBinding, provider: Provider) => Map<number, UserState>;
}
interface CollaborationPluginProps {
id: string;
providerFactory: (id: string, yjsDocMap: Map<string, Doc>) => Provider;
shouldBootstrap: boolean;
username?: string;
cursorColor?: string;
cursorsContainerRef?: HTMLElement | null;
initialEditorState?: InitialEditorStateType;
excludedProperties?: Map<Klass<LexicalNode>, Set<string>>;
awarenessData?: object;
syncCursorPositionsFn?: (binding: AnyBinding, provider: Provider, options?: SyncCursorPositionsOptions) => void;
}
export declare function CollaborationPlugin(props: __VLS_VINE.VineComponentCommonProps & CollaborationPluginProps, context: {}): __VLS_VINE.VueVineComponent;
export {};