import { type ReactNode } from 'react';
import { type FieldValues, type Path, type Control, type RegisterOptions } from 'react-hook-form';
import { type DatePickerProps, type PickerValidDate, type DateValidationError, type PickerChangeHandlerContext } from '@mui/x-date-pickers';
import type { FormLabelProps, FormHelperTextProps } from '../../types';
type DatePickerInputProps = Omit<DatePickerProps<PickerValidDate>, 'value' | 'onChange' | 'label'>;
export type RHFDatePickerProps<T extends FieldValues> = {
    fieldName: Path<T>;
    control: Control<T>;
    registerOptions?: RegisterOptions<T, Path<T>>;
    required?: boolean;
    onValueChange?: (newValue: PickerValidDate, context: PickerChangeHandlerContext<DateValidationError>) => void;
    label?: ReactNode;
    showLabelAboveFormField?: boolean;
    formLabelProps?: FormLabelProps;
    helperText?: ReactNode;
    errorMessage?: ReactNode;
    hideErrorMessage?: boolean;
    formHelperTextProps?: FormHelperTextProps;
} & DatePickerInputProps;
declare const RHFDatePicker: <T extends FieldValues>({ fieldName, control, registerOptions, required, onValueChange, label, showLabelAboveFormField, formLabelProps, helperText, errorMessage, hideErrorMessage, formHelperTextProps, ...rest }: RHFDatePickerProps<T>) => import("react/jsx-runtime").JSX.Element;
export default RHFDatePicker;
