UNPKG

@gulibs/vgrove-ui

Version:

VGrove UI component library built with HeroUI and React

27 lines 1.8 kB
import { type ChangeEvent, type FocusEvent } from "react"; import { type Control } from "react-hook-form"; import type { FieldPath, FieldValues, UseFormReturn, UseFormProps } from "react-hook-form"; import type { FormInstance } from "./Form"; type FormEvent<T = Element> = ChangeEvent<T> | FocusEvent<T>; type EventHandler<T = Element> = (event: FormEvent<T>) => void; export interface CustomUseFormProps<TFieldValues extends FieldValues = FieldValues> extends UseFormProps<TFieldValues> { registerAsGlobal?: boolean; globalKey?: string; } export declare function createFormInstance<TFieldValues extends FieldValues = FieldValues>(formReturn: UseFormReturn<TFieldValues>): FormInstance<TFieldValues>; export declare function useForm<TFieldValues extends FieldValues = FieldValues>(options?: CustomUseFormProps<TFieldValues>): FormInstance<TFieldValues>; export declare const useFieldUpdate: <T = Element>(name: string) => { isInvalid: () => boolean; handle: (handler: EventHandler<T>) => (event: FormEvent<T>) => void; clear: () => void; }; export declare function useWatch<TFieldValues extends FieldValues = FieldValues>(name: FieldPath<TFieldValues>, control?: Control<TFieldValues>): any; export declare function useWatch<TFieldValues extends FieldValues = FieldValues>(name: FieldPath<TFieldValues>[], control?: Control<TFieldValues>): any[]; export declare function useFieldValue<TFieldValues extends FieldValues = FieldValues>(name: FieldPath<TFieldValues>, control?: Control<TFieldValues>): any; export declare function useFieldsWatcher<TFieldValues extends FieldValues = FieldValues>(names: FieldPath<TFieldValues>[], control?: Control<TFieldValues>): { values: any[]; allFilled: boolean; anyFilled: boolean; }; export {}; //# sourceMappingURL=hook.d.ts.map