
import { FieldTypes, Fields } from "./types.js";
import { CubeFormInstance, useForm } from "./use-form.js";
import { CubeFormProps, FormContext, useFormProps } from "./Form.js";
import { CubeSubmitButtonProps, _SubmitButton } from "./SubmitButton/SubmitButton.js";
import "./SubmitButton/index.js";
import { CubeResetButtonProps, _ResetButton } from "./ResetButton/ResetButton.js";
import "./ResetButton/index.js";
import { CubeAlertProps } from "../../content/Alert/types.js";
import "../../content/Alert/index.js";
import { Field } from "./Field.js";
import { _SubmitError } from "./SubmitError.js";
import { FieldReturnValue, UseFieldProps } from "./use-field/types.js";
import { UseFieldParams, useField } from "./use-field/use-field.js";
import { UseFieldPropsParams, useFieldProps } from "./use-field/use-field-props.js";
import "./use-field/index.js";
import * as react from "react";
import * as _react_types_shared0 from "@react-types/shared";

//#region src/components/form/Form/index.d.ts
declare const Form: (<T extends FieldTypes>(props: CubeFormProps<T> & {
  ref?: react.Ref<HTMLFormElement>;
}) => react.ReactElement) & {
  Item: typeof Field;
  SubmitError: typeof _SubmitError;
  Submit: typeof _SubmitButton;
  Reset: typeof _ResetButton;
  useForm: typeof useForm;
} & {
  Item: typeof Field;
  useForm: typeof useForm;
  Submit: react.ForwardRefExoticComponent<Omit<CubeSubmitButtonProps<FieldTypes>, "ref"> & react.RefAttributes<_react_types_shared0.FocusableRefValue<HTMLElement, HTMLElement>>>;
  Reset: react.ForwardRefExoticComponent<Omit<CubeResetButtonProps<FieldTypes>, "ref"> & react.RefAttributes<_react_types_shared0.FocusableRefValue<HTMLElement, HTMLElement>>>;
  SubmitError: react.ForwardRefExoticComponent<CubeAlertProps & react.RefAttributes<HTMLDivElement>>;
};
//#endregion
export { Form };
//# sourceMappingURL=index.d.ts.map