import { z } from 'zod';
import { IUseZodFormProps } from '../interfaces';
/**
 * Custom hook to create a form with Zod validation
 * @param props {@link IUseZodFormProps} - The props for the hook
 * @template TSchema - The Zod schema type
 *
 * @returns {UseFormReturn<z.infer<TSchema>>} The form instance
 *
 * @example
 * ```tsx
 * const form = useZodForm({ schema: z.object({ name: z.string() }) });
 * ```
 *
 * @example
 * ```tsx
 * // With default values
 * const form = useZodForm({ schema: z.object({ name: z.string() }), defaultValues: { name: 'John Doe' } });
 * ```
 */
export default function useZodForm<TSchema extends z.ZodType>({ schema, defaultValues, ...formProps }: IUseZodFormProps<TSchema>): import('react-hook-form').UseFormReturn<z.TypeOf<TSchema>, any, undefined>;
