UNPKG

@edtr-io/plugin-text

Version:
564 lines (533 loc) 24 kB
/* eslint-disable */ // Type definitions for slate-react 0.22 // Project: https://github.com/ianstormtaylor/slate // Definitions by: Andy Kent <https://github.com/andykent> // Jamie Talbot <https://github.com/majelbstoat> // Jan Löbel <https://github.com/JanLoebel> // Patrick Sachs <https://github.com/PatrickSachs> // Brandon Shelton <https://github.com/YangusKhan> // Irwan Fario Subastian <https://github.com/isubasti> // Hanna Greaves <https://github.com/sgreav> // Francesco Agnoletto <https://github.com/Kornil> // Jack Allen <https://github.com/jackall3n> // Benjamin Evenson <https://github.com/benjiro> // Kay Delaney <https://github.com/kaydelaney> // Brian Ingles <https://github.com/bmingles> // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.8 declare module 'slate-react' { import { Document, Editor as CoreEditor, Mark, Node as SlateNode, Block, Inline, Operation, SchemaProperties, Value, MarkProperties, BlockProperties, InlineProperties, Path, RangeProperties, NodeProperties, Controller, Plugin as CorePlugin, Range as SlateRange, Selection as SlateSelection, RangeType, Annotation, Decoration, PointProperties, PointJSON, Point, RangeTypeJSON, RangeTypeProperties, } from 'slate' import * as Immutable from 'immutable' import * as React from 'react' // Values prefixed with "data-..." (Used for spellchecking according to docs) export interface RenderAttributes { [key: string]: any } export interface RenderProps { attributes: RenderAttributes editor: Editor marks: Immutable.Set<Mark> annotations: Immutable.List<Annotation> | ReadonlyArray<Annotation> decorations: Immutable.List<Decoration> | ReadonlyArray<Annotation> node: SlateNode offset: number text: string } export interface RenderMarkProps extends RenderProps { mark: Mark children: React.ReactNode } export interface RenderAnnotationProps extends RenderProps { annotation: Annotation children: React.ReactNode } export interface RenderDecorationProps extends RenderProps { decoration: Decoration children: React.ReactNode } export interface RenderNodeProps { attributes: RenderAttributes children: React.ReactNode editor: Editor isFocused: boolean isSelected: boolean key: string parent: SlateNode readOnly: boolean } export interface RenderBlockProps extends RenderNodeProps { node: Block } export interface RenderDocumentProps extends RenderNodeProps { node: Document } export interface RenderInlineProps extends RenderNodeProps { node: Inline } export type EventHook<T = Event> = ( event: T, editor: Editor, next: () => any ) => any export interface Plugin<T extends Controller = Editor> extends CorePlugin<T> { decorateNode?: (node: SlateNode, editor: T, next: () => any) => any renderAnnotation?: ( props: RenderAnnotationProps, editor: T, next: () => any ) => any renderBlock?: (props: RenderBlockProps, editor: T, next: () => any) => any renderDecoration?: ( props: RenderDecorationProps, editor: T, next: () => any ) => any renderDocument?: ( props: RenderDocumentProps, editor: T, next: () => any ) => any renderEditor?: (props: EditorProps, editor: T, next: () => any) => any renderInline?: (props: RenderInlineProps, editor: T, next: () => any) => any renderMark?: (props: RenderMarkProps, editor: T, next: () => any) => any shouldNodeComponentUpdate?: ( previousProps: RenderNodeProps, props: RenderNodeProps, editor: CoreEditor, next: () => any ) => any onBeforeInput?: EventHook<React.FormEvent> onBlur?: EventHook<React.FocusEvent> onClick?: EventHook<React.MouseEvent> onCompositionEnd?: EventHook<React.CompositionEvent> onCompositionStart?: EventHook<React.CompositionEvent> onContextMenu?: EventHook<React.MouseEvent> onCopy?: EventHook<React.ClipboardEvent> onCut?: EventHook<React.ClipboardEvent> onDragEnd?: EventHook<React.DragEvent> onDragEnter?: EventHook<React.DragEvent> onDragExit?: EventHook<React.DragEvent> onDragLeave?: EventHook<React.DragEvent> onDragOver?: EventHook<React.DragEvent> onDragStart?: EventHook<React.DragEvent> onDrop?: EventHook<React.DragEvent> onFocus?: EventHook<React.FocusEvent> onInput?: EventHook<React.FormEvent> onKeyDown?: EventHook<React.KeyboardEvent> onPaste?: EventHook<React.ClipboardEvent> onSelect?: EventHook<React.SyntheticEvent> } export type PluginOrPlugins<T extends Controller = Editor> = | Plugin<T> | Plugins<T> export type Plugins = Array<PluginOrPlugins<T>> export interface OnChangeParam { operations: Immutable.List<Operation> value: Value } export type OnChangeFn = (change: OnChangeParam) => any export interface BasicEditorProps<T extends Controller = Editor> { value: Value autoCorrect?: boolean autoFocus?: boolean className?: string onChange?: OnChangeFn placeholder?: any plugins?: Plugins<T> readOnly?: boolean role?: string schema?: SchemaProperties spellCheck?: boolean style?: React.CSSProperties tabIndex?: number } export type EditorProps<T extends Controller = Editor> = BasicEditorProps<T> & Plugin<T> export interface EditorState { value: Value } export class Editor extends React.Component<EditorProps, EditorState> implements Controller { controller: CoreEditor readonly plugins: Plugin[] readonly operations: Immutable.List<Operation> readonly readOnly: boolean readonly value: Value // Instance methods resolveController( plugins: Plugin[], schema: SchemaProperties, commands: any[], queries: any[] ): void // Controller addAnnotation: CoreEditor['addAnnotation'] addMark: CoreEditor['addMark'] addMarks: CoreEditor['addMarks'] delete: CoreEditor['delete'] deleteBackward: CoreEditor['deleteBackward'] deleteCharBackward: CoreEditor['deleteCharBackward'] deleteCharForward: CoreEditor['deleteCharForward'] deleteForward: CoreEditor['deleteForward'] deleteLineBackward: CoreEditor['deleteLineBackward'] deleteLineForward: CoreEditor['deleteLineForward'] deleteWordBackward: CoreEditor['deleteWordBackward'] deleteWordForward: CoreEditor['deleteWordForward'] insertBlock: CoreEditor['insertBlock'] insertFragment: CoreEditor['insertFragment'] insertInline: CoreEditor['insertInline'] insertText: CoreEditor['insertText'] setAnchor: CoreEditor['setAnchor'] setAnnotation: CoreEditor['setAnnotation'] setBlocks: CoreEditor['setBlocks'] setData: CoreEditor['setData'] setEnd: CoreEditor['setEnd'] setFocus: CoreEditor['setFocus'] setInlines: CoreEditor['setInlines'] setStart: CoreEditor['setStart'] splitBlock: CoreEditor['splitBlock'] splitInline: CoreEditor['splitInline'] removeMark: CoreEditor['removeMark'] replaceMark: CoreEditor['replaceMark'] toggleMark: CoreEditor['toggleMark'] unwrapBlock: CoreEditor['unwrapBlock'] unwrapInline: CoreEditor['unwrapInline'] wrapBlock: CoreEditor['wrapBlock'] wrapInline: CoreEditor['wrapInline'] wrapText: CoreEditor['wrapText'] blur: CoreEditor['blur'] deselect: CoreEditor['deselect'] flip: CoreEditor['flip'] focus: CoreEditor['focus'] moveAnchorBackward: CoreEditor['moveAnchorBackward'] moveAnchorForward: CoreEditor['moveAnchorForward'] moveAnchorTo: CoreEditor['moveAnchorTo'] moveAnchorToEndOfBlock: CoreEditor['moveAnchorToEndOfBlock'] moveAnchorToEndOfInline: CoreEditor['moveAnchorToEndOfInline'] moveAnchorToEndOfDocument: CoreEditor['moveAnchorToEndOfDocument'] moveAnchorToEndOfNextBlock: CoreEditor['moveAnchorToEndOfNextBlock'] moveAnchorToEndOfNextInline: CoreEditor['moveAnchorToEndOfNextInline'] moveAnchorToEndOfNextText: CoreEditor['moveAnchorToEndOfNextText'] moveAnchorToEndOfNode: CoreEditor['moveAnchorToEndOfNode'] moveAnchorToEndOfPreviousBlock: CoreEditor['moveAnchorToEndOfPreviousBlock'] moveAnchorToEndOfPreviousInline: CoreEditor['moveAnchorToEndOfPreviousInline'] moveAnchorToEndOfPreviousText: CoreEditor['moveAnchorToEndOfPreviousText'] moveAnchorToEndOfText: CoreEditor['moveAnchorToEndOfText'] moveAnchorToStartOfBlock: CoreEditor['moveAnchorToStartOfBlock'] moveAnchorToStartOfDocument: CoreEditor['moveAnchorToStartOfDocument'] moveAnchorToStartOfInline: CoreEditor['moveAnchorToStartOfInline'] moveAnchorToStartOfNextBlock: CoreEditor['moveAnchorToStartOfNextBlock'] moveAnchorToStartOfNextInline: CoreEditor['moveAnchorToStartOfNextInline'] moveAnchorToStartOfNextText: CoreEditor['moveAnchorToStartOfNextText'] moveAnchorToStartOfNode: CoreEditor['moveAnchorToStartOfNode'] moveAnchorToStartOfPreviousBlock: CoreEditor['moveAnchorToStartOfPreviousBlock'] moveAnchorToStartOfPreviousInline: CoreEditor['moveAnchorToStartOfPreviousInline'] moveAnchorToStartOfPreviousText: CoreEditor['moveAnchorToStartOfPreviousText'] moveAnchorToStartOfText: CoreEditor['moveAnchorToStartOfText'] moveAnchorWordBackward: CoreEditor['moveAnchorWordBackward'] moveAnchorWordForward: CoreEditor['moveAnchorWordForward'] moveBackward: CoreEditor['moveBackward'] moveEndBackward: CoreEditor['moveEndBackward'] moveEndForward: CoreEditor['moveEndForward'] moveEndTo: CoreEditor['moveEndTo'] moveEndToEndOfBlock: CoreEditor['moveEndToEndOfBlock'] moveEndToEndOfDocument: CoreEditor['moveEndToEndOfDocument'] moveEndToEndOfInline: CoreEditor['moveEndToEndOfInline'] moveEndToEndOfNextBlock: CoreEditor['moveEndToEndOfNextBlock'] moveEndToEndOfNextInline: CoreEditor['moveEndToEndOfNextInline'] moveEndToEndOfNextText: CoreEditor['moveEndToEndOfNextText'] moveEndToEndOfNode: CoreEditor['moveEndToEndOfNode'] moveEndToEndOfPreviousBlock: CoreEditor['moveEndToEndOfPreviousBlock'] moveEndToEndOfPreviousInline: CoreEditor['moveEndToEndOfPreviousInline'] moveEndToEndOfPreviousText: CoreEditor['moveEndToEndOfPreviousText'] moveEndToEndOfText: CoreEditor['moveEndToEndOfText'] moveEndToStartOfBlock: CoreEditor['moveEndToStartOfBlock'] moveEndToStartOfDocument: CoreEditor['moveEndToStartOfDocument'] moveEndToStartOfInline: CoreEditor['moveEndToStartOfInline'] moveEndToStartOfNextBlock: CoreEditor['moveEndToStartOfNextBlock'] moveEndToStartOfNextInline: CoreEditor['moveEndToStartOfNextInline'] moveEndToStartOfNextText: CoreEditor['moveEndToStartOfNextText'] moveEndToStartOfNode: CoreEditor['moveEndToStartOfNode'] moveEndToStartOfPreviousBlock: CoreEditor['moveEndToStartOfPreviousBlock'] moveEndToStartOfPreviousInline: CoreEditor['moveEndToStartOfPreviousInline'] moveEndToStartOfPreviousText: CoreEditor['moveEndToStartOfPreviousText'] moveEndToStartOfText: CoreEditor['moveEndToStartOfText'] moveEndWordBackward: CoreEditor['moveEndWordBackward'] moveEndWordForward: CoreEditor['moveEndWordForward'] moveFocusBackward: CoreEditor['moveFocusBackward'] moveFocusForward: CoreEditor['moveFocusForward'] moveFocusTo: CoreEditor['moveFocusTo'] moveFocusToEndOfBlock: CoreEditor['moveFocusToEndOfBlock'] moveFocusToEndOfDocument: CoreEditor['moveFocusToEndOfDocument'] moveFocusToEndOfInline: CoreEditor['moveFocusToEndOfInline'] moveFocusToEndOfNextBlock: CoreEditor['moveFocusToEndOfNextBlock'] moveFocusToEndOfNextInline: CoreEditor['moveFocusToEndOfNextInline'] moveFocusToEndOfNextText: CoreEditor['moveFocusToEndOfNextText'] moveFocusToEndOfNode: CoreEditor['moveFocusToEndOfNode'] moveFocusToEndOfPreviousBlock: CoreEditor['moveFocusToEndOfPreviousBlock'] moveFocusToEndOfPreviousInline: CoreEditor['moveFocusToEndOfPreviousInline'] moveFocusToEndOfPreviousText: CoreEditor['moveFocusToEndOfPreviousText'] moveFocusToEndOfText: CoreEditor['moveFocusToEndOfText'] moveFocusToStartOfBlock: CoreEditor['moveFocusToStartOfBlock'] moveFocusToStartOfDocument: CoreEditor['moveFocusToStartOfDocument'] moveFocusToStartOfInline: CoreEditor['moveFocusToStartOfInline'] moveFocusToStartOfNextBlock: CoreEditor['moveFocusToStartOfNextBlock'] moveFocusToStartOfNextInline: CoreEditor['moveFocusToStartOfNextInline'] moveFocusToStartOfNextText: CoreEditor['moveFocusToStartOfNextText'] moveFocusToStartOfNode: CoreEditor['moveFocusToStartOfNode'] moveFocusToStartOfPreviousBlock: CoreEditor['moveFocusToStartOfPreviousBlock'] moveFocusToStartOfPreviousInline: CoreEditor['moveFocusToStartOfPreviousInline'] moveFocusToStartOfPreviousText: CoreEditor['moveFocusToStartOfPreviousText'] moveFocusToStartOfText: CoreEditor['moveFocusToStartOfText'] moveFocusWordBackward: CoreEditor['moveFocusWordBackward'] moveFocusWordForward: CoreEditor['moveFocusWordForward'] moveForward: CoreEditor['moveForward'] moveStartForward: CoreEditor['moveStartForward'] moveStartBackward: CoreEditor['moveStartBackward'] moveStartTo: CoreEditor['moveStartTo'] moveStartToEndOfBlock: CoreEditor['moveStartToEndOfBlock'] moveStartToEndOfDocument: CoreEditor['moveStartToEndOfDocument'] moveStartToEndOfInline: CoreEditor['moveStartToEndOfInline'] moveStartToEndOfNextBlock: CoreEditor['moveStartToEndOfNextBlock'] moveStartToEndOfNextInline: CoreEditor['moveStartToEndOfNextInline'] moveStartToEndOfNextText: CoreEditor['moveStartToEndOfNextText'] moveStartToEndOfNode: CoreEditor['moveStartToEndOfNode'] moveStartToEndOfPreviousBlock: CoreEditor['moveStartToEndOfPreviousBlock'] moveStartToEndOfPreviousInline: CoreEditor['moveStartToEndOfPreviousInline'] moveStartToEndOfPreviousText: CoreEditor['moveStartToEndOfPreviousText'] moveStartToEndOfText: CoreEditor['moveStartToEndOfText'] moveStartToStartOfBlock: CoreEditor['moveStartToStartOfBlock'] moveStartToStartOfDocument: CoreEditor['moveStartToStartOfDocument'] moveStartToStartOfInline: CoreEditor['moveStartToStartOfInline'] moveStartToStartOfNextBlock: CoreEditor['moveStartToStartOfNextBlock'] moveStartToStartOfNextInline: CoreEditor['moveStartToStartOfNextInline'] moveStartToStartOfNextText: CoreEditor['moveStartToStartOfNextText'] moveStartToStartOfNode: CoreEditor['moveStartToStartOfNode'] moveStartToStartOfPreviousBlock: CoreEditor['moveStartToStartOfPreviousBlock'] moveStartToStartOfPreviousInline: CoreEditor['moveStartToStartOfPreviousInline'] moveStartToStartOfPreviousText: CoreEditor['moveStartToStartOfPreviousText'] moveStartToStartOfText: CoreEditor['moveStartToStartOfText'] moveStartWordBackward: CoreEditor['moveStartWordBackward'] moveStartWordForward: CoreEditor['moveStartWordForward'] moveTo: CoreEditor['moveTo'] moveToAnchor: CoreEditor['moveToAnchor'] moveToEnd: CoreEditor['moveToEnd'] moveToEndOfBlock: CoreEditor['moveToEndOfBlock'] moveToEndOfDocument: CoreEditor['moveToEndOfDocument'] moveToEndOfInline: CoreEditor['moveToEndOfInline'] moveToEndOfNextBlock: CoreEditor['moveToEndOfNextBlock'] moveToEndOfNextInline: CoreEditor['moveToEndOfNextInline'] moveToEndOfNextText: CoreEditor['moveToEndOfNextText'] moveToEndOfNode: CoreEditor['moveToEndOfNode'] moveToEndOfPreviousBlock: CoreEditor['moveToEndOfPreviousBlock'] moveToEndOfPreviousInline: CoreEditor['moveToEndOfPreviousInline'] moveToEndOfPreviousText: CoreEditor['moveToEndOfPreviousText'] moveToEndOfText: CoreEditor['moveToEndOfText'] moveToFocus: CoreEditor['moveToFocus'] moveToRangeOfDocument: CoreEditor['moveToRangeOfDocument'] moveToRangeOfNode: CoreEditor['moveToRangeOfNode'] moveToStart: CoreEditor['moveToStart'] moveToStartOfBlock: CoreEditor['moveToStartOfBlock'] moveToStartOfDocument: CoreEditor['moveToStartOfDocument'] moveToStartOfInline: CoreEditor['moveToStartOfInline'] moveToStartOfNextBlock: CoreEditor['moveToStartOfNextBlock'] moveToStartOfNextInline: CoreEditor['moveToStartOfNextInline'] moveToStartOfNextText: CoreEditor['moveToStartOfNextText'] moveToStartOfNode: CoreEditor['moveToStartOfNode'] moveToStartOfPreviousBlock: CoreEditor['moveToStartOfPreviousBlock'] moveToStartOfPreviousInline: CoreEditor['moveToStartOfPreviousInline'] moveToStartOfPreviousText: CoreEditor['moveToStartOfPreviousText'] moveToStartOfText: CoreEditor['moveToStartOfText'] moveWordBackward: CoreEditor['moveWordBackward'] moveWordForward: CoreEditor['moveWordForward'] save: CoreEditor['save'] select: CoreEditor['select'] addMarkAtRange: CoreEditor['addMarkAtRange'] addMarksAtRange: CoreEditor['addMarksAtRange'] deleteAtRange: CoreEditor['deleteAtRange'] deleteBackwardAtRange: CoreEditor['deleteBackwardAtRange'] deleteCharBackwardAtRange: CoreEditor['deleteCharBackwardAtRange'] deleteCharForwardAtRange: CoreEditor['deleteCharForwardAtRange'] deleteForwardAtRange: CoreEditor['deleteForwardAtRange'] deleteLineBackwardAtRange: CoreEditor['deleteLineBackwardAtRange'] deleteLineForwardAtRange: CoreEditor['deleteLineForwardAtRange'] deleteWordBackwardAtRange: CoreEditor['deleteWordBackwardAtRange'] deleteWordForwardAtRange: CoreEditor['deleteWordForwardAtRange'] insertBlockAtRange: CoreEditor['insertBlockAtRange'] insertFragmentAtRange: CoreEditor['insertFragmentAtRange'] insertInlineAtRange: CoreEditor['insertInlineAtRange'] insertTextAtRange: CoreEditor['insertTextAtRange'] removeMarkAtRange: CoreEditor['removeMarkAtRange'] setBlocksAtRange: CoreEditor['setBlocksAtRange'] setInlinesAtRange: CoreEditor['setInlinesAtRange'] splitBlockAtRange: CoreEditor['splitBlockAtRange'] splitInlineAtRange: CoreEditor['splitInlineAtRange'] toggleMarkAtRange: CoreEditor['toggleMarkAtRange'] unwrapBlockAtRange: CoreEditor['unwrapBlockAtRange'] unwrapInlineAtRange: CoreEditor['unwrapInlineAtRange'] wrapBlockAtRange: CoreEditor['wrapBlockAtRange'] wrapInlineAtRange: CoreEditor['wrapInlineAtRange'] wrapTextAtRange: CoreEditor['wrapTextAtRange'] addMarkByKey: CoreEditor['addMarkByKey'] addMarkByPath: CoreEditor['addMarkByPath'] addMarksByPath: CoreEditor['addMarksByPath'] insertNodeByKey: CoreEditor['insertNodeByKey'] insertNodeByPath: CoreEditor['insertNodeByPath'] insertFragmentByKey: CoreEditor['insertFragmentByKey'] insertFragmentByPath: CoreEditor['insertFragmentByPath'] insertTextByKey: CoreEditor['insertTextByKey'] insertTextByPath: CoreEditor['insertTextByPath'] mergeNodeByKey: CoreEditor['mergeNodeByKey'] mergeNodeByPath: CoreEditor['mergeNodeByPath'] moveNodeByKey: CoreEditor['moveNodeByKey'] moveNodeByPath: CoreEditor['moveNodeByPath'] removeAllMarksByKey: CoreEditor['removeAllMarksByKey'] removeAllMarksByPath: CoreEditor['removeAllMarksByPath'] removeMarkByKey: CoreEditor['removeMarkByKey'] removeMarkByPath: CoreEditor['removeMarkByPath'] removeMarksByPath: CoreEditor['removeMarksByPath'] removeNodeByKey: CoreEditor['removeNodeByKey'] removeNodeByPath: CoreEditor['removeNodeByPath'] removeTextByKey: CoreEditor['removeTextByKey'] removeTextByPath: CoreEditor['removeTextByPath'] replaceNodeByKey: CoreEditor['replaceNodeByKey'] replaceNodeByPath: CoreEditor['replaceNodeByPath'] replaceTextByKey: CoreEditor['replaceTextByKey'] replaceTextByPath: CoreEditor['replaceTextByPath'] setMarkByKey: CoreEditor['setMarkByKey'] setMarkByPath: CoreEditor['setMarkByPath'] setNodeByKey: CoreEditor['setNodeByKey'] setNodeByPath: CoreEditor['setNodeByPath'] setTextByKey: CoreEditor['setTextByKey'] setTextByPath: CoreEditor['setTextByPath'] splitDescendantsByKey: CoreEditor['splitDescendantsByKey'] splitDescendantsByPath: CoreEditor['splitDescendantsByPath'] splitNodeByKey: CoreEditor['splitNodeByKey'] splitNodeByPath: CoreEditor['splitNodeByPath'] unwrapBlockByKey: CoreEditor['unwrapBlockByKey'] unwrapBlockByPath: CoreEditor['unwrapBlockByPath'] unwrapChildrenByKey: CoreEditor['unwrapChildrenByKey'] unwrapChildrenByPath: CoreEditor['unwrapChildrenByPath'] unwrapInlineByKey: CoreEditor['unwrapInlineByKey'] unwrapInlineByPath: CoreEditor['unwrapInlineByPath'] unwrapNodeByKey: CoreEditor['unwrapNodeByKey'] unwrapNodeByPath: CoreEditor['unwrapNodeByPath'] wrapBlockByKey: CoreEditor['wrapBlockByKey'] wrapBlockByPath: CoreEditor['wrapBlockByPath'] wrapInlineByKey: CoreEditor['wrapInlineByKey'] wrapInlineByPath: CoreEditor['wrapInlineByPath'] wrapNodeByKey: CoreEditor['wrapNodeByKey'] wrapNodeByPath: CoreEditor['wrapNodeByPath'] normalize: CoreEditor['normalize'] withoutNormalizing: CoreEditor['withoutNormalizing'] withoutSaving: CoreEditor['withoutSaving'] withoutMerging: CoreEditor['withoutMerging'] redo: CoreEditor['redo'] undo: CoreEditor['undo'] snapshotSelection: CoreEditor['snapshotSelection'] command: CoreEditor['command'] query: CoreEditor['query'] hasCommand: CoreEditor['hasCommand'] hasQuery: CoreEditor['hasQuery'] registerCommand: CoreEditor['registerCommand'] registerQuery: CoreEditor['registerQuery'] applyOperation: CoreEditor['applyOperation'] run: CoreEditor['run'] removeAnnotation: CoreEditor['removeAnnotation'] findDOMNode: ( path: Immutable.List<number> | number[] ) => React.ReactNode | null findDOMPoint: ( point: PointProperties | PointJSON | Point ) => { node: Node; offset: number } | null findDOMRange: ( range: RangeTypeProperties | RangeTypeJSON | RangeType ) => Range | null findNode: (element: Element) => SlateNode | null findEventRange: (event: Event | React.SyntheticEvent) => SlateRange | null findPath: (element: Element) => Immutable.List<number> | null findPoint: (nativeNode: Element, nativeOffset: number) => Point | null findRange: (domRange: Range | Selection) => SlateRange | null findSelection: (domSelection: Selection) => SlateSelection | null } export type SlateType = | 'fragment' | 'html' | 'node' | 'rich' | 'text' | 'files' // Utilities export function cloneFragment( event: Event | React.SyntheticEvent, editor: CoreEditor, callback?: () => void ): void export function getEventTransfer(event: Event | React.SyntheticEvent): { type: SlateType node: SlateNode } export function setEventTransfer( event: Event | React.SyntheticEvent, type: SlateType, data: any ): void // Deprecated export function findDOMNode(node: SlateNode | string, win?: Window): Element export function findDOMPoint( point: Point, win?: Window ): { node: Node; offset: number } | null export function findDOMRange( range: RangeTypeProperties | RangeTypeJSON | RangeType, win?: Window ): Range | null export function findNode(element: Element, editor: CoreEditor): SlateNode export function findPath( element: Element, editor: CoreEditor ): Immutable.List<number> | null export function findPoint( nativeNode: Element, nativeOffset: number, editor: CoreEditor ): Point | null export function findRange( domRange: Range | Selection, editor: CoreEditor ): SlateRange | null export function getEventRange( event: Event | React.SyntheticEvent, editor: CoreEditor ): SlateRange | null }