import React, { ReactNode, CSSProperties } from 'react'; import { IButtonProps } from '../button/button'; import type { DraggableBounds, DraggableEventHandler } from 'react-draggable'; declare type CSSSelector = string; export declare const ConfirmModalTypes: string[]; export declare const ModalTypes: ["confirm", "warning", "error", "normal"]; export declare type ModalType = typeof ModalTypes[number]; export interface IModalProps { body?: ReactNode; bodyClassName?: string; bodyStyle?: CSSProperties; style?: CSSProperties; cancelButtonProps?: IButtonProps; cancelText?: ReactNode; className?: string; closable?: boolean; closeIcon?: ReactNode; destroyOnClose?: boolean; draggable?: boolean; focusTriggerAfterClose?: boolean; footer?: ReactNode; footerBtnOrder?: 'normal' | 'reverse'; footerClassName?: string; footerStyle?: CSSProperties; getContainer?: HTMLElement | (() => HTMLElement | CSSSelector | null | false) | null | false; height?: number; keyboard?: boolean; mask?: boolean; isClosed?: boolean; maskClassName?: string; maskClosable?: boolean; maskStyle?: CSSProperties; okButtonProps?: IButtonProps; okText?: ReactNode; onCancel?: () => void; onOk?: () => void; prefixCls?: string; title?: ReactNode; titleClassName?: string; titleIcon?: ReactNode; titleStyle?: CSSProperties; type?: ModalType; visible?: boolean; width?: number; showline?: boolean; bounds?: DraggableBounds | string | false; overroll?: boolean; resizable?: boolean; onResizeStart?: (event: MouseEvent) => void; onResize?: (event: MouseEvent) => void; onResizeStop?: (event: MouseEvent) => void; onDragStart?: DraggableEventHandler; onDrag?: DraggableEventHandler; onDragStop?: DraggableEventHandler; } declare const Modal: React.ForwardRefExoticComponent>; export default Modal;