import React from "react";
import PropTypes from "prop-types";
interface Props {
    animation?: string;
    autoFocus?: boolean;
    backdrop?: boolean;
    backdropClassName?: string;
    backdropTransitionTimeout?: number;
    cascading?: boolean;
    centered?: boolean;
    children?: React.ReactNode;
    className?: string;
    contentClassName?: string;
    disableBackdrop?: boolean;
    disableFocusTrap?: boolean;
    fade?: boolean;
    frame?: boolean;
    fullHeight?: boolean;
    hiddenModal?: Function;
    hideModal?: Function;
    id?: string;
    inline?: boolean;
    isOpen?: boolean;
    keyboard?: boolean;
    modalClassName?: string;
    modalStyle?: string;
    modalStylesWithoutBackdrop?: object;
    modalTransitionTimeout?: number;
    noClickableBodyWithoutBackdrop?: boolean;
    overflowScroll?: boolean;
    position?: string;
    role?: string;
    showModal?: Function;
    side?: boolean;
    size?: string;
    tabIndex?: string;
    toggle?: Function;
    wrapClassName?: string;
    wrapperStyles?: object;
    zIndex?: [string, number];
}
declare const Modal: {
    (props: Props): React.JSX.Element;
    defaultProps: {
        autoFocus: boolean;
        backdrop: boolean;
        backdropTransitionTimeout: number;
        disableBackdrop: boolean;
        disableFocusTrap: boolean;
        fade: boolean;
        isOpen: boolean;
        keyboard: boolean;
        modalTransitionTimeout: number;
        overflowScroll: boolean;
        position: string;
        role: string;
        tabIndex: string;
        zIndex: number;
        noClickableBodyWithoutBackdrop: boolean;
    };
    propTypes: {
        animation: PropTypes.Requireable<string>;
        autoFocus: PropTypes.Requireable<boolean>;
        backdrop: PropTypes.Requireable<boolean>;
        backdropClassName: PropTypes.Requireable<string>;
        backdropTransitionTimeout: PropTypes.Requireable<number>;
        cascading: PropTypes.Requireable<boolean>;
        centered: PropTypes.Requireable<boolean>;
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        contentClassName: PropTypes.Requireable<string>;
        disableBackdrop: PropTypes.Requireable<boolean>;
        disableFocusTrap: PropTypes.Requireable<boolean>;
        fade: PropTypes.Requireable<boolean>;
        frame: PropTypes.Requireable<boolean>;
        fullHeight: PropTypes.Requireable<boolean>;
        hiddenModal: PropTypes.Requireable<(...args: any[]) => any>;
        hideModal: PropTypes.Requireable<(...args: any[]) => any>;
        id: PropTypes.Requireable<string>;
        inline: PropTypes.Requireable<boolean>;
        isOpen: PropTypes.Requireable<boolean>;
        keyboard: PropTypes.Requireable<boolean>;
        modalClassName: PropTypes.Requireable<string>;
        modalStyle: PropTypes.Requireable<string>;
        modalStylesWithoutBackdrop: PropTypes.Requireable<object>;
        modalTransitionTimeout: PropTypes.Requireable<number>;
        noClickableBodyWithoutBackdrop: PropTypes.Requireable<boolean>;
        overflowScroll: PropTypes.Requireable<boolean>;
        position: PropTypes.Requireable<string>;
        role: PropTypes.Requireable<string>;
        showModal: PropTypes.Requireable<(...args: any[]) => any>;
        side: PropTypes.Requireable<boolean>;
        size: PropTypes.Requireable<string>;
        tabIndex: PropTypes.Requireable<string>;
        toggle: PropTypes.Requireable<(...args: any[]) => any>;
        wrapClassName: PropTypes.Requireable<string>;
        wrapperStyles: PropTypes.Requireable<object>;
        zIndex: PropTypes.Requireable<string | number>;
    };
};
export default Modal;
export { Modal as CDBModal };
