/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ import type { InitialEditorStateType } from '../LexicalComposer.js'; import { type BaseBinding, type Binding, type BindingV2, type ExcludedProperties, type Provider, type SyncCursorPositionsFn } from '@lexical/yjs'; import { type LexicalEditor } from 'lexical'; import * as React from 'react'; import { type JSX } from 'react'; import { type Doc, type XmlElement } from 'yjs'; export type CursorsContainerRef = React.RefObject; export declare function useYjsCollaboration(editor: LexicalEditor, id: string, provider: Provider, docMap: Map, name: string, color: string, shouldBootstrap: boolean, binding: Binding, setDoc: React.Dispatch>, cursorsContainerRef?: CursorsContainerRef, initialEditorState?: InitialEditorStateType, awarenessData?: object, syncCursorPositionsFn?: SyncCursorPositionsFn, selectionHighlight?: boolean): JSX.Element; export declare function useYjsCollaborationV2__EXPERIMENTAL(editor: LexicalEditor, id: string, doc: Doc, provider: Provider, docMap: Map, name: string, color: string, options?: { awarenessData?: object; excludedProperties?: ExcludedProperties; rootName?: string; getXmlElement?: (ydoc: Doc) => XmlElement; selectionHighlight?: boolean; __shouldBootstrapUnsafe?: boolean; }): BindingV2; export declare function useYjsCursors(binding: BaseBinding, cursorsContainerRef?: CursorsContainerRef): JSX.Element; export declare function useYjsFocusTracking(editor: LexicalEditor, provider: Provider, name: string, color: string, awarenessData?: object): void; export declare function useYjsHistory(editor: LexicalEditor, binding: Binding): () => void; export declare function useYjsHistoryV2(editor: LexicalEditor, binding: BindingV2): () => void;