@learncard/learn-cloud-plugin 2.3.4 → 2.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21585,6 +21585,10 @@ var require_types_cjs_development = __commonJS4({
21585
21585
  AddressValidator: /* @__PURE__ */ __name3(() => AddressValidator2, "AddressValidator"),
21586
21586
  AlignmentTargetTypeValidator: /* @__PURE__ */ __name3(() => AlignmentTargetTypeValidator2, "AlignmentTargetTypeValidator"),
21587
21587
  AlignmentValidator: /* @__PURE__ */ __name3(() => AlignmentValidator2, "AlignmentValidator"),
21588
+ AppBoostValidator: /* @__PURE__ */ __name3(() => AppBoostValidator2, "AppBoostValidator"),
21589
+ AppEventInputValidator: /* @__PURE__ */ __name3(() => AppEventInputValidator2, "AppEventInputValidator"),
21590
+ AppEventResponseValidator: /* @__PURE__ */ __name3(() => AppEventResponseValidator2, "AppEventResponseValidator"),
21591
+ AppEventValidator: /* @__PURE__ */ __name3(() => AppEventValidator2, "AppEventValidator"),
21588
21592
  AppListingStatusValidator: /* @__PURE__ */ __name3(() => AppListingStatusValidator2, "AppListingStatusValidator"),
21589
21593
  AppStoreListingCreateValidator: /* @__PURE__ */ __name3(() => AppStoreListingCreateValidator2, "AppStoreListingCreateValidator"),
21590
21594
  AppStoreListingUpdateValidator: /* @__PURE__ */ __name3(() => AppStoreListingUpdateValidator2, "AppStoreListingUpdateValidator"),
@@ -21633,6 +21637,12 @@ var require_types_cjs_development = __commonJS4({
21633
21637
  CreateManagedFrameworkInputValidator: /* @__PURE__ */ __name3(() => CreateManagedFrameworkInputValidator2, "CreateManagedFrameworkInputValidator"),
21634
21638
  CreateSkillInputValidator: /* @__PURE__ */ __name3(() => CreateSkillInputValidator2, "CreateSkillInputValidator"),
21635
21639
  CreateSkillsBatchInputValidator: /* @__PURE__ */ __name3(() => CreateSkillsBatchInputValidator2, "CreateSkillsBatchInputValidator"),
21640
+ CredentialActivityEventTypeValidator: /* @__PURE__ */ __name3(() => CredentialActivityEventTypeValidator2, "CredentialActivityEventTypeValidator"),
21641
+ CredentialActivityRecipientTypeValidator: /* @__PURE__ */ __name3(() => CredentialActivityRecipientTypeValidator2, "CredentialActivityRecipientTypeValidator"),
21642
+ CredentialActivitySourceTypeValidator: /* @__PURE__ */ __name3(() => CredentialActivitySourceTypeValidator2, "CredentialActivitySourceTypeValidator"),
21643
+ CredentialActivityStatsValidator: /* @__PURE__ */ __name3(() => CredentialActivityStatsValidator2, "CredentialActivityStatsValidator"),
21644
+ CredentialActivityValidator: /* @__PURE__ */ __name3(() => CredentialActivityValidator2, "CredentialActivityValidator"),
21645
+ CredentialActivityWithDetailsValidator: /* @__PURE__ */ __name3(() => CredentialActivityWithDetailsValidator2, "CredentialActivityWithDetailsValidator"),
21636
21646
  CredentialInfoValidator: /* @__PURE__ */ __name3(() => CredentialInfoValidator2, "CredentialInfoValidator"),
21637
21647
  CredentialRecordValidator: /* @__PURE__ */ __name3(() => CredentialRecordValidator2, "CredentialRecordValidator"),
21638
21648
  CredentialSchemaValidator: /* @__PURE__ */ __name3(() => CredentialSchemaValidator2, "CredentialSchemaValidator"),
@@ -21679,6 +21689,7 @@ var require_types_cjs_development = __commonJS4({
21679
21689
  LCNInboxStatusEnumValidator: /* @__PURE__ */ __name3(() => LCNInboxStatusEnumValidator2, "LCNInboxStatusEnumValidator"),
21680
21690
  LCNIntegrationCreateValidator: /* @__PURE__ */ __name3(() => LCNIntegrationCreateValidator2, "LCNIntegrationCreateValidator"),
21681
21691
  LCNIntegrationQueryValidator: /* @__PURE__ */ __name3(() => LCNIntegrationQueryValidator2, "LCNIntegrationQueryValidator"),
21692
+ LCNIntegrationStatusEnum: /* @__PURE__ */ __name3(() => LCNIntegrationStatusEnum2, "LCNIntegrationStatusEnum"),
21682
21693
  LCNIntegrationUpdateValidator: /* @__PURE__ */ __name3(() => LCNIntegrationUpdateValidator2, "LCNIntegrationUpdateValidator"),
21683
21694
  LCNIntegrationValidator: /* @__PURE__ */ __name3(() => LCNIntegrationValidator2, "LCNIntegrationValidator"),
21684
21695
  LCNNotificationDataValidator: /* @__PURE__ */ __name3(() => LCNNotificationDataValidator2, "LCNNotificationDataValidator"),
@@ -21707,6 +21718,7 @@ var require_types_cjs_development = __commonJS4({
21707
21718
  PaginatedConsentFlowTermsValidator: /* @__PURE__ */ __name3(() => PaginatedConsentFlowTermsValidator2, "PaginatedConsentFlowTermsValidator"),
21708
21719
  PaginatedConsentFlowTransactionsValidator: /* @__PURE__ */ __name3(() => PaginatedConsentFlowTransactionsValidator2, "PaginatedConsentFlowTransactionsValidator"),
21709
21720
  PaginatedContractCredentialsValidator: /* @__PURE__ */ __name3(() => PaginatedContractCredentialsValidator2, "PaginatedContractCredentialsValidator"),
21721
+ PaginatedCredentialActivitiesValidator: /* @__PURE__ */ __name3(() => PaginatedCredentialActivitiesValidator2, "PaginatedCredentialActivitiesValidator"),
21710
21722
  PaginatedEncryptedCredentialRecordsValidator: /* @__PURE__ */ __name3(() => PaginatedEncryptedCredentialRecordsValidator2, "PaginatedEncryptedCredentialRecordsValidator"),
21711
21723
  PaginatedEncryptedRecordsValidator: /* @__PURE__ */ __name3(() => PaginatedEncryptedRecordsValidator2, "PaginatedEncryptedRecordsValidator"),
21712
21724
  PaginatedInboxCredentialsValidator: /* @__PURE__ */ __name3(() => PaginatedInboxCredentialsValidator2, "PaginatedInboxCredentialsValidator"),
@@ -21734,7 +21746,11 @@ var require_types_cjs_development = __commonJS4({
21734
21746
  RubricCriterionValidator: /* @__PURE__ */ __name3(() => RubricCriterionValidator2, "RubricCriterionValidator"),
21735
21747
  SendBoostInputValidator: /* @__PURE__ */ __name3(() => SendBoostInputValidator2, "SendBoostInputValidator"),
21736
21748
  SendBoostResponseValidator: /* @__PURE__ */ __name3(() => SendBoostResponseValidator2, "SendBoostResponseValidator"),
21749
+ SendBrandingOptionsValidator: /* @__PURE__ */ __name3(() => SendBrandingOptionsValidator2, "SendBrandingOptionsValidator"),
21750
+ SendCredentialEventValidator: /* @__PURE__ */ __name3(() => SendCredentialEventValidator2, "SendCredentialEventValidator"),
21751
+ SendInboxResponseValidator: /* @__PURE__ */ __name3(() => SendInboxResponseValidator2, "SendInboxResponseValidator"),
21737
21752
  SendInputValidator: /* @__PURE__ */ __name3(() => SendInputValidator2, "SendInputValidator"),
21753
+ SendOptionsValidator: /* @__PURE__ */ __name3(() => SendOptionsValidator2, "SendOptionsValidator"),
21738
21754
  SendResponseValidator: /* @__PURE__ */ __name3(() => SendResponseValidator2, "SendResponseValidator"),
21739
21755
  SentCredentialInfoValidator: /* @__PURE__ */ __name3(() => SentCredentialInfoValidator2, "SentCredentialInfoValidator"),
21740
21756
  ServiceValidator: /* @__PURE__ */ __name3(() => ServiceValidator2, "ServiceValidator"),
@@ -36109,7 +36125,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36109
36125
  var PaginatedClaimHooksValidator2 = PaginationResponseValidator2.extend({
36110
36126
  records: FullClaimHookValidator2.array()
36111
36127
  });
36112
- var LCNBoostStatus2 = external_exports2.enum(["DRAFT", "LIVE"]);
36128
+ var LCNBoostStatus2 = external_exports2.enum(["DRAFT", "PROVISIONAL", "LIVE"]);
36113
36129
  var BoostValidator2 = external_exports2.object({
36114
36130
  uri: external_exports2.string(),
36115
36131
  name: external_exports2.string().optional(),
@@ -36193,22 +36209,46 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36193
36209
  claimPermissions: BoostPermissionsValidator2.partial().optional(),
36194
36210
  skills: external_exports2.array(external_exports2.object({ frameworkId: external_exports2.string(), id: external_exports2.string() })).min(1).optional()
36195
36211
  });
36212
+ var SendBrandingOptionsValidator2 = external_exports2.object({
36213
+ issuerName: external_exports2.string().optional().describe("Name of the issuing organization"),
36214
+ issuerLogoUrl: external_exports2.string().url().optional().describe("Logo URL of the issuing organization"),
36215
+ credentialName: external_exports2.string().optional().describe("Display name for the credential"),
36216
+ recipientName: external_exports2.string().optional().describe("Name of the recipient for personalization")
36217
+ });
36218
+ var SendOptionsValidator2 = external_exports2.object({
36219
+ webhookUrl: external_exports2.string().url().optional().describe("Webhook URL to receive claim notifications"),
36220
+ suppressDelivery: external_exports2.boolean().optional().describe("If true, returns claimUrl without sending email/SMS"),
36221
+ branding: SendBrandingOptionsValidator2.optional().describe("Branding for email/SMS delivery")
36222
+ });
36196
36223
  var SendBoostInputValidator2 = external_exports2.object({
36197
36224
  type: external_exports2.literal("boost"),
36198
- recipient: external_exports2.string(),
36225
+ recipient: external_exports2.string().describe("Profile ID, DID, email, or phone number (auto-detected)"),
36199
36226
  contractUri: external_exports2.string().optional(),
36200
36227
  templateUri: external_exports2.string().optional(),
36201
36228
  template: SendBoostTemplateValidator2.optional(),
36202
36229
  signedCredential: VCValidator2.optional(),
36203
- templateData: external_exports2.record(external_exports2.string(), external_exports2.unknown()).optional()
36230
+ options: SendOptionsValidator2.optional().describe(
36231
+ "Options for email/phone recipients (Universal Inbox)"
36232
+ ),
36233
+ templateData: external_exports2.record(external_exports2.string(), external_exports2.unknown()).optional(),
36234
+ integrationId: external_exports2.string().optional().describe("Integration ID for activity tracking")
36204
36235
  }).refine((data) => data.templateUri || data.template, {
36205
36236
  message: "Either templateUri or template creation data must be provided.",
36206
36237
  path: ["templateUri"]
36207
36238
  });
36239
+ var SendInboxResponseValidator2 = external_exports2.object({
36240
+ issuanceId: external_exports2.string(),
36241
+ status: external_exports2.enum(["PENDING", "ISSUED", "EXPIRED", "DELIVERED", "CLAIMED"]),
36242
+ claimUrl: external_exports2.string().url().optional().describe("Present when suppressDelivery=true")
36243
+ });
36208
36244
  var SendBoostResponseValidator2 = external_exports2.object({
36209
36245
  type: external_exports2.literal("boost"),
36210
36246
  credentialUri: external_exports2.string(),
36211
- uri: external_exports2.string()
36247
+ uri: external_exports2.string(),
36248
+ activityId: external_exports2.string().describe("Links to the activity lifecycle for this issuance"),
36249
+ inbox: SendInboxResponseValidator2.optional().describe(
36250
+ "Present when sent via email/phone (Universal Inbox)"
36251
+ )
36212
36252
  });
36213
36253
  var SendInputValidator2 = external_exports2.discriminatedUnion("type", [SendBoostInputValidator2]);
36214
36254
  var SendResponseValidator2 = external_exports2.discriminatedUnion("type", [SendBoostResponseValidator2]);
@@ -36560,6 +36600,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36560
36600
  createdAt: external_exports2.string(),
36561
36601
  issuerDid: external_exports2.string(),
36562
36602
  webhookUrl: external_exports2.string().optional(),
36603
+ boostUri: external_exports2.string().optional(),
36604
+ activityId: external_exports2.string().optional(),
36563
36605
  signingAuthority: external_exports2.object({
36564
36606
  endpoint: external_exports2.string().optional(),
36565
36607
  name: external_exports2.string().optional()
@@ -36575,7 +36617,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36575
36617
  id: external_exports2.string(),
36576
36618
  isSigned: external_exports2.boolean(),
36577
36619
  isAccepted: external_exports2.boolean().optional(),
36578
- issuerDid: external_exports2.string()
36620
+ issuerDid: external_exports2.string(),
36621
+ boostUri: external_exports2.string()
36579
36622
  }).partial();
36580
36623
  var IssueInboxSigningAuthorityValidator2 = external_exports2.object({
36581
36624
  endpoint: external_exports2.string().url(),
@@ -36585,9 +36628,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36585
36628
  // === CORE DATA (Required) ===
36586
36629
  // WHAT is being sent and WHO is it for?
36587
36630
  recipient: ContactMethodQueryValidator2.describe("The recipient of the credential"),
36588
- credential: VCValidator2.or(VPValidator2).or(UnsignedVCValidator2).describe(
36631
+ // Either credential OR templateUri must be provided
36632
+ credential: VCValidator2.or(VPValidator2).or(UnsignedVCValidator2).optional().describe(
36589
36633
  "The credential to issue. If not signed, the users default signing authority will be used, or the specified signing authority in the configuration."
36590
36634
  ),
36635
+ templateUri: external_exports2.string().optional().describe(
36636
+ "URI of a boost template to use for issuance. The boost credential will be resolved and used. Mutually exclusive with credential field."
36637
+ ),
36591
36638
  // === OPTIONAL FEATURES ===
36592
36639
  // Add major, distinct features at the top level.
36593
36640
  //consentRequest: ConsentRequestValidator.optional(),
@@ -36599,6 +36646,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36599
36646
  ),
36600
36647
  webhookUrl: external_exports2.string().url().optional().describe("The webhook URL to receive credential issuance events."),
36601
36648
  expiresInDays: external_exports2.number().min(1).max(365).optional().describe("The number of days the credential will be valid for."),
36649
+ templateData: external_exports2.record(external_exports2.string(), external_exports2.unknown()).optional().describe(
36650
+ "Template data to render into the boost credential template using Mustache syntax. Only used when boostUri is provided."
36651
+ ),
36602
36652
  // --- For User-Facing Delivery (Email/SMS) ---
36603
36653
  delivery: external_exports2.object({
36604
36654
  suppress: external_exports2.boolean().optional().default(false).describe(
@@ -36613,7 +36663,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36613
36663
  name: external_exports2.string().optional().describe(
36614
36664
  'The name of the organization (e.g., "State University").'
36615
36665
  ),
36616
- logoUrl: external_exports2.string().url().optional().describe("The URL of the organization's logo.")
36666
+ logoUrl: external_exports2.string().url().optional().describe(
36667
+ "The URL of the organization's logo."
36668
+ )
36617
36669
  }).optional(),
36618
36670
  credential: external_exports2.object({
36619
36671
  name: external_exports2.string().optional().describe(
@@ -36640,6 +36692,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36640
36692
  }).optional().describe(
36641
36693
  "Configuration for the credential issuance. If not provided, the default configuration will be used."
36642
36694
  )
36695
+ }).refine((data) => data.credential || data.templateUri, {
36696
+ message: "Either credential or templateUri must be provided.",
36697
+ path: ["credential"]
36643
36698
  });
36644
36699
  var IssueInboxCredentialResponseValidator2 = external_exports2.object({
36645
36700
  issuanceId: external_exports2.string(),
@@ -36667,28 +36722,43 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36667
36722
  { message: "Must be a valid http(s) origin" }
36668
36723
  )
36669
36724
  ]);
36725
+ var LCNIntegrationStatusEnum2 = external_exports2.enum(["setup", "active", "paused"]);
36670
36726
  var LCNIntegrationValidator2 = external_exports2.object({
36671
36727
  id: external_exports2.string(),
36672
36728
  name: external_exports2.string(),
36673
36729
  description: external_exports2.string().optional(),
36674
36730
  publishableKey: external_exports2.string(),
36675
- whitelistedDomains: external_exports2.array(LCNDomainOrOriginValidator2).default([])
36731
+ whitelistedDomains: external_exports2.array(LCNDomainOrOriginValidator2).default([]),
36732
+ // Setup/onboarding status
36733
+ status: LCNIntegrationStatusEnum2.default("setup"),
36734
+ guideType: external_exports2.string().optional(),
36735
+ guideState: external_exports2.record(external_exports2.string(), external_exports2.any()).optional(),
36736
+ // Timestamps
36737
+ createdAt: external_exports2.string().optional(),
36738
+ updatedAt: external_exports2.string().optional()
36676
36739
  });
36677
36740
  var LCNIntegrationCreateValidator2 = external_exports2.object({
36678
36741
  name: external_exports2.string(),
36679
36742
  description: external_exports2.string().optional(),
36680
- whitelistedDomains: external_exports2.array(LCNDomainOrOriginValidator2).default([])
36743
+ whitelistedDomains: external_exports2.array(LCNDomainOrOriginValidator2).default([]),
36744
+ guideType: external_exports2.string().optional()
36681
36745
  });
36682
36746
  var LCNIntegrationUpdateValidator2 = external_exports2.object({
36683
36747
  name: external_exports2.string().optional(),
36684
36748
  description: external_exports2.string().optional(),
36685
36749
  whitelistedDomains: external_exports2.array(LCNDomainOrOriginValidator2).optional(),
36686
- rotatePublishableKey: external_exports2.boolean().optional()
36750
+ rotatePublishableKey: external_exports2.boolean().optional(),
36751
+ // Setup/onboarding updates
36752
+ status: LCNIntegrationStatusEnum2.optional(),
36753
+ guideType: external_exports2.string().optional(),
36754
+ guideState: external_exports2.record(external_exports2.string(), external_exports2.any()).optional()
36687
36755
  });
36688
36756
  var LCNIntegrationQueryValidator2 = external_exports2.object({
36689
36757
  id: StringQuery2,
36690
36758
  name: StringQuery2,
36691
- description: StringQuery2
36759
+ description: StringQuery2,
36760
+ status: StringQuery2,
36761
+ guideType: StringQuery2
36692
36762
  }).partial();
36693
36763
  var PaginatedLCNIntegrationsValidator2 = PaginationResponseValidator2.extend({
36694
36764
  records: LCNIntegrationValidator2.array()
@@ -36903,6 +36973,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36903
36973
  ]);
36904
36974
  var AppStoreListingValidator2 = external_exports2.object({
36905
36975
  listing_id: external_exports2.string(),
36976
+ slug: external_exports2.string().optional(),
36906
36977
  display_name: external_exports2.string(),
36907
36978
  tagline: external_exports2.string(),
36908
36979
  full_description: external_exports2.string(),
@@ -36940,6 +37011,77 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
36940
37011
  var PaginatedInstalledAppsValidator2 = PaginationResponseValidator2.extend({
36941
37012
  records: InstalledAppValidator2.array()
36942
37013
  });
37014
+ var AppBoostValidator2 = external_exports2.object({
37015
+ templateAlias: external_exports2.string().min(1).max(50).regex(/^[a-z0-9-]+$/),
37016
+ boostUri: external_exports2.string()
37017
+ });
37018
+ var SendCredentialEventValidator2 = external_exports2.object({
37019
+ type: external_exports2.literal("send-credential"),
37020
+ templateAlias: external_exports2.string(),
37021
+ templateData: external_exports2.record(external_exports2.string(), external_exports2.unknown()).optional()
37022
+ });
37023
+ var AppEventValidator2 = external_exports2.discriminatedUnion("type", [SendCredentialEventValidator2]);
37024
+ var AppEventInputValidator2 = external_exports2.object({
37025
+ listingId: external_exports2.string(),
37026
+ event: AppEventValidator2
37027
+ });
37028
+ var AppEventResponseValidator2 = external_exports2.record(external_exports2.string(), external_exports2.unknown());
37029
+ var CredentialActivityEventTypeValidator2 = external_exports2.enum([
37030
+ "CREATED",
37031
+ "DELIVERED",
37032
+ "CLAIMED",
37033
+ "EXPIRED",
37034
+ "FAILED"
37035
+ ]);
37036
+ var CredentialActivityRecipientTypeValidator2 = external_exports2.enum(["profile", "email", "phone"]);
37037
+ var CredentialActivitySourceTypeValidator2 = external_exports2.enum([
37038
+ "send",
37039
+ "sendBoost",
37040
+ "sendCredential",
37041
+ "contract",
37042
+ "claim",
37043
+ "inbox",
37044
+ "claimLink",
37045
+ "acceptCredential"
37046
+ ]);
37047
+ var CredentialActivityValidator2 = external_exports2.object({
37048
+ id: external_exports2.string(),
37049
+ activityId: external_exports2.string(),
37050
+ eventType: CredentialActivityEventTypeValidator2,
37051
+ timestamp: external_exports2.string(),
37052
+ actorProfileId: external_exports2.string(),
37053
+ recipientType: CredentialActivityRecipientTypeValidator2,
37054
+ recipientIdentifier: external_exports2.string(),
37055
+ boostUri: external_exports2.string().optional(),
37056
+ credentialUri: external_exports2.string().optional(),
37057
+ inboxCredentialId: external_exports2.string().optional(),
37058
+ integrationId: external_exports2.string().optional(),
37059
+ source: CredentialActivitySourceTypeValidator2,
37060
+ metadata: external_exports2.record(external_exports2.string(), external_exports2.unknown()).optional()
37061
+ });
37062
+ var CredentialActivityWithDetailsValidator2 = CredentialActivityValidator2.extend({
37063
+ boost: external_exports2.object({
37064
+ id: external_exports2.string(),
37065
+ name: external_exports2.string().optional(),
37066
+ category: external_exports2.string().optional()
37067
+ }).optional(),
37068
+ recipientProfile: external_exports2.object({
37069
+ profileId: external_exports2.string(),
37070
+ displayName: external_exports2.string().optional()
37071
+ }).optional()
37072
+ });
37073
+ var PaginatedCredentialActivitiesValidator2 = PaginationResponseValidator2.extend({
37074
+ records: CredentialActivityWithDetailsValidator2.array()
37075
+ });
37076
+ var CredentialActivityStatsValidator2 = external_exports2.object({
37077
+ total: external_exports2.number(),
37078
+ created: external_exports2.number(),
37079
+ delivered: external_exports2.number(),
37080
+ claimed: external_exports2.number(),
37081
+ expired: external_exports2.number(),
37082
+ failed: external_exports2.number(),
37083
+ claimRate: external_exports2.number()
37084
+ });
36943
37085
  }
36944
37086
  });
36945
37087
  var require_dist = __commonJS4({
@@ -38284,7 +38426,7 @@ var FullClaimHookValidator = external_exports.object({ id: external_exports.stri
38284
38426
  var PaginatedClaimHooksValidator = PaginationResponseValidator.extend({
38285
38427
  records: FullClaimHookValidator.array()
38286
38428
  });
38287
- var LCNBoostStatus = external_exports.enum(["DRAFT", "LIVE"]);
38429
+ var LCNBoostStatus = external_exports.enum(["DRAFT", "PROVISIONAL", "LIVE"]);
38288
38430
  var BoostValidator = external_exports.object({
38289
38431
  uri: external_exports.string(),
38290
38432
  name: external_exports.string().optional(),
@@ -38368,22 +38510,46 @@ var SendBoostTemplateValidator = BoostValidator.partial().omit({ uri: true, clai
38368
38510
  claimPermissions: BoostPermissionsValidator.partial().optional(),
38369
38511
  skills: external_exports.array(external_exports.object({ frameworkId: external_exports.string(), id: external_exports.string() })).min(1).optional()
38370
38512
  });
38513
+ var SendBrandingOptionsValidator = external_exports.object({
38514
+ issuerName: external_exports.string().optional().describe("Name of the issuing organization"),
38515
+ issuerLogoUrl: external_exports.string().url().optional().describe("Logo URL of the issuing organization"),
38516
+ credentialName: external_exports.string().optional().describe("Display name for the credential"),
38517
+ recipientName: external_exports.string().optional().describe("Name of the recipient for personalization")
38518
+ });
38519
+ var SendOptionsValidator = external_exports.object({
38520
+ webhookUrl: external_exports.string().url().optional().describe("Webhook URL to receive claim notifications"),
38521
+ suppressDelivery: external_exports.boolean().optional().describe("If true, returns claimUrl without sending email/SMS"),
38522
+ branding: SendBrandingOptionsValidator.optional().describe("Branding for email/SMS delivery")
38523
+ });
38371
38524
  var SendBoostInputValidator = external_exports.object({
38372
38525
  type: external_exports.literal("boost"),
38373
- recipient: external_exports.string(),
38526
+ recipient: external_exports.string().describe("Profile ID, DID, email, or phone number (auto-detected)"),
38374
38527
  contractUri: external_exports.string().optional(),
38375
38528
  templateUri: external_exports.string().optional(),
38376
38529
  template: SendBoostTemplateValidator.optional(),
38377
38530
  signedCredential: VCValidator.optional(),
38378
- templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
38531
+ options: SendOptionsValidator.optional().describe(
38532
+ "Options for email/phone recipients (Universal Inbox)"
38533
+ ),
38534
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
38535
+ integrationId: external_exports.string().optional().describe("Integration ID for activity tracking")
38379
38536
  }).refine((data) => data.templateUri || data.template, {
38380
38537
  message: "Either templateUri or template creation data must be provided.",
38381
38538
  path: ["templateUri"]
38382
38539
  });
38540
+ var SendInboxResponseValidator = external_exports.object({
38541
+ issuanceId: external_exports.string(),
38542
+ status: external_exports.enum(["PENDING", "ISSUED", "EXPIRED", "DELIVERED", "CLAIMED"]),
38543
+ claimUrl: external_exports.string().url().optional().describe("Present when suppressDelivery=true")
38544
+ });
38383
38545
  var SendBoostResponseValidator = external_exports.object({
38384
38546
  type: external_exports.literal("boost"),
38385
38547
  credentialUri: external_exports.string(),
38386
- uri: external_exports.string()
38548
+ uri: external_exports.string(),
38549
+ activityId: external_exports.string().describe("Links to the activity lifecycle for this issuance"),
38550
+ inbox: SendInboxResponseValidator.optional().describe(
38551
+ "Present when sent via email/phone (Universal Inbox)"
38552
+ )
38387
38553
  });
38388
38554
  var SendInputValidator = external_exports.discriminatedUnion("type", [SendBoostInputValidator]);
38389
38555
  var SendResponseValidator = external_exports.discriminatedUnion("type", [SendBoostResponseValidator]);
@@ -38735,6 +38901,8 @@ var InboxCredentialValidator = external_exports.object({
38735
38901
  createdAt: external_exports.string(),
38736
38902
  issuerDid: external_exports.string(),
38737
38903
  webhookUrl: external_exports.string().optional(),
38904
+ boostUri: external_exports.string().optional(),
38905
+ activityId: external_exports.string().optional(),
38738
38906
  signingAuthority: external_exports.object({
38739
38907
  endpoint: external_exports.string().optional(),
38740
38908
  name: external_exports.string().optional()
@@ -38750,7 +38918,8 @@ var InboxCredentialQueryValidator = external_exports.object({
38750
38918
  id: external_exports.string(),
38751
38919
  isSigned: external_exports.boolean(),
38752
38920
  isAccepted: external_exports.boolean().optional(),
38753
- issuerDid: external_exports.string()
38921
+ issuerDid: external_exports.string(),
38922
+ boostUri: external_exports.string()
38754
38923
  }).partial();
38755
38924
  var IssueInboxSigningAuthorityValidator = external_exports.object({
38756
38925
  endpoint: external_exports.string().url(),
@@ -38760,9 +38929,13 @@ var IssueInboxCredentialValidator = external_exports.object({
38760
38929
  // === CORE DATA (Required) ===
38761
38930
  // WHAT is being sent and WHO is it for?
38762
38931
  recipient: ContactMethodQueryValidator.describe("The recipient of the credential"),
38763
- credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).describe(
38932
+ // Either credential OR templateUri must be provided
38933
+ credential: VCValidator.or(VPValidator).or(UnsignedVCValidator).optional().describe(
38764
38934
  "The credential to issue. If not signed, the users default signing authority will be used, or the specified signing authority in the configuration."
38765
38935
  ),
38936
+ templateUri: external_exports.string().optional().describe(
38937
+ "URI of a boost template to use for issuance. The boost credential will be resolved and used. Mutually exclusive with credential field."
38938
+ ),
38766
38939
  // === OPTIONAL FEATURES ===
38767
38940
  // Add major, distinct features at the top level.
38768
38941
  //consentRequest: ConsentRequestValidator.optional(),
@@ -38774,6 +38947,9 @@ var IssueInboxCredentialValidator = external_exports.object({
38774
38947
  ),
38775
38948
  webhookUrl: external_exports.string().url().optional().describe("The webhook URL to receive credential issuance events."),
38776
38949
  expiresInDays: external_exports.number().min(1).max(365).optional().describe("The number of days the credential will be valid for."),
38950
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional().describe(
38951
+ "Template data to render into the boost credential template using Mustache syntax. Only used when boostUri is provided."
38952
+ ),
38777
38953
  // --- For User-Facing Delivery (Email/SMS) ---
38778
38954
  delivery: external_exports.object({
38779
38955
  suppress: external_exports.boolean().optional().default(false).describe(
@@ -38788,7 +38964,9 @@ var IssueInboxCredentialValidator = external_exports.object({
38788
38964
  name: external_exports.string().optional().describe(
38789
38965
  'The name of the organization (e.g., "State University").'
38790
38966
  ),
38791
- logoUrl: external_exports.string().url().optional().describe("The URL of the organization's logo.")
38967
+ logoUrl: external_exports.string().url().optional().describe(
38968
+ "The URL of the organization's logo."
38969
+ )
38792
38970
  }).optional(),
38793
38971
  credential: external_exports.object({
38794
38972
  name: external_exports.string().optional().describe(
@@ -38815,6 +38993,9 @@ var IssueInboxCredentialValidator = external_exports.object({
38815
38993
  }).optional().describe(
38816
38994
  "Configuration for the credential issuance. If not provided, the default configuration will be used."
38817
38995
  )
38996
+ }).refine((data) => data.credential || data.templateUri, {
38997
+ message: "Either credential or templateUri must be provided.",
38998
+ path: ["credential"]
38818
38999
  });
38819
39000
  var IssueInboxCredentialResponseValidator = external_exports.object({
38820
39001
  issuanceId: external_exports.string(),
@@ -38842,28 +39023,43 @@ var LCNDomainOrOriginValidator = external_exports.union([
38842
39023
  { message: "Must be a valid http(s) origin" }
38843
39024
  )
38844
39025
  ]);
39026
+ var LCNIntegrationStatusEnum = external_exports.enum(["setup", "active", "paused"]);
38845
39027
  var LCNIntegrationValidator = external_exports.object({
38846
39028
  id: external_exports.string(),
38847
39029
  name: external_exports.string(),
38848
39030
  description: external_exports.string().optional(),
38849
39031
  publishableKey: external_exports.string(),
38850
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
39032
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
39033
+ // Setup/onboarding status
39034
+ status: LCNIntegrationStatusEnum.default("setup"),
39035
+ guideType: external_exports.string().optional(),
39036
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional(),
39037
+ // Timestamps
39038
+ createdAt: external_exports.string().optional(),
39039
+ updatedAt: external_exports.string().optional()
38851
39040
  });
38852
39041
  var LCNIntegrationCreateValidator = external_exports.object({
38853
39042
  name: external_exports.string(),
38854
39043
  description: external_exports.string().optional(),
38855
- whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([])
39044
+ whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).default([]),
39045
+ guideType: external_exports.string().optional()
38856
39046
  });
38857
39047
  var LCNIntegrationUpdateValidator = external_exports.object({
38858
39048
  name: external_exports.string().optional(),
38859
39049
  description: external_exports.string().optional(),
38860
39050
  whitelistedDomains: external_exports.array(LCNDomainOrOriginValidator).optional(),
38861
- rotatePublishableKey: external_exports.boolean().optional()
39051
+ rotatePublishableKey: external_exports.boolean().optional(),
39052
+ // Setup/onboarding updates
39053
+ status: LCNIntegrationStatusEnum.optional(),
39054
+ guideType: external_exports.string().optional(),
39055
+ guideState: external_exports.record(external_exports.string(), external_exports.any()).optional()
38862
39056
  });
38863
39057
  var LCNIntegrationQueryValidator = external_exports.object({
38864
39058
  id: StringQuery,
38865
39059
  name: StringQuery,
38866
- description: StringQuery
39060
+ description: StringQuery,
39061
+ status: StringQuery,
39062
+ guideType: StringQuery
38867
39063
  }).partial();
38868
39064
  var PaginatedLCNIntegrationsValidator = PaginationResponseValidator.extend({
38869
39065
  records: LCNIntegrationValidator.array()
@@ -39078,6 +39274,7 @@ var PromotionLevelValidator = external_exports.enum([
39078
39274
  ]);
39079
39275
  var AppStoreListingValidator = external_exports.object({
39080
39276
  listing_id: external_exports.string(),
39277
+ slug: external_exports.string().optional(),
39081
39278
  display_name: external_exports.string(),
39082
39279
  tagline: external_exports.string(),
39083
39280
  full_description: external_exports.string(),
@@ -39115,6 +39312,77 @@ var PaginatedAppStoreListingsValidator = PaginationResponseValidator.extend({
39115
39312
  var PaginatedInstalledAppsValidator = PaginationResponseValidator.extend({
39116
39313
  records: InstalledAppValidator.array()
39117
39314
  });
39315
+ var AppBoostValidator = external_exports.object({
39316
+ templateAlias: external_exports.string().min(1).max(50).regex(/^[a-z0-9-]+$/),
39317
+ boostUri: external_exports.string()
39318
+ });
39319
+ var SendCredentialEventValidator = external_exports.object({
39320
+ type: external_exports.literal("send-credential"),
39321
+ templateAlias: external_exports.string(),
39322
+ templateData: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
39323
+ });
39324
+ var AppEventValidator = external_exports.discriminatedUnion("type", [SendCredentialEventValidator]);
39325
+ var AppEventInputValidator = external_exports.object({
39326
+ listingId: external_exports.string(),
39327
+ event: AppEventValidator
39328
+ });
39329
+ var AppEventResponseValidator = external_exports.record(external_exports.string(), external_exports.unknown());
39330
+ var CredentialActivityEventTypeValidator = external_exports.enum([
39331
+ "CREATED",
39332
+ "DELIVERED",
39333
+ "CLAIMED",
39334
+ "EXPIRED",
39335
+ "FAILED"
39336
+ ]);
39337
+ var CredentialActivityRecipientTypeValidator = external_exports.enum(["profile", "email", "phone"]);
39338
+ var CredentialActivitySourceTypeValidator = external_exports.enum([
39339
+ "send",
39340
+ "sendBoost",
39341
+ "sendCredential",
39342
+ "contract",
39343
+ "claim",
39344
+ "inbox",
39345
+ "claimLink",
39346
+ "acceptCredential"
39347
+ ]);
39348
+ var CredentialActivityValidator = external_exports.object({
39349
+ id: external_exports.string(),
39350
+ activityId: external_exports.string(),
39351
+ eventType: CredentialActivityEventTypeValidator,
39352
+ timestamp: external_exports.string(),
39353
+ actorProfileId: external_exports.string(),
39354
+ recipientType: CredentialActivityRecipientTypeValidator,
39355
+ recipientIdentifier: external_exports.string(),
39356
+ boostUri: external_exports.string().optional(),
39357
+ credentialUri: external_exports.string().optional(),
39358
+ inboxCredentialId: external_exports.string().optional(),
39359
+ integrationId: external_exports.string().optional(),
39360
+ source: CredentialActivitySourceTypeValidator,
39361
+ metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
39362
+ });
39363
+ var CredentialActivityWithDetailsValidator = CredentialActivityValidator.extend({
39364
+ boost: external_exports.object({
39365
+ id: external_exports.string(),
39366
+ name: external_exports.string().optional(),
39367
+ category: external_exports.string().optional()
39368
+ }).optional(),
39369
+ recipientProfile: external_exports.object({
39370
+ profileId: external_exports.string(),
39371
+ displayName: external_exports.string().optional()
39372
+ }).optional()
39373
+ });
39374
+ var PaginatedCredentialActivitiesValidator = PaginationResponseValidator.extend({
39375
+ records: CredentialActivityWithDetailsValidator.array()
39376
+ });
39377
+ var CredentialActivityStatsValidator = external_exports.object({
39378
+ total: external_exports.number(),
39379
+ created: external_exports.number(),
39380
+ delivered: external_exports.number(),
39381
+ claimed: external_exports.number(),
39382
+ expired: external_exports.number(),
39383
+ failed: external_exports.number(),
39384
+ claimRate: external_exports.number()
39385
+ });
39118
39386
 
39119
39387
  // src/helpers.ts
39120
39388
  var import_json_stringify_deterministic = __toESM(require_lib());