import type { MakeOptional } from '@mui/x-internals/types';
import type { DateTimeValidationError, BuiltInFieldTextFieldProps } from "../models/index.mjs";
import type { UseFieldInternalProps } from "../internals/hooks/useField/index.mjs";
import type { ExportedValidateDateTimeProps } from "../validation/validateDateTime.mjs";
import type { AmPmProps } from "../internals/models/props/time.mjs";
import type { PickerValue } from "../internals/models/index.mjs";
import type { ExportedPickerFieldUIProps, PickerFieldUISlotProps, PickerFieldUISlots } from "../internals/components/PickerFieldUI.mjs";
export interface UseDateTimeFieldProps extends MakeOptional<UseFieldInternalProps<PickerValue, DateTimeValidationError>, 'format'>, ExportedValidateDateTimeProps, ExportedPickerFieldUIProps, AmPmProps {}
export type DateTimeFieldProps = UseDateTimeFieldProps & Omit<BuiltInFieldTextFieldProps, keyof UseDateTimeFieldProps> & {
  /**
   * Overridable component slots.
   * @default {}
   */
  slots?: DateTimeFieldSlots;
  /**
   * The props used for each component slot.
   * @default {}
   */
  slotProps?: DateTimeFieldSlotProps;
};
export interface DateTimeFieldSlots extends PickerFieldUISlots {}
export interface DateTimeFieldSlotProps extends PickerFieldUISlotProps {}