UNPKG

mui-rhf-integration

Version:

React Hook Form integration for MUI with strict TypeScript handling based on form context.

20 lines (19 loc) 1.35 kB
import { FormControlProps, FormGroupProps, FormLabelProps } from '@mui/material'; import { ReactNode } from 'react'; import { Control, FieldPath, FieldValues, RegisterOptions } from 'react-hook-form'; export type CheckboxOption = { value: string; label: ReactNode; }; export type RhfCheckboxGroupProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TContext = any, TTransformedValues = TFieldValues> = Omit<FormControlProps<"fieldset">, "error" | "component" | "ref"> & { control: Control<TFieldValues, TContext, TTransformedValues>; name: TName; rules?: Omit<RegisterOptions<TFieldValues, TName>, "valueAsNumber" | "valueAsDate" | "setValueAs" | "disabled">; label: string; options: CheckboxOption[]; helperText?: string; formLabelProps?: Omit<FormLabelProps<"legend">, "component">; formGroupProps?: FormGroupProps; }; declare const RhfCheckboxGroup: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TContext = any, TTransformedValues = TFieldValues>({ control, name, rules, label, options, helperText, formLabelProps, formGroupProps, ...formControlProps }: RhfCheckboxGroupProps<TFieldValues, TName, TContext, TTransformedValues>) => ReactNode; export default RhfCheckboxGroup;