import { BoxProps, CompoundStylesApiProps, ElementProps, Factory } from '@mantine/core'; import { RichTextEditorLabels } from '../labels'; export type RichTextEditorControlStylesNames = 'control'; export interface RichTextEditorControlProps extends BoxProps, CompoundStylesApiProps, ElementProps<'button'> { /** Determines whether the control should have active state, false by default */ active?: boolean; /** Determines whether the control can be interacted with, set `false` to make the control to act as a label */ interactive?: boolean; } export type RichTextEditorControlFactory = Factory<{ props: RichTextEditorControlProps; ref: HTMLButtonElement; stylesNames: RichTextEditorControlStylesNames; compound: true; }>; export declare const RichTextEditorControl: import("@mantine/core").MantineComponent<{ props: RichTextEditorControlProps; ref: HTMLButtonElement; stylesNames: RichTextEditorControlStylesNames; compound: true; }>; export interface RichTextEditorControlBaseProps extends RichTextEditorControlProps { icon?: React.FC<{ style: React.CSSProperties; }>; } export declare const RichTextEditorControlBase: import("react").ForwardRefExoticComponent>; export interface CreateControlProps { label: keyof RichTextEditorLabels; icon: React.FC<{ style: React.CSSProperties; }>; isActive?: { name: string; attributes?: Record | string; }; isDisabled?: (editor: any) => boolean; operation: { name: string; attributes?: Record | string; }; } export declare function createControl({ label, isActive, operation, icon, isDisabled, }: CreateControlProps): import("react").ForwardRefExoticComponent>;