@wildo-ai/saas-models 1.0.1 → 1.1.0
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/LICENSE +34 -0
- package/dist/esm/.builder.pid +9 -0
- package/dist/esm/__tests__/setup.d.ts.map +1 -1
- package/dist/esm/__tests__/setup.js +18 -3
- package/dist/esm/__tests__/setup.js.map +1 -1
- package/dist/esm/_inspect.d.ts +2 -0
- package/dist/esm/_inspect.d.ts.map +1 -0
- package/dist/esm/_inspect.js +3 -0
- package/dist/esm/_inspect.js.map +1 -0
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts +6 -6
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js +5 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/application-subject.shared.schemas.d.ts +51 -0
- package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -0
- package/dist/esm/applications/application-subject.shared.schemas.js +56 -0
- package/dist/esm/applications/application-subject.shared.schemas.js.map +1 -0
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts +9 -11
- 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 +42 -74
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications-context.schemas.d.ts +228 -200
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications-context.schemas.js +1 -1
- package/dist/esm/applications/applications-context.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts +4 -9
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +103 -87
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts +59 -5
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js +80 -3
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +4 -4
- 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 +98 -25
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.d.ts +32 -8
- package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.js +67 -2
- package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +8 -8
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js +2 -3
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts +75 -0
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +78 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +204 -42
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js +76 -1
- package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +8 -6
- 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 +48 -16
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts +9 -9
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js +13 -6
- package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +26 -17
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts +10 -10
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js +32 -7
- package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.js +23 -5
- package/dist/esm/billing/price.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.schemas.d.ts +4 -4
- package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.schemas.js +1 -1
- package/dist/esm/billing/price.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +9 -9
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js +10 -2
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts +27 -27
- package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.js +39 -9
- package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +22 -22
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.js +6 -6
- package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.schemas.d.ts +19 -19
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +1 -1
- package/dist/esm/billing/product.shared.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js +34 -6
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.d.ts +2 -2
- package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.js +1 -1
- package/dist/esm/billing/promotions.shared.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +12 -12
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js +5 -5
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts +7 -7
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js +36 -8
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +6 -6
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js +51 -24
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +13 -13
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +37 -5
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js +23 -14
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.d.ts +15 -12
- package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +34 -7
- package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.d.ts +36 -36
- package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.js +6 -6
- package/dist/esm/charts/aggregation-query.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.d.ts.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.js +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.js.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.d.ts +5 -3
- package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.js +4 -2
- package/dist/esm/charts/chart-definition-builder.shared.js.map +1 -1
- package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.d.ts → companion/artifact-placement.shared.definitions.d.ts} +2 -3
- package/dist/esm/companion/artifact-placement.shared.definitions.d.ts.map +1 -0
- package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.js → companion/artifact-placement.shared.definitions.js} +1 -2
- package/dist/esm/companion/artifact-placement.shared.definitions.js.map +1 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +131 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.js +122 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts +6 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.js +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.js.map +1 -0
- package/dist/esm/companion-exports.d.ts +4 -0
- package/dist/esm/companion-exports.d.ts.map +1 -0
- package/dist/esm/companion-exports.js +4 -0
- package/dist/esm/companion-exports.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +65 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +68 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +147 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js +20 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +60 -16
- 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 +77 -10
- 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 +58 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +74 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +1949 -115
- 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 +2229 -11
- 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 +25 -10
- 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 +226 -3
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts +8 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js +9 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts +524 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js +482 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +112 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +120 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts +134 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js +129 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts +50 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js +98 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +181 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +184 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +230 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +232 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts +220 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js +252 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts +75 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js +43 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +56 -43
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js +72 -18
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts +21 -3
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js +19 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +124 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +107 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/sharing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/sharing.shared.schemas.js +1 -1
- package/dist/esm/compliance/privacy/sharing.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +279 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +238 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts +74 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +137 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +457 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js +549 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -0
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +13 -13
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +135 -125
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +74 -10
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-frontend-type.shared.schemas.d.ts +94 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.d.ts.map +1 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.js +95 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.js.map +1 -0
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +35 -5
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.js +44 -2
- package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.d.ts +89 -0
- package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -0
- package/dist/esm/config/brand-assets.shared.schemas.js +99 -0
- package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -0
- package/dist/esm/config/configuration-validation.shared.schemas.d.ts +12 -1
- package/dist/esm/config/configuration-validation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/configuration-validation.shared.schemas.js +12 -1
- package/dist/esm/config/configuration-validation.shared.schemas.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +170 -91
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +130 -19
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +167 -166
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.js +93 -9
- package/dist/esm/config/frontend/chart-definition.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts +69 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.js +61 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -0
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +110 -39
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +93 -9
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts +70 -134
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.js +27 -25
- package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.js +1 -1
- package/dist/esm/config/postgresql.shared.schemas.js.map +1 -1
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts +24 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.js +62 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.js.map +1 -0
- package/dist/esm/config-authoring.entry.d.ts +5 -0
- package/dist/esm/config-authoring.entry.d.ts.map +1 -0
- package/dist/esm/config-authoring.entry.js +7 -0
- package/dist/esm/config-authoring.entry.js.map +1 -0
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.js +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.js.map +1 -1
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts +66 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js +118 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js.map +1 -0
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +348 -1
- 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 +357 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.d.ts +2 -2
- package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.js +12 -1
- package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts +82 -36
- package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js +100 -3
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.utils.js +1 -1
- package/dist/esm/errors/errors.shared.utils.js.map +1 -1
- package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts +16 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts.map +1 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.js +18 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.js.map +1 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts +113 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts.map +1 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.js +102 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.js.map +1 -0
- package/dist/esm/exports/tabular-csv.shared.utils.d.ts +42 -0
- package/dist/esm/exports/tabular-csv.shared.utils.d.ts.map +1 -0
- package/dist/esm/exports/tabular-csv.shared.utils.js +63 -0
- package/dist/esm/exports/tabular-csv.shared.utils.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +347 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +206 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -0
- package/dist/esm/external-data.exports.d.ts +30 -0
- package/dist/esm/external-data.exports.d.ts.map +1 -0
- package/dist/esm/external-data.exports.js +30 -0
- package/dist/esm/external-data.exports.js.map +1 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts +63 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.js +102 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.js.map +1 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +164 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +194 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +39 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +85 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -0
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts +22 -22
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/external-providers.shared.schemas.js +5 -5
- package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +319 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js +17 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +35 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +19 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +135 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +102 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +175 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +211 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +37 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js +58 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +65 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js +63 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +99 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +137 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +39 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.js +147 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/features/core-feature-definitions.shared.d.ts +17 -2
- package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.js +91 -3
- package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
- package/dist/esm/features/feature-builders.shared.d.ts +13 -2
- package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-builders.shared.js +3 -1
- package/dist/esm/features/feature-builders.shared.js.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.d.ts +70 -24
- package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.js +84 -1
- package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
- package/dist/esm/features/feature-registry.shared.d.ts +8 -9
- package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-registry.shared.js +5 -8
- package/dist/esm/features/feature-registry.shared.js.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.js +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.js.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.d.ts +9 -10
- package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js +20 -6
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +9 -9
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js +35 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts +35 -9
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.js +27 -5
- package/dist/esm/files/files.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.schemas.d.ts +71 -13
- package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.schemas.js +110 -35
- package/dist/esm/files/files.shared.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.utils.d.ts +9 -5
- package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
- package/dist/esm/files/files.shared.utils.js +10 -6
- package/dist/esm/files/files.shared.utils.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts +40 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js +204 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts +113 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js +153 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts +61 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js +143 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts +77 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js +103 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts +339 -326
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +29 -6
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +237 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +152 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts +180 -23
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.js +69 -2
- package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts +19 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts.map +1 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js +35 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js.map +1 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +29 -45
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js +2 -34
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts +2 -2
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +642 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.js +604 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts +48 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js +179 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +200 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +337 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts +59 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js +223 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts +426 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js +317 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +109 -58
- 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 +48 -1
- 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 +62 -62
- 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 +2 -2
- 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 +112 -11
- 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 +63 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts +60 -20
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +36 -3
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts +35 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +88 -63
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +32 -5
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts +63 -49
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts +73 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js +149 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +20 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +34 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts +125 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js +136 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts +180 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js +187 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts +28 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js +28 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +446 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js +678 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +106 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +243 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts +29 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js +58 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts +61 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js +93 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts +5 -5
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.js +2 -2
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts +81 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js +82 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +257 -194
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js +28 -2
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js.map +1 -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 +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts +51 -89
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts +22 -19
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js +61 -5
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts +46 -10
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.js +15 -4
- package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts +25 -0
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -0
- package/dist/esm/guidance/guidance-state.shared.utils.js +72 -0
- package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -0
- package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts +11 -11
- package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.js +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts +28 -25
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js +71 -7
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts +53 -14
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +26 -25
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.d.ts +2 -2
- package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts +2 -2
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +22 -19
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js +72 -7
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts +40 -10
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +16 -6
- package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts +69 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +232 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +566 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +513 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts +52 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts.map +1 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.js +63 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.js.map +1 -0
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts +3 -3
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.js +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.js.map +1 -1
- package/dist/esm/index.d.ts +277 -200
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +122 -15
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/meta-workflows.exports.d.ts +51 -0
- package/dist/esm/meta-workflows.exports.d.ts.map +1 -0
- package/dist/esm/meta-workflows.exports.js +51 -0
- package/dist/esm/meta-workflows.exports.js.map +1 -0
- package/dist/esm/monitoring/monitoring.shared.schemas.d.ts +16 -16
- package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.js +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.d.ts +9 -9
- package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.js +8 -3
- package/dist/esm/notifications/email/email-context.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +33 -46
- 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 +20 -140
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts +145 -0
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -0
- package/dist/esm/notifications/email/email-template.shared.enums.js +164 -0
- package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts +43 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +231 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts +159 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js +191 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +62 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +183 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +134 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +159 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts +10 -1
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.js +11 -13
- package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.d.ts +147 -43
- package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.js +130 -23
- package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts +40 -15
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js +149 -23
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +352 -25
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +47 -2
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +21 -10
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +54 -47
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.d.ts +10 -2
- package/dist/esm/organizations/organization-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.js +10 -2
- package/dist/esm/organizations/organization-features.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +31 -17
- 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 +294 -54
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts +31 -41
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +181 -37
- package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts +8 -8
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js +43 -2
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts +25 -4
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js +35 -15
- package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js +42 -3
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +4 -4
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +17 -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 +10 -10
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js +32 -2
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +6 -6
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +28 -2
- package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts +94 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.js +96 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.js.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts +30 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +97 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts +56 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js +92 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +130 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +139 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts +27 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.js +29 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +137 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +133 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -0
- package/dist/esm/organizations/organization-units.shared.path.d.ts +103 -0
- package/dist/esm/organizations/organization-units.shared.path.d.ts.map +1 -0
- package/dist/esm/organizations/organization-units.shared.path.js +120 -0
- package/dist/esm/organizations/organization-units.shared.path.js.map +1 -0
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts +8 -8
- 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 +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts +69 -8
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.js +89 -5
- package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +46 -11
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +505 -34
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts +95 -39
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.js +228 -6
- package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +66 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -0
- package/dist/esm/provider-registration-runtime.exports.d.ts +4 -0
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -0
- package/dist/esm/provider-registration-runtime.exports.js +4 -0
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -0
- package/dist/esm/public-runtime/index.d.ts +164 -0
- package/dist/esm/public-runtime/index.d.ts.map +1 -0
- package/dist/esm/public-runtime/index.js +164 -0
- package/dist/esm/public-runtime/index.js.map +1 -0
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +4 -4
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js +12 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +114 -42
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +114 -12
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.d.ts +3 -3
- package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.js +2 -2
- package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.d.ts +17 -15
- package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.js +14 -5
- package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
- package/dist/esm/queue/queues.shared.utils.d.ts +137 -6
- package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.utils.js +161 -9
- package/dist/esm/queue/queues.shared.utils.js.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.d.ts.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.js +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.js.map +1 -1
- package/dist/esm/requests/header-keys.shared.d.ts +23 -1
- package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
- package/dist/esm/requests/header-keys.shared.js +45 -2
- package/dist/esm/requests/header-keys.shared.js.map +1 -1
- package/dist/esm/requests/http-requests.shared.d.ts +1 -0
- package/dist/esm/requests/http-requests.shared.d.ts.map +1 -1
- package/dist/esm/requests/http-requests.shared.js +2 -1
- package/dist/esm/requests/http-requests.shared.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +189 -5
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +255 -6
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts +75 -24
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js +80 -18
- package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +248 -120
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +92 -2
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.d.ts +128 -23
- package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.js +147 -11
- package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.d.ts +4 -4
- package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts +31 -1352
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.js +13 -161
- package/dist/esm/resources/relationship-display.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.d.ts +60 -5
- package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.js +1507 -87
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +1638 -43
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +478 -13
- package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts +3 -3
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.js +782 -96
- package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts +37 -7
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.js +76 -24
- package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.d.ts +19 -19
- package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.js +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.d.ts +84 -8
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +165 -19
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +582 -602
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +581 -5
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts +363 -15
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js +569 -16
- package/dist/esm/resources/resources.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +65 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.js +150 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts +134 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js +167 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js.map +1 -0
- package/dist/esm/resources/utils/composition-seedability.validation.d.ts +63 -0
- package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/composition-seedability.validation.js +75 -0
- package/dist/esm/resources/utils/composition-seedability.validation.js.map +1 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts +10 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js +25 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts +111 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js +109 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts +52 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js +57 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.js +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts +108 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.js +186 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.js.map +1 -0
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts +107 -3
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.js +133 -2
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +39 -31
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js +9 -9
- package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts +7 -7
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.js +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts +139 -5
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js +301 -3
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.js +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.js +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +256 -39
- 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 +898 -233
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts +16 -6
- package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.js +35 -10
- package/dist/esm/resources/utils/resources-config-operations.path.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts +120 -20
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js +394 -81
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.d.ts +2 -2
- package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts +77 -2
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js +80 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.d.ts +21 -3
- package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.js +7 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.js +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.js +1 -1
- package/dist/esm/resources/utils/schema-type-utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.js +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.js.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts +203 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +284 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts +25 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js +322 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js.map +1 -0
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts +32 -10
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.shared.definitions.js +3 -2
- package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts +93 -9
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.js +122 -7
- package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.js +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +14 -11
- 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 +65 -2
- 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 +14 -11
- 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 +162 -1
- 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 +79 -29
- 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 +87 -6
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts +185 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js +198 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js.map +1 -0
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +307 -149
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +177 -27
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +64 -8
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.js +56 -9
- package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts +3 -3
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +103 -5
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js +31 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts +278 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js +335 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -0
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts +6 -6
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js +11 -4
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +51 -18
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js +70 -13
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts +69 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.js +93 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.js.map +1 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts +91 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +91 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -0
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +2 -9
- 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 +49 -33
- 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 +41 -14
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +158 -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.d.ts +21 -9
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +92 -18
- 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 +11 -10
- 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 +29 -7
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts +12 -5
- 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 +81 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts +17 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js +29 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts +2 -9
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js +46 -33
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts +34 -9
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +47 -3
- 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 +2 -17
- 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 +55 -53
- 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 +37 -37
- 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 +53 -13
- 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 +79 -7
- 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 +157 -14
- 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 +113 -118
- 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 +111 -49
- 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 +57 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +58 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts +35 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +252 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts +171 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js +239 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js +6 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +12 -3
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +15 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts +133 -0
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js +218 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -0
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js +1 -1
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +47 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +228 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +46 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +365 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +192 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +401 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts +30 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js +83 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts +29 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js +53 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts +117 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js +180 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js.map +1 -0
- package/dist/esm/testing/resource-config-builders.d.ts +4 -4
- package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
- package/dist/esm/testing/resource-config-builders.js +9 -2
- package/dist/esm/testing/resource-config-builders.js.map +1 -1
- package/dist/esm/testing.d.ts +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/testing.js +1 -1
- package/dist/esm/testing.js.map +1 -1
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts +76 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js +72 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js.map +1 -0
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +28 -17
- 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 +43 -4
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.d.ts +19 -12
- package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.js +68 -4
- package/dist/esm/users/anonymous-users.shared.schema.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts +52 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +153 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts +47 -17
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.js +123 -9
- package/dist/esm/users/inbound-contacts.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts +12 -12
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js +11 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.d.ts +15 -10
- package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.js +53 -9
- package/dist/esm/users/user-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +13 -11
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js +24 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts +22 -19
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.js +107 -23
- package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts +78 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.js +98 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -0
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +31 -61
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js +34 -203
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts +13 -14
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js +66 -31
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +33 -60
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js +49 -175
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts +13 -21
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js +12 -119
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts +12 -16
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js +263 -115
- 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 +13 -16
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +376 -141
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +110 -108
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +215 -19
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +54 -27
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts +0 -37
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts.map +0 -1
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js +0 -38
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts +0 -27
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js +0 -35
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts +0 -80
- package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/feature-mapping.shared.schemas.js +0 -159
- package/dist/esm/external-providers/feature-mapping.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts +0 -102
- package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/wildo-features.shared.schemas.js +0 -124
- package/dist/esm/external-providers/wildo-features.shared.schemas.js.map +0 -1
- package/dist/esm/features/platform-capability-definitions.shared.d.ts +0 -50
- package/dist/esm/features/platform-capability-definitions.shared.d.ts.map +0 -1
- package/dist/esm/features/platform-capability-definitions.shared.js +0 -30
- package/dist/esm/features/platform-capability-definitions.shared.js.map +0 -1
- package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts +0 -181
- package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/agents-context.shared.schemas.js +0 -116
- package/dist/esm/flows-actors/agents-context.shared.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts +0 -39
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js +0 -113
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts +0 -63
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js +0 -110
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts +0 -62
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js +0 -112
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.schemas.d.ts +0 -162
- package/dist/esm/notifications/email/email-template.shared.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.schemas.js +0 -189
- package/dist/esm/notifications/email/email-template.shared.schemas.js.map +0 -1
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts +0 -37
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js +0 -207
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts +0 -91
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts.map +0 -1
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js +0 -325
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js.map +0 -1
- package/dist/esm/runtime/companion-artifact-placement.shared.definitions.d.ts.map +0 -1
- package/dist/esm/runtime/companion-artifact-placement.shared.definitions.js.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts +0 -10
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js +0 -52
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts +0 -52
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js +0 -40
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js.map +0 -1
- package/dist/esm/testing/schema-decorator-utils.d.ts +0 -91
- package/dist/esm/testing/schema-decorator-utils.d.ts.map +0 -1
- package/dist/esm/testing/schema-decorator-utils.js +0 -325
- package/dist/esm/testing/schema-decorator-utils.js.map +0 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { getImpersonalizeMaskValue, getImpersonalizeTreatment, getMergedObjectOrUnionShape } from '@wildo-ai/zod-decorators';
|
|
2
|
+
import { RedactionType } from './redaction.shared.schemas.js';
|
|
3
|
+
import { FIELD_IDENTIFIER_TO_PRIMARY_SCOPE, ResourcePrimaryScope } from '../../resources/resources.shared.schemas.js';
|
|
4
|
+
/**
|
|
5
|
+
* The DEFAULT mask applied for `RedactionType.MASK`.
|
|
6
|
+
*
|
|
7
|
+
* It is an UNCONSTRAINED string, so a field whose schema constrains its shape — `z.email()`,
|
|
8
|
+
* `z.uuid()`, `.min(n)` — cannot hold it. Such a field declares its own value via
|
|
9
|
+
* `.impersonalizeWith(MASK, { maskValue })`; see {@link resolveImpersonalizeMaskValue}.
|
|
10
|
+
*/
|
|
11
|
+
export const IMPERSONALIZE_MASK_CONSTANT = '••••••••';
|
|
12
|
+
/**
|
|
13
|
+
* The value a `MASK` treatment actually writes for one field: the field's own override when it
|
|
14
|
+
* declares one, the framework constant otherwise.
|
|
15
|
+
*
|
|
16
|
+
* ONE authority, deliberately. The boot guard `safeParse`s exactly this value against the field's
|
|
17
|
+
* schema and the scrub writer `$set`s exactly this value — so a guard that passes at boot cannot be
|
|
18
|
+
* followed by a write the update DTO rejects inside the erasure transaction. Splitting the two
|
|
19
|
+
* would reintroduce precisely the failure mode the boot guard exists to eliminate.
|
|
20
|
+
*/
|
|
21
|
+
export function resolveImpersonalizeMaskValue(fieldSchema) {
|
|
22
|
+
return getImpersonalizeMaskValue(fieldSchema) ?? IMPERSONALIZE_MASK_CONSTANT;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The impersonalization NEVER-SCRUB FLOOR: the org/app SCOPE FKs + `createdByUserId`. Nulling these
|
|
26
|
+
* would orphan the retained row from its tenant (a cross-tenant / security regression) or lose its
|
|
27
|
+
* audit provenance, so they stay protected even if an author accidentally puts a treatment on them.
|
|
28
|
+
*
|
|
29
|
+
* The PERSON-LINK (`userId` / `anonymousUserId` — the USER_SELF / ANONYMOUS scopes) is DELIBERATELY NOT
|
|
30
|
+
* floor-protected: D1 allows SEVERING the person-link while keeping org/app scope (the mirror, opposite
|
|
31
|
+
* direction, of the anon→user transposition). So a `userId` that carries an explicit
|
|
32
|
+
* `.impersonalizeWith('remove')` IS severable — this is how "erase the subject's link, keep the scoped
|
|
33
|
+
* record" is expressed.
|
|
34
|
+
*/
|
|
35
|
+
export function isImpersonalizeNeverScrubFloorField(fieldName) {
|
|
36
|
+
if (fieldName === 'createdByUserId')
|
|
37
|
+
return true;
|
|
38
|
+
const scope = FIELD_IDENTIFIER_TO_PRIMARY_SCOPE[fieldName];
|
|
39
|
+
return scope === ResourcePrimaryScope.ORGANIZATIONS
|
|
40
|
+
|| scope === ResourcePrimaryScope.APPLICATION;
|
|
41
|
+
// USER_SELF / ANONYMOUS (person-link) fall through → severable per D1.
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Synthesize the field-scrub `$set` patch for an impersonalize-in-place write, from a resource's
|
|
45
|
+
* per-field `.impersonalizeWith()` treatments. Returns ONLY the scrubbed FIELDS — the impersonalize
|
|
46
|
+
* writer appends the `retentionStatus` / `impersonalizedAt` markers.
|
|
47
|
+
*
|
|
48
|
+
* M4 is the FIRST + ONLY exhaustive consumer of `RedactionType` (zero appliers existed before), so the
|
|
49
|
+
* `default` arm is load-bearing: it keeps the enum ADDITIVELY safe — a future member (e.g. a reserved
|
|
50
|
+
* `TOKENIZE`) fails LOUD here rather than being silently skipped.
|
|
51
|
+
*
|
|
52
|
+
* v1 scope: KEEP / REMOVE / MASK are expressible in a single STATIC `$set` (batch `updateManyAsSystem`).
|
|
53
|
+
* A per-field `maskValue` stays inside that scope — it changes WHICH constant a field is set to, not
|
|
54
|
+
* that the write is one static `$set` shared by every row in the batch.
|
|
55
|
+
* - `HASH` is value-dependent (each row hashes its own value) → NOT expressible in a static `$set`; it
|
|
56
|
+
* THROWS in v1 (add a per-doc / aggregation-pipeline scrub path later — additive).
|
|
57
|
+
* - `ENCRYPT` is reversible → forbidden for impersonalization (D6: v1 impersonalization is IRREVERSIBLE);
|
|
58
|
+
* `ENCRYPT` remains a flow-actors-only redaction option.
|
|
59
|
+
*/
|
|
60
|
+
export function buildImpersonalizeScrubPatch(mainSchema) {
|
|
61
|
+
// UNION-AWARE on purpose. `getZodObjectShape` returns `{}` for a discriminated union, which would
|
|
62
|
+
// make the scrub a SILENT NO-OP the day polymorphic resources become retention-governed (rows would
|
|
63
|
+
// flip to RETAINED with every personal field intact). This mirrors the union-aware shape read used
|
|
64
|
+
// by `deriveTrustedSystemWritePreservedFields`, so the two never disagree about what a resource's
|
|
65
|
+
// fields are.
|
|
66
|
+
const shape = getMergedObjectOrUnionShape(mainSchema);
|
|
67
|
+
const patch = {};
|
|
68
|
+
for (const [fieldName, fieldSchema] of Object.entries(shape)) {
|
|
69
|
+
const treatment = getImpersonalizeTreatment(fieldSchema);
|
|
70
|
+
if (treatment === undefined)
|
|
71
|
+
continue; // no `.impersonalizeWith()` → leave the field untouched
|
|
72
|
+
// Never-scrub floor: even an explicit treatment cannot null a scope FK / createdByUserId.
|
|
73
|
+
if (isImpersonalizeNeverScrubFloorField(fieldName))
|
|
74
|
+
continue;
|
|
75
|
+
switch (treatment) {
|
|
76
|
+
case RedactionType.KEEP:
|
|
77
|
+
continue; // explicit never-scrub
|
|
78
|
+
case RedactionType.REMOVE:
|
|
79
|
+
patch[fieldName] = null;
|
|
80
|
+
break;
|
|
81
|
+
case RedactionType.MASK:
|
|
82
|
+
patch[fieldName] = resolveImpersonalizeMaskValue(fieldSchema);
|
|
83
|
+
break;
|
|
84
|
+
case RedactionType.HASH:
|
|
85
|
+
throw new Error(`[impersonalize] HASH treatment on '${fieldName}' is value-dependent and not supported in v1 ` +
|
|
86
|
+
`(a static $set cannot hash per-row) — use REMOVE/MASK/KEEP, or add the per-doc/pipeline scrub path.`);
|
|
87
|
+
case RedactionType.ENCRYPT:
|
|
88
|
+
throw new Error(`[impersonalize] ENCRYPT treatment on '${fieldName}' is reversible — forbidden for impersonalization ` +
|
|
89
|
+
`(D6: v1 impersonalization is irreversible). ENCRYPT stays a flow-actors-only redaction option.`);
|
|
90
|
+
default:
|
|
91
|
+
// Exhaustive guard: an unknown / future RedactionType member MUST fail LOUD, never be silently
|
|
92
|
+
// skipped — this is exactly what keeps RedactionType additively safe (deep-review B-F2).
|
|
93
|
+
throw new Error(`[impersonalize] unsupported impersonalize treatment '${treatment}' on '${fieldName}'.`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return patch;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=impersonalization-scrub.shared.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impersonalization-scrub.shared.utils.js","sourceRoot":"","sources":["../../../../../src/compliance/privacy/impersonalization-scrub.shared.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAC7H,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,iCAAiC,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAEnH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC;AAEtD;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAyB;IACrE,OAAO,yBAAyB,CAAC,WAAW,CAAC,IAAI,2BAA2B,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mCAAmC,CAAC,SAAiB;IACnE,IAAI,SAAS,KAAK,iBAAiB;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,KAAK,GAAG,iCAAiC,CAAC,SAAS,CAAC,CAAC;IAC3D,OAAO,KAAK,KAAK,oBAAoB,CAAC,aAAa;WAC5C,KAAK,KAAK,oBAAoB,CAAC,WAAW,CAAC;IAClD,uEAAuE;AACzE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,4BAA4B,CAAC,UAAwB;IACnE,kGAAkG;IAClG,oGAAoG;IACpG,mGAAmG;IACnG,kGAAkG;IAClG,cAAc;IACd,MAAM,KAAK,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,KAAK,GAA4B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,SAAS,GAAG,yBAAyB,CAAC,WAA2B,CAAC,CAAC;QACzE,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS,CAAC,wDAAwD;QAE/F,0FAA0F;QAC1F,IAAI,mCAAmC,CAAC,SAAS,CAAC;YAAE,SAAS;QAE7D,QAAQ,SAA0B,EAAE,CAAC;YACnC,KAAK,aAAa,CAAC,IAAI;gBACrB,SAAS,CAAC,uBAAuB;YACnC,KAAK,aAAa,CAAC,MAAM;gBACvB,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;gBACxB,MAAM;YACR,KAAK,aAAa,CAAC,IAAI;gBACrB,KAAK,CAAC,SAAS,CAAC,GAAG,6BAA6B,CAAC,WAA2B,CAAC,CAAC;gBAC9E,MAAM;YACR,KAAK,aAAa,CAAC,IAAI;gBACrB,MAAM,IAAI,KAAK,CACb,sCAAsC,SAAS,+CAA+C;oBAC9F,qGAAqG,CACtG,CAAC;YACJ,KAAK,aAAa,CAAC,OAAO;gBACxB,MAAM,IAAI,KAAK,CACb,yCAAyC,SAAS,oDAAoD;oBACtG,gGAAgG,CACjG,CAAC;YACJ;gBACE,+FAA+F;gBAC/F,yFAAyF;gBACzF,MAAM,IAAI,KAAK,CAAC,wDAAwD,SAAS,SAAS,SAAS,IAAI,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import { z } from 'zod';\nimport { getImpersonalizeMaskValue, getImpersonalizeTreatment, getMergedObjectOrUnionShape } from '@wildo-ai/zod-decorators';\nimport { RedactionType } from './redaction.shared.schemas';\nimport { FIELD_IDENTIFIER_TO_PRIMARY_SCOPE, ResourcePrimaryScope } from '../../resources/resources.shared.schemas';\n\n/**\n * The DEFAULT mask applied for `RedactionType.MASK`.\n *\n * It is an UNCONSTRAINED string, so a field whose schema constrains its shape — `z.email()`,\n * `z.uuid()`, `.min(n)` — cannot hold it. Such a field declares its own value via\n * `.impersonalizeWith(MASK, { maskValue })`; see {@link resolveImpersonalizeMaskValue}.\n */\nexport const IMPERSONALIZE_MASK_CONSTANT = '••••••••';\n\n/**\n * The value a `MASK` treatment actually writes for one field: the field's own override when it\n * declares one, the framework constant otherwise.\n *\n * ONE authority, deliberately. The boot guard `safeParse`s exactly this value against the field's\n * schema and the scrub writer `$set`s exactly this value — so a guard that passes at boot cannot be\n * followed by a write the update DTO rejects inside the erasure transaction. Splitting the two\n * would reintroduce precisely the failure mode the boot guard exists to eliminate.\n */\nexport function resolveImpersonalizeMaskValue(fieldSchema: z.ZodTypeAny): string {\n return getImpersonalizeMaskValue(fieldSchema) ?? IMPERSONALIZE_MASK_CONSTANT;\n}\n\n/**\n * The impersonalization NEVER-SCRUB FLOOR: the org/app SCOPE FKs + `createdByUserId`. Nulling these\n * would orphan the retained row from its tenant (a cross-tenant / security regression) or lose its\n * audit provenance, so they stay protected even if an author accidentally puts a treatment on them.\n *\n * The PERSON-LINK (`userId` / `anonymousUserId` — the USER_SELF / ANONYMOUS scopes) is DELIBERATELY NOT\n * floor-protected: D1 allows SEVERING the person-link while keeping org/app scope (the mirror, opposite\n * direction, of the anon→user transposition). So a `userId` that carries an explicit\n * `.impersonalizeWith('remove')` IS severable — this is how \"erase the subject's link, keep the scoped\n * record\" is expressed.\n */\nexport function isImpersonalizeNeverScrubFloorField(fieldName: string): boolean {\n if (fieldName === 'createdByUserId') return true;\n const scope = FIELD_IDENTIFIER_TO_PRIMARY_SCOPE[fieldName];\n return scope === ResourcePrimaryScope.ORGANIZATIONS\n || scope === ResourcePrimaryScope.APPLICATION;\n // USER_SELF / ANONYMOUS (person-link) fall through → severable per D1.\n}\n\n/**\n * Synthesize the field-scrub `$set` patch for an impersonalize-in-place write, from a resource's\n * per-field `.impersonalizeWith()` treatments. Returns ONLY the scrubbed FIELDS — the impersonalize\n * writer appends the `retentionStatus` / `impersonalizedAt` markers.\n *\n * M4 is the FIRST + ONLY exhaustive consumer of `RedactionType` (zero appliers existed before), so the\n * `default` arm is load-bearing: it keeps the enum ADDITIVELY safe — a future member (e.g. a reserved\n * `TOKENIZE`) fails LOUD here rather than being silently skipped.\n *\n * v1 scope: KEEP / REMOVE / MASK are expressible in a single STATIC `$set` (batch `updateManyAsSystem`).\n * A per-field `maskValue` stays inside that scope — it changes WHICH constant a field is set to, not\n * that the write is one static `$set` shared by every row in the batch.\n * - `HASH` is value-dependent (each row hashes its own value) → NOT expressible in a static `$set`; it\n * THROWS in v1 (add a per-doc / aggregation-pipeline scrub path later — additive).\n * - `ENCRYPT` is reversible → forbidden for impersonalization (D6: v1 impersonalization is IRREVERSIBLE);\n * `ENCRYPT` remains a flow-actors-only redaction option.\n */\nexport function buildImpersonalizeScrubPatch(mainSchema: z.ZodTypeAny): Record<string, unknown> {\n // UNION-AWARE on purpose. `getZodObjectShape` returns `{}` for a discriminated union, which would\n // make the scrub a SILENT NO-OP the day polymorphic resources become retention-governed (rows would\n // flip to RETAINED with every personal field intact). This mirrors the union-aware shape read used\n // by `deriveTrustedSystemWritePreservedFields`, so the two never disagree about what a resource's\n // fields are.\n const shape = getMergedObjectOrUnionShape(mainSchema);\n const patch: Record<string, unknown> = {};\n\n for (const [fieldName, fieldSchema] of Object.entries(shape)) {\n const treatment = getImpersonalizeTreatment(fieldSchema as z.ZodTypeAny);\n if (treatment === undefined) continue; // no `.impersonalizeWith()` → leave the field untouched\n\n // Never-scrub floor: even an explicit treatment cannot null a scope FK / createdByUserId.\n if (isImpersonalizeNeverScrubFloorField(fieldName)) continue;\n\n switch (treatment as RedactionType) {\n case RedactionType.KEEP:\n continue; // explicit never-scrub\n case RedactionType.REMOVE:\n patch[fieldName] = null;\n break;\n case RedactionType.MASK:\n patch[fieldName] = resolveImpersonalizeMaskValue(fieldSchema as z.ZodTypeAny);\n break;\n case RedactionType.HASH:\n throw new Error(\n `[impersonalize] HASH treatment on '${fieldName}' is value-dependent and not supported in v1 ` +\n `(a static $set cannot hash per-row) — use REMOVE/MASK/KEEP, or add the per-doc/pipeline scrub path.`,\n );\n case RedactionType.ENCRYPT:\n throw new Error(\n `[impersonalize] ENCRYPT treatment on '${fieldName}' is reversible — forbidden for impersonalization ` +\n `(D6: v1 impersonalization is irreversible). ENCRYPT stays a flow-actors-only redaction option.`,\n );\n default:\n // Exhaustive guard: an unknown / future RedactionType member MUST fail LOUD, never be silently\n // skipped — this is exactly what keeps RedactionType additively safe (deep-review B-F2).\n throw new Error(`[impersonalize] unsupported impersonalize treatment '${treatment}' on '${fieldName}'.`);\n }\n }\n\n return patch;\n}\n"]}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* # Impersonalization — per-record retention lifecycle state
|
|
4
|
+
*
|
|
5
|
+
* `impersonalization` = scrubbing the personal data OUT of a stored record while
|
|
6
|
+
* KEEPING the row, so it can be retained for a legal/audit obligation (GDPR
|
|
7
|
+
* Art. 17(3)(b) legal-obligation carve-out; tax/SOX retention). This is the third
|
|
8
|
+
* erasure outcome alongside hard-delete and leave-as-is.
|
|
9
|
+
*
|
|
10
|
+
* ⚠️ **Not** the anonymous-user concept. `isAnonymizable` / `anonymousUserId` /
|
|
11
|
+
* anonymous-session ownership transposition is an unrelated, opposite-direction
|
|
12
|
+
* mechanism (carrying a pre-auth anonymous session's rows forward to a real user).
|
|
13
|
+
* Never conflate the two. See `.claude/plans/retention-impersonalization-architecture.md`.
|
|
14
|
+
*
|
|
15
|
+
* `RetentionStatus` is the per-record marker the resource factory injects (as the
|
|
16
|
+
* `retentionStatus` field) onto any resource that opts into `retentionPolicy`. The
|
|
17
|
+
* INTENDED contract for a `RETAINED` record is **hidden and immutable by default**
|
|
18
|
+
* (behave-as-deleted), reachable only through the audited `seeRetained` see-through path.
|
|
19
|
+
*
|
|
20
|
+
* **LIVE.** The factory injects the marker (defaulting to `ACTIVE`), the visibility/immutability
|
|
21
|
+
* enforcement and the audited see-through read primitive are all wired and runtime-proven. A
|
|
22
|
+
* `RETAINED` record is hidden from every ordinary read, list, count and chart aggregate, and is
|
|
23
|
+
* immutable to ordinary writes. (This block previously said the enforcement was "wired in a later
|
|
24
|
+
* phase"; that became false without being revisited.)
|
|
25
|
+
*/
|
|
26
|
+
export declare enum RetentionStatus {
|
|
27
|
+
/** Live record — normal visibility and mutability. */
|
|
28
|
+
ACTIVE = "active",
|
|
29
|
+
/**
|
|
30
|
+
* Impersonalized-and-retained — personal fields scrubbed in place, the row kept for a
|
|
31
|
+
* retention obligation. Intended semantics (enforcement wired in a later phase): hidden
|
|
32
|
+
* and immutable to normal callers; readable only via the audited see-through path;
|
|
33
|
+
* disposable only by a privileged system op.
|
|
34
|
+
*/
|
|
35
|
+
RETAINED = "retained"
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Zod schema for {@link RetentionStatus}. Explicitly annotated for the
|
|
39
|
+
* `isolatedDeclarations` emit constraint.
|
|
40
|
+
*/
|
|
41
|
+
export declare const RetentionStatusSchema: z.ZodEnum<typeof RetentionStatus>;
|
|
42
|
+
/**
|
|
43
|
+
* # What erasure DOES to a retention-governed row
|
|
44
|
+
*
|
|
45
|
+
* Retention (the row survives, is marked `RETAINED`, becomes hidden + immutable) and
|
|
46
|
+
* impersonalization (its personal FIELDS are scrubbed) are ORTHOGONAL. A record can be legally
|
|
47
|
+
* retainable while holding no personal data of its own — a financial row that merely POINTS at a
|
|
48
|
+
* person is the canonical case: erasing the subject must not destroy the invoice, but there is
|
|
49
|
+
* nothing on the invoice to scrub, because the name and address live on the linked user.
|
|
50
|
+
*
|
|
51
|
+
* Fusing the two axes forced such a resource to either declare a fake scrub (shipping a record
|
|
52
|
+
* stamped "impersonalized" that never was) or forgo retention entirely (letting the cascade destroy a
|
|
53
|
+
* legally-required record). Naming the two outcomes separately removes that false choice AND makes
|
|
54
|
+
* the author's claim auditable: "this resource holds no personal data" becomes an explicit, reviewable
|
|
55
|
+
* declaration rather than something a compliance reviewer must infer from an absence of treatments.
|
|
56
|
+
*/
|
|
57
|
+
export declare enum ErasureRetentionMode {
|
|
58
|
+
/**
|
|
59
|
+
* Keep and FREEZE the row; scrub nothing — this resource holds no personal data of its own.
|
|
60
|
+
*
|
|
61
|
+
* Declaring a `.impersonalizeWith()` treatment under this mode is a contradiction and fails at
|
|
62
|
+
* config build: if a field does hold personal data, the resource wants
|
|
63
|
+
* {@link ErasureRetentionMode.RETAIN_AND_IMPERSONALIZE} instead.
|
|
64
|
+
*/
|
|
65
|
+
RETAIN_ONLY = "retain_only",
|
|
66
|
+
/**
|
|
67
|
+
* Keep and freeze the row AND scrub the fields marked with `.impersonalizeWith()`.
|
|
68
|
+
*
|
|
69
|
+
* Requires at least one field that the writer would ACTUALLY scrub (a `KEEP` treatment, or one on a
|
|
70
|
+
* never-scrub floor field such as a scope FK, does not count) — otherwise the row would flip to
|
|
71
|
+
* `RETAINED` with every field intact while claiming to have been impersonalized.
|
|
72
|
+
*/
|
|
73
|
+
RETAIN_AND_IMPERSONALIZE = "retain_and_impersonalize"
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Zod schema for {@link ErasureRetentionMode}. Explicitly annotated for the
|
|
77
|
+
* `isolatedDeclarations` emit constraint.
|
|
78
|
+
*/
|
|
79
|
+
export declare const ErasureRetentionModeSchema: z.ZodEnum<typeof ErasureRetentionMode>;
|
|
80
|
+
/**
|
|
81
|
+
* **WHOSE SESSION ENDS** when a row of this resource is erased. The second axis of the erasure
|
|
82
|
+
* contract, beside {@link ErasureRetentionMode} (which says what happens to the row).
|
|
83
|
+
*
|
|
84
|
+
* ## This axis is NOT "is this row about a person?" — read this before adding a member
|
|
85
|
+
*
|
|
86
|
+
* The two questions look like one and are not, and conflating them cost this vocabulary a member name
|
|
87
|
+
* for months (see the rename note below). Wildo answers them on SEPARATE axes:
|
|
88
|
+
*
|
|
89
|
+
* | question | the axis that answers it |
|
|
90
|
+
* |---|---|
|
|
91
|
+
* | Does this resource hold personal data? | {@link ErasureRetentionMode} — `RETAIN_AND_IMPERSONALIZE` requires at least one field that would actually be scrubbed; `RETAIN_ONLY` means *"holds no personal data of its own"*, and a scrub treatment under it fails at config build |
|
|
92
|
+
* | Can a subject-access or portability export answer for it? | `systemAccessPolicy.exportSubject` |
|
|
93
|
+
* | **Whose login session must be revoked?** | **this enum** |
|
|
94
|
+
*
|
|
95
|
+
* A CRM contact, a sales lead, a newsletter subscriber and a patient with no portal account are all
|
|
96
|
+
* **data subjects with no session**. They declare `RETAIN_AND_IMPERSONALIZE` (they hold personal data)
|
|
97
|
+
* and {@link ResourceDataSubjectKind.NO_PRINCIPAL} (there is no session to end) — two independent,
|
|
98
|
+
* truthful answers. Adding a fourth member here for them would make this enum a cross-product of two
|
|
99
|
+
* axes, which is two fields wearing one name.
|
|
100
|
+
*
|
|
101
|
+
* ## Why the third member is `NO_PRINCIPAL` and not `NOT_A_DATA_SUBJECT`
|
|
102
|
+
*
|
|
103
|
+
* It was `NOT_A_DATA_SUBJECT` until 2026-08-28, and the name was the defect. Operationally it always
|
|
104
|
+
* meant *"revoke nobody"* — which is exactly right for a CRM contact — while its NAME claimed the row
|
|
105
|
+
* was not about a person, which is false for one. Nothing misbehaved at runtime (the single consumer,
|
|
106
|
+
* `resolveScrubSessionPrincipals`, only ever asked the session question), so the cost landed entirely
|
|
107
|
+
* on readers: a human, and a compliance-document generator, both read the name and would have stated
|
|
108
|
+
* in a published privacy notice that the application holds no personal data in precisely the resource
|
|
109
|
+
* its customers care most about.
|
|
110
|
+
*
|
|
111
|
+
* The industry model this now matches is unambiguous — Intercom deletes "a user **or lead**", HubSpot
|
|
112
|
+
* GDPR-deletes a Contact by id or by email, Zendesk "forgets" an end-user: an account and a data
|
|
113
|
+
* subject are different objects, and the erasure verb applies to both. Wildo's `eraseSubjectAsSystem`
|
|
114
|
+
* already takes `(resourceType, rowIds)` with no principal, so the capability was never missing.
|
|
115
|
+
*
|
|
116
|
+
* ## Why this must be DECLARED and can never be inferred
|
|
117
|
+
*
|
|
118
|
+
* An erasure of a person must also end that person's session, or a "deleted" person keeps browsing on
|
|
119
|
+
* a live token until it expires. The tempting shortcut is to look for a `userId`-shaped foreign key on
|
|
120
|
+
* the erased row and revoke it. **That shortcut is a defect, not an optimisation.** On almost every
|
|
121
|
+
* resource a user foreign key names the OWNER or the ACTOR, not the subject: Wonder Todos' `TODOS` is
|
|
122
|
+
* retention-governed and carries `createdByUserId`, `assignedToUserId` and `escalationContactUserId`,
|
|
123
|
+
* so an inferring implementation would log out the author, the assignee and the escalation contact —
|
|
124
|
+
* three people, none of them the data subject — every time a todo was erased.
|
|
125
|
+
*
|
|
126
|
+
* So the linkage is authored, never guessed, and a resource that can be an erasure subject (i.e. one
|
|
127
|
+
* declaring a `retentionPolicy`) must say which of these it is. Undeclared is refused at config build:
|
|
128
|
+
* nobody has decided yet, and refusing is what forces the decision — the same doctrine the subject
|
|
129
|
+
* EXPORT model applies to an undeclared resource.
|
|
130
|
+
*/
|
|
131
|
+
export declare enum ResourceDataSubjectKind {
|
|
132
|
+
/**
|
|
133
|
+
* Erasing a row of this resource revokes **no session**, because no login is reachable from it.
|
|
134
|
+
*
|
|
135
|
+
* Two very different populations share this answer, and the enum is deliberately silent about which
|
|
136
|
+
* one a given resource is — {@link ErasureRetentionMode} says that:
|
|
137
|
+
*
|
|
138
|
+
* - **Not a person at all.** A todo, an invoice, a log line. Any user foreign keys it carries name
|
|
139
|
+
* ACTORS — an author, an assignee, an owner, an escalation contact — and revoking their sessions
|
|
140
|
+
* because a record was erased would log out three uninvolved people. Such a resource pairs this
|
|
141
|
+
* with `RETAIN_ONLY`.
|
|
142
|
+
* - **A person with no account.** A CRM contact, a sales lead, a subscriber, a patient with no
|
|
143
|
+
* portal login. Their rows ARE personal data and carry the full weight of Arts 15–17 and 20 —
|
|
144
|
+
* there is simply no session to end. Such a resource pairs this with `RETAIN_AND_IMPERSONALIZE`
|
|
145
|
+
* and per-field `.impersonalizeWith()` treatments, and its subject-rights path is the ordinary
|
|
146
|
+
* administrative one: `eraseSubjectAsSystem(resourceType, rowIds)` and a subject export.
|
|
147
|
+
*
|
|
148
|
+
* The second population is the majority of what a B2B SaaS customer stores about third parties, and
|
|
149
|
+
* it is what most of a privacy notice describes. Do not read this member as "nothing to disclose".
|
|
150
|
+
*/
|
|
151
|
+
NO_PRINCIPAL = "no_principal",
|
|
152
|
+
/**
|
|
153
|
+
* Rows of this resource ARE the person, and the row's own id IS the session principal: erasing row
|
|
154
|
+
* `X` ends the session of user `X`. This is `USERS` / `USER_SELF`.
|
|
155
|
+
*
|
|
156
|
+
* Note this makes EXPLICIT a revocation that is otherwise only incidental. Erasing a `USERS` row
|
|
157
|
+
* already logs the user out today — but only as a side effect of the retention row-hide (the auth
|
|
158
|
+
* fronts re-read the user, find the row hidden, and 401) plus the scrub write bumping
|
|
159
|
+
* `authorizationVersion`. Nothing on the erasure path ever WROTE a revocation, so the guarantee
|
|
160
|
+
* lived entirely in the behaviour of two unrelated mechanisms.
|
|
161
|
+
*/
|
|
162
|
+
SELF_PRINCIPAL = "self_principal",
|
|
163
|
+
/**
|
|
164
|
+
* Rows of this resource are a person whose login lives in a DIFFERENT `USERS` row — a Patient, an
|
|
165
|
+
* Employee, a Member record that a human signs in as. `sessionPrincipalField` names the field
|
|
166
|
+
* holding that user's id.
|
|
167
|
+
*
|
|
168
|
+
* The named field must carry no `.impersonalizeWith()` treatment. Not because the revocation would
|
|
169
|
+
* break — the principal is resolved BEFORE the scrub, so a scrubbed field is still readable when it
|
|
170
|
+
* matters — but because declaring one field to be BOTH the link to a person and personal data to
|
|
171
|
+
* destroy is self-contradictory, and it leaves the retained row with no way to say whose session was
|
|
172
|
+
* ended. Enforced at config build.
|
|
173
|
+
*/
|
|
174
|
+
LINKED_PRINCIPAL = "linked_principal"
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Zod schema for {@link ResourceDataSubjectKind}. Explicitly annotated for the
|
|
178
|
+
* `isolatedDeclarations` emit constraint.
|
|
179
|
+
*/
|
|
180
|
+
export declare const ResourceDataSubjectKindSchema: z.ZodEnum<typeof ResourceDataSubjectKind>;
|
|
181
|
+
//# sourceMappingURL=impersonalization.shared.schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impersonalization.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/compliance/privacy/impersonalization.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,oBAAY,eAAe;IACzB,sDAAsD;IACtD,MAAM,WAAW;IACjB;;;;;OAKG;IACH,QAAQ,aAAa;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,eAAe,CAC3C,CAAC;AAE1B;;;;;;;;;;;;;;GAcG;AACH,oBAAY,oBAAoB;IAC9B;;;;;;OAMG;IACH,WAAW,gBAAgB;IAC3B;;;;;;OAMG;IACH,wBAAwB,6BAA6B;CACtD;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,oBAAoB,CAChD,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,oBAAY,uBAAuB;IACjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,iBAAiB;IAC7B;;;;;;;;;OASG;IACH,cAAc,mBAAmB;IACjC;;;;;;;;;;OAUG;IACH,gBAAgB,qBAAqB;CACtC;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,uBAAuB,CACnD,CAAC"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* # Impersonalization — per-record retention lifecycle state
|
|
4
|
+
*
|
|
5
|
+
* `impersonalization` = scrubbing the personal data OUT of a stored record while
|
|
6
|
+
* KEEPING the row, so it can be retained for a legal/audit obligation (GDPR
|
|
7
|
+
* Art. 17(3)(b) legal-obligation carve-out; tax/SOX retention). This is the third
|
|
8
|
+
* erasure outcome alongside hard-delete and leave-as-is.
|
|
9
|
+
*
|
|
10
|
+
* ⚠️ **Not** the anonymous-user concept. `isAnonymizable` / `anonymousUserId` /
|
|
11
|
+
* anonymous-session ownership transposition is an unrelated, opposite-direction
|
|
12
|
+
* mechanism (carrying a pre-auth anonymous session's rows forward to a real user).
|
|
13
|
+
* Never conflate the two. See `.claude/plans/retention-impersonalization-architecture.md`.
|
|
14
|
+
*
|
|
15
|
+
* `RetentionStatus` is the per-record marker the resource factory injects (as the
|
|
16
|
+
* `retentionStatus` field) onto any resource that opts into `retentionPolicy`. The
|
|
17
|
+
* INTENDED contract for a `RETAINED` record is **hidden and immutable by default**
|
|
18
|
+
* (behave-as-deleted), reachable only through the audited `seeRetained` see-through path.
|
|
19
|
+
*
|
|
20
|
+
* **LIVE.** The factory injects the marker (defaulting to `ACTIVE`), the visibility/immutability
|
|
21
|
+
* enforcement and the audited see-through read primitive are all wired and runtime-proven. A
|
|
22
|
+
* `RETAINED` record is hidden from every ordinary read, list, count and chart aggregate, and is
|
|
23
|
+
* immutable to ordinary writes. (This block previously said the enforcement was "wired in a later
|
|
24
|
+
* phase"; that became false without being revisited.)
|
|
25
|
+
*/
|
|
26
|
+
export var RetentionStatus;
|
|
27
|
+
(function (RetentionStatus) {
|
|
28
|
+
/** Live record — normal visibility and mutability. */
|
|
29
|
+
RetentionStatus["ACTIVE"] = "active";
|
|
30
|
+
/**
|
|
31
|
+
* Impersonalized-and-retained — personal fields scrubbed in place, the row kept for a
|
|
32
|
+
* retention obligation. Intended semantics (enforcement wired in a later phase): hidden
|
|
33
|
+
* and immutable to normal callers; readable only via the audited see-through path;
|
|
34
|
+
* disposable only by a privileged system op.
|
|
35
|
+
*/
|
|
36
|
+
RetentionStatus["RETAINED"] = "retained";
|
|
37
|
+
})(RetentionStatus || (RetentionStatus = {}));
|
|
38
|
+
/**
|
|
39
|
+
* Zod schema for {@link RetentionStatus}. Explicitly annotated for the
|
|
40
|
+
* `isolatedDeclarations` emit constraint.
|
|
41
|
+
*/
|
|
42
|
+
export const RetentionStatusSchema = z.enum(RetentionStatus);
|
|
43
|
+
/**
|
|
44
|
+
* # What erasure DOES to a retention-governed row
|
|
45
|
+
*
|
|
46
|
+
* Retention (the row survives, is marked `RETAINED`, becomes hidden + immutable) and
|
|
47
|
+
* impersonalization (its personal FIELDS are scrubbed) are ORTHOGONAL. A record can be legally
|
|
48
|
+
* retainable while holding no personal data of its own — a financial row that merely POINTS at a
|
|
49
|
+
* person is the canonical case: erasing the subject must not destroy the invoice, but there is
|
|
50
|
+
* nothing on the invoice to scrub, because the name and address live on the linked user.
|
|
51
|
+
*
|
|
52
|
+
* Fusing the two axes forced such a resource to either declare a fake scrub (shipping a record
|
|
53
|
+
* stamped "impersonalized" that never was) or forgo retention entirely (letting the cascade destroy a
|
|
54
|
+
* legally-required record). Naming the two outcomes separately removes that false choice AND makes
|
|
55
|
+
* the author's claim auditable: "this resource holds no personal data" becomes an explicit, reviewable
|
|
56
|
+
* declaration rather than something a compliance reviewer must infer from an absence of treatments.
|
|
57
|
+
*/
|
|
58
|
+
export var ErasureRetentionMode;
|
|
59
|
+
(function (ErasureRetentionMode) {
|
|
60
|
+
/**
|
|
61
|
+
* Keep and FREEZE the row; scrub nothing — this resource holds no personal data of its own.
|
|
62
|
+
*
|
|
63
|
+
* Declaring a `.impersonalizeWith()` treatment under this mode is a contradiction and fails at
|
|
64
|
+
* config build: if a field does hold personal data, the resource wants
|
|
65
|
+
* {@link ErasureRetentionMode.RETAIN_AND_IMPERSONALIZE} instead.
|
|
66
|
+
*/
|
|
67
|
+
ErasureRetentionMode["RETAIN_ONLY"] = "retain_only";
|
|
68
|
+
/**
|
|
69
|
+
* Keep and freeze the row AND scrub the fields marked with `.impersonalizeWith()`.
|
|
70
|
+
*
|
|
71
|
+
* Requires at least one field that the writer would ACTUALLY scrub (a `KEEP` treatment, or one on a
|
|
72
|
+
* never-scrub floor field such as a scope FK, does not count) — otherwise the row would flip to
|
|
73
|
+
* `RETAINED` with every field intact while claiming to have been impersonalized.
|
|
74
|
+
*/
|
|
75
|
+
ErasureRetentionMode["RETAIN_AND_IMPERSONALIZE"] = "retain_and_impersonalize";
|
|
76
|
+
})(ErasureRetentionMode || (ErasureRetentionMode = {}));
|
|
77
|
+
/**
|
|
78
|
+
* Zod schema for {@link ErasureRetentionMode}. Explicitly annotated for the
|
|
79
|
+
* `isolatedDeclarations` emit constraint.
|
|
80
|
+
*/
|
|
81
|
+
export const ErasureRetentionModeSchema = z.enum(ErasureRetentionMode);
|
|
82
|
+
/**
|
|
83
|
+
* **WHOSE SESSION ENDS** when a row of this resource is erased. The second axis of the erasure
|
|
84
|
+
* contract, beside {@link ErasureRetentionMode} (which says what happens to the row).
|
|
85
|
+
*
|
|
86
|
+
* ## This axis is NOT "is this row about a person?" — read this before adding a member
|
|
87
|
+
*
|
|
88
|
+
* The two questions look like one and are not, and conflating them cost this vocabulary a member name
|
|
89
|
+
* for months (see the rename note below). Wildo answers them on SEPARATE axes:
|
|
90
|
+
*
|
|
91
|
+
* | question | the axis that answers it |
|
|
92
|
+
* |---|---|
|
|
93
|
+
* | Does this resource hold personal data? | {@link ErasureRetentionMode} — `RETAIN_AND_IMPERSONALIZE` requires at least one field that would actually be scrubbed; `RETAIN_ONLY` means *"holds no personal data of its own"*, and a scrub treatment under it fails at config build |
|
|
94
|
+
* | Can a subject-access or portability export answer for it? | `systemAccessPolicy.exportSubject` |
|
|
95
|
+
* | **Whose login session must be revoked?** | **this enum** |
|
|
96
|
+
*
|
|
97
|
+
* A CRM contact, a sales lead, a newsletter subscriber and a patient with no portal account are all
|
|
98
|
+
* **data subjects with no session**. They declare `RETAIN_AND_IMPERSONALIZE` (they hold personal data)
|
|
99
|
+
* and {@link ResourceDataSubjectKind.NO_PRINCIPAL} (there is no session to end) — two independent,
|
|
100
|
+
* truthful answers. Adding a fourth member here for them would make this enum a cross-product of two
|
|
101
|
+
* axes, which is two fields wearing one name.
|
|
102
|
+
*
|
|
103
|
+
* ## Why the third member is `NO_PRINCIPAL` and not `NOT_A_DATA_SUBJECT`
|
|
104
|
+
*
|
|
105
|
+
* It was `NOT_A_DATA_SUBJECT` until 2026-08-28, and the name was the defect. Operationally it always
|
|
106
|
+
* meant *"revoke nobody"* — which is exactly right for a CRM contact — while its NAME claimed the row
|
|
107
|
+
* was not about a person, which is false for one. Nothing misbehaved at runtime (the single consumer,
|
|
108
|
+
* `resolveScrubSessionPrincipals`, only ever asked the session question), so the cost landed entirely
|
|
109
|
+
* on readers: a human, and a compliance-document generator, both read the name and would have stated
|
|
110
|
+
* in a published privacy notice that the application holds no personal data in precisely the resource
|
|
111
|
+
* its customers care most about.
|
|
112
|
+
*
|
|
113
|
+
* The industry model this now matches is unambiguous — Intercom deletes "a user **or lead**", HubSpot
|
|
114
|
+
* GDPR-deletes a Contact by id or by email, Zendesk "forgets" an end-user: an account and a data
|
|
115
|
+
* subject are different objects, and the erasure verb applies to both. Wildo's `eraseSubjectAsSystem`
|
|
116
|
+
* already takes `(resourceType, rowIds)` with no principal, so the capability was never missing.
|
|
117
|
+
*
|
|
118
|
+
* ## Why this must be DECLARED and can never be inferred
|
|
119
|
+
*
|
|
120
|
+
* An erasure of a person must also end that person's session, or a "deleted" person keeps browsing on
|
|
121
|
+
* a live token until it expires. The tempting shortcut is to look for a `userId`-shaped foreign key on
|
|
122
|
+
* the erased row and revoke it. **That shortcut is a defect, not an optimisation.** On almost every
|
|
123
|
+
* resource a user foreign key names the OWNER or the ACTOR, not the subject: Wonder Todos' `TODOS` is
|
|
124
|
+
* retention-governed and carries `createdByUserId`, `assignedToUserId` and `escalationContactUserId`,
|
|
125
|
+
* so an inferring implementation would log out the author, the assignee and the escalation contact —
|
|
126
|
+
* three people, none of them the data subject — every time a todo was erased.
|
|
127
|
+
*
|
|
128
|
+
* So the linkage is authored, never guessed, and a resource that can be an erasure subject (i.e. one
|
|
129
|
+
* declaring a `retentionPolicy`) must say which of these it is. Undeclared is refused at config build:
|
|
130
|
+
* nobody has decided yet, and refusing is what forces the decision — the same doctrine the subject
|
|
131
|
+
* EXPORT model applies to an undeclared resource.
|
|
132
|
+
*/
|
|
133
|
+
export var ResourceDataSubjectKind;
|
|
134
|
+
(function (ResourceDataSubjectKind) {
|
|
135
|
+
/**
|
|
136
|
+
* Erasing a row of this resource revokes **no session**, because no login is reachable from it.
|
|
137
|
+
*
|
|
138
|
+
* Two very different populations share this answer, and the enum is deliberately silent about which
|
|
139
|
+
* one a given resource is — {@link ErasureRetentionMode} says that:
|
|
140
|
+
*
|
|
141
|
+
* - **Not a person at all.** A todo, an invoice, a log line. Any user foreign keys it carries name
|
|
142
|
+
* ACTORS — an author, an assignee, an owner, an escalation contact — and revoking their sessions
|
|
143
|
+
* because a record was erased would log out three uninvolved people. Such a resource pairs this
|
|
144
|
+
* with `RETAIN_ONLY`.
|
|
145
|
+
* - **A person with no account.** A CRM contact, a sales lead, a subscriber, a patient with no
|
|
146
|
+
* portal login. Their rows ARE personal data and carry the full weight of Arts 15–17 and 20 —
|
|
147
|
+
* there is simply no session to end. Such a resource pairs this with `RETAIN_AND_IMPERSONALIZE`
|
|
148
|
+
* and per-field `.impersonalizeWith()` treatments, and its subject-rights path is the ordinary
|
|
149
|
+
* administrative one: `eraseSubjectAsSystem(resourceType, rowIds)` and a subject export.
|
|
150
|
+
*
|
|
151
|
+
* The second population is the majority of what a B2B SaaS customer stores about third parties, and
|
|
152
|
+
* it is what most of a privacy notice describes. Do not read this member as "nothing to disclose".
|
|
153
|
+
*/
|
|
154
|
+
ResourceDataSubjectKind["NO_PRINCIPAL"] = "no_principal";
|
|
155
|
+
/**
|
|
156
|
+
* Rows of this resource ARE the person, and the row's own id IS the session principal: erasing row
|
|
157
|
+
* `X` ends the session of user `X`. This is `USERS` / `USER_SELF`.
|
|
158
|
+
*
|
|
159
|
+
* Note this makes EXPLICIT a revocation that is otherwise only incidental. Erasing a `USERS` row
|
|
160
|
+
* already logs the user out today — but only as a side effect of the retention row-hide (the auth
|
|
161
|
+
* fronts re-read the user, find the row hidden, and 401) plus the scrub write bumping
|
|
162
|
+
* `authorizationVersion`. Nothing on the erasure path ever WROTE a revocation, so the guarantee
|
|
163
|
+
* lived entirely in the behaviour of two unrelated mechanisms.
|
|
164
|
+
*/
|
|
165
|
+
ResourceDataSubjectKind["SELF_PRINCIPAL"] = "self_principal";
|
|
166
|
+
/**
|
|
167
|
+
* Rows of this resource are a person whose login lives in a DIFFERENT `USERS` row — a Patient, an
|
|
168
|
+
* Employee, a Member record that a human signs in as. `sessionPrincipalField` names the field
|
|
169
|
+
* holding that user's id.
|
|
170
|
+
*
|
|
171
|
+
* The named field must carry no `.impersonalizeWith()` treatment. Not because the revocation would
|
|
172
|
+
* break — the principal is resolved BEFORE the scrub, so a scrubbed field is still readable when it
|
|
173
|
+
* matters — but because declaring one field to be BOTH the link to a person and personal data to
|
|
174
|
+
* destroy is self-contradictory, and it leaves the retained row with no way to say whose session was
|
|
175
|
+
* ended. Enforced at config build.
|
|
176
|
+
*/
|
|
177
|
+
ResourceDataSubjectKind["LINKED_PRINCIPAL"] = "linked_principal";
|
|
178
|
+
})(ResourceDataSubjectKind || (ResourceDataSubjectKind = {}));
|
|
179
|
+
/**
|
|
180
|
+
* Zod schema for {@link ResourceDataSubjectKind}. Explicitly annotated for the
|
|
181
|
+
* `isolatedDeclarations` emit constraint.
|
|
182
|
+
*/
|
|
183
|
+
export const ResourceDataSubjectKindSchema = z.enum(ResourceDataSubjectKind);
|
|
184
|
+
//# sourceMappingURL=impersonalization.shared.schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impersonalization.shared.schemas.js","sourceRoot":"","sources":["../../../../../src/compliance/privacy/impersonalization.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAN,IAAY,eAUX;AAVD,WAAY,eAAe;IACzB,sDAAsD;IACtD,oCAAiB,CAAA;IACjB;;;;;OAKG;IACH,wCAAqB,CAAA;AACvB,CAAC,EAVW,eAAe,KAAf,eAAe,QAU1B;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAE1B;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAN,IAAY,oBAiBX;AAjBD,WAAY,oBAAoB;IAC9B;;;;;;OAMG;IACH,mDAA2B,CAAA;IAC3B;;;;;;OAMG;IACH,6EAAqD,CAAA;AACvD,CAAC,EAjBW,oBAAoB,KAApB,oBAAoB,QAiB/B;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GACrC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,CAAN,IAAY,uBA4CX;AA5CD,WAAY,uBAAuB;IACjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,wDAA6B,CAAA;IAC7B;;;;;;;;;OASG;IACH,4DAAiC,CAAA;IACjC;;;;;;;;;;OAUG;IACH,gEAAqC,CAAA;AACvC,CAAC,EA5CW,uBAAuB,KAAvB,uBAAuB,QA4ClC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GACxC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\n\n/**\n * # Impersonalization — per-record retention lifecycle state\n *\n * `impersonalization` = scrubbing the personal data OUT of a stored record while\n * KEEPING the row, so it can be retained for a legal/audit obligation (GDPR\n * Art. 17(3)(b) legal-obligation carve-out; tax/SOX retention). This is the third\n * erasure outcome alongside hard-delete and leave-as-is.\n *\n * ⚠️ **Not** the anonymous-user concept. `isAnonymizable` / `anonymousUserId` /\n * anonymous-session ownership transposition is an unrelated, opposite-direction\n * mechanism (carrying a pre-auth anonymous session's rows forward to a real user).\n * Never conflate the two. See `.claude/plans/retention-impersonalization-architecture.md`.\n *\n * `RetentionStatus` is the per-record marker the resource factory injects (as the\n * `retentionStatus` field) onto any resource that opts into `retentionPolicy`. The\n * INTENDED contract for a `RETAINED` record is **hidden and immutable by default**\n * (behave-as-deleted), reachable only through the audited `seeRetained` see-through path.\n *\n * **LIVE.** The factory injects the marker (defaulting to `ACTIVE`), the visibility/immutability\n * enforcement and the audited see-through read primitive are all wired and runtime-proven. A\n * `RETAINED` record is hidden from every ordinary read, list, count and chart aggregate, and is\n * immutable to ordinary writes. (This block previously said the enforcement was \"wired in a later\n * phase\"; that became false without being revisited.)\n */\nexport enum RetentionStatus {\n /** Live record — normal visibility and mutability. */\n ACTIVE = 'active',\n /**\n * Impersonalized-and-retained — personal fields scrubbed in place, the row kept for a\n * retention obligation. Intended semantics (enforcement wired in a later phase): hidden\n * and immutable to normal callers; readable only via the audited see-through path;\n * disposable only by a privileged system op.\n */\n RETAINED = 'retained',\n}\n\n/**\n * Zod schema for {@link RetentionStatus}. Explicitly annotated for the\n * `isolatedDeclarations` emit constraint.\n */\nexport const RetentionStatusSchema: z.ZodEnum<typeof RetentionStatus> =\n z.enum(RetentionStatus);\n\n/**\n * # What erasure DOES to a retention-governed row\n *\n * Retention (the row survives, is marked `RETAINED`, becomes hidden + immutable) and\n * impersonalization (its personal FIELDS are scrubbed) are ORTHOGONAL. A record can be legally\n * retainable while holding no personal data of its own — a financial row that merely POINTS at a\n * person is the canonical case: erasing the subject must not destroy the invoice, but there is\n * nothing on the invoice to scrub, because the name and address live on the linked user.\n *\n * Fusing the two axes forced such a resource to either declare a fake scrub (shipping a record\n * stamped \"impersonalized\" that never was) or forgo retention entirely (letting the cascade destroy a\n * legally-required record). Naming the two outcomes separately removes that false choice AND makes\n * the author's claim auditable: \"this resource holds no personal data\" becomes an explicit, reviewable\n * declaration rather than something a compliance reviewer must infer from an absence of treatments.\n */\nexport enum ErasureRetentionMode {\n /**\n * Keep and FREEZE the row; scrub nothing — this resource holds no personal data of its own.\n *\n * Declaring a `.impersonalizeWith()` treatment under this mode is a contradiction and fails at\n * config build: if a field does hold personal data, the resource wants\n * {@link ErasureRetentionMode.RETAIN_AND_IMPERSONALIZE} instead.\n */\n RETAIN_ONLY = 'retain_only',\n /**\n * Keep and freeze the row AND scrub the fields marked with `.impersonalizeWith()`.\n *\n * Requires at least one field that the writer would ACTUALLY scrub (a `KEEP` treatment, or one on a\n * never-scrub floor field such as a scope FK, does not count) — otherwise the row would flip to\n * `RETAINED` with every field intact while claiming to have been impersonalized.\n */\n RETAIN_AND_IMPERSONALIZE = 'retain_and_impersonalize',\n}\n\n/**\n * Zod schema for {@link ErasureRetentionMode}. Explicitly annotated for the\n * `isolatedDeclarations` emit constraint.\n */\nexport const ErasureRetentionModeSchema: z.ZodEnum<typeof ErasureRetentionMode> =\n z.enum(ErasureRetentionMode);\n\n/**\n * **WHOSE SESSION ENDS** when a row of this resource is erased. The second axis of the erasure\n * contract, beside {@link ErasureRetentionMode} (which says what happens to the row).\n *\n * ## This axis is NOT \"is this row about a person?\" — read this before adding a member\n *\n * The two questions look like one and are not, and conflating them cost this vocabulary a member name\n * for months (see the rename note below). Wildo answers them on SEPARATE axes:\n *\n * | question | the axis that answers it |\n * |---|---|\n * | Does this resource hold personal data? | {@link ErasureRetentionMode} — `RETAIN_AND_IMPERSONALIZE` requires at least one field that would actually be scrubbed; `RETAIN_ONLY` means *\"holds no personal data of its own\"*, and a scrub treatment under it fails at config build |\n * | Can a subject-access or portability export answer for it? | `systemAccessPolicy.exportSubject` |\n * | **Whose login session must be revoked?** | **this enum** |\n *\n * A CRM contact, a sales lead, a newsletter subscriber and a patient with no portal account are all\n * **data subjects with no session**. They declare `RETAIN_AND_IMPERSONALIZE` (they hold personal data)\n * and {@link ResourceDataSubjectKind.NO_PRINCIPAL} (there is no session to end) — two independent,\n * truthful answers. Adding a fourth member here for them would make this enum a cross-product of two\n * axes, which is two fields wearing one name.\n *\n * ## Why the third member is `NO_PRINCIPAL` and not `NOT_A_DATA_SUBJECT`\n *\n * It was `NOT_A_DATA_SUBJECT` until 2026-08-28, and the name was the defect. Operationally it always\n * meant *\"revoke nobody\"* — which is exactly right for a CRM contact — while its NAME claimed the row\n * was not about a person, which is false for one. Nothing misbehaved at runtime (the single consumer,\n * `resolveScrubSessionPrincipals`, only ever asked the session question), so the cost landed entirely\n * on readers: a human, and a compliance-document generator, both read the name and would have stated\n * in a published privacy notice that the application holds no personal data in precisely the resource\n * its customers care most about.\n *\n * The industry model this now matches is unambiguous — Intercom deletes \"a user **or lead**\", HubSpot\n * GDPR-deletes a Contact by id or by email, Zendesk \"forgets\" an end-user: an account and a data\n * subject are different objects, and the erasure verb applies to both. Wildo's `eraseSubjectAsSystem`\n * already takes `(resourceType, rowIds)` with no principal, so the capability was never missing.\n *\n * ## Why this must be DECLARED and can never be inferred\n *\n * An erasure of a person must also end that person's session, or a \"deleted\" person keeps browsing on\n * a live token until it expires. The tempting shortcut is to look for a `userId`-shaped foreign key on\n * the erased row and revoke it. **That shortcut is a defect, not an optimisation.** On almost every\n * resource a user foreign key names the OWNER or the ACTOR, not the subject: Wonder Todos' `TODOS` is\n * retention-governed and carries `createdByUserId`, `assignedToUserId` and `escalationContactUserId`,\n * so an inferring implementation would log out the author, the assignee and the escalation contact —\n * three people, none of them the data subject — every time a todo was erased.\n *\n * So the linkage is authored, never guessed, and a resource that can be an erasure subject (i.e. one\n * declaring a `retentionPolicy`) must say which of these it is. Undeclared is refused at config build:\n * nobody has decided yet, and refusing is what forces the decision — the same doctrine the subject\n * EXPORT model applies to an undeclared resource.\n */\nexport enum ResourceDataSubjectKind {\n /**\n * Erasing a row of this resource revokes **no session**, because no login is reachable from it.\n *\n * Two very different populations share this answer, and the enum is deliberately silent about which\n * one a given resource is — {@link ErasureRetentionMode} says that:\n *\n * - **Not a person at all.** A todo, an invoice, a log line. Any user foreign keys it carries name\n * ACTORS — an author, an assignee, an owner, an escalation contact — and revoking their sessions\n * because a record was erased would log out three uninvolved people. Such a resource pairs this\n * with `RETAIN_ONLY`.\n * - **A person with no account.** A CRM contact, a sales lead, a subscriber, a patient with no\n * portal login. Their rows ARE personal data and carry the full weight of Arts 15–17 and 20 —\n * there is simply no session to end. Such a resource pairs this with `RETAIN_AND_IMPERSONALIZE`\n * and per-field `.impersonalizeWith()` treatments, and its subject-rights path is the ordinary\n * administrative one: `eraseSubjectAsSystem(resourceType, rowIds)` and a subject export.\n *\n * The second population is the majority of what a B2B SaaS customer stores about third parties, and\n * it is what most of a privacy notice describes. Do not read this member as \"nothing to disclose\".\n */\n NO_PRINCIPAL = 'no_principal',\n /**\n * Rows of this resource ARE the person, and the row's own id IS the session principal: erasing row\n * `X` ends the session of user `X`. This is `USERS` / `USER_SELF`.\n *\n * Note this makes EXPLICIT a revocation that is otherwise only incidental. Erasing a `USERS` row\n * already logs the user out today — but only as a side effect of the retention row-hide (the auth\n * fronts re-read the user, find the row hidden, and 401) plus the scrub write bumping\n * `authorizationVersion`. Nothing on the erasure path ever WROTE a revocation, so the guarantee\n * lived entirely in the behaviour of two unrelated mechanisms.\n */\n SELF_PRINCIPAL = 'self_principal',\n /**\n * Rows of this resource are a person whose login lives in a DIFFERENT `USERS` row — a Patient, an\n * Employee, a Member record that a human signs in as. `sessionPrincipalField` names the field\n * holding that user's id.\n *\n * The named field must carry no `.impersonalizeWith()` treatment. Not because the revocation would\n * break — the principal is resolved BEFORE the scrub, so a scrubbed field is still readable when it\n * matters — but because declaring one field to be BOTH the link to a person and personal data to\n * destroy is self-contradictory, and it leaves the retained row with no way to say whose session was\n * ended. Enforced at config build.\n */\n LINKED_PRINCIPAL = 'linked_principal',\n}\n\n/**\n * Zod schema for {@link ResourceDataSubjectKind}. Explicitly annotated for the\n * `isolatedDeclarations` emit constraint.\n */\nexport const ResourceDataSubjectKindSchema: z.ZodEnum<typeof ResourceDataSubjectKind> =\n z.enum(ResourceDataSubjectKind);\n"]}
|