| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -38,7 +38,14 @@ import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  getPasskeyExpirationSeconds, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from "../libs/util"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { createEndorserJwtForKey } from "../libs/crypto/vc"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { KeyMeta } from "../interfaces/common"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  GiveActionClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  JoinActionClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  OfferClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  PlanActionClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  RegisterActionClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  TenureClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from "../interfaces/claims"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  GenericCredWrapper, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -46,15 +53,13 @@ import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  AxiosErrorResponse, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  UserInfo, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  CreateAndSubmitClaimResult, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  PlanSummaryRecord, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  GiveVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  OfferVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  RegisterVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  ClaimObject, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  VerifiableCredentialClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  Agent, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  QuantitativeValue, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  KeyMetaWithPrivate, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  KeyMetaMaybeWithPrivate, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from "../interfaces/common"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { PlanSummaryRecord } from "../interfaces/records"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { logger } from "../utils/logger"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { PlatformServiceFactory } from "@/services/PlatformServiceFactory"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -650,7 +655,7 @@ export async function getNewOffersToUserProjects( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 * @param lastClaimId supplied when editing a previous claim | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export function hydrateGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  vcClaimOrig?: GiveVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  vcClaimOrig?: GiveActionClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fromDid?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  toDid?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  description?: string, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -662,8 +667,8 @@ export function hydrateGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  imageUrl?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  providerPlanHandleId?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  lastClaimId?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					): GiveVerifiableCredential { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: GiveVerifiableCredential = vcClaimOrig | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					): GiveActionClaim { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: GiveActionClaim = vcClaimOrig | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ? R.clone(vcClaimOrig) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    : { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        "@context": SCHEMA_ORG_CONTEXT, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -693,7 +698,7 @@ export function hydrateGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  // Initialize fulfills array if not present
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (!Array.isArray(vcClaim.fulfills)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.fulfills = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.fulfills = vcClaim.fulfills ? [vcClaim.fulfills] : []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  // Filter and add fulfills elements
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -796,7 +801,7 @@ export async function createAndSubmitGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export async function editAndSubmitGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  axios: Axios, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  apiServer: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fullClaim: GenericCredWrapper<GiveVerifiableCredential>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fullClaim: GenericCredWrapper<GiveActionClaim>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  issuerDid: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fromDid?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  toDid?: string, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -837,7 +842,7 @@ export async function editAndSubmitGive( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 * @param lastClaimId supplied when editing a previous claim | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export function hydrateOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  vcClaimOrig?: OfferVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  vcClaimOrig?: OfferClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fromDid?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  toDid?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  itemDescription?: string, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -847,8 +852,8 @@ export function hydrateOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fulfillsProjectHandleId?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  validThrough?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  lastClaimId?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					): OfferVerifiableCredential { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: OfferVerifiableCredential = vcClaimOrig | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					): OfferClaim { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: OfferClaim = vcClaimOrig | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ? R.clone(vcClaimOrig) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    : { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        "@context": SCHEMA_ORG_CONTEXT, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -856,12 +861,13 @@ export function hydrateOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (lastClaimId) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // this is an edit
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.lastClaimId = lastClaimId; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    delete vcClaim.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (fromDid) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.agent = { identifier: fromDid }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.offeredBy = { identifier: fromDid }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (toDid) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.recipient = { identifier: toDid }; | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -869,13 +875,10 @@ export function hydrateOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  vcClaim.description = conditionDescription || undefined; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (amount && !isNaN(amount)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const quantitativeValue: QuantitativeValue = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      "@context": SCHEMA_ORG_CONTEXT, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      "@type": "QuantitativeValue", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.includesObject = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      amountOfThisGood: amount, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      unitCode: unitCode || "HUR", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim.object = quantitativeValue; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (itemDescription || fulfillsProjectHandleId) { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -928,7 +931,7 @@ export async function createAndSubmitOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  return createAndSubmitClaim( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim as OfferVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim as OfferClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    issuerDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    apiServer, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    axios, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -938,7 +941,7 @@ export async function createAndSubmitOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export async function editAndSubmitOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  axios: Axios, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  apiServer: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fullClaim: GenericCredWrapper<OfferVerifiableCredential>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  fullClaim: GenericCredWrapper<OfferClaim>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  issuerDid: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  itemDescription: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  amount?: number, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -961,7 +964,7 @@ export async function editAndSubmitOffer( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    fullClaim.id, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  return createAndSubmitClaim( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim as OfferVerifiableCredential, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    vcClaim as OfferClaim, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    issuerDid, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    apiServer, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    axios, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -1035,7 +1038,7 @@ export async function createAndSubmitClaim( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export async function generateEndorserJwtUrlForAccount( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  account: KeyMeta, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  account: KeyMetaMaybeWithPrivate, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  isRegistered: boolean, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  givenName: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  profileImageUrl: string, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -1059,7 +1062,7 @@ export async function generateEndorserJwtUrlForAccount( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  // Add the next key -- not recommended for the QR code for such a high resolution
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (isContact) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (isContact && account.derivationPath && account.mnemonic) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const newDerivPath = nextDerivationPath(account.derivationPath); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const nextPublicHex = deriveAddress(account.mnemonic, newDerivPath)[2]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const nextPublicEncKey = Buffer.from(nextPublicHex, "hex"); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -1081,7 +1084,11 @@ export async function createEndorserJwtForDid( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  expiresIn?: number, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const account = await retrieveFullyDecryptedAccount(issuerDid); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  return createEndorserJwtForKey(account as KeyMeta, payload, expiresIn); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  return createEndorserJwtForKey( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    account as KeyMetaWithPrivate, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    payload, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    expiresIn, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					/** | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -1178,102 +1185,118 @@ export const claimSpecialDescription = ( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  identifiers: Array<string>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  contacts: Array<Contact>, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					) => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  let claim = record.claim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  let claim: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    | GenericVerifiableCredential | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    | GenericCredWrapper<GenericVerifiableCredential> = record.claim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if ("claim" in claim) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // it's a nested GenericCredWrapper
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    claim = claim.claim as GenericVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const issuer = didInfo(record.issuer, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const claimObj = claim as ClaimObject; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const type = claimObj["@type"] || "UnknownType"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const type = claim["@type"] || "UnknownType"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  if (type === "AgreeAction") { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return ( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      issuer + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      " agreed with " + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      claimSummary(claimObj.object as GenericVerifiableCredential) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      claimSummary(claim.object as GenericVerifiableCredential) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (isAccept(claim)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return ( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      issuer + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      " accepted " + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      claimSummary(claimObj.object as GenericVerifiableCredential) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      claimSummary(claim.object as GenericVerifiableCredential) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (type === "GiveAction") { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const giveClaim = claim as GiveVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent: Agent = giveClaim.agent || { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      identifier: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      did: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agentDid = agent.did || agent.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = agentDid | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? didInfo(agentDid, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : "someone"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offering = giveClaim.object | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? " " + claimSummary(giveClaim.object) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const giveClaim = claim as GiveActionClaim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // @ts-expect-error because .did may be found in legacy data, before March 2023
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const legacyGiverDid = giveClaim.agent?.did; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const giver = giveClaim.agent?.identifier || legacyGiverDid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const giverInfo = didInfo(giver, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let gaveAmount = giveClaim.object?.amountOfThisGood | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? displayAmount( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          giveClaim.object.unitCode as string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          giveClaim.object.amountOfThisGood as number, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const recipient = giveClaim.participant?.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const recipientInfo = recipient | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? " to " + didInfo(recipient, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    if (giveClaim.description) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      if (gaveAmount) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        gaveAmount = gaveAmount + ", and also: "; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      gaveAmount = gaveAmount + giveClaim.description; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    if (!gaveAmount) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      gaveAmount = "something not described"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // @ts-expect-error because .did may be found in legacy data, before March 2023
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const legacyRecipDid = giveClaim.recipient?.did; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const gaveRecipientId = giveClaim.recipient?.identifier || legacyRecipDid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const gaveRecipientInfo = gaveRecipientId | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? " to " + didInfo(gaveRecipientId, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + " gave" + offering + recipientInfo; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return giverInfo + " gave" + gaveRecipientInfo + ": " + gaveAmount; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (type === "JoinAction") { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const joinClaim = claim as ClaimObject; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent: Agent = joinClaim.agent || { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      identifier: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      did: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agentDid = agent.did || agent.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = agentDid | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? didInfo(agentDid, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : "someone"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const object = joinClaim.object as GenericVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const objectInfo = object ? " " + claimSummary(object) : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + " joined" + objectInfo; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const joinClaim = claim as JoinActionClaim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // @ts-expect-error because .did may be found in legacy data, before March 2023
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const legacyDid = joinClaim.agent?.did; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent = joinClaim.agent?.identifier || legacyDid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = didInfo(agent, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let eventOrganizer = | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      joinClaim.event && | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      joinClaim.event.organizer && | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      joinClaim.event.organizer.name; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    eventOrganizer = eventOrganizer || ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let eventName = joinClaim.event && joinClaim.event.name; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    eventName = eventName ? " " + eventName : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let fullEvent = eventOrganizer + eventName; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    fullEvent = fullEvent ? " attended the " + fullEvent : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let eventDate = joinClaim.event && joinClaim.event.startTime; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    eventDate = eventDate ? " at " + eventDate : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + fullEvent + eventDate; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (isOffer(claim)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerClaim = claim as OfferVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent: Agent = offerClaim.agent || { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      identifier: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      did: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agentDid = agent.did || agent.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = agentDid | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? didInfo(agentDid, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : "someone"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offering = offerClaim.object | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? " " + claimSummary(offerClaim.object) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerRecipientId = offerClaim.participant?.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerClaim = claim as OfferClaim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerer = offerClaim.offeredBy?.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = didInfo(offerer, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    let offering = ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    if (offerClaim.includesObject) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      offering += | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        " " + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        displayAmount( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          offerClaim.includesObject.unitCode, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          offerClaim.includesObject.amountOfThisGood, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    if (offerClaim.itemOffered?.description) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      offering += ", saying: " + offerClaim.itemOffered?.description; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // @ts-expect-error because .did may be found in legacy data, before March 2023
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const legacyDid = offerClaim.recipient?.did; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerRecipientId = offerClaim.recipient?.identifier || legacyDid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const offerRecipientInfo = offerRecipientId | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? " to " + didInfo(offerRecipientId, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + " offered" + offering + offerRecipientInfo; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (type === "PlanAction") { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const planClaim = claim as ClaimObject; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent: Agent = planClaim.agent || { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      identifier: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      did: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agentDid = agent.did || agent.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = agentDid | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? didInfo(agentDid, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : "someone"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const object = planClaim.object as GenericVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const objectInfo = object ? " " + claimSummary(object) : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + " planned" + objectInfo; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const planClaim = claim as PlanActionClaim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const claimer = planClaim.agent?.identifier || record.issuer; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const claimerInfo = didInfo(claimer, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return claimerInfo + " announced a project: " + planClaim.name; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else if (type === "Tenure") { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const tenureClaim = claim as ClaimObject; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agent: Agent = tenureClaim.agent || { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      identifier: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      did: undefined, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const agentDid = agent.did || agent.identifier; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = agentDid | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ? didInfo(agentDid, activeDid, identifiers, contacts) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      : "someone"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const object = tenureClaim.object as GenericVerifiableCredential; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const objectInfo = object ? " " + claimSummary(object) : ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return contactInfo + " has tenure" + objectInfo; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const tenureClaim = claim as TenureClaim; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // @ts-expect-error because .did may be found in legacy data, before March 2023
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const legacyDid = tenureClaim.party?.did; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const claimer = tenureClaim.party?.identifier || legacyDid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const contactInfo = didInfo(claimer, activeDid, identifiers, contacts); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const polygon = tenureClaim.spatialUnit?.geo?.polygon || ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return ( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      contactInfo + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      " possesses [" + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      polygon.substring(0, polygon.indexOf(" ")) + | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      "...]" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return issuer + " declared " + claimSummary(claim); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -1330,7 +1353,7 @@ export async function createInviteJwt( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  identifier?: string, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  expiresIn?: number, // in seconds
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					): Promise<string> { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: RegisterVerifiableCredential = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  const vcClaim: RegisterActionClaim = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    "@context": SCHEMA_ORG_CONTEXT, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    "@type": "RegisterAction", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    agent: { identifier: activeDid }, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |