import { BaseEditor, BaseRange, Range, Element } from 'slate'; import { ReactEditor, RenderElementProps } from 'slate-react'; import { HistoryEditor } from 'slate-history'; import { CustomElement, CustomText } from './common'; export type CustomEditor = BaseEditor & ReactEditor & HistoryEditor & { nodeToDecorations?: Map; }; export type RenderElementPropsFor = RenderElementProps & { element: T; }; declare module 'slate' { interface CustomTypes { Editor: CustomEditor; Element: CustomElement; Text: CustomText; Range: BaseRange & { [key: string]: unknown; }; } }