import * as React from "react"; import { ReactDivAttr } from "../../../typings/shared"; import { ButtonProps } from "../Button"; type ExcludedAttributes = "role" | "onBlur" | "onClick" | "onKeyDown" | "onTransitionEnd" | "ref"; export interface ModalSecondaryButtonConfig { buttonText: NonNullable; onClick: NonNullable; } export interface ModalProps extends Omit { alert?: boolean | undefined; closeButtonLabel?: string | undefined; danger?: boolean | undefined; /** * @deprecated */ focusTrap?: boolean | undefined; /** * @deprecated */ hasForm?: boolean | undefined; hasScrollingContent?: boolean | undefined; /** * @deprecated */ iconDescription?: string | undefined; modalAriaLabel?: string | undefined; modalHeading?: React.ReactNode | undefined; modalLabel?: React.ReactNode | undefined; open?: boolean | undefined; onRequestClose?(event: React.MouseEvent | React.KeyboardEvent): void; onRequestSubmit?(event: React.MouseEvent | React.KeyboardEvent): void; onSecondarySubmit?: ModalProps["onRequestClose"] | undefined; passiveModal?: boolean | undefined; preventCloseOnClickOutside?: boolean | undefined; primaryButtonDisabled?: boolean | undefined; primaryButtonText?: React.ReactNode | undefined; secondaryButtons?: readonly ModalSecondaryButtonConfig[] | undefined; secondaryButtonText?: React.ReactNode | undefined; selectorPrimaryFocus?: string | undefined; selectorsFloatingMenus?: readonly string[] | undefined; size?: "xs" | "sm" | "md" | "lg" | undefined; shouldSubmitOnEnter?: boolean | undefined; } declare class Modal extends React.Component {} export default Modal;