UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

99 lines (98 loc) 4.75 kB
import { BodyContainerProvider } from "@docsvision/webclient/Helpers/BodyContainerProvider"; import React from "react"; import { MessageBoxButton } from '@docsvision/webclient/System/$MessageBox'; /** * Предоставляет статические методы для отображения простых модальных окон. */ export declare class MessageBox { private static mMessageBoxContainerProvider; static lastError?: HTMLElement; static getMessageBoxContainer(): BodyContainerProvider; /** * Показывает модальное окно с сообщением об ошибке. * * @param content Текст сообщения обо ошибке * @param customCaptionText Заголовок диалога * @returns Promise объект, который перейдет в состояние "resolved" после закрытия диалога. * * Пример использования: * * MessageBox.ShowError("Неправильное имя файла!").then(() => { * console.info("Диалог закрыт"); * }); * */ static ShowError(content: React.ReactNode, customCaptionText?: React.ReactNode): Promise<any>; /** * Показывает модальное окно с информационным сообщением. * * @param content Текст сообщения * @param customCaptionText Заголовок диалога * @returns Promise объект, который перейдет в состояние "resolved" после закрытия диалога. * * Пример использования: * * MessageBox.ShowInfo("Операция успешно выполнена!").then(() => { * console.info("Диалог закрыт"); * }); * */ static ShowInfo(content: React.ReactNode, customCaptionText?: React.ReactNode): Promise<any>; /** * Показывает модальное окно с предупреждением. * * @param content Текст предупреждения * @param customCaptionText Заголовок диалога * @returns Promise объект, который перейдет в состояние "resolved" после закрытия диалога. * * Пример использования: * * MessageBox.ShowWarning("Не все файлы были загружены!").then(() => { * console.info("Диалог закрыт"); * }); * */ static ShowWarning(content: React.ReactNode, customCaptionText?: React.ReactNode): Promise<any>; /** * Показывает модальное окно с запросом подтвердить какое-либо действие. * * @param content Текст запроса * @param customCaptionText Заголовок диалога * @returns Promise объект, который перейдет в состояние "resolved" при согласии, и "rejected" при отказе. * * Пример использования: * * MessageBox.ShowConfirmation("Вы действительно хотите удалить файл?").then(() => { * this.removeFile(); * }).catch(() => { * // Пользователь отменил удаление * }); * */ static ShowConfirmation(content: React.ReactNode, customCaptionText?: React.ReactNode, customButtonOkText?: React.ReactNode, customButtonCancelText?: React.ReactNode, hideByBackdropClick?: boolean, msgType?: MessageBoxType): Promise<any>; static ShowCustom<T>(content: React.ReactNode, customCaptionText: React.ReactNode, buttons: MessageBoxButton<T>[], hideByBackdropClick?: boolean): Promise<T>; /** * Показывает модальное окно с информацией об исключении * * @param exception Исключение * @returns Promise объект, который перейдет в состояние "resolved" при согласии, и "rejected" при отказе. * * Пример использования: * * try { * throw new Error("Произошла неизвестная ошибка"); * } catch (e) { * MessageBox.ShowException(e).then(() => { * console.info("Диалог закрыт"); * }); * } * @internal */ private static Show; private static renderModalHeader; } export declare enum MessageBoxType { Error = 0, Warning = 1, Info = 2 }