import { TextField, TextFieldProps } from "@mui/material"; import { Control, Controller, ControllerProps, FieldPath, FieldValues, } from "react-hook-form"; export type UnnamedTextFieldProps = Pick< TextFieldProps, Exclude >; export type TextFieldControllerProps< TFieldValues extends FieldValues = FieldValues, TName extends FieldPath = FieldPath > = UnnamedTextFieldProps & { name: TName; control: Control; controllerProps?: Partial>; label?: string; variant?: string; }; export function TextFieldController< TFieldValues extends FieldValues = FieldValues, TName extends FieldPath = FieldPath >(props: TextFieldControllerProps) { return ( ( )} rules={{ required: "Field required" }} /> ); }