import { NodeRendererProps, NodeEditorProps, TextPlugin, NodeControlsProps } from '../..';
import * as React from 'react';
import { Editor } from 'slate';
export declare const katexBlockNode = "@splish-me/katex-block";
export declare const katexInlineNode = "@splish-me/katex-inline";
export declare const isKatex: (editor: Editor) => boolean;
export declare const insertKatex: (editor: Editor) => Editor;
export declare const removeKatex: (editor: Editor) => Editor;
export interface KatexPluginOptions {
    EditorComponent?: React.ComponentType<NodeEditorProps & {
        name: string;
    }>;
    RenderComponent?: React.ComponentType<NodeRendererProps>;
    ControlsComponent?: React.ComponentType<NodeControlsProps>;
}
export declare const createKatexPlugin: ({ EditorComponent, RenderComponent }?: KatexPluginOptions) => (pluginClosure: React.RefObject<{
    overlayContext: import("@edtr-io/core/src").OverlayContextValue;
    name: string;
    parent?: import("../../factory/editor").SlateEditorAdditionalProps | undefined;
}>) => TextPlugin;
//# sourceMappingURL=index.d.ts.map