import React from "react";
import { Editor, BaseSelection } from "slate";
import "./ReactSlate.css";
import { ReactSlateProps } from "../types";
/** Handle exposed by ReactSlate via ref */
export interface ReactSlateHandle {
    /** Get the Slate editor instance */
    getEditor: () => Editor;
    /** Get the current Slate selection */
    getSelection: () => BaseSelection;
    /** Convert a DOM range to a Slate selection range */
    getSelectionFromDOMRange: (domRange: globalThis.Range) => BaseSelection | null;
    /** Replace text at a given selection */
    replaceTextAtSelection: (selection: BaseSelection, newText: string) => void;
    /** Open the link dialog for the current selection */
    openLinkDialog: () => void;
}
export declare const ReactSlate: React.ForwardRefExoticComponent<ReactSlateProps & React.RefAttributes<ReactSlateHandle>>;
export default ReactSlate;
