import React, { ReactElement, ReactFragment, ReactNode } from 'react'; import '../static/icons/index.js'; import './index.scss'; interface DialogProps extends React.HTMLAttributes { visible: boolean; onConfirm?: (event: React.MouseEvent) => void; onCancel?: (event: React.MouseEvent) => void; titleNode?: ReactNode; buttons?: ReactElement | ReactFragment; } interface ModalParams { buttons?: ReactElement | ReactFragment; title?: ReactNode; content: ReactNode; } interface ConfirmParams { onConfirm: () => void; onCancel: () => void; content: ReactNode; } interface AlertParams { content: ReactNode; onConfirm?: (event: React.MouseEvent) => void; } declare const Dialog: React.FunctionComponent; declare const modal: ({ content, buttons, title }: ModalParams) => () => void; declare const alert: ({ content, onConfirm }: AlertParams) => void; declare const confirm: ({ onConfirm, onCancel, content }: ConfirmParams) => () => void; export { modal, alert, confirm }; export default Dialog;