/// <reference types="react" />
import { DotCMSContentlet } from '../../models';
import { Block } from '../../models/blocks.interface';
import { CustomRenderer } from '../../models/content-node.interface';
interface BaseProps {
    blocks: Block;
    customRenderers?: CustomRenderer;
    className?: string;
    style?: React.CSSProperties;
}
interface EditableProps extends BaseProps {
    editable: true;
    contentlet: DotCMSContentlet;
    fieldName: string;
}
interface NonEditableProps extends BaseProps {
    editable?: false;
    contentlet?: never;
    fieldName?: never;
}
type BlockEditorRendererProps = EditableProps | NonEditableProps;
/**
 * BlockEditorRenderer component for rendering block editor field.
 *
 * @component
 * @param {Object} props - The component props.
 * @param {Block} props.blocks - The blocks of content to render.
 * @param {CustomRenderer} [props.customRenderers] - Optional custom renderers for specific block types.
 * @param {string} [props.className] - Optional CSS class name for the container div.
 * @param {React.CSSProperties} [props.style] - Optional inline styles for the container div.
 * @param {boolean} props.editable - Flag to enable inline editing. When true, `contentlet` and `fieldName` are required. Note: Enterprise only feature.
 * @param {DotCMSContentlet} [props.contentlet] - Contentlet object for inline editing. Required when `editable` is true.
 * @param {string} [props.fieldName] - Field name for inline editing. Required when `editable` is true.
 * @returns {JSX.Element} A div containing the rendered blocks of content.
 */
export declare const BlockEditorRenderer: ({ style, blocks, editable, fieldName, className, contentlet, customRenderers }: BlockEditorRendererProps) => import("react/jsx-runtime").JSX.Element | null;
export {};
