import { default as React } from 'react';
import { SubmitHandler, UseFormProps, FieldValues, UseFormReturn } from './hook-form';
import { FormValidations } from './types/validations.type';
export type RenderFunction<TFormValues extends FieldValues> = (methods: UseFormReturn<TFormValues>) => React.ReactNode;
type FormProps<TFormValues extends FieldValues> = {
    onSubmit: SubmitHandler<TFormValues>;
    children: React.ReactNode | RenderFunction<TFormValues>;
    useFormProps?: UseFormProps<TFormValues>;
    validationSchema?: FormValidations<TFormValues>;
    className?: string;
} & Omit<React.FormHTMLAttributes<HTMLFormElement>, 'onSubmit'>;
export declare const Form: <TFormValues extends FieldValues = FieldValues>({ onSubmit, children, useFormProps, validationSchema, className, ...formProps }: FormProps<TFormValues>) => import("react/jsx-runtime").JSX.Element;
export default Form;
