import { EditorChangeHandler, EditorI18nMessages, EditorLocale, ImageUploadConfig, SlashMenuConfig } from '../types/editor';
import { Editor } from '@milkdown/core';
/**
 * 定义 Milkdown 原生编辑器实例类型。
 */
export type NativeMilkdownEditor = ReturnType<typeof Editor.make>;
/**
 * 定义已配置编辑器的运行时句柄。
 */
export interface MilkdownEditorRuntime {
    /** Milkdown 原生编辑器实例。 */
    editor: NativeMilkdownEditor;
    /** 注册需要在 create 后延迟启用的插件。 */
    installRuntimePlugins: () => void;
    /** 同步 Markdown 内容。 */
    setMarkdown: (markdown: string) => void;
}
/**
 * 定义创建 Milkdown 编辑器运行时时所需参数。
 */
export interface CreateMilkdownEditorRuntimeOptions {
    /** 绑定的根节点。 */
    root: HTMLElement;
    /** 编辑器内部浮层 Portal 容器。 */
    portalContainer: HTMLElement;
    /** 编辑器内容附属浮层 Portal 容器。 */
    contentPortalContainer: HTMLElement;
    /** 初始 Markdown 内容。 */
    markdown: string;
    /** 是否只读。 */
    readOnly: boolean;
    /** 编辑器文案。 */
    messages?: EditorI18nMessages;
    /** 编辑器语言。 */
    locale?: EditorLocale;
    /** slash 菜单配置。 */
    slashMenu?: SlashMenuConfig;
    /** 图片上传配置。 */
    imageUpload?: ImageUploadConfig;
    /** Markdown 变化事件。 */
    onChange: EditorChangeHandler;
}
/**
 * 创建面向 React 生命周期的 Milkdown 编辑器运行时。
 */
export declare const createMilkdownEditorRuntime: (options: CreateMilkdownEditorRuntimeOptions) => MilkdownEditorRuntime;
//# sourceMappingURL=createEditor.d.ts.map