import { BlockNoteEditor, StyleConfig } from "@blocknote/core"; import { FC } from "react"; export type ReactCustomStyleImplementation = { render: FC<{ value: T["propSchema"] extends "boolean" ? undefined : string; contentRef: (el: HTMLElement | null) => void; editor: BlockNoteEditor; }>; runsBefore?: string[]; }; /** * Creates a custom style specification for use with React. This is the React * counterpart to the vanilla `createStyleSpec` and lets you define custom text * styles (e.g., font color, highlight) using React components for rendering. * * @param styleConfig - The style configuration, including its `type` name and * `propSchema` (`"boolean"` or `"string"`). * @param styleImplementation - The React implementation, including a `render` * component that receives the style value, a `contentRef`, and the editor. * @returns A style spec that can be passed to the editor's schema. */ export declare function createReactStyleSpec(styleConfig: T, styleImplementation: ReactCustomStyleImplementation): { config: T; implementation: import("@blocknote/core").StyleImplementation; };