import { Crepe } from '@milkdown/crepe'; import { useNodeViewFactory } from '@prosemirror-adapter/react'; import { AttachmentConfig } from './attachmentUpload'; import { SlashMenuItemConfig } from './slash-items'; import { MediaUploadHandler } from '../../types'; export interface ConfigureAttachmentOptions { nodeViewFactory: ReturnType; /** Optional callback to upload file attachments. If not provided, uses blob URLs. */ onUploadFile?: MediaUploadHandler; } /** Minimal interface for slash menu group returned by builder.addGroup() */ interface SlashMenuGroup { addItem: (key: string, item: SlashMenuItemConfig) => SlashMenuGroup; } /** Registers attachment NodeView and upload config for slash menu. */ export declare function configureAttachment(crepe: Crepe, { nodeViewFactory, onUploadFile }: ConfigureAttachmentOptions): void; export declare function configureAttachmentSlashMenu(group: SlashMenuGroup): void; export { AttachmentNodeView, configureAttachmentNodeView } from './node-view'; export type { AttachmentConfig };