import { FallbackSchema } from '@open-formulieren/types';
import { BuilderContextType } from '../context';
import { ComponentEditFormProps } from './ComponentEditForm';
type MergedProps = BuilderContextType & ComponentEditFormProps;
export type ComponentConfigurationProps = Omit<MergedProps, 'component'> & {
    component: MergedProps['component'] | FallbackSchema;
};
/**
 * The main entrypoint to edit a component in the builder modal.
 *
 * This component wraps around the context provider to expose Formio builder helper
 * functions and utilities down to the low-level components used to render the
 * configuration form.
 *
 * @param options.uniquifyKey              Function to make component key unique in the context of all existing components.
 * @param options.getFormComponents        Function returning all other Formio components in the builder context.
 * @param options.isNew                    Whether the Formio component is a new component being added or an existing being edited.
 * @param options.component                The (starter) schema of the Formio component being edited.
 * @param options.builderInfo              Meta information from the builder configuration for the Formio component.
 * @param options.onCancel                 Callback to invoke when the 'cancel' button is clicked.
 * @param options.onRemove                 Callback to invoke when the 'remove' button is clicked.
 * @param options.onSubmit                 Callback to invoke when the form is saved. Receives the component
 *                                         configuration JSON object.
 */
declare const ComponentConfiguration: React.FC<ComponentConfigurationProps>;
export default ComponentConfiguration;
