import React, { MouseEvent, PureComponent } from 'react';
import PropTypes from 'prop-types';
import { ModalProps } from './Modal.types';
declare class Modal extends PureComponent<ModalProps> {
    private CHILDREN_WRAPPER_DIV_ID;
    constructor(props: ModalProps);
    static propTypes: {
        dataHook: PropTypes.Requireable<string>;
        isOpen: PropTypes.Validator<boolean>;
        borderRadius: PropTypes.Requireable<number>;
        contentLabel: PropTypes.Requireable<string>;
        children: PropTypes.Requireable<any>;
        zIndex: PropTypes.Requireable<number>;
        shouldCloseOnOverlayClick: PropTypes.Requireable<boolean>;
        shouldDisplayCloseButton: PropTypes.Requireable<boolean>;
        onRequestClose: PropTypes.Requireable<(...args: any[]) => any>;
        onAfterOpen: PropTypes.Requireable<(...args: any[]) => any>;
        onAfterClose: PropTypes.Requireable<(...args: any[]) => any>;
        horizontalPosition: PropTypes.Requireable<string>;
        verticalPosition: PropTypes.Requireable<string>;
        closeTimeoutMS: PropTypes.Requireable<number>;
        scrollable: PropTypes.Requireable<boolean>;
        scrollableContent: PropTypes.Requireable<boolean>;
        maxHeight: PropTypes.Requireable<string>;
        height: PropTypes.Requireable<string>;
        overlayPosition: PropTypes.Requireable<string>;
        parentSelector: PropTypes.Requireable<(...args: any[]) => any>;
        appElement: PropTypes.Requireable<string>;
        screen: PropTypes.Requireable<string>;
        showNavigationPreviousButton: PropTypes.Requireable<boolean>;
        showNavigationNextButton: PropTypes.Requireable<boolean>;
        onNavigationClickPrevious: PropTypes.Requireable<(...args: any[]) => any>;
        onNavigationClickNext: PropTypes.Requireable<(...args: any[]) => any>;
        navigationPreviousLabel: PropTypes.Requireable<string>;
        navigationNextLabel: PropTypes.Requireable<string>;
    };
    static defaultProps: {
        readonly borderRadius: 0;
        readonly shouldCloseOnOverlayClick: false;
        readonly shouldDisplayCloseButton: false;
        readonly horizontalPosition: "center";
        readonly verticalPosition: "center";
        readonly closeTimeoutMS: 500;
        readonly scrollable: true;
        readonly scrollableContent: false;
        readonly height: "100%";
        readonly maxHeight: "auto";
        readonly overlayPosition: "fixed";
        readonly screen: "desktop";
    };
    handleOverlayClick: (event: MouseEvent<HTMLDivElement>) => void;
    renderCloseButton: () => React.JSX.Element;
    renderNavigationControls: () => React.JSX.Element;
    render(): React.JSX.Element;
}
export default Modal;
//# sourceMappingURL=Modal.d.ts.map