import React from 'react';
import Modal from 'react-bootstrap/lib/Modal';
import { Omit } from '../../typings/common';
declare type PopupProps = {
    children: React.ReactNode;
    stackable?: boolean;
    borderedTitle?: boolean;
    noPadding?: boolean;
    noBottomPadding?: boolean;
    noHeaderPadding?: boolean;
    closeButton?: boolean;
    closeLabel?: string;
    title?: string;
    testAutomationId?: string;
    header?: React.ReactNode;
    footer?: React.ReactNode;
    onClose?: Function;
    shouldDeriveDescFromBody?: any;
} & Omit<Modal.ModalProps, 'onHide'> & Partial<PopupDefaultProps>;
declare type PopupDefaultProps = {
    stackable: boolean;
    borderedTitle: boolean;
    noPadding: boolean;
    noBottomPadding: boolean;
    noHeaderPadding: boolean;
    closeButton: boolean;
    closeLabel: string;
    title: string;
    testAutomationId: string;
    onHide: Function;
};
export declare class Popup extends React.Component<PopupProps> {
    static stack: Popup[];
    static styleSheet: any;
    static propTypes: any;
    static defaultProps: PopupDefaultProps;
    static close(): void;
    static addStyleSheet(): void;
    static updateBodyClass(): void;
    constructor(props: any, context: any);
    modalContentRef: any;
    componentWillUnmount(): void;
    handleHeaderRef: (ref: any) => void;
    trapFocus: (event: any) => any;
    hideModal: () => void;
    render(): JSX.Element;
}
export {};
