@wildo-ai/saas-models 1.1.5 → 1.1.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.
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +2 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications-context.schemas.d.ts +176 -2
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +3 -2
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts +7 -5
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js +6 -4
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +10 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +49 -15
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.js +2 -2
- package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +25 -0
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js +19 -0
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts +27 -5
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +30 -4
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +37 -11
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js +31 -19
- package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +2 -0
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +18 -7
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts +2 -0
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js +7 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +6 -6
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.schemas.js +5 -3
- package/dist/esm/billing/price.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +11 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js +39 -23
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts +30 -2
- package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.js +35 -0
- package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +6 -3
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.d.ts +7 -3
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +22 -7
- package/dist/esm/billing/product.shared.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js +8 -8
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts +135 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.js +112 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.js.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.d.ts +30 -0
- package/dist/esm/billing/public-pricing-catalog.shared.d.ts.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.js +53 -0
- package/dist/esm/billing/public-pricing-catalog.shared.js.map +1 -0
- package/dist/esm/billing/referral-reward.shared.schemas.d.ts +51 -0
- package/dist/esm/billing/referral-reward.shared.schemas.d.ts.map +1 -0
- package/dist/esm/billing/referral-reward.shared.schemas.js +92 -0
- package/dist/esm/billing/referral-reward.shared.schemas.js.map +1 -0
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +54 -33
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js +56 -2
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts +22 -37
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js +24 -44
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +9 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js +55 -22
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +80 -5
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +85 -25
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +5 -5
- package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +143 -2
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js +84 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +14 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js +4 -0
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +70 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +87 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts +34 -0
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js +137 -3
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +7 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +28 -2
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +29 -8
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +29 -6
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +38 -9
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +1822 -146
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +1777 -87
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts +10 -0
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +148 -7
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +2 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +2 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +0 -8
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +0 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +0 -1
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts +17 -8
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js +43 -20
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +38 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +39 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts +35 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js +82 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts +37 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js +223 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts +222 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js +331 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +37 -3
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +33 -4
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts +52 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js +116 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts +11 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js +11 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts +93 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.js +149 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts +43 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js +106 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts +209 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js +226 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +129 -5
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +128 -4
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts +53 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js +74 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts +311 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js +355 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +178 -39
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +145 -35
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +26 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +9 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +109 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +57 -0
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +69 -0
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +93 -0
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +16 -16
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +160 -61
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +297 -65
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/errors/caught-error-description.shared.utils.d.ts +69 -0
- package/dist/esm/errors/caught-error-description.shared.utils.d.ts.map +1 -0
- package/dist/esm/errors/caught-error-description.shared.utils.js +77 -0
- package/dist/esm/errors/caught-error-description.shared.utils.js.map +1 -0
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +76 -3
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +76 -2
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts +20 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js +16 -9
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts +0 -24
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.utils.js +0 -39
- package/dist/esm/errors/errors.shared.utils.js.map +1 -1
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts +6 -7
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/thrown-value-description.shared.utils.js +6 -7
- package/dist/esm/errors/thrown-value-description.shared.utils.js.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts +70 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.js +92 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts +154 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js +161 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +1071 -23
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +1065 -17
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
- package/dist/esm/external-data/external-data-provenance.shared.d.ts +71 -0
- package/dist/esm/external-data/external-data-provenance.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-provenance.shared.js +88 -0
- package/dist/esm/external-data/external-data-provenance.shared.js.map +1 -0
- package/dist/esm/external-data.exports.d.ts +5 -0
- package/dist/esm/external-data.exports.d.ts.map +1 -1
- package/dist/esm/external-data.exports.js +11 -0
- package/dist/esm/external-data.exports.js.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +17 -2
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +22 -4
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +3 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -1
- package/dist/esm/external-providers/engine-capability-surface.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capability-surface.shared.js +2 -0
- package/dist/esm/external-providers/engine-capability-surface.shared.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +152 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +4 -3
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js +4 -3
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts +45 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js +14 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js.map +1 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +188 -4
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +76 -9
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts +175 -33
- package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-provider-public-config.shared.js +247 -42
- package/dist/esm/external-providers/frontend-provider-public-config.shared.js.map +1 -1
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts +53 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js +41 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts +150 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js +22 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js.map +1 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts +42 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js +49 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts +53 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js +56 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +34 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +34 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +341 -4
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +270 -20
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts +6 -2
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js +6 -2
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js.map +1 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts +174 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js +125 -0
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +3 -3
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts +42 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js +57 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +6 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js +6 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts +58 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js +35 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts +115 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js +137 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.d.ts +73 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.js +171 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.d.ts +12 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.js +40 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +68 -32
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +63 -52
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -1
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/application-features.shared.resources-config.schemas.js +13 -5
- package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/features/connected-feature.example.d.ts.map +1 -1
- package/dist/esm/features/connected-feature.example.js +2 -1
- package/dist/esm/features/connected-feature.example.js.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.js +2 -1
- package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
- package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-builders.shared.js.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.d.ts +2 -11
- package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.js +0 -12
- package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.d.ts +31 -17
- package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js +27 -5
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts +127 -11
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +32 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +16 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +7 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts +68 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js +276 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts +468 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js +472 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts +118 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js +144 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +142 -8
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +209 -11
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +37 -2
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +30 -2
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +0 -11
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js +12 -5
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts +45 -6
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js +31 -5
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +30 -30
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +15 -7
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts +15 -0
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts +506 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/human-decision.shared.schemas.js +502 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts +46 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js +65 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts +120 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js +165 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts +45 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js +127 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts +83 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js +97 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts +136 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js +90 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts +5 -1
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js +19 -4
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts +13 -15
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js +30 -17
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts +268 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.js +576 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +30 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts +129 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.js +141 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.js.map +1 -0
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts +22 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts.map +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js +23 -0
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts +61 -0
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js +61 -0
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.js +11 -10
- package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +6 -6
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +8 -7
- package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +550 -30
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +498 -34
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts +62 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js +66 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts +133 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js +191 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts +37 -6
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js +37 -6
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js.map +1 -1
- package/dist/esm/i18n/application-config-vocabulary.shared.d.ts +36 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.d.ts.map +1 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.js +39 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.js.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts +11 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.js +14 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.js.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts +20 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.js +21 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.js.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts +94 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js +206 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts +169 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.js +231 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts +195 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.js +244 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts +36 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js +169 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts +404 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.js +449 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts +46 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.js +57 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.js.map +1 -0
- package/dist/esm/index.d.ts +58 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +67 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +28 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js +29 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts +95 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js +121 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows.exports.d.ts +0 -1
- package/dist/esm/meta-workflows.exports.d.ts.map +1 -1
- package/dist/esm/meta-workflows.exports.js +0 -1
- package/dist/esm/meta-workflows.exports.js.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +7 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js +35 -0
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts +131 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js +258 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts +448 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js +530 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +4 -3
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +16 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +46 -16
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +19 -12
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +77 -12
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.d.ts +35 -3
- package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.js +43 -3
- package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +66 -399
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +111 -58
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +6 -6
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +3 -0
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +60 -14
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts +3 -0
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +30 -0
- package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js +9 -9
- package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +4 -4
- package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts +0 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +5 -5
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +15 -10
- package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js +2 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +63 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +106 -5
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +9 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js +7 -2
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +3 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +12 -8
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts +7 -2
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.js +51 -1
- package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts +58 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js +188 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts +122 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js +136 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts +36 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js +155 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts +229 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js +290 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts +48 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js +50 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts +97 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js +572 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts +590 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.js +869 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -6
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +57 -16
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.d.ts +0 -1
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.js +0 -1
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -1
- package/dist/esm/public-runtime/index.d.ts +30 -11
- package/dist/esm/public-runtime/index.d.ts.map +1 -1
- package/dist/esm/public-runtime/index.js +30 -11
- package/dist/esm/public-runtime/index.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +36 -8
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +12 -0
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/requests/header-keys.shared.d.ts +6 -0
- package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
- package/dist/esm/requests/header-keys.shared.js +7 -0
- package/dist/esm/requests/header-keys.shared.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.js +147 -8
- package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +51 -23
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +64 -0
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +78 -13
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +91 -18
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts +21 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.js +22 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.js.map +1 -0
- package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.js +812 -32
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +244 -48
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +151 -17
- package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.js +353 -12
- package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.d.ts +45 -0
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +92 -0
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +2 -17
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +24 -20
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts +16 -8
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js +16 -8
- package/dist/esm/resources/resources.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +2 -2
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.js +4 -2
- package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts +103 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js +275 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts +51 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js +28 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js +30 -19
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts +2 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js +33 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +15 -0
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js +6 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js +30 -4
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +46 -0
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +205 -22
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts +19 -2
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js +4 -0
- package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +15 -9
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -1
- package/dist/esm/resources/work-unit.shared.schemas.d.ts +20 -0
- package/dist/esm/resources/work-unit.shared.schemas.d.ts.map +1 -0
- package/dist/esm/resources/work-unit.shared.schemas.js +19 -0
- package/dist/esm/resources/work-unit.shared.schemas.js.map +1 -0
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts +48 -1
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.js +101 -9
- package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +37 -20
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +61 -48
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts +26 -0
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js +39 -5
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +5 -3
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +6 -0
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +2 -2
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +11 -0
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js +19 -8
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +5 -5
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +11 -11
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts +2 -0
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js +9 -0
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts +169 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js +162 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js +10 -8
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +8 -8
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +17 -16
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +28 -25
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts +17 -6
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js +90 -38
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +0 -24
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +79 -68
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +8 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +7 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +7 -7
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js +56 -0
- package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +77 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +90 -0
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts +86 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js +40 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts +46 -14
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +81 -21
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts +69 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts.map +1 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.js +77 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +28 -8
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +3 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +89 -14
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +25 -4
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.d.ts +7 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.js +6 -0
- package/dist/esm/security/outbound-target-control.shared.schemas.js.map +1 -1
- package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts +143 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts.map +1 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.js +123 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts +384 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js +327 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts +121 -8
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js +83 -4
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts +266 -8
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js +291 -7
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts +313 -3
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js +369 -3
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js +2 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +5 -3
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js +19 -10
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +6 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.js +2 -2
- package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +0 -3
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +0 -3
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +82 -20
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +12 -9
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +49 -18
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/package.json +4 -4
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +0 -7
- package/dist/tsconfig.build.tsbuildinfo +0 -1
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conversation threads — the shared thread model every inbound channel correlates into (#1630).
|
|
3
|
+
*
|
|
4
|
+
* Three ORGANIZATIONS-scoped resources:
|
|
5
|
+
*
|
|
6
|
+
* | resource | one row per | what it is for |
|
|
7
|
+
* |---|---|---|
|
|
8
|
+
* | `conversationThreads` | exchange with one counterpart on one channel | correlation, the link to the case, closure |
|
|
9
|
+
* | `conversationMessages` | message, INBOUND or OUTBOUND | the thread's history; an OUTBOUND row is also the reply's delivery ledger |
|
|
10
|
+
* | `conversationReplyTokens` | reply address issued to one recipient on one thread | binding a reply to its thread, stored as a hash |
|
|
11
|
+
*
|
|
12
|
+
* ## Why one thread model and per-channel records
|
|
13
|
+
*
|
|
14
|
+
* Rejected: one table with a JSON union column per channel, which loses per-channel indexes and erasure
|
|
15
|
+
* matching. Rejected equally: channel-specific thread models only, which makes every handler re-implement
|
|
16
|
+
* correlation. So correlation is shared here, and what a message WAS on its channel (bodies, headers,
|
|
17
|
+
* attachments, raw MIME) stays in that channel's record — `INBOUND_EMAILS` for email (#1600) — with its
|
|
18
|
+
* own indexes, retention and erasure. A message points at it through `channelRecordRef`.
|
|
19
|
+
*
|
|
20
|
+
* ## One state, one row
|
|
21
|
+
*
|
|
22
|
+
* An INBOUND message has no status of its own: whether its handler ran is the inbound delivery's status.
|
|
23
|
+
* An OUTBOUND message's `outboundStatus` is the only record of whether its reply was accepted, because no
|
|
24
|
+
* other row describes that submission.
|
|
25
|
+
*/
|
|
26
|
+
import { z } from 'zod';
|
|
27
|
+
import { addImpersonalizeWith } from '@wildo-ai/zod-decorators';
|
|
28
|
+
import { PersonalDataCategory } from '../compliance/privacy/personal-data-category.shared.schemas.js';
|
|
29
|
+
import { RedactionType } from '../compliance/privacy/redaction.shared.schemas.js';
|
|
30
|
+
import { WorkUnitRefSchema } from '../resources/work-unit.shared.schemas.js';
|
|
31
|
+
import { InboundChannelKind } from './inbound-channels.shared.schemas.js';
|
|
32
|
+
/** @wildo_source:part:start saas.models.conversation-threads facet:layer:shared facet:family:inbound facet:audience:app-developer */
|
|
33
|
+
/** Whether a thread still takes messages. */
|
|
34
|
+
export var ConversationThreadStatus;
|
|
35
|
+
(function (ConversationThreadStatus) {
|
|
36
|
+
ConversationThreadStatus["OPEN"] = "open";
|
|
37
|
+
/**
|
|
38
|
+
* The exchange is over. Closing revokes every reply token of the thread, and starts the thread's
|
|
39
|
+
* retention clock: a closed thread is kept for the `RESOURCE_DATA` period from `closedAt`. Its messages
|
|
40
|
+
* keep their own, statutory, clock.
|
|
41
|
+
*/
|
|
42
|
+
ConversationThreadStatus["CLOSED"] = "closed";
|
|
43
|
+
})(ConversationThreadStatus || (ConversationThreadStatus = {}));
|
|
44
|
+
/** Which way a message travelled. */
|
|
45
|
+
export var ConversationMessageDirection;
|
|
46
|
+
(function (ConversationMessageDirection) {
|
|
47
|
+
/** Received from the counterpart; its handler run is recorded on the inbound delivery. */
|
|
48
|
+
ConversationMessageDirection["INBOUND"] = "inbound";
|
|
49
|
+
/** Sent by the application, as a handler's reply. */
|
|
50
|
+
ConversationMessageDirection["OUTBOUND"] = "outbound";
|
|
51
|
+
})(ConversationMessageDirection || (ConversationMessageDirection = {}));
|
|
52
|
+
/** Where an OUTBOUND message stands with the sending provider. */
|
|
53
|
+
export var ConversationOutboundStatus;
|
|
54
|
+
(function (ConversationOutboundStatus) {
|
|
55
|
+
/** Written by `ctx.reply` and waiting for the reply worker. */
|
|
56
|
+
ConversationOutboundStatus["QUEUED"] = "queued";
|
|
57
|
+
/** The sending provider accepted the submission. Terminal: a retry of the same submission never sends again. */
|
|
58
|
+
ConversationOutboundStatus["ACCEPTED_BY_PROVIDER"] = "accepted_by_provider";
|
|
59
|
+
/** The provider refused it, or the reply could not be sent at all. Terminal; the reason is `failureCode`. */
|
|
60
|
+
ConversationOutboundStatus["FAILED"] = "failed";
|
|
61
|
+
})(ConversationOutboundStatus || (ConversationOutboundStatus = {}));
|
|
62
|
+
/** Why a reply token stopped binding replies. */
|
|
63
|
+
export var ReplyTokenRevocationReason;
|
|
64
|
+
(function (ReplyTokenRevocationReason) {
|
|
65
|
+
/** Its thread was closed. */
|
|
66
|
+
ReplyTokenRevocationReason["THREAD_CLOSED"] = "thread_closed";
|
|
67
|
+
/** The thread's counterpart changed, so a token issued to the previous one names nobody on the thread. */
|
|
68
|
+
ReplyTokenRevocationReason["COUNTERPART_CHANGED"] = "counterpart_changed";
|
|
69
|
+
/**
|
|
70
|
+
* It was issued to a member of the organization who is no longer one. Detected when the token is next
|
|
71
|
+
* USED, which is the one place every removal door converges: whether the member left, was removed,
|
|
72
|
+
* suspended or erased, the token no longer binds from that moment.
|
|
73
|
+
*/
|
|
74
|
+
ReplyTokenRevocationReason["MEMBER_REMOVED"] = "member_removed";
|
|
75
|
+
/** A newer token was issued to the same recipient on the same thread; one live address per recipient. */
|
|
76
|
+
ReplyTokenRevocationReason["ROTATED"] = "rotated";
|
|
77
|
+
})(ReplyTokenRevocationReason || (ReplyTokenRevocationReason = {}));
|
|
78
|
+
/** Placeholder written over free text an erasure scrubs. */
|
|
79
|
+
export const ERASED_CONVERSATION_TEXT = '[erased]';
|
|
80
|
+
const address = () => addImpersonalizeWith(z.string().min(1).max(320).dataCategories(PersonalDataCategory.CONTACT_DETAILS), RedactionType.MASK, { maskValue: ERASED_CONVERSATION_TEXT });
|
|
81
|
+
/** What a message's channel record is. The record's resource type is decided by the channel. */
|
|
82
|
+
export const ConversationChannelRecordRefSchema = z.strictObject({
|
|
83
|
+
resourceType: z.string().min(1).describe('The resource holding what the message was on its channel — `inboundEmails` for email.'),
|
|
84
|
+
resourceId: z.string().min(1).describe('The id of that row.'),
|
|
85
|
+
});
|
|
86
|
+
/**
|
|
87
|
+
* One exchange with one counterpart on one channel.
|
|
88
|
+
*
|
|
89
|
+
* `threadKey` is the channel's correlation key — for email, the `Message-ID` of the message that opened
|
|
90
|
+
* the thread — unique per organization and channel: the same message delivered to two organizations
|
|
91
|
+
* opens a thread in each.
|
|
92
|
+
*/
|
|
93
|
+
export const ConversationThreadSchema = z.object({
|
|
94
|
+
_id: z.string().min(1).isPrimaryKey().isSummaryField(),
|
|
95
|
+
organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),
|
|
96
|
+
channel: z.enum(InboundChannelKind).systemEnum('InboundChannelKind').isSummaryField().excludeFromUpdate()
|
|
97
|
+
.describe('The channel the thread runs on. Replies go out on this channel only.'),
|
|
98
|
+
threadKey: z.string().min(1).max(998).isDBIndexed().excludeFromUpdate()
|
|
99
|
+
.describe("The channel's correlation key: for email, the Message-ID of the message that opened the thread."),
|
|
100
|
+
/** The address the application is exchanging messages with. Changing it revokes the previous counterpart's tokens. */
|
|
101
|
+
counterpartAddress: address().isDBIndexed().isSummaryField()
|
|
102
|
+
.describe('The address the application is exchanging messages with on this thread.'),
|
|
103
|
+
subject: addImpersonalizeWith(z.string().max(998).default('').isSummaryField().dataCategories(PersonalDataCategory.USER_CONTENT), RedactionType.MASK, { maskValue: ERASED_CONVERSATION_TEXT }).describe('The subject the thread opened with.'),
|
|
104
|
+
/**
|
|
105
|
+
* The case the thread is about, set by the handler once it knows (a todo it created, a matter it
|
|
106
|
+
* found). A `WorkUnitRef`: the one name for a case across the backbone epic.
|
|
107
|
+
*/
|
|
108
|
+
linkedResource: WorkUnitRefSchema.nullable().default(null)
|
|
109
|
+
.describe('The case this thread is about — the record a handler linked it to — or null while it is linked to none.'),
|
|
110
|
+
status: z.enum(ConversationThreadStatus).systemEnum('ConversationThreadStatus').default(ConversationThreadStatus.OPEN)
|
|
111
|
+
.isDBIndexed().isSummaryField().describe('Whether the thread still takes messages.'),
|
|
112
|
+
lastMessageAt: z.date().isDBIndexed().isSummaryField().describe('When the latest message, in either direction, was recorded.'),
|
|
113
|
+
/** Set when the thread closes — the retention clock's start. Server-owned: a caller setting it could order a deletion. */
|
|
114
|
+
closedAt: z.date().isDBIndexed().nullable().default(null).excludeFromCreate().excludeFromUpdate()
|
|
115
|
+
.describe('When the thread was closed; null while it is open.'),
|
|
116
|
+
createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),
|
|
117
|
+
updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),
|
|
118
|
+
}).businessKeySet(['organizationId', 'channel', 'threadKey']);
|
|
119
|
+
/** The threading identity of an OUTBOUND message, as it went on the wire. */
|
|
120
|
+
export const ConversationOutboundThreadingSchema = z.strictObject({
|
|
121
|
+
inReplyTo: z.string().max(998).optional().describe('The Message-ID this reply answers.'),
|
|
122
|
+
references: z.array(z.string().max(998)).max(100).default([]).describe('The thread\'s Message-IDs, oldest first, ending with the one answered.'),
|
|
123
|
+
});
|
|
124
|
+
/** One message of a thread, in either direction. */
|
|
125
|
+
export const ConversationMessageSchema = z.object({
|
|
126
|
+
_id: z.string().min(1).isPrimaryKey().isSummaryField(),
|
|
127
|
+
organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),
|
|
128
|
+
threadId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate()
|
|
129
|
+
.describe('The thread this message belongs to.'),
|
|
130
|
+
direction: z.enum(ConversationMessageDirection).systemEnum('ConversationMessageDirection').isSummaryField().excludeFromUpdate()
|
|
131
|
+
.describe('Whether the message was received from the counterpart or sent by the application.'),
|
|
132
|
+
/** The RFC 5322 Message-ID on the wire — what a later In-Reply-To or References names. */
|
|
133
|
+
rfcMessageId: z.string().min(1).max(998).isDBIndexed().excludeFromUpdate()
|
|
134
|
+
.describe('The Message-ID the message carried on the wire, angle brackets included.'),
|
|
135
|
+
fromAddress: address().isSummaryField().describe('Who sent the message.'),
|
|
136
|
+
// RESET, not MASK: the treatment belongs to the ARRAY, and a mask string is not an array. Erasure returns
|
|
137
|
+
// the list to its default — empty.
|
|
138
|
+
toAddresses: addImpersonalizeWith(z.array(z.string().min(1).max(320)).default([]).dataCategories(PersonalDataCategory.CONTACT_DETAILS), RedactionType.RESET).describe('Who the message was addressed to.'),
|
|
139
|
+
subject: addImpersonalizeWith(z.string().max(998).default('').dataCategories(PersonalDataCategory.USER_CONTENT), RedactionType.MASK, { maskValue: ERASED_CONVERSATION_TEXT }).describe('The message subject.'),
|
|
140
|
+
/**
|
|
141
|
+
* The first characters of the message text, for the thread view. The whole message stays in its channel
|
|
142
|
+
* record; this is a preview, never the record.
|
|
143
|
+
*/
|
|
144
|
+
textPreview: addImpersonalizeWith(z.string().max(500).default('').dataCategories(PersonalDataCategory.USER_CONTENT), RedactionType.MASK, { maskValue: ERASED_CONVERSATION_TEXT }).describe('The first 500 characters of the message text.'),
|
|
145
|
+
occurredAt: z.date().isDBIndexed().isSummaryField().describe('When the message was received, or queued to send.'),
|
|
146
|
+
// INBOUND ─────────────────────────────────────────────────────────────────
|
|
147
|
+
/** INBOUND: the delivery that carried it. Its status is this message's handler status — there is no second one. */
|
|
148
|
+
inboundDeliveryId: z.string().isDBIndexed().nullable().default(null).excludeFromUpdate()
|
|
149
|
+
.describe('For a received message, the inbound delivery that carried it; its status is the handler run\'s.'),
|
|
150
|
+
/** INBOUND: what the message was on its channel (the `INBOUND_EMAILS` row for email). */
|
|
151
|
+
channelRecordRef: ConversationChannelRecordRefSchema.nullable().default(null).excludeFromUpdate()
|
|
152
|
+
.describe('For a received message, the channel record holding the whole message.'),
|
|
153
|
+
// OUTBOUND ────────────────────────────────────────────────────────────────
|
|
154
|
+
/**
|
|
155
|
+
* OUTBOUND: the one logical submission this row stands for — deterministic, derived from the row, and
|
|
156
|
+
* handed to the sending provider as its idempotency key, so a retried reply is accepted at most once.
|
|
157
|
+
*/
|
|
158
|
+
// `.optional()`, never `.nullable().default(null)`: a sparse unique index skips a MISSING field, not a
|
|
159
|
+
// stored null, so every received message would collide on `null` under MongoDB.
|
|
160
|
+
submissionId: z.string().min(1).isUnique({ scope: 'global', sparse: true }).optional().excludeFromUpdate()
|
|
161
|
+
.describe('For a reply, the idempotency key of its one submission to the sending provider.'),
|
|
162
|
+
outboundStatus: z.enum(ConversationOutboundStatus).systemEnum('ConversationOutboundStatus').isDBIndexed().nullable().default(null)
|
|
163
|
+
.excludeFromCreate().excludeFromUpdate()
|
|
164
|
+
.describe('For a reply, where it stands with the sending provider; null for a received message.'),
|
|
165
|
+
/** OUTBOUND: the template the HANDLER chose, and the variables it rendered with. */
|
|
166
|
+
templateRef: z.string().max(200).nullable().default(null).excludeFromUpdate()
|
|
167
|
+
.describe('For a reply, the email template the handler chose.'),
|
|
168
|
+
// RESET to the default (`null`): a field carrying a `.default()` is not clearable, so REMOVE is refused.
|
|
169
|
+
templateVariables: addImpersonalizeWith(z.record(z.string(), z.unknown()).nullable().default(null).excludeFromUpdate().dataCategories(PersonalDataCategory.USER_CONTENT), RedactionType.RESET).describe('For a reply, the variables the template rendered with.'),
|
|
170
|
+
locale: z.string().max(35).nullable().default(null).excludeFromUpdate()
|
|
171
|
+
.describe('For a reply, the locale the template rendered in.'),
|
|
172
|
+
/**
|
|
173
|
+
* For a reply, while it is QUEUED: the Reply-To address its first send attempt composed. It carries the
|
|
174
|
+
* reply token IN PLAINTEXT (I12), so it is backend-only — no API returns it — and it is cleared when the
|
|
175
|
+
* reply settles (accepted or failed). It is kept that long only so a retried attempt sends the same address.
|
|
176
|
+
*/
|
|
177
|
+
replyToAddress: z.string().max(320).isBackendOnly().nullable().default(null).excludeFromUpdate()
|
|
178
|
+
.describe('For a queued reply only, the Reply-To address its send composed; cleared when the reply settles.'),
|
|
179
|
+
threading: ConversationOutboundThreadingSchema.nullable().default(null).excludeFromUpdate()
|
|
180
|
+
.describe('For a reply, the In-Reply-To and References it carried.'),
|
|
181
|
+
/** OUTBOUND: the provider's receipt, once accepted. */
|
|
182
|
+
providerMessageIds: z.array(z.string()).default([]).excludeFromCreate().excludeFromUpdate()
|
|
183
|
+
.describe('For an accepted reply, the ids the sending provider returned.'),
|
|
184
|
+
/** OUTBOUND: a classified failure, never an error message (which could quote the content). */
|
|
185
|
+
failureCode: z.string().max(200).nullable().default(null).excludeFromCreate().excludeFromUpdate()
|
|
186
|
+
.describe('For a failed reply, a classified failure code.'),
|
|
187
|
+
settledAt: z.date().nullable().default(null).excludeFromCreate().excludeFromUpdate()
|
|
188
|
+
.describe('For a reply, when it was accepted or failed.'),
|
|
189
|
+
createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),
|
|
190
|
+
updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),
|
|
191
|
+
});
|
|
192
|
+
/**
|
|
193
|
+
* One reply address issued to one recipient on one thread.
|
|
194
|
+
*
|
|
195
|
+
* The token itself is a bearer secret — whoever holds the address can post to the thread under that
|
|
196
|
+
* recipient's name, as with any reply-by-email system — so only its SHA-256 is stored, and the plaintext
|
|
197
|
+
* exists only in the address the reply carried. At least 128 bits from a CSPRNG.
|
|
198
|
+
*/
|
|
199
|
+
export const ConversationReplyTokenSchema = z.object({
|
|
200
|
+
_id: z.string().min(1).isPrimaryKey().isSummaryField(),
|
|
201
|
+
organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),
|
|
202
|
+
threadId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate()
|
|
203
|
+
.describe('The thread the token binds replies to.'),
|
|
204
|
+
recipientAddress: address().isSummaryField().excludeFromUpdate()
|
|
205
|
+
.describe('The address the token was issued to; only a reply from this address binds to the thread.'),
|
|
206
|
+
/**
|
|
207
|
+
* When the recipient was a member of the organization at issue, that member's user id — re-checked when
|
|
208
|
+
* the token is used, so a removed member's token stops binding.
|
|
209
|
+
*/
|
|
210
|
+
recipientMemberUserId: z.string().nullable().default(null).excludeFromUpdate()
|
|
211
|
+
.describe('The organization member the token was issued to, when the recipient was one.'),
|
|
212
|
+
/** SHA-256 (hex) of the token. Lookup is global by hash; the token's organization must be the routed one. */
|
|
213
|
+
tokenHash: z.string().length(64).isUnique({ scope: 'global', sparse: false }).isBackendOnly().excludeFromUpdate()
|
|
214
|
+
.describe('The SHA-256 of the token. The token itself is never stored.'),
|
|
215
|
+
issuedAt: z.date().isSummaryField().excludeFromUpdate().describe('When the token was issued.'),
|
|
216
|
+
revokedAt: z.date().isDBIndexed().nullable().default(null).excludeFromCreate().excludeFromUpdate()
|
|
217
|
+
.describe('When the token stopped binding replies; null while it is live.'),
|
|
218
|
+
revocationReason: z.enum(ReplyTokenRevocationReason).systemEnum('ReplyTokenRevocationReason').nullable().default(null)
|
|
219
|
+
.excludeFromCreate().excludeFromUpdate()
|
|
220
|
+
.describe('Why the token stopped binding replies.'),
|
|
221
|
+
createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),
|
|
222
|
+
updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),
|
|
223
|
+
});
|
|
224
|
+
/** @wildo_source:part:end saas.models.conversation-threads */
|
|
225
|
+
/** Thread verbs a person may take. */
|
|
226
|
+
export var ConversationThreads_Operations;
|
|
227
|
+
(function (ConversationThreads_Operations) {
|
|
228
|
+
/** Close the exchange: revokes every reply token of the thread and starts its retention clock. */
|
|
229
|
+
ConversationThreads_Operations["CLOSE"] = "close";
|
|
230
|
+
})(ConversationThreads_Operations || (ConversationThreads_Operations = {}));
|
|
231
|
+
//# sourceMappingURL=conversation-threads.shared.schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-threads.shared.schemas.js","sourceRoot":"","sources":["../../../../src/inbound/conversation-threads.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Conversation threads — the shared thread model every inbound channel correlates into (#1630).\n *\n * Three ORGANIZATIONS-scoped resources:\n *\n * | resource | one row per | what it is for |\n * |---|---|---|\n * | `conversationThreads` | exchange with one counterpart on one channel | correlation, the link to the case, closure |\n * | `conversationMessages` | message, INBOUND or OUTBOUND | the thread's history; an OUTBOUND row is also the reply's delivery ledger |\n * | `conversationReplyTokens` | reply address issued to one recipient on one thread | binding a reply to its thread, stored as a hash |\n *\n * ## Why one thread model and per-channel records\n *\n * Rejected: one table with a JSON union column per channel, which loses per-channel indexes and erasure\n * matching. Rejected equally: channel-specific thread models only, which makes every handler re-implement\n * correlation. So correlation is shared here, and what a message WAS on its channel (bodies, headers,\n * attachments, raw MIME) stays in that channel's record — `INBOUND_EMAILS` for email (#1600) — with its\n * own indexes, retention and erasure. A message points at it through `channelRecordRef`.\n *\n * ## One state, one row\n *\n * An INBOUND message has no status of its own: whether its handler ran is the inbound delivery's status.\n * An OUTBOUND message's `outboundStatus` is the only record of whether its reply was accepted, because no\n * other row describes that submission.\n */\nimport { z } from 'zod';\nimport { addImpersonalizeWith } from '@wildo-ai/zod-decorators';\n\nimport { PersonalDataCategory } from '../compliance/privacy/personal-data-category.shared.schemas';\nimport { RedactionType } from '../compliance/privacy/redaction.shared.schemas';\nimport { WorkUnitRefSchema } from '../resources/work-unit.shared.schemas';\nimport { InboundChannelKind } from './inbound-channels.shared.schemas';\n\n/** @wildo_source:part:start saas.models.conversation-threads facet:layer:shared facet:family:inbound facet:audience:app-developer */\n\n/** Whether a thread still takes messages. */\nexport enum ConversationThreadStatus {\n OPEN = 'open',\n /**\n * The exchange is over. Closing revokes every reply token of the thread, and starts the thread's\n * retention clock: a closed thread is kept for the `RESOURCE_DATA` period from `closedAt`. Its messages\n * keep their own, statutory, clock.\n */\n CLOSED = 'closed',\n}\n\n/** Which way a message travelled. */\nexport enum ConversationMessageDirection {\n /** Received from the counterpart; its handler run is recorded on the inbound delivery. */\n INBOUND = 'inbound',\n /** Sent by the application, as a handler's reply. */\n OUTBOUND = 'outbound',\n}\n\n/** Where an OUTBOUND message stands with the sending provider. */\nexport enum ConversationOutboundStatus {\n /** Written by `ctx.reply` and waiting for the reply worker. */\n QUEUED = 'queued',\n /** The sending provider accepted the submission. Terminal: a retry of the same submission never sends again. */\n ACCEPTED_BY_PROVIDER = 'accepted_by_provider',\n /** The provider refused it, or the reply could not be sent at all. Terminal; the reason is `failureCode`. */\n FAILED = 'failed',\n}\n\n/** Why a reply token stopped binding replies. */\nexport enum ReplyTokenRevocationReason {\n /** Its thread was closed. */\n THREAD_CLOSED = 'thread_closed',\n /** The thread's counterpart changed, so a token issued to the previous one names nobody on the thread. */\n COUNTERPART_CHANGED = 'counterpart_changed',\n /**\n * It was issued to a member of the organization who is no longer one. Detected when the token is next\n * USED, which is the one place every removal door converges: whether the member left, was removed,\n * suspended or erased, the token no longer binds from that moment.\n */\n MEMBER_REMOVED = 'member_removed',\n /** A newer token was issued to the same recipient on the same thread; one live address per recipient. */\n ROTATED = 'rotated',\n}\n\n/** Placeholder written over free text an erasure scrubs. */\nexport const ERASED_CONVERSATION_TEXT = '[erased]';\n\nconst address = () => addImpersonalizeWith(\n z.string().min(1).max(320).dataCategories(PersonalDataCategory.CONTACT_DETAILS),\n RedactionType.MASK,\n { maskValue: ERASED_CONVERSATION_TEXT },\n);\n\n/** What a message's channel record is. The record's resource type is decided by the channel. */\nexport const ConversationChannelRecordRefSchema = z.strictObject({\n resourceType: z.string().min(1).describe('The resource holding what the message was on its channel — `inboundEmails` for email.'),\n resourceId: z.string().min(1).describe('The id of that row.'),\n});\n\nexport type ConversationChannelRecordRef = z.infer<typeof ConversationChannelRecordRefSchema>;\n\n/**\n * One exchange with one counterpart on one channel.\n *\n * `threadKey` is the channel's correlation key — for email, the `Message-ID` of the message that opened\n * the thread — unique per organization and channel: the same message delivered to two organizations\n * opens a thread in each.\n */\nexport const ConversationThreadSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),\n channel: z.enum(InboundChannelKind).systemEnum('InboundChannelKind').isSummaryField().excludeFromUpdate()\n .describe('The channel the thread runs on. Replies go out on this channel only.'),\n threadKey: z.string().min(1).max(998).isDBIndexed().excludeFromUpdate()\n .describe(\"The channel's correlation key: for email, the Message-ID of the message that opened the thread.\"),\n /** The address the application is exchanging messages with. Changing it revokes the previous counterpart's tokens. */\n counterpartAddress: address().isDBIndexed().isSummaryField()\n .describe('The address the application is exchanging messages with on this thread.'),\n subject: addImpersonalizeWith(\n z.string().max(998).default('').isSummaryField().dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.MASK,\n { maskValue: ERASED_CONVERSATION_TEXT },\n ).describe('The subject the thread opened with.'),\n /**\n * The case the thread is about, set by the handler once it knows (a todo it created, a matter it\n * found). A `WorkUnitRef`: the one name for a case across the backbone epic.\n */\n linkedResource: WorkUnitRefSchema.nullable().default(null)\n .describe('The case this thread is about — the record a handler linked it to — or null while it is linked to none.'),\n status: z.enum(ConversationThreadStatus).systemEnum('ConversationThreadStatus').default(ConversationThreadStatus.OPEN)\n .isDBIndexed().isSummaryField().describe('Whether the thread still takes messages.'),\n lastMessageAt: z.date().isDBIndexed().isSummaryField().describe('When the latest message, in either direction, was recorded.'),\n /** Set when the thread closes — the retention clock's start. Server-owned: a caller setting it could order a deletion. */\n closedAt: z.date().isDBIndexed().nullable().default(null).excludeFromCreate().excludeFromUpdate()\n .describe('When the thread was closed; null while it is open.'),\n createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),\n updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),\n}).businessKeySet(['organizationId', 'channel', 'threadKey']);\n\nexport type ConversationThread = z.infer<typeof ConversationThreadSchema>;\n\n/** The threading identity of an OUTBOUND message, as it went on the wire. */\nexport const ConversationOutboundThreadingSchema = z.strictObject({\n inReplyTo: z.string().max(998).optional().describe('The Message-ID this reply answers.'),\n references: z.array(z.string().max(998)).max(100).default([]).describe('The thread\\'s Message-IDs, oldest first, ending with the one answered.'),\n});\n\n/** One message of a thread, in either direction. */\nexport const ConversationMessageSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),\n threadId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate()\n .describe('The thread this message belongs to.'),\n direction: z.enum(ConversationMessageDirection).systemEnum('ConversationMessageDirection').isSummaryField().excludeFromUpdate()\n .describe('Whether the message was received from the counterpart or sent by the application.'),\n /** The RFC 5322 Message-ID on the wire — what a later In-Reply-To or References names. */\n rfcMessageId: z.string().min(1).max(998).isDBIndexed().excludeFromUpdate()\n .describe('The Message-ID the message carried on the wire, angle brackets included.'),\n fromAddress: address().isSummaryField().describe('Who sent the message.'),\n // RESET, not MASK: the treatment belongs to the ARRAY, and a mask string is not an array. Erasure returns\n // the list to its default — empty.\n toAddresses: addImpersonalizeWith(\n z.array(z.string().min(1).max(320)).default([]).dataCategories(PersonalDataCategory.CONTACT_DETAILS),\n RedactionType.RESET,\n ).describe('Who the message was addressed to.'),\n subject: addImpersonalizeWith(\n z.string().max(998).default('').dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.MASK,\n { maskValue: ERASED_CONVERSATION_TEXT },\n ).describe('The message subject.'),\n /**\n * The first characters of the message text, for the thread view. The whole message stays in its channel\n * record; this is a preview, never the record.\n */\n textPreview: addImpersonalizeWith(\n z.string().max(500).default('').dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.MASK,\n { maskValue: ERASED_CONVERSATION_TEXT },\n ).describe('The first 500 characters of the message text.'),\n occurredAt: z.date().isDBIndexed().isSummaryField().describe('When the message was received, or queued to send.'),\n\n // INBOUND ─────────────────────────────────────────────────────────────────\n /** INBOUND: the delivery that carried it. Its status is this message's handler status — there is no second one. */\n inboundDeliveryId: z.string().isDBIndexed().nullable().default(null).excludeFromUpdate()\n .describe('For a received message, the inbound delivery that carried it; its status is the handler run\\'s.'),\n /** INBOUND: what the message was on its channel (the `INBOUND_EMAILS` row for email). */\n channelRecordRef: ConversationChannelRecordRefSchema.nullable().default(null).excludeFromUpdate()\n .describe('For a received message, the channel record holding the whole message.'),\n\n // OUTBOUND ────────────────────────────────────────────────────────────────\n /**\n * OUTBOUND: the one logical submission this row stands for — deterministic, derived from the row, and\n * handed to the sending provider as its idempotency key, so a retried reply is accepted at most once.\n */\n // `.optional()`, never `.nullable().default(null)`: a sparse unique index skips a MISSING field, not a\n // stored null, so every received message would collide on `null` under MongoDB.\n submissionId: z.string().min(1).isUnique({ scope: 'global', sparse: true }).optional().excludeFromUpdate()\n .describe('For a reply, the idempotency key of its one submission to the sending provider.'),\n outboundStatus: z.enum(ConversationOutboundStatus).systemEnum('ConversationOutboundStatus').isDBIndexed().nullable().default(null)\n .excludeFromCreate().excludeFromUpdate()\n .describe('For a reply, where it stands with the sending provider; null for a received message.'),\n /** OUTBOUND: the template the HANDLER chose, and the variables it rendered with. */\n templateRef: z.string().max(200).nullable().default(null).excludeFromUpdate()\n .describe('For a reply, the email template the handler chose.'),\n // RESET to the default (`null`): a field carrying a `.default()` is not clearable, so REMOVE is refused.\n templateVariables: addImpersonalizeWith(\n z.record(z.string(), z.unknown()).nullable().default(null).excludeFromUpdate().dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.RESET,\n ).describe('For a reply, the variables the template rendered with.'),\n locale: z.string().max(35).nullable().default(null).excludeFromUpdate()\n .describe('For a reply, the locale the template rendered in.'),\n /**\n * For a reply, while it is QUEUED: the Reply-To address its first send attempt composed. It carries the\n * reply token IN PLAINTEXT (I12), so it is backend-only — no API returns it — and it is cleared when the\n * reply settles (accepted or failed). It is kept that long only so a retried attempt sends the same address.\n */\n replyToAddress: z.string().max(320).isBackendOnly().nullable().default(null).excludeFromUpdate()\n .describe('For a queued reply only, the Reply-To address its send composed; cleared when the reply settles.'),\n threading: ConversationOutboundThreadingSchema.nullable().default(null).excludeFromUpdate()\n .describe('For a reply, the In-Reply-To and References it carried.'),\n /** OUTBOUND: the provider's receipt, once accepted. */\n providerMessageIds: z.array(z.string()).default([]).excludeFromCreate().excludeFromUpdate()\n .describe('For an accepted reply, the ids the sending provider returned.'),\n /** OUTBOUND: a classified failure, never an error message (which could quote the content). */\n failureCode: z.string().max(200).nullable().default(null).excludeFromCreate().excludeFromUpdate()\n .describe('For a failed reply, a classified failure code.'),\n settledAt: z.date().nullable().default(null).excludeFromCreate().excludeFromUpdate()\n .describe('For a reply, when it was accepted or failed.'),\n\n createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),\n updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),\n});\n\nexport type ConversationMessage = z.infer<typeof ConversationMessageSchema>;\n\n/**\n * One reply address issued to one recipient on one thread.\n *\n * The token itself is a bearer secret — whoever holds the address can post to the thread under that\n * recipient's name, as with any reply-by-email system — so only its SHA-256 is stored, and the plaintext\n * exists only in the address the reply carried. At least 128 bits from a CSPRNG.\n */\nexport const ConversationReplyTokenSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n organizationId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),\n threadId: z.string().min(1).isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate()\n .describe('The thread the token binds replies to.'),\n recipientAddress: address().isSummaryField().excludeFromUpdate()\n .describe('The address the token was issued to; only a reply from this address binds to the thread.'),\n /**\n * When the recipient was a member of the organization at issue, that member's user id — re-checked when\n * the token is used, so a removed member's token stops binding.\n */\n recipientMemberUserId: z.string().nullable().default(null).excludeFromUpdate()\n .describe('The organization member the token was issued to, when the recipient was one.'),\n /** SHA-256 (hex) of the token. Lookup is global by hash; the token's organization must be the routed one. */\n tokenHash: z.string().length(64).isUnique({ scope: 'global', sparse: false }).isBackendOnly().excludeFromUpdate()\n .describe('The SHA-256 of the token. The token itself is never stored.'),\n issuedAt: z.date().isSummaryField().excludeFromUpdate().describe('When the token was issued.'),\n revokedAt: z.date().isDBIndexed().nullable().default(null).excludeFromCreate().excludeFromUpdate()\n .describe('When the token stopped binding replies; null while it is live.'),\n revocationReason: z.enum(ReplyTokenRevocationReason).systemEnum('ReplyTokenRevocationReason').nullable().default(null)\n .excludeFromCreate().excludeFromUpdate()\n .describe('Why the token stopped binding replies.'),\n createdAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate(),\n updatedAt: z.date().default(() => new Date()).excludeFromCreate().excludeFromUpdate(),\n});\n\nexport type ConversationReplyToken = z.infer<typeof ConversationReplyTokenSchema>;\n\n/** @wildo_source:part:end saas.models.conversation-threads */\n\n/** Thread verbs a person may take. */\nexport enum ConversationThreads_Operations {\n /** Close the exchange: revokes every reply token of the thread and starts its retention clock. */\n CLOSE = 'close',\n}\n"]}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inbound channels — the vocabulary of HOW a message reached the application, how much is known about
|
|
3
|
+
* who sent it, and whether and how the handler answers (#1630).
|
|
4
|
+
*
|
|
5
|
+
* A CHANNEL is what the message arrived on, not who carried it. `EMAIL` is a channel an application
|
|
6
|
+
* declares a handler for; the provider that hosts the receiving domain is the application's
|
|
7
|
+
* `EMAIL_INBOUND` selection and is never named by a handler. `WEBHOOK` is the channel of every
|
|
8
|
+
* delivery #1596's endpoint sources receive, and is DERIVED for those rows, never declared.
|
|
9
|
+
*
|
|
10
|
+
* @see engine/saas-models/src/inbound/inbound-delivery.shared.schemas.ts — the durable delivery these
|
|
11
|
+
* channels feed.
|
|
12
|
+
*/
|
|
13
|
+
import { type StandardInboundEmail_Authentication } from '@wildo-ai/external-connectors-models';
|
|
14
|
+
/** @wildo_source:part:start saas.models.inbound-channels facet:layer:shared facet:family:inbound facet:audience:app-developer */
|
|
15
|
+
/**
|
|
16
|
+
* What a message arrived on.
|
|
17
|
+
*
|
|
18
|
+
* SMS, chat and Slack join this vocabulary when a provider can fill them — a channel nothing can
|
|
19
|
+
* receive on is a slot no configuration can satisfy.
|
|
20
|
+
*/
|
|
21
|
+
export declare enum InboundChannelKind {
|
|
22
|
+
/** Email received through the application's `EMAIL_INBOUND` provider and routed to an organization. */
|
|
23
|
+
EMAIL = "email",
|
|
24
|
+
/**
|
|
25
|
+
* A signed HTTP delivery from another system (#1596). Derived for provider and application endpoint
|
|
26
|
+
* deliveries; a handler never declares it.
|
|
27
|
+
*/
|
|
28
|
+
WEBHOOK = "webhook"
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* How much is known about who SENT a message.
|
|
32
|
+
*
|
|
33
|
+
* **Identification, never authentication.** An address, a domain or even a reply token identifies a
|
|
34
|
+
* sender to some degree; none of them authenticates a person. Assurance therefore GATES what a handler
|
|
35
|
+
* accepts (a handler declares the minimum it will act on) and grants NO authority: the handler acts
|
|
36
|
+
* with the roles it declares, whoever wrote.
|
|
37
|
+
*
|
|
38
|
+
* spec-cite: NIST SP 800-63B rev. 4 §3.1.3.1 ("Email SHALL NOT be used for out-of-band authentication");
|
|
39
|
+
* RFC 7489 §3.1 (DMARC authenticates the RFC5322.From DOMAIN by alignment with an authenticated
|
|
40
|
+
* identifier, not the person). Both as recorded in #1630's decisions log, 2026-09-25.
|
|
41
|
+
*
|
|
42
|
+
* **Ordered only within a channel.** Each channel has its own ladder ({@link INBOUND_SENDER_ASSURANCE_LADDERS});
|
|
43
|
+
* a signed webhook is not "more" or "less" than a domain-aligned email, so there is no total order and
|
|
44
|
+
* comparing across channels is refused.
|
|
45
|
+
*/
|
|
46
|
+
export declare enum InboundSenderAssurance {
|
|
47
|
+
/** Nothing about the sender verified. The floor of every ladder. */
|
|
48
|
+
UNVERIFIED = "unverified",
|
|
49
|
+
/** WEBHOOK: the delivery carried a valid signature under the source's secret. Identifies the SOURCE system. */
|
|
50
|
+
SOURCE_SIGNED = "source_signed",
|
|
51
|
+
/** EMAIL: DMARC passed and is aligned with the `From` domain — the domain, not the mailbox, is authenticated. */
|
|
52
|
+
DOMAIN_ALIGNED = "domain_aligned",
|
|
53
|
+
/**
|
|
54
|
+
* EMAIL: domain-aligned, and the address is known to the routed organization — a verified member, or a
|
|
55
|
+
* contact the application's resolver recognises.
|
|
56
|
+
*/
|
|
57
|
+
KNOWN_CONTACT = "known_contact",
|
|
58
|
+
/**
|
|
59
|
+
* EMAIL: domain-aligned, arrived on an unrevoked reply token the application issued for this thread,
|
|
60
|
+
* and `From` is the address that token was issued to.
|
|
61
|
+
*/
|
|
62
|
+
THREAD_TOKEN_BOUND = "thread_token_bound"
|
|
63
|
+
}
|
|
64
|
+
/** The assurance levels meaningful on each channel — the type a channel's ladder and minimum are drawn from. */
|
|
65
|
+
export interface InboundSenderAssuranceByChannel {
|
|
66
|
+
[InboundChannelKind.EMAIL]: InboundSenderAssurance.UNVERIFIED | InboundSenderAssurance.DOMAIN_ALIGNED | InboundSenderAssurance.KNOWN_CONTACT | InboundSenderAssurance.THREAD_TOKEN_BOUND;
|
|
67
|
+
[InboundChannelKind.WEBHOOK]: InboundSenderAssurance.UNVERIFIED | InboundSenderAssurance.SOURCE_SIGNED;
|
|
68
|
+
}
|
|
69
|
+
/** An assurance level of channel `C`. `SenderAssuranceOf<EMAIL>` does not admit `SOURCE_SIGNED`. */
|
|
70
|
+
export type SenderAssuranceOf<C extends InboundChannelKind> = InboundSenderAssuranceByChannel[C];
|
|
71
|
+
/**
|
|
72
|
+
* Each channel's ladder, lowest first. Total over {@link InboundChannelKind}: a channel added without a
|
|
73
|
+
* ladder does not compile.
|
|
74
|
+
*/
|
|
75
|
+
export declare const INBOUND_SENDER_ASSURANCE_LADDERS: {
|
|
76
|
+
readonly [C in InboundChannelKind]: readonly SenderAssuranceOf<C>[];
|
|
77
|
+
};
|
|
78
|
+
/** Thrown when an assurance level is asked about on a channel whose ladder does not contain it. */
|
|
79
|
+
export declare class InboundSenderAssuranceChannelError extends Error {
|
|
80
|
+
constructor(channel: InboundChannelKind, level: InboundSenderAssurance);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* The rank of `level` on `channel`'s ladder, 0 for the floor.
|
|
84
|
+
*
|
|
85
|
+
* The type admits only that channel's levels, so `senderAssuranceRank(InboundChannelKind.WEBHOOK,
|
|
86
|
+
* InboundSenderAssurance.DOMAIN_ALIGNED)` does not compile; a value that reached here untyped (a stored
|
|
87
|
+
* row, a JSON payload) and is not on the ladder throws rather than ranking as anything.
|
|
88
|
+
*/
|
|
89
|
+
export declare function senderAssuranceRank<C extends InboundChannelKind>(channel: C, level: SenderAssuranceOf<C>): number;
|
|
90
|
+
/** Whether `level` is at least `minimum`, both on `channel`'s ladder. */
|
|
91
|
+
export declare function meetsMinimumSenderAssurance<C extends InboundChannelKind>(channel: C, level: SenderAssuranceOf<C>, minimum: SenderAssuranceOf<C>): boolean;
|
|
92
|
+
/** Whether `level` is a level of `channel` — for narrowing a value read back from storage. */
|
|
93
|
+
export declare function isSenderAssuranceOf<C extends InboundChannelKind>(channel: C, level: InboundSenderAssurance): level is SenderAssuranceOf<C>;
|
|
94
|
+
/**
|
|
95
|
+
* Whether a channel handler answers, and how. Required on every handler, with no default: a handler
|
|
96
|
+
* that answers and one that does not are different programs, and the type system knows which one it
|
|
97
|
+
* is holding (`ctx.reply` exists only under {@link InboundReplyMode.THREAD}).
|
|
98
|
+
*/
|
|
99
|
+
export declare enum InboundReplyMode {
|
|
100
|
+
/** Replies go back on the thread the message arrived on, through the channel's outbound path. */
|
|
101
|
+
THREAD = "thread",
|
|
102
|
+
/** The handler never answers. Every endpoint handler (#1596) and billing declare this. */
|
|
103
|
+
NONE = "none"
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* What happened to a channel message whose sender assurance is below the selected handler's minimum
|
|
107
|
+
* (#1630). A below-minimum message never reaches the main handler (I11). What it causes instead is the
|
|
108
|
+
* application's binding: a declared below-minimum handler, or nothing but storage and an audit row.
|
|
109
|
+
*/
|
|
110
|
+
export declare enum InboundBelowMinimumDisposition {
|
|
111
|
+
/** The handler declared a below-minimum handler, and the message was dispatched to it instead. */
|
|
112
|
+
ROUTED_TO_BELOW_MINIMUM_HANDLER = "routed_to_below_minimum_handler",
|
|
113
|
+
/** No below-minimum handler: stored in its channel record and audited, and dispatched to nobody. */
|
|
114
|
+
STORED_NOT_DISPATCHED = "stored_not_dispatched"
|
|
115
|
+
}
|
|
116
|
+
/** What the routed organization knows about a sender's address. */
|
|
117
|
+
export declare enum EmailSenderContactMatch {
|
|
118
|
+
/** Neither a member nor a contact the application recognises. */
|
|
119
|
+
NONE = "none",
|
|
120
|
+
/** A verified, active member of the routed organization (engine-known; sets `memberUserId`). */
|
|
121
|
+
ORGANIZATION_MEMBER = "organization_member",
|
|
122
|
+
/** The application's contact resolver answered true. The engine keeps no contacts of its own. */
|
|
123
|
+
APPLICATION_CONTACT = "application_contact"
|
|
124
|
+
}
|
|
125
|
+
/** How the reply token a message arrived on (if any) relates to its sender. */
|
|
126
|
+
export declare enum EmailReplyTokenSenderMatch {
|
|
127
|
+
/** The message did not arrive on a live token of the routed organization. */
|
|
128
|
+
NO_TOKEN = "no_token",
|
|
129
|
+
/** A live token, and `From` is the address it was issued to. */
|
|
130
|
+
MATCHES_RECIPIENT = "matches_recipient",
|
|
131
|
+
/** A live token, `From` is on the recipient's domain but is another mailbox. */
|
|
132
|
+
OTHER_ADDRESS_SAME_DOMAIN = "other_address_same_domain",
|
|
133
|
+
/** A live token, `From` is on another domain than the address it was issued to. */
|
|
134
|
+
OTHER_DOMAIN = "other_domain"
|
|
135
|
+
}
|
|
136
|
+
/** Why a live reply token did not bind its message — recorded on `INBOUND_REPLY_TOKEN_DOWNGRADED`. */
|
|
137
|
+
export declare enum ReplyTokenDowngradeReason {
|
|
138
|
+
/** `From` is not the address the token was issued to, though on its domain. */
|
|
139
|
+
SENDER_ADDRESS_MISMATCH = "sender_address_mismatch",
|
|
140
|
+
/** `From` is on another domain than the address the token was issued to — the case a leaked token looks like. */
|
|
141
|
+
SENDER_DOMAIN_MISMATCH = "sender_domain_mismatch",
|
|
142
|
+
/** The token is live but DMARC did not pass aligned, so the `From` domain itself is unauthenticated. */
|
|
143
|
+
DOMAIN_NOT_ALIGNED = "domain_not_aligned"
|
|
144
|
+
}
|
|
145
|
+
/** The inputs {@link deriveEmailSenderAssurance} reads. All of them are facts, never answers a sender gave. */
|
|
146
|
+
export interface EmailSenderAssuranceInput {
|
|
147
|
+
readonly authentication: StandardInboundEmail_Authentication;
|
|
148
|
+
readonly contactMatch: EmailSenderContactMatch;
|
|
149
|
+
readonly tokenMatch: EmailReplyTokenSenderMatch;
|
|
150
|
+
}
|
|
151
|
+
export interface EmailSenderAssuranceDerivation {
|
|
152
|
+
readonly assurance: SenderAssuranceOf<InboundChannelKind.EMAIL>;
|
|
153
|
+
/** Set when a live token arrived and did not bind the message; the caller audits it. */
|
|
154
|
+
readonly tokenDowngrade?: ReplyTokenDowngradeReason;
|
|
155
|
+
}
|
|
156
|
+
/** DMARC passed AND aligned with the `From` domain — the one fact every level above the floor rests on. */
|
|
157
|
+
export declare function isEmailDomainAligned(authentication: StandardInboundEmail_Authentication): boolean;
|
|
158
|
+
/**
|
|
159
|
+
* Derive an email's sender assurance. PURE: every input is a fact the engine established (the
|
|
160
|
+
* provider's authentication results, a member or contact lookup, a token lookup).
|
|
161
|
+
*
|
|
162
|
+
* - `UNVERIFIED`: DMARC did not pass aligned with `From`. Nothing below is consulted: a token or a
|
|
163
|
+
* known address on an unauthenticated domain proves nothing, since anyone can write that `From`.
|
|
164
|
+
* - `THREAD_TOKEN_BOUND`: aligned, and the message arrived on a live token issued to `From`.
|
|
165
|
+
* - `KNOWN_CONTACT`: aligned, and the address is a member or a recognised contact.
|
|
166
|
+
* - `DOMAIN_ALIGNED`: aligned, and nothing more is known.
|
|
167
|
+
*
|
|
168
|
+
* A live token that did not bind — `From` is someone else, or the domain did not align — falls back to
|
|
169
|
+
* the level the rest derives and reports why in `tokenDowngrade`, which the caller audits.
|
|
170
|
+
*/
|
|
171
|
+
export declare function deriveEmailSenderAssurance(input: EmailSenderAssuranceInput): EmailSenderAssuranceDerivation;
|
|
172
|
+
/** The domain of an address, lower-cased; `undefined` when there is no `@`. */
|
|
173
|
+
export declare function emailAddressDomain(address: string): string | undefined;
|
|
174
|
+
/**
|
|
175
|
+
* Whether two addresses are on the same domain. An address with no domain shares a domain with nothing —
|
|
176
|
+
* not even another address with no domain — so a malformed `From` can never pass as a colleague's.
|
|
177
|
+
*/
|
|
178
|
+
export declare function emailAddressesShareDomain(first: string, second: string): boolean;
|
|
179
|
+
/** How `from` relates to the address a reply token was issued to. Addresses compare case-insensitively. */
|
|
180
|
+
export declare function matchReplyTokenSender(from: string, recipient: string): Exclude<EmailReplyTokenSenderMatch, EmailReplyTokenSenderMatch.NO_TOKEN>;
|
|
181
|
+
/**
|
|
182
|
+
* One RFC 5322 `msg-id` — angle brackets, one `@`, no whitespace and no CR/LF. The one check for a
|
|
183
|
+
* Message-ID wherever the engine reads one from a sender (`In-Reply-To`, `References`) or writes one into
|
|
184
|
+
* a header, so a value that could inject a header or break threading is dropped where it arrives.
|
|
185
|
+
*/
|
|
186
|
+
export declare const EMAIL_MESSAGE_ID_PATTERN: RegExp;
|
|
187
|
+
export declare function isEmailMessageId(value: unknown): value is string;
|
|
188
|
+
/**
|
|
189
|
+
* What an inbound handler's `ref` looks like: lower-case, dot-separated segments of `[a-z0-9-]`
|
|
190
|
+
* (`todos.intake`, `matters.mail-intake`). One definition for the backend's `inboundHandlerRef()`, which
|
|
191
|
+
* refuses anything else at module load, and for a build plan naming the handler a task produces.
|
|
192
|
+
*/
|
|
193
|
+
export declare const INBOUND_HANDLER_REF_PATTERN: RegExp;
|
|
194
|
+
/** @wildo_source:part:end saas.models.inbound-channels */
|
|
195
|
+
//# sourceMappingURL=inbound-channels.shared.schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbound-channels.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/inbound/inbound-channels.shared.schemas.ts"],"names":[],"mappings":"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"}
|