import React from 'react';
import EditorComponent, { EditorComponentState } from '../../EditorComponent';
import { ContentEditorProps } from './interfaces';
export declare class ContentEditor<P extends ContentEditorProps = ContentEditorProps, S extends EditorComponentState = EditorComponentState> extends EditorComponent<P, S> {
    static Name: "ContentEditor";
    static defaultProps: {
        /**
         * Если да, то нельзя редактировать содержимое никаким образом.
         */
        read_only: boolean;
        /**
         * Этот контент по-умолчанию только в режиме редактирования и когда
         * еще нет установленного значения
         */
        initialContent: {
            name: string;
            component: string;
            props: {
                tag: string;
            };
            components: {
                name: string;
                component: string;
                props: {
                    tag: string;
                };
                components: never[];
            }[];
        }[];
        hide_wrapper_in_default_mode: boolean;
        render_toolbar: boolean;
        errorDelay: number;
        SaveIcon: React.ComponentType<{}>;
        ResetIcon: React.ComponentType<import("material-ui/SvgIcon").SvgIconProps>; /**
         * Этот контент по-умолчанию только в режиме редактирования и когда
         * еще нет установленного значения
         */
        EditIcon: React.ComponentType<import("material-ui/SvgIcon").SvgIconProps>;
        cacheKeyPrefix: string;
        contentEditable: boolean | undefined;
    };
    renderPanelView(content?: React.ReactNode): React.ReactNode;
    getRootElement(): React.ReactNode;
    canBeChild(): boolean;
    prepareRootElementProps(props: P & Record<string, any>): {
        [x: string]: any;
    };
    getComponentProps(component: EditorComponent): P['object']['props'];
    renderChildren(): React.ReactNode;
}
export default ContentEditor;
