import { CSSProperties } from 'react';
import { Theme } from '@mui/material/styles';
import { LabelProps } from '../../../../components/Label';
import { RHF_UPLOAD_IMAGE_KEY_COMPONENT } from './constants';
import { UploadImageSlots as Slots } from './slots/RHFUploadImageEnum';
import { UploadImageProps } from './subcomponents/UploadImage/types';
import { M4LOverridesStyleRules } from '../../../../@types/augmentations';
export interface RHFUploadImageProps extends Omit<UploadImageProps, 'file' | 'onDrop' | 'onRemove'>, Omit<LabelProps, 'size' | 'error' | 'disabled' | 'children'> {
    /**
     * Field name for react-hook-form.
     */
    name: string;
    /**
     * When true, the control is disabled.
     */
    disabled?: boolean;
}
export type RHFUploadImageSlotsType = keyof typeof Slots;
export type RHFUploadImageOwnerState = {
    isDragAccept: boolean;
    isDragReject: boolean;
    error: boolean;
    hasFile?: boolean;
    imageFit?: CSSProperties['objectFit'];
    height?: number | string;
    maxHeight?: number | string;
};
export type RHFUploadImageStyles = M4LOverridesStyleRules<RHFUploadImageSlotsType, typeof RHF_UPLOAD_IMAGE_KEY_COMPONENT, Theme>;
//# sourceMappingURL=types.d.ts.map