export class Editable extends ApolloEditableObject<import("apollo-cms").EditableObjectProps, import("apollo-cms").EditableObjectState> {
    static propTypes: any;
    static defaultProps: {
        show_header: boolean;
        DeleteIcon: React.ComponentType<import("material-ui/SvgIcon").SvgIconProps>;
        deletable_object: boolean;
        errorDelay: number;
        SaveIcon: React.ComponentType<{}>;
        ResetIcon: React.ComponentType<import("material-ui/SvgIcon").SvgIconProps>;
        EditIcon: React.ComponentType<import("material-ui/SvgIcon").SvgIconProps>;
        cacheKeyPrefix: string;
    };
    constructor(props: any);
    delete(): Promise<string | Error | {
        data: import("apollo-cms").EditableObjectProcessorResponse | null | undefined;
    } | undefined> | undefined;
    renderDeleteButton(): JSX.Element | null;
}
export default EditableObject;
import { EditableObject as ApolloEditableObject } from "apollo-cms/dist/DataView/Object/Editable";
import React from "react";
declare class EditableObject extends EditorComponent<import("../../../EditorComponent").EditorComponentProps, import("../../../EditorComponent").EditorComponentState> {
    static propTypes: any;
    static defaultProps: {
        style: any;
        /**
         * УРЛ, куда редиректить при создании нового объекта
         */
        on_create_redirect_url: undefined;
        /**
         * Куда редиректить при успешном удалении элемента
         */
        on_delete_redirect_url: undefined;
        cache_key: undefined;
        cache_key_prefix: undefined;
        new_object_cache_key: undefined;
        show_header: boolean;
        hide_wrapper_in_default_mode: boolean;
        deletable_object: boolean;
        create_as_a_child_of: undefined;
        random_key: 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;
    };
    constructor(props: any);
    onCreateObject(result: any): void;
    onSaveObject(result: any): void;
    onBeforeDrop: () => void;
    getEditableClass(): typeof Editable;
    /**
     * Позволяет переопределить редактируемый объект,
     * например, чтобы создавать новый внутри имеющегося
     */
    prepareEditableObject(object: any): any;
    /**
     * Этот метод не модифицирует сам редактируемые объект,
     * а только формирует параметры для класса Editable
     */
    prepareObject(context: any): {
        _dirty: any;
    };
    getDirty(context: any): any;
    /**
     * Расширяем запрос
     */
    extendQueryBind: (Query: any) => any;
    extendQuery(Query: any): any;
    isScalar(field: any): any;
    getQueryNameFromQuery(query: any): any;
}
import EditorComponent from "../../../EditorComponent";
