import { MessageBoxProps, MessageBoxPropsTyped } from './messageBox';
import { LoadingBoxProps, LoadingBoxPropsTyped } from './loadingBox';
import { HelpProps, HelpPropsTyped } from './help';
export type ModalProps = MessageBoxProps | LoadingBoxProps | HelpProps;
export type ModalPropsTyped = (MessageBoxPropsTyped | LoadingBoxPropsTyped | HelpPropsTyped) & {
    canClose: boolean;
    onClose?: () => void;
};
export type ModalRef = {
    current: ModalPropsTyped | undefined;
    loading(content: LoadingBoxProps | undefined): void;
    message(content: MessageBoxProps | undefined): void;
    help(show: boolean): void;
};
export declare function useModal(canFollowLinks: boolean): ModalRef;
export declare function Modal(props: {
    state: ModalRef;
}): import("react/jsx-runtime").JSX.Element;
