import { type FormHTMLAttributes, type ReactNode } from 'react';
import { type UseFormReturn } from '../hooks';
export type FormProps = FormHTMLAttributes & {
/**
* Значение, которое возвращает useForm. Необходимо для передачи в FormContext
* @example
* ```tsx
* import { Form, useForm } from '@astral/form';
*
* function App() {
* const form = useForm();
* const onSubmit = data => console.log(data);
*
* return (
*
* );
* }
* ```
*/
form: UseFormReturn;
/**
* Если true, форма будет недоступна для взаимодействия
*/
isDisabled?: boolean;
/**
* Содержимое формы
*/
children?: ReactNode;
};
/**
* Компонент, инкапсулирующий FormProvider
* @example
* ```tsx
* import { Form, useForm } from '@astral/form';
*
* function App() {
* const form = useForm();
* const onSubmit = data => console.log(data);
*
* return (
*
* );
* }
* ```
*/
export declare const Form: ({ form, children, isDisabled, ...props }: FormProps) => JSX.Element;