import React from 'react';
import { Marker, ObjectSchemaTypeWithOptions, Path, ConditionalProperty } from '@sanity/types';
import { FormFieldPresence } from '@sanity/base/presence';
import PatchEvent from '../../PatchEvent';
export interface Props {
    type: ObjectSchemaTypeWithOptions;
    value?: Record<string, unknown>;
    compareValue?: Record<string, unknown>;
    onChange?: (event: PatchEvent) => void;
    onFocus: (path: Path) => void;
    onBlur: () => void;
    focusPath?: Path;
    markers?: Marker[];
    level?: number;
    readOnly?: ConditionalProperty;
    isRoot?: boolean;
    filterField?: (...args: any[]) => any;
    presence: FormFieldPresence[];
}
/**
 * Please read this about collapsible fields
 * To support deep linking, the received focusPath must always takes precedence over internal collapsed/expanded state.
 * If a field has been expanded (either manually by the user, or because the focus path has caused it to expand) it
 * should then stay open and *not* collapse when the field loses focus (e.g. no autocollapse!)
 * If a field has been actively collapsed by the user, it must still expand again if it receives focus on a path within later on.
 */
export declare const ObjectInput: React.MemoExoticComponent<React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>>;
//# sourceMappingURL=ObjectInput.d.ts.map