///
import { ButtonProps } from '../Button/types';
import { DefaultAttributes } from '../types';
export declare type ModalSizes = 'small' | 'medium' | 'large';
export declare type ModalPositions = 'center' | 'top';
export declare type TitleModes = 'stacked' | 'truncated';
export declare type ModalActions = 'acknowledge' | 'confirm';
export declare type ModalVariants = 'wide' | 'narrow';
export declare type TModalTitle = {
text: string | JSX.Element;
mode?: TitleModes;
};
export declare type ModalActionButtonsProps = {
text: string;
} & Partial;
export declare type ModalProps = DefaultAttributes & {
isOpen: boolean;
onClose: () => void;
size: ModalSizes;
className?: string;
variant?: ModalVariants;
title?: TModalTitle;
modalRoot?: string | HTMLElement;
shouldCloseOnEsc?: boolean;
shouldCloseOnOverlayClick?: boolean;
pinnedFooter?: boolean;
hideCloseIcon?: boolean;
position?: ModalPositions;
action?: ModalActions;
primaryAction?: ModalActionButtonsProps;
dismissAction?: ModalActionButtonsProps;
stackedActionButtons?: boolean;
isLoading?: boolean;
};
export declare type DialogContentProps = DefaultAttributes & Pick;
export declare type ModalActionsProps = T;
export declare type ModalHeaderProps = DefaultAttributes & {
className?: string;
hideCloseIcon?: boolean;
onClose: () => void;
mode?: TitleModes;
variant?: ModalVariants;
};
export declare type ModalContentProps = {
className?: string;
variant?: ModalVariants;
};
export declare type ModalAcknowledgeProps = ModalContentProps & {
primaryAction: ModalActionButtonsProps;
stackedActionButtons?: boolean;
'data-testid'?: string;
'data-trackid'?: string;
};
export declare type ModalConfirmProps = ModalContentProps & {
primaryAction: ModalActionButtonsProps;
dismissAction: ModalActionButtonsProps;
stackedActionButtons?: boolean;
'data-testid'?: string;
'data-trackid'?: string;
};
export declare type ModalHeaderCSSProps = Pick;
export declare type ModalTitleCSSProps = Pick;
export declare type ModalContentCSSProps = Pick;
export declare type ModalFooterCSSProps = Pick;
export declare type DialogCSSProps = Pick;