import { default as React } from 'react'; import { ConfirmationPopoverContentProps } from '../ConfirmationPopover/ConfirmationPopoverContent'; import { SideDrawerProps } from '../SideDrawer/SideDrawer'; type BaseModalProps = Omit & { size?: 'sm' | 'md' | 'lg' | 'xl'; /** Optional z-index value for the modal container. Useful for controlling stacking order when multiple modals or overlays are present. Defaults to 9000. */ zIndex?: number; }; type WithConfirmation = BaseModalProps & { /** Optionally hide the close icon in the header */ hideCloseIcon?: never; /** Optionally disable the outside click "close" functionality */ disableOutsideClick?: never; /** The content to display in the confirmation popover */ confirmation: Omit & { close?: () => void; }; /** Optionally hide the header. Defaults to false */ hideHeader?: never; }; type WithoutConfirmation = BaseModalProps & { confirmation?: never; /** Optionally hide the close icon in the header */ hideCloseIcon?: boolean; /** Optionally disable the outside click "close" functionality */ disableOutsideClick?: boolean; /** Optionally hide the header. Defaults to false */ hideHeader?: boolean; }; export type ModalProps = WithConfirmation | WithoutConfirmation; declare const Modal: (props: ModalProps) => React.JSX.Element; export default Modal;