@affinidi/internal-api-clients
Version:
SDK core monorepo for affinity DID solution
647 lines (646 loc) • 28.3 kB
TypeScript
declare const _default: {
readonly components: {
readonly examples: {};
readonly headers: {};
readonly parameters: {};
readonly requestBodies: {};
readonly responses: {};
readonly schemas: {
readonly ValidateJwtOutput: {
readonly properties: {
readonly isValid: {
readonly type: "boolean";
};
readonly payload: {
readonly anyOf: readonly [{
readonly properties: {
readonly exp: {
readonly anyOf: readonly [{
readonly type: "string";
}, {
readonly type: "number";
readonly format: "double";
}];
};
readonly iat: {
readonly anyOf: readonly [{
readonly type: "string";
}, {
readonly type: "number";
readonly format: "double";
}];
};
readonly jti: {
readonly type: "string";
};
readonly iss: {
readonly type: "string";
};
};
readonly additionalProperties: {};
readonly type: "object";
}, {
readonly type: "string";
}];
};
};
readonly required: readonly ["isValid", "payload"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly ValidateJwtInput: {
readonly properties: {
readonly token: {
readonly type: "string";
};
};
readonly required: readonly ["token"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly FreeFormObject: {
readonly properties: {};
readonly type: "object";
readonly additionalProperties: {};
};
readonly SignedCredential: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
readonly VerifyCredentialShareResponseOutput: {
readonly properties: {
readonly jti: {
readonly type: "string";
};
readonly errors: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly issuer: {
readonly type: "string";
};
readonly isValid: {
readonly type: "boolean";
};
readonly suppliedCredentials: {
readonly items: {
readonly $ref: "#/components/schemas/SignedCredential";
};
readonly type: "array";
};
};
readonly required: readonly ["jti", "errors", "issuer", "isValid", "suppliedCredentials"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly VerifyCredentialShareResponseInput: {
readonly properties: {
readonly credentialShareRequestToken: {
readonly type: "string";
readonly nullable: true;
};
readonly credentialShareResponseToken: {
readonly type: "string";
};
readonly isHolderMustBeSubject: {
readonly type: "boolean";
readonly nullable: true;
};
};
readonly required: readonly ["credentialShareResponseToken"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly VerifyCredentialOutput: {
readonly properties: {
readonly errors: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly isValid: {
readonly type: "boolean";
};
};
readonly required: readonly ["errors", "isValid"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly W3cCredentialStatus: {
readonly properties: {
readonly id: {
readonly type: "string";
};
readonly type: {
readonly type: "string";
};
readonly revocationListIndex: {
readonly type: "string";
};
readonly revocationListCredential: {
readonly type: "string";
};
};
readonly required: readonly ["id", "type", "revocationListIndex", "revocationListCredential"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly W3cProof: {
readonly properties: {
readonly type: {
readonly type: "string";
readonly nullable: true;
};
readonly created: {
readonly type: "string";
readonly nullable: true;
};
readonly verificationMethod: {
readonly type: "string";
};
readonly proofPurpose: {
readonly type: "string";
};
readonly jws: {
readonly type: "string";
readonly nullable: true;
};
readonly proofValue: {
readonly type: "string";
readonly nullable: true;
};
readonly nonce: {
readonly type: "string";
readonly nullable: true;
};
};
readonly required: readonly ["verificationMethod", "proofPurpose"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly W3cCredential: {
readonly properties: {
readonly "@context": {
readonly anyOf: readonly [{
readonly $ref: "#/components/schemas/FreeFormObject";
}, {
readonly type: "string";
}];
};
readonly id: {
readonly type: "string";
readonly nullable: true;
};
readonly type: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly holder: {
readonly anyOf: readonly [{
readonly $ref: "#/components/schemas/FreeFormObject";
}, {
readonly type: "string";
}];
readonly nullable: true;
};
readonly credentialSubject: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
readonly credentialStatus: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/W3cCredentialStatus";
}];
readonly nullable: true;
};
readonly issuanceDate: {
readonly type: "string";
};
readonly issuer: {
readonly type: "string";
};
readonly expirationDate: {
readonly type: "string";
readonly nullable: true;
};
readonly proof: {
readonly $ref: "#/components/schemas/W3cProof";
};
readonly credentialSchema: {
readonly properties: {
readonly type: {
readonly type: "string";
};
readonly id: {
readonly type: "string";
};
};
readonly required: readonly ["type", "id"];
readonly type: "object";
};
};
readonly required: readonly ["@context", "type", "credentialSubject", "issuanceDate", "issuer", "proof"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly VerifyCredentialInput: {
readonly properties: {
readonly verifiableCredentials: {
readonly items: {
readonly $ref: "#/components/schemas/W3cCredential";
};
readonly type: "array";
readonly minItems: 1;
};
readonly issuerDidDocument: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
};
readonly required: readonly ["verifiableCredentials"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly VerifyPresentationOutput: {
readonly properties: {
readonly error: {
readonly type: "string";
};
readonly errors: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly isValid: {
readonly type: "boolean";
};
};
readonly required: readonly ["isValid"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly W3cPresentation: {
readonly properties: {
readonly "@context": {
readonly anyOf: readonly [{
readonly $ref: "#/components/schemas/FreeFormObject";
}, {
readonly type: "string";
}];
};
readonly id: {
readonly type: "string";
readonly nullable: true;
};
readonly type: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly holder: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
readonly verifiableCredential: {
readonly items: {
readonly $ref: "#/components/schemas/W3cCredential";
};
readonly type: "array";
};
readonly proof: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
};
readonly required: readonly ["@context", "type", "holder", "verifiableCredential", "proof"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly VerifyPresentationInput: {
readonly properties: {
readonly verifiablePresentation: {
readonly $ref: "#/components/schemas/W3cPresentation";
};
readonly signedPresentation: {
readonly $ref: "#/components/schemas/W3cPresentation";
};
readonly challenge: {
readonly type: "string";
};
};
readonly type: "object";
readonly additionalProperties: false;
};
readonly BuildCredentialRequestOutput: {
readonly properties: {
readonly credentialShareRequest: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
};
readonly required: readonly ["credentialShareRequest"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly UrlType: {
readonly type: "string";
readonly pattern: "^https?:\\/\\/.*$";
};
readonly CredentialRequirements: {
readonly properties: {
readonly type: {
readonly items: {
readonly type: "string";
};
readonly type: "array";
};
readonly constraints: {
readonly anyOf: readonly [{
readonly items: {
readonly type: "string";
};
readonly type: "array";
}, {
readonly items: {
readonly $ref: "#/components/schemas/FreeFormObject";
};
readonly type: "array";
}];
};
};
readonly required: readonly ["type"];
readonly type: "object";
readonly additionalProperties: false;
};
readonly DidType: {
readonly type: "string";
readonly pattern: "did:.*";
};
readonly DateISOType: {
readonly type: "string";
readonly pattern: "\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\.\\d+([+-][0-2]\\d:[0-5]\\d|Z)";
};
readonly BuildCredentialRequestInput: {
readonly properties: {
readonly callbackUrl: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/UrlType";
}];
readonly nullable: true;
};
readonly credentialRequirements: {
readonly items: {
readonly $ref: "#/components/schemas/CredentialRequirements";
};
readonly type: "array";
};
readonly issuerDid: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/DidType";
}];
readonly nullable: true;
};
readonly subjectDid: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/DidType";
}];
readonly nullable: true;
};
readonly audienceDid: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/DidType";
}];
readonly nullable: true;
};
readonly expiresAt: {
readonly allOf: readonly [{
readonly $ref: "#/components/schemas/DateISOType";
}];
readonly nullable: true;
};
readonly nonce: {
readonly type: "string";
readonly nullable: true;
};
};
readonly required: readonly ["credentialRequirements"];
readonly type: "object";
readonly additionalProperties: false;
};
};
readonly securitySchemes: {};
};
readonly info: {
readonly title: "affinity-verifier";
readonly version: "0.34.1";
readonly description: "Affinity verifier";
readonly license: {
readonly name: "ISC";
};
readonly contact: {
readonly name: "The Engineering Team";
readonly email: "nucleus.team@affinidi.com";
};
};
readonly openapi: "3.0.0";
readonly paths: {
readonly "/verifier/validate-jwt": {
readonly post: {
readonly operationId: "ValidateJwt";
readonly responses: {
readonly "200": {
readonly description: "OK";
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/ValidateJwtOutput";
};
};
};
};
readonly "400": {
readonly description: "Bad Request";
};
readonly "401": {
readonly description: "Unauthorized";
};
};
readonly description: "Validates JWT object.\n\nreturns\n isValid: boolean\n payload: payload from JWT";
readonly tags: readonly ["Verifier"];
readonly security: readonly [];
readonly parameters: readonly [{
readonly in: "header";
readonly name: "Api-Key";
readonly required: true;
readonly schema: {
readonly type: "string";
};
}];
readonly requestBody: {
readonly required: true;
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/ValidateJwtInput";
};
};
};
};
};
};
readonly "/verifier/verify-share-response": {
readonly post: {
readonly operationId: "VerifyCredentialShareResponse";
readonly responses: {
readonly "200": {
readonly description: "Ok";
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyCredentialShareResponseOutput";
};
};
};
};
};
readonly description: "Verifying JWT token (signature and expiration), validate each credential\ninside it (signature), validate response against request if requestToken was passed.\n\n`errors` contains list of error messages for invalid credentials.";
readonly summary: "Verifying share response token.";
readonly tags: readonly ["Verifier"];
readonly security: readonly [];
readonly parameters: readonly [{
readonly in: "header";
readonly name: "Api-Key";
readonly required: true;
readonly schema: {
readonly type: "string";
};
}];
readonly requestBody: {
readonly required: true;
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyCredentialShareResponseInput";
};
};
};
};
};
};
readonly "/verifier/verify-vcs": {
readonly post: {
readonly operationId: "VerifyCredentials";
readonly responses: {
readonly "200": {
readonly description: "Ok";
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyCredentialOutput";
};
};
};
};
};
readonly description: "Verifying Verifiable Credentials (signatures)\n\n`isValid` - true if all credentials verified\n`errors` contains list of error messages for invalid credentials.";
readonly summary: "Verifying VC";
readonly tags: readonly ["Verifier"];
readonly security: readonly [];
readonly parameters: readonly [{
readonly in: "header";
readonly name: "Api-Key";
readonly required: true;
readonly schema: {
readonly type: "string";
};
}];
readonly requestBody: {
readonly required: true;
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyCredentialInput";
};
};
};
};
};
};
readonly "/verifier/verify-vp": {
readonly post: {
readonly operationId: "VerifyPresentation";
readonly responses: {
readonly "200": {
readonly description: "Ok";
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyPresentationOutput";
};
};
};
};
};
readonly description: "Verifying Verifiable Presentation (signatures)\nThe request body has three optional fields:\n- verifiablePresentation - VP with structure according to W3C\n- signedPresentation - signed VP with structure according to W3C\n- challenge - VP challenge, which the VP requester could optionally send\n to check if it is the same as in VP. Otherwise, the check will be skipped.\n\nNOTE 1: You must use `verifiablePresentation` or `signedPresentation` as a request body input field.\n\nNOTE 2: VP challenge (according to VP model docs) could be any string. Endpoint allows only JWT challenge created\nusing `generatePresentationChallenge` of `@affinidi/wallet-core-sdk`. In that case, JWT will be processed correctly\nand will provide more security out of the box.\n\n`isValid` - true if presentation verified\n`error` verificaction error.";
readonly summary: "Verifying VP";
readonly tags: readonly ["Verifier"];
readonly security: readonly [];
readonly parameters: readonly [{
readonly in: "header";
readonly name: "Api-Key";
readonly required: true;
readonly schema: {
readonly type: "string";
};
}];
readonly requestBody: {
readonly required: true;
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/VerifyPresentationInput";
};
};
};
};
};
};
readonly "/verifier/build-credential-request": {
readonly post: {
readonly operationId: "BuildCredentialRequest";
readonly responses: {
readonly "200": {
readonly description: "Ok";
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/BuildCredentialRequestOutput";
};
};
};
};
};
readonly description: "Build credential share request JWT object from input data.";
readonly summary: "Builds credential share request.";
readonly tags: readonly ["Verifier"];
readonly security: readonly [];
readonly parameters: readonly [];
readonly requestBody: {
readonly required: true;
readonly content: {
readonly "application/json": {
readonly schema: {
readonly $ref: "#/components/schemas/BuildCredentialRequestInput";
};
};
};
};
};
};
};
readonly servers: readonly [{
readonly url: "/api/v1";
}];
};
export default _default;