UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

149 lines (148 loc) 4.62 kB
import { Optional } from "@docsvision/web/core/services"; export interface IDssSignRequestSignatureParameters { Hash: string; CADESType: string; IsDetached: boolean; TSPAddress?: string; IncludeDocumentName?: boolean; /** base64({ [key: string]: string }) */ AuthenticatedAttributes?: string; } export declare enum DssSingType { CAdES = 2, XMLDSig = 0, GOST3410 = 1, PDF = 3, MSOffice = 4, CMS = 5 } export interface DssSignRequestSignature { Type: DssSingType; Parameters: IDssSignRequestSignatureParameters; CertificateId: number; PinCode: string; } export interface DssSign2BinaryData { RefId: string; } export interface DssSign2Request { BinaryData: DssSign2BinaryData[]; Signature: DssSignRequestSignature; ForceConfirmation?: boolean; } export interface IDssOperationResultInfo { RefId: string; OriginalRefId: string; Status: "Completed" | "Created" | "InProgress" | "Processing" | "Error"; Error: string; ErrorDescription: string; } export interface IDssSign2Operation { Id: string; Status: "Completed" | "Created" | "InProgress" | "Processing" | "Error"; Result: { ProcessedDocuments: IDssOperationResultInfo[]; }; } export interface IDssSign2Response { Operation: IDssSign2Operation; } export interface IDssDocumentUploadResponse { DocumentIds: string[]; } export declare enum DSSActions { /** Подтверждение входа пользователя */ Issue = 1, /** Подпись документа */ SignDocument = 2, /** Подпись пакета документов */ SignDocuments = 4, /** Расшифрование докумета */ DecryptDocument = 8, /** Создание запроса на сертификат */ CreateRequest = 16, /** Смена ПИН-кода на закрытый ключ сертификата */ ChangePin = 32, /** Перевыпуск сертификата */ RenewCertificate = 64, /** Аннулирование сертификата */ RevokeCertificate = 128, /** Приостановление действия сертификата */ HoldCertificate = 256, /** Возобновление действия сертификата */ UnholdCertificate = 512, /** Удаление сертификата */ DeleteCertificate = 1024, /** Создание ключа согласования (CloudCSP) */ PrivateKeyAccess = 2048 } export interface IDssTransactionDocumentContent { Name: string; Content: string; } export interface IDssTransactionParameter extends IDssSignRequestSignatureParameters { SignatureType: DssSingType; CertificateId: number; /** Сведения о документе. Например, имя файла */ DocumentInfo: string; /** Тип документа (обычно расширение). Параметр используется для визуализации документа */ DocumentType: string; } export interface IDssSignByTransactionRequest { OperationCode: Optional<DSSActions>; Document?: string; Documents?: IDssTransactionDocumentContent[]; Parameters: Array<{ Name: keyof IDssTransactionParameter; Value: any; }>; } export interface Title { Value: string; } export interface Image { MimeType: string; Value: string; } export interface TextChallenge { Image: Image; AuthnMethod: string; RefID: string; ExpiresIn: number; ExpiresInSpecified: boolean; } export interface IDssTransactionConfirmationContextData { RefID: string; } export interface IDssTransactionConfirmationChallenge { Title: Title; TextChallenge: TextChallenge[]; ContextData: IDssTransactionConfirmationContextData; } export interface IDssChoiceAuthenticationChallenge { Title: Title; ChoiceChallenge: Object[]; ContextData: IDssTransactionConfirmationContextData; } export interface IDssChallengeResult { RefId: string; Value?: string; } export interface IDssConfirmationResponse { AccessToken?: string; ExpiresIn?: number; Challenge: IDssTransactionConfirmationChallenge; ContextData: IDssTransactionConfirmationContextData; IsFinal: boolean; IsError: boolean; Error?: string; ErrorDescription?: string; TransactionId?: string; } export interface IDssChoiceAuthenticationResponse { Challenge: IDssChoiceAuthenticationChallenge; IsFinal: boolean; IsError: boolean; Error?: string; ErrorDescription?: string; }