import React from 'react';
import { ReactCodeMirrorProps, ReactCodeMirrorRef } from '@uiw/react-codemirror';
import { MarkdownPreviewProps, MarkdownPreviewRef } from '@uiw/react-markdown-preview';
import { IToolBarProps } from './components/ToolBar';
import './index.less';
export * from './commands';
export declare const scrollerStyle: import("@codemirror/state").Extension;
export interface IMarkdownEditor extends ReactCodeMirrorProps {
    className?: string;
    prefixCls?: string;
    /** The raw markdown that will be converted to html (**required**) */
    value?: string;
    /** Shows a preview that will be converted to html. */
    visible?: boolean;
    visibleEditor?: boolean;
    /** Option to hide the tool bar. */
    hideToolbar?: boolean;
    /** Tool display settings. */
    toolbars?: IToolBarProps['toolbars'];
    /** Tool display settings. */
    toolbarsMode?: IToolBarProps['toolbars'];
    /** [@uiw/react-markdown-preview](https://github.com/uiwjs/react-markdown-preview#options-props) options */
    previewProps?: MarkdownPreviewProps;
}
export interface ToolBarProps {
    editor?: React.RefObject<ReactCodeMirrorRef>;
    preview: React.RefObject<MarkdownPreviewRef>;
    container: React.RefObject<HTMLDivElement>;
    containerEditor: React.RefObject<HTMLDivElement>;
    editorProps: IMarkdownEditor;
}
export interface MarkdownEditorRef {
    editor: React.RefObject<ReactCodeMirrorRef>;
    preview?: React.RefObject<MarkdownPreviewRef> | null;
}
declare const _default: React.ForwardRefExoticComponent<IMarkdownEditor & React.RefAttributes<MarkdownEditorRef>>;
export default _default;
