import React, { Component, MouseEventHandler } from 'react';
import IDialogPropTypes from './IDialogPropTypes';
export default class Dialog extends Component<IDialogPropTypes, any> {
    static defaultProps: {
        className: string;
        mask: boolean;
        visible: boolean;
        keyboard: boolean;
        closable: boolean;
        maskClosable: boolean;
        destroyOnClose: boolean;
        prefixCls: string;
        center: boolean;
    };
    private inTransition;
    private titleId;
    private openTime;
    private lastOutSideFocusNode;
    private wrap;
    private dialog;
    private content;
    private header;
    private sentinel;
    private bodyIsOverflowing;
    private scrollbarWidth;
    private resizeEvent?;
    private moveEvent?;
    componentWillMount(): void;
    componentDidMount(): void;
    componentDidUpdate(prevProps: IDialogPropTypes): void;
    componentWillUnmount(): void;
    center: () => void;
    tryFocus(): void;
    onEventListener: () => void;
    removeEventListener: () => void;
    onAnimateLeave: () => void;
    onAnimateEnd: () => void;
    onMaskClick: MouseEventHandler<HTMLDivElement>;
    onKeyDown: (e: React.KeyboardEvent<HTMLDivElement>) => void;
    getDialogElement: () => JSX.Element;
    handleHeaderMouseDown: (downEvent: React.MouseEvent<Element, MouseEvent>) => void;
    getZIndexStyle: () => any;
    getWrapStyle: () => any;
    getMaskStyle: () => any;
    getMaskElement: () => any;
    getMaskTransitionName: () => string | undefined;
    getTransitionName: () => string | undefined;
    setScrollbar: () => void;
    addScrollingEffect: () => void;
    removeScrollingEffect: () => void;
    close: (e: any) => void;
    checkScrollbar: () => void;
    resetScrollbar: () => void;
    adjustDialog: () => void;
    resetAdjustments: () => void;
    saveRef: (name: string) => (node: any) => void;
    render(): JSX.Element;
}
