import React, { type ComponentType } from 'react'; import { type ComponentMap, type FormField } from './types'; export declare const ERROR_POSITION: { readonly TOP: "top"; readonly BOTTOM: "bottom"; }; export type ErrorPosition = typeof ERROR_POSITION[keyof typeof ERROR_POSITION]; export type ButtonComponent = ComponentType<{ type?: 'submit' | 'button' | 'reset'; onClick?: (event: React.MouseEvent) => void; children: React.ReactNode; [key: string]: any; }>; type ErrorRendererProps = { error: any; }; type FormProps = { fields: FormField[]; components: T; onSubmit?: (values: Record) => void | Promise; onSuccess?: (values: Record) => void; onError?: (error: any) => void; errorRenderer?: (props: ErrorRendererProps) => React.ReactNode; errorPosition?: ErrorPosition; initialValues?: Record; ButtonComponent?: ButtonComponent; buttonProps?: Record; }; export declare const Form: ({ fields, components, onSubmit, onSuccess, onError, errorRenderer, errorPosition, initialValues, ButtonComponent, buttonProps, }: FormProps) => import("react/jsx-runtime").JSX.Element; export {}; //# sourceMappingURL=Form.d.ts.map