import React, { ComponentProps, ComponentType } from 'react';
import { Form as AntForm } from 'antd';
import UIRibbon from './Ribbon';
type FormItemProps = ComponentProps<typeof AntForm.Item> & {
    onBlur?: () => void;
};
type FormProps = Omit<ComponentProps<typeof AntForm>, 'ref' | 'autoSave'> & {
    autoSave?: boolean;
    autoSaveDebounceDelay?: number;
    feedbackComponent?: ComponentType<ComponentProps<typeof UIRibbon>>;
    onAutoSave?: ((values: Record<string, unknown>) => void) | null;
    onFinishFailed?: (data: {
        errorFields: {
            name: (string | number)[];
        }[];
    }) => void;
    ribbonMessage?: string | null;
    ribbonPosition?: 'top' | 'bottom';
    submissionStatus?: 'success' | 'error' | 'danger' | null;
    scrollErrorIntoView?: boolean;
};
declare const Form: {
    (props: FormProps): React.ReactNode;
    Item: (props: FormItemProps) => React.ReactNode;
    List: React.FC<import("antd/es/form").FormListProps>;
    ErrorList: React.FC<import("antd/es/form").ErrorListProps>;
    useForm: typeof import("antd/es/form/Form").useForm;
    Provider: React.FC<import("antd/es/form/context").FormProviderProps>;
};
export default Form;
