import { ComponentType } from 'react'; export type CustomComponentDisplayMode = 'inline' | 'block'; export type MarkstreamCustomComponent

= ComponentType

& { markstreamDisplay?: CustomComponentDisplayMode; }; export type CustomComponentMap = Record; export declare function subscribeCustomComponents(listener: () => void): () => void; export declare function getCustomComponentsRevision(): number; export declare function setCustomComponents(id: string, mapping: CustomComponentMap): void; export declare function setCustomComponents(mapping: CustomComponentMap): void; export declare function getCustomNodeComponents(customId?: string): CustomComponentMap; export declare function removeCustomComponents(id: string): void; export declare function clearGlobalCustomComponents(): void; export declare function getCustomComponentDisplay(component: ComponentType | null | undefined): CustomComponentDisplayMode | undefined; export declare function withMarkstreamComponentDisplay>(component: T, display: CustomComponentDisplayMode): T & { markstreamDisplay: CustomComponentDisplayMode; };