import { BlockNoteEditor, CustomInlineContentConfig, CustomInlineContentImplementation, InlineContentFromConfig, InlineContentSchemaWithInlineContent, InlineContentSpec, PartialCustomInlineContentFromConfig, Props, PropSchema, StyleSchema } from "@blocknote/core"; import { FC, JSX } from "react"; export type ReactCustomInlineContentRenderProps = { inlineContent: InlineContentFromConfig; updateInlineContent: (update: PartialCustomInlineContentFromConfig) => void; editor: BlockNoteEditor, S>; contentRef: (node: HTMLElement | null) => void; }; export type ReactInlineContentImplementation = { render: FC>; toExternalHTML?: FC>; } & Omit, "render" | "toExternalHTML">; export declare function InlineContentWrapper(props: { children: JSX.Element; inlineContentType: IType; inlineContentProps: Props; propSchema: PSchema; }): import("react/jsx-runtime").JSX.Element; /** * Creates a custom inline content specification for use with React. This is the * React counterpart to the vanilla `createInlineContentSpec` and lets you define * custom inline content types (e.g., mentions, tags) using React components for * rendering. * * @param inlineContentConfig - The inline content type configuration, including * its `type` name, `propSchema`, and `content` mode (`"styled"` or `"none"`). * @param inlineContentImplementation - The React implementation, including a * `render` component and optionally a `toExternalHTML` component and `parse` * rules. * @returns An `InlineContentSpec` that can be passed to the editor's schema. */ export declare function createReactInlineContentSpec(inlineContentConfig: T, inlineContentImplementation: ReactInlineContentImplementation): InlineContentSpec;