import { MutableRefObject } from 'react'; import { Crepe } from '@milkdown/crepe'; import { EditorView } from '@milkdown/kit/prose/view'; import { BrainfishEditorProps, MediaUploadHandler } from '../../types'; interface BuildCrepeOpts { root: HTMLElement; defaultValue: string | undefined; resolvedThemeRef: MutableRefObject<'light' | 'dark'>; onUploadImage?: MediaUploadHandler; onGrammarCheckRef: MutableRefObject<((text: string) => Promise) | undefined>; imageErrorFallbackUrlRef: MutableRefObject; /** Live channel list — slash items for variable content only when non-empty. */ channelsRef?: MutableRefObject>; /** Current ProseMirror view — used to hide Variable content slash when nested. */ editorViewRef?: MutableRefObject; } /** * Constructs the Crepe instance with all built-in feature configs: * BlockEdit (slash menu), Toolbar, ImageBlock, CodeMirror. */ export declare function buildCrepe({ root, defaultValue, resolvedThemeRef, onUploadImage, onGrammarCheckRef, imageErrorFallbackUrlRef, channelsRef, editorViewRef, }: BuildCrepeOpts): Crepe; export {};