@criipto/signatures
Version:
A Node.JS SDK for Criipto Signatures
220 lines (219 loc) • 7.64 kB
TypeScript
import { GraphQLClient } from 'graphql-request';
import { Sdk } from './signatory-viewer-types';
import * as Types from './signatory-viewer-types';
import { SignInput } from './signatory-viewer-types';
import { CompleteCriiptoVerifyEvidenceProviderInput, StartCriiptoVerifyEvidenceProviderInput } from './application-viewer-types';
export { Types as SignatoryViewerTypes };
type Authentication = {
token: string;
validation?: string;
};
export interface SignatoryViewerClientOptions {
endpoint?: string;
}
export declare class SignatoryViewerClient {
client: GraphQLClient;
sdk: Sdk;
constructor(options: Authentication, clientOptions?: SignatoryViewerClientOptions);
setAuthentication(authentication: Authentication): void;
sign(input: SignInput): Promise<{
__typename: "AnonymousViewer";
} | {
__typename: "Application";
} | {
__typename: "BatchSignatoryViewer";
status: Types.SignatoryStatus;
signer: boolean;
} | {
__typename: "SignatoryViewer";
status: Types.SignatoryStatus;
signer: boolean;
} | {
__typename: "UnvalidatedSignatoryViewer";
} | {
__typename: "UserViewer";
}>;
startCriiptoVerifyEvidenceProvider(input: StartCriiptoVerifyEvidenceProviderInput): Promise<{
__typename: "CriiptoVerifyEvidenceProviderRedirect";
redirectUri: string;
state: string;
}>;
completeCriiptoVerifyEvidenceProvider(input: CompleteCriiptoVerifyEvidenceProviderInput): Promise<{
__typename: "CompleteCriiptoVerifyEvidenceProviderOutput";
jwt: string;
}>;
openDocument(input: {
documentId: string;
}): Promise<void>;
approveDocument(input: {
documentId: string;
}): Promise<void>;
rejectSignatureOrder(input: {
reason?: string;
}): Promise<void>;
viewer(): Promise<{
__typename: "AnonymousViewer";
authenticated: boolean;
id: string;
} | {
__typename: "Application";
id: string;
} | {
__typename: "BatchSignatoryViewer";
batchSignatoryId: string;
status: Types.SignatoryStatus;
signer: boolean;
id: string;
evidenceProviders: Array<{
__typename: "AllOfSignatureEvidenceProvider";
id: string;
} | {
__typename: "CriiptoVerifySignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
message?: string | null;
loginHint?: string | null;
scope?: string | null;
environment?: Types.VerifyApplicationEnvironment | null;
} | {
__typename: "DrawableSignatureEvidenceProvider";
requireName: boolean;
minimumWidth?: number | null;
minimumHeight?: number | null;
id: string;
} | {
__typename: "NoopSignatureEvidenceProvider";
id: string;
} | {
__typename: "OidcJWTSignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
}>;
documents: {
__typename?: "SignatoryDocumentConnection";
edges: Array<{
__typename?: "SignatoryDocumentEdge";
status?: Types.SignatoryDocumentStatus | null;
node: {
__typename: "PdfDocument";
id: string;
title: string;
reference?: string | null;
signatoryViewerStatus?: Types.SignatoryDocumentStatus | null;
blob?: Buffer | null;
} | {
__typename: "XmlDocument";
id: string;
title: string;
reference?: string | null;
signatoryViewerStatus?: Types.SignatoryDocumentStatus | null;
blob?: Buffer | null;
};
}>;
};
} | {
__typename: "SignatoryViewer";
signatoryId: string;
role: Types.SignatoryRole;
status: Types.SignatoryStatus;
signer: boolean;
id: string;
evidenceProviders: Array<{
__typename: "AllOfSignatureEvidenceProvider";
id: string;
} | {
__typename: "CriiptoVerifySignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
message?: string | null;
loginHint?: string | null;
scope?: string | null;
environment?: Types.VerifyApplicationEnvironment | null;
} | {
__typename: "DrawableSignatureEvidenceProvider";
requireName: boolean;
minimumWidth?: number | null;
minimumHeight?: number | null;
id: string;
} | {
__typename: "NoopSignatureEvidenceProvider";
id: string;
} | {
__typename: "OidcJWTSignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
}>;
documents: {
__typename?: "SignatoryDocumentConnection";
edges: Array<{
__typename?: "SignatoryDocumentEdge";
status?: Types.SignatoryDocumentStatus | null;
node: {
__typename: "PdfDocument";
id: string;
title: string;
reference?: string | null;
signatoryViewerStatus?: Types.SignatoryDocumentStatus | null;
blob?: Buffer | null;
} | {
__typename: "XmlDocument";
id: string;
title: string;
reference?: string | null;
signatoryViewerStatus?: Types.SignatoryDocumentStatus | null;
blob?: Buffer | null;
};
}>;
};
} | {
__typename: "UnvalidatedSignatoryViewer";
signatoryId: string;
id: string;
evidenceProviders: Array<{
__typename: "AllOfSignatureEvidenceProvider";
id: string;
} | {
__typename: "CriiptoVerifySignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
message?: string | null;
loginHint?: string | null;
scope?: string | null;
environment?: Types.VerifyApplicationEnvironment | null;
} | {
__typename: "DrawableSignatureEvidenceProvider";
requireName: boolean;
minimumWidth?: number | null;
minimumHeight?: number | null;
id: string;
} | {
__typename: "NoopSignatureEvidenceProvider";
id: string;
} | {
__typename: "OidcJWTSignatureEvidenceProvider";
id: string;
domain: string;
clientID: string;
acrValues: Array<string>;
alwaysRedirect: boolean;
}>;
} | {
__typename: "UserViewer";
id: string;
}>;
}