import { Component } from 'react'; import { IMousePosition } from './DialogEl'; import { openDialog, closeDialog } from './open'; import { DialogPosition, IDialogPositionType } from './position'; export interface IDialogProps { title?: React.ReactNode; children?: React.ReactNode; footer?: React.ReactNode; visible: boolean; closeBtn?: boolean; onClose?: (e: KeyboardEvent | MouseEvent | TouchEvent) => void; mask?: boolean; maskClosable?: boolean; className?: string; style?: React.CSSProperties; position?: IDialogPositionType; onOpened?: () => void; onClosed?: () => void; } export interface IDialogState { prevOpen: boolean; exiting: boolean; } export declare class Dialog extends Component { static defaultProps: { onClose(): void; visible: boolean; className: string; style: {}; position: DialogPosition; title: string; closeBtn: boolean; mask: boolean; maskClosable: boolean; footer: any; }; static openDialog: typeof openDialog; static closeDialog: typeof closeDialog; lastMousePosition: IMousePosition | null; constructor(props: IDialogProps); onClose: (e: KeyboardEvent | MouseEvent | TouchEvent) => void; onExited: () => void; static getDerivedStateFromProps(props: IDialogProps, { prevOpen }: IDialogState): Partial | null; render(): JSX.Element; } export default Dialog;