import { HTMLAttributes, SyntheticEvent, ReactElement, ReactNode, PureComponent } from 'react'; import PropTypes from 'prop-types'; import { CombinePropsAndAttributes } from '../../helpers'; interface ISelfProps { active?: boolean; centered?: boolean; closeButton?: ReactElement; transitionDuration?: number; children: ReactNode; wrapContent?(content: ReactElement): ReactNode; onClose?(event: SyntheticEvent | KeyboardEvent): any; } export declare type IProps = CombinePropsAndAttributes>; export declare function setAppElement(appElementSource: any): void; export default class Modal extends PureComponent { static propTypes: { onClose: PropTypes.Requireable<(...args: any[]) => any>; active: PropTypes.Requireable; centered: PropTypes.Requireable; closeButton: PropTypes.Requireable; children: PropTypes.Validator; transitionDuration: PropTypes.Requireable; wrapContent: PropTypes.Requireable<(...args: any[]) => any>; }; static defaultProps: { active: boolean; centered: boolean; closeButton: JSX.Element; transitionDuration: number; }; private unblockScroll; private unsubscribeKeyDown; private ariaShow; render(): any; private wrapContent; componentDidMount(): void; componentWillUnmount(): void; componentDidUpdate({ active: prevActive }: IProps): void; private onIgnoredEvent; private onEscPress; private toggleEffects; private removeEffects; } export {}; //# sourceMappingURL=Modal.d.ts.map