import * as react_jsx_runtime from 'react/jsx-runtime'; import * as react_hook_form from 'react-hook-form'; import * as openapi3_ts from 'openapi3-ts'; import { SchemaObject } from 'openapi3-ts'; import { z } from 'zod'; type SingleProperty> = keyof z.input; type ConfigOptions = { placeholder?: string; autocomplete?: string; customComponent?: "datepicker" | "textarea"; }; /** * Wrapper around React Hook Form and builder of components based on zod schema. * * @param schema The zod schema * @param ui Optional UI configuration. The order of the fields in the array will be the order of the fields in the form. * @returns Array of React components */ declare function useZodForm(schema: T, ui: (SingleProperty | [SingleProperty, ConfigOptions])[]): { openapi: { properties: { [propertyName: string]: SchemaObject | openapi3_ts.ReferenceObject; } | undefined; required: string[] | undefined; }; watch: react_hook_form.UseFormWatch<{ [x: string]: any; }>; getValues: react_hook_form.UseFormGetValues<{ [x: string]: any; }>; getFieldState: react_hook_form.UseFormGetFieldState<{ [x: string]: any; }>; setError: react_hook_form.UseFormSetError<{ [x: string]: any; }>; clearErrors: react_hook_form.UseFormClearErrors<{ [x: string]: any; }>; setValue: react_hook_form.UseFormSetValue<{ [x: string]: any; }>; trigger: react_hook_form.UseFormTrigger<{ [x: string]: any; }>; formState: react_hook_form.FormState<{ [x: string]: any; }>; resetField: react_hook_form.UseFormResetField<{ [x: string]: any; }>; reset: react_hook_form.UseFormReset<{ [x: string]: any; }>; handleSubmit: react_hook_form.UseFormHandleSubmit<{ [x: string]: any; }>; unregister: react_hook_form.UseFormUnregister<{ [x: string]: any; }>; control: react_hook_form.Control<{ [x: string]: any; }, any>; register: react_hook_form.UseFormRegister<{ [x: string]: any; }>; setFocus: react_hook_form.UseFormSetFocus<{ [x: string]: any; }>; components: react_jsx_runtime.JSX.Element[]; }; export { useZodForm };