UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

80 lines (79 loc) 5.96 kB
import React from "react"; import { $ApplicationSettings, $DeviceType, $WebViewIOSEnabled } from "@docsvision/webclient/StandardServices"; import { $CloudSignature } from "@docsvision/webclient/BackOffice/$CloudSignature"; import { $PowerOfAttorneyApiController, $SignatureController, $SignatureMethodsController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers"; import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; import { $CryptoPro } from "@docsvision/webclient/BackOffice/$CryptoPro"; import { SignatureDialogLogic } from "@docsvision/webclient/BackOffice/SignatureDialogLogic"; import { IComponentProps } from "@docsvision/web/core/component"; import { $LocalStorage } from "@docsvision/webclient/System/$LocalStorage"; import { ISignatureDialogButtonsProps, SignatureDialogFrame } from "@docsvision/webclient/BackOffice/SignatureDialogFrame"; import { SignatureDialogLoader } from "@docsvision/webclient/BackOffice/SignatureDialogLoader"; import { SignatureDialogLabels } from "@docsvision/webclient/BackOffice/SignatureDialogLabels"; import { SignatureDialogNoPluginMessage } from "@docsvision/webclient/BackOffice/SignatureDialogNoPluginMessage"; import { SignatureDialogMethods } from "@docsvision/webclient/BackOffice/SignatureDialogMethods"; import { SignatureDialogSettings } from "@docsvision/webclient/BackOffice/SignatureDialogSettings"; import { $MessageBox } from "@docsvision/webclient/System/$MessageBox"; import { IDigitalSignOptions } from "@docsvision/webclient/BackOffice/$DigitalSignature"; import { $Resources } from "@docsvision/web/core/localization/$Resources"; import { Focusable } from "@docsvision/web/components/focus-management"; import { $CardInfo } from "@docsvision/webclient/System/LayoutServices"; import { SignatureDialogPowersOfAttorney } from "@docsvision/webclient/BackOffice/SignatureDialogPowersOfAttorney"; import { PowerOfAttorneyErrorMessage } from "@docsvision/webclient/BackOffice/PowerOfAttorneyErrorMessage"; import { $Router } from "@docsvision/webclient/System/$Router"; export declare type $SignatureDialogServices = $SignatureController & $WebViewIOSEnabled & $CloudSignature & $MessageBox & $CryptoPro & $ApplicationSettings & $LocalStorage & $SignatureMethodsController & $Resources & $CardInfo & $DeviceType & $PowerOfAttorneyApiController & $Router; /** Свойства для {@see SignatureDialog}. */ export interface ISignatureDialogProps extends IComponentProps<SignatureDialogLogic, SignatureDialogView> { /** Идентификатор документа. */ documentId: string; /** Не отображать выбор метки. */ hideLabelSelection?: boolean; /** Не отображать кнопку настройки вариантов подписания. */ hideSignatureMethodsSetup?: boolean; /** Скрыть метод простой подписи. */ hideSimpleSign?: boolean; /** Не отображать комбо-бокс выбора способа подписания (будет выбран первый вариант по-умолчанию). */ hideSignatureMethodsSelect?: boolean; /** Не отображать комбо-бокс выбора доверенности (будет выбран первый вариант по-умолчанию). */ hidePowerOfAttorneySelect?: boolean; /** Не отображать диалог на экране (используйте API {@link IDigitalSignatureDialogManagement} для управления видимостью). */ showHidden?: boolean; /** Сообщение, показываемое в нижней части диалога */ footer?: React.ReactNode; /** Сообщение, показываемое в верхней части диалога */ header?: React.ReactNode; /** Текст основной кнопки, по которой инициируется формирование подписи. */ signButtonText?: string; /** Текст кнопки отмены. */ cancelButtonText?: string; /** Текст в заголовке диалога. */ dialogHeaderText?: string; /** Вызывается при подписи. */ onSign?: (options: IDigitalSignOptions) => Promise<void>; /** Вызывается при отмене подписи. */ onCancel?: () => void; /** Вызывается для обработки отображаемого списка доступных способов подписания. */ onPrepareSignatureMethods?: (methods: GenModels.SignatureMethod[]) => GenModels.SignatureMethod[]; /** Вызывается при отрисовке кнопок диалога. */ onRenderButtons?: (props: ISignatureDialogButtonsProps, defaultButtons: JSX.Element[]) => JSX.Element[]; /** Вызывается при выборе способа подписания. */ onSelectMethods?: (method: GenModels.SignatureMethod) => void; services: $SignatureDialogServices; } export declare class SignatureDialogView { frame: typeof SignatureDialogFrame; loader: typeof SignatureDialogLoader; labels: typeof SignatureDialogLabels; powersOfAttorney: typeof SignatureDialogPowersOfAttorney; noPluginMessage: typeof SignatureDialogNoPluginMessage; methods: typeof SignatureDialogMethods; settings: typeof SignatureDialogSettings; errorMessage: typeof PowerOfAttorneyErrorMessage; contentWrapper: typeof Focusable; /** Точка расширения для партнеров */ footer: (logic: SignatureDialogLogic) => React.ReactNode; /** Точка расширения для партнеров */ header: (logic: SignatureDialogLogic) => React.ReactNode; } /** Диалог подписания документа */ export declare function SignatureDialog(props: ISignatureDialogProps): JSX.Element;