import { Theme } from '@mui/material';
import { Sizes } from '@m4l/styles';
import { DateTimePickerProps as MuiDateTimePickerProps } from '@mui/x-date-pickers';
import { M4LOverridesStyleRules } from '../../../../@types/augmentations';
import { TextFieldVariants } from '../TextField/types';
import { DateTimePickerEnum } from './slots/DateTimePickerEnum';
import { DATE_TIME_PICKER_KEY_COMPONENT } from './constants';
export interface DateTimePickerProps<T extends Date> extends MuiDateTimePickerProps<T> {
    /**
     * Tamaño del componente.
     */
    size?: Extract<Sizes, 'small' | 'medium'>;
    /**
     * Indica si esta en error.
     */
    error?: boolean;
    /**
     * ClassName
     */
    className?: string;
    /**
     * dataTestId
     */
    dataTestId?: string;
    /**
     * Variante del campo de texto.
     * variant="text"
     */
    variant?: TextFieldVariants;
}
export type DateTimePickerOwnerState = {
    /**
     * Tamaño del componente.
     */
    size: Extract<Sizes, 'small' | 'medium'>;
    /**
     * Indica si esta en error.
     */
    error?: boolean;
    /**
     * Variante del campo de texto.
     * variant="text"
     */
    variant?: TextFieldVariants;
    /**
     * componente con el campo deshabilitado.
     */
    disabled: boolean;
    isInputAdornment?: boolean;
};
export type DateTimePickerSlotsType = keyof typeof DateTimePickerEnum;
export type DateTimePickerStyles = M4LOverridesStyleRules<DateTimePickerSlotsType, typeof DATE_TIME_PICKER_KEY_COMPONENT, Theme>;
//# sourceMappingURL=types.d.ts.map