@xemahq/contracts 0.77.0 → 0.79.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.
Files changed (213) hide show
  1. package/README.md +1 -1
  2. package/dist/.source-stamp.json +2 -2
  3. package/dist/authorization-facts/lib/facts-apply.d.ts +1 -0
  4. package/dist/authorization-facts/lib/facts-apply.d.ts.map +1 -1
  5. package/dist/authorization-facts/lib/facts-apply.js +1 -0
  6. package/dist/authorization-facts/lib/facts-apply.js.map +1 -1
  7. package/dist/authorization-facts/lib/facts-writer-authority.d.ts +12 -1
  8. package/dist/authorization-facts/lib/facts-writer-authority.d.ts.map +1 -1
  9. package/dist/authorization-facts/lib/facts-writer-authority.js +69 -5
  10. package/dist/authorization-facts/lib/facts-writer-authority.js.map +1 -1
  11. package/dist/authorization-module/index.d.ts +2 -0
  12. package/dist/authorization-module/index.d.ts.map +1 -1
  13. package/dist/authorization-module/index.js +2 -0
  14. package/dist/authorization-module/index.js.map +1 -1
  15. package/dist/authorization-module/lib/authorization-composition-error.d.ts +12 -0
  16. package/dist/authorization-module/lib/authorization-composition-error.d.ts.map +1 -1
  17. package/dist/authorization-module/lib/authorization-composition-error.js +17 -1
  18. package/dist/authorization-module/lib/authorization-composition-error.js.map +1 -1
  19. package/dist/authorization-module/lib/authorization-interface-requirements.d.ts +5 -1
  20. package/dist/authorization-module/lib/authorization-interface-requirements.d.ts.map +1 -1
  21. package/dist/authorization-module/lib/authorization-interface-requirements.js +1 -0
  22. package/dist/authorization-module/lib/authorization-interface-requirements.js.map +1 -1
  23. package/dist/authorization-module/lib/authorization-module-contribution.d.ts +24 -0
  24. package/dist/authorization-module/lib/authorization-module-contribution.d.ts.map +1 -1
  25. package/dist/authorization-module/lib/authorization-module-contribution.js +1 -0
  26. package/dist/authorization-module/lib/authorization-module-contribution.js.map +1 -1
  27. package/dist/authorization-module/lib/authorization-module-envelope.d.ts +11 -0
  28. package/dist/authorization-module/lib/authorization-module-envelope.d.ts.map +1 -1
  29. package/dist/authorization-module/lib/authorization-module-envelope.js +4 -0
  30. package/dist/authorization-module/lib/authorization-module-envelope.js.map +1 -1
  31. package/dist/authorization-module/lib/delegation-origination.d.ts +26 -0
  32. package/dist/authorization-module/lib/delegation-origination.d.ts.map +1 -0
  33. package/dist/authorization-module/lib/delegation-origination.js +43 -0
  34. package/dist/authorization-module/lib/delegation-origination.js.map +1 -0
  35. package/dist/authorization-module/lib/delegation-wildcard-ceiling.d.ts +6 -0
  36. package/dist/authorization-module/lib/delegation-wildcard-ceiling.d.ts.map +1 -0
  37. package/dist/authorization-module/lib/delegation-wildcard-ceiling.js +17 -0
  38. package/dist/authorization-module/lib/delegation-wildcard-ceiling.js.map +1 -0
  39. package/dist/authorization-module/lib/platform-authorization-modules.d.ts.map +1 -1
  40. package/dist/authorization-module/lib/platform-authorization-modules.js +11 -11
  41. package/dist/authorization-module/lib/platform-authorization-modules.js.map +1 -1
  42. package/dist/authorization-module/platform/xema_core.fga +76 -45
  43. package/dist/authorization-module/platform/xema_core.fga.yaml +522 -97
  44. package/dist/authorization-module/platform/xema_sharing.fga +48 -33
  45. package/dist/authorization-module/platform/xema_sharing.fga.yaml +555 -2
  46. package/dist/authorization-module/server/authorization-interface-conformance.d.ts +1 -0
  47. package/dist/authorization-module/server/authorization-interface-conformance.d.ts.map +1 -1
  48. package/dist/authorization-module/server/authorization-interface-conformance.js +13 -1
  49. package/dist/authorization-module/server/authorization-interface-conformance.js.map +1 -1
  50. package/dist/authorization-module/server/compose-authorization-base.d.ts +2 -0
  51. package/dist/authorization-module/server/compose-authorization-base.d.ts.map +1 -1
  52. package/dist/authorization-module/server/compose-authorization-base.js +45 -2
  53. package/dist/authorization-module/server/compose-authorization-base.js.map +1 -1
  54. package/dist/authorization-module/server/delegation-origination-conformance.d.ts +15 -0
  55. package/dist/authorization-module/server/delegation-origination-conformance.d.ts.map +1 -0
  56. package/dist/authorization-module/server/delegation-origination-conformance.js +92 -0
  57. package/dist/authorization-module/server/delegation-origination-conformance.js.map +1 -0
  58. package/dist/authorization-module/server/userset-subject-types.d.ts +3 -0
  59. package/dist/authorization-module/server/userset-subject-types.d.ts.map +1 -0
  60. package/dist/authorization-module/server/userset-subject-types.js +65 -0
  61. package/dist/authorization-module/server/userset-subject-types.js.map +1 -0
  62. package/dist/authzen/index.d.ts +1 -0
  63. package/dist/authzen/index.d.ts.map +1 -1
  64. package/dist/authzen/index.js +1 -0
  65. package/dist/authzen/index.js.map +1 -1
  66. package/dist/authzen/lib/durable-delegation-model.d.ts +33 -11
  67. package/dist/authzen/lib/durable-delegation-model.d.ts.map +1 -1
  68. package/dist/authzen/lib/durable-delegation-model.js +54 -16
  69. package/dist/authzen/lib/durable-delegation-model.js.map +1 -1
  70. package/dist/authzen/lib/xema-membership.d.ts +6 -0
  71. package/dist/authzen/lib/xema-membership.d.ts.map +1 -0
  72. package/dist/authzen/lib/xema-membership.js +16 -0
  73. package/dist/authzen/lib/xema-membership.js.map +1 -0
  74. package/dist/biome/lib/biome-component.d.ts +14 -0
  75. package/dist/biome/lib/biome-component.d.ts.map +1 -1
  76. package/dist/biome/lib/biome-component.js +37 -5
  77. package/dist/biome/lib/biome-component.js.map +1 -1
  78. package/dist/biome/lib/biome-generated-index.d.ts +75 -1
  79. package/dist/biome/lib/biome-generated-index.d.ts.map +1 -1
  80. package/dist/biome/lib/biome-generated-index.js +14 -0
  81. package/dist/biome/lib/biome-generated-index.js.map +1 -1
  82. package/dist/biome/lib/biome-manifest.d.ts +24 -0
  83. package/dist/biome/lib/biome-manifest.d.ts.map +1 -1
  84. package/dist/biome/xema-biome.schema.json +48 -0
  85. package/dist/connector/index.d.ts +1 -0
  86. package/dist/connector/index.d.ts.map +1 -1
  87. package/dist/connector/index.js +1 -0
  88. package/dist/connector/index.js.map +1 -1
  89. package/dist/connector/lib/connector-adapter-contribution.d.ts +1 -0
  90. package/dist/connector/lib/connector-adapter-contribution.d.ts.map +1 -1
  91. package/dist/connector/lib/connector-descriptor.d.ts +4 -0
  92. package/dist/connector/lib/connector-descriptor.d.ts.map +1 -1
  93. package/dist/connector/lib/connector-descriptor.js +2 -0
  94. package/dist/connector/lib/connector-descriptor.js.map +1 -1
  95. package/dist/connector/lib/connector-operation-exposure.d.ts +8 -0
  96. package/dist/connector/lib/connector-operation-exposure.d.ts.map +1 -0
  97. package/dist/connector/lib/connector-operation-exposure.js +12 -0
  98. package/dist/connector/lib/connector-operation-exposure.js.map +1 -0
  99. package/dist/contribution/lib/contribution-kind.d.ts +1 -0
  100. package/dist/contribution/lib/contribution-kind.d.ts.map +1 -1
  101. package/dist/contribution/lib/contribution-kind.js +1 -0
  102. package/dist/contribution/lib/contribution-kind.js.map +1 -1
  103. package/dist/deployment/lib/resolved-deployment.d.ts +5 -2
  104. package/dist/deployment/lib/resolved-deployment.d.ts.map +1 -1
  105. package/dist/deployment/lib/resolved-deployment.js +6 -3
  106. package/dist/deployment/lib/resolved-deployment.js.map +1 -1
  107. package/dist/distribution/index.d.ts +2 -0
  108. package/dist/distribution/index.d.ts.map +1 -1
  109. package/dist/distribution/index.js +2 -0
  110. package/dist/distribution/index.js.map +1 -1
  111. package/dist/distribution/lib/authorization-lock.d.ts +16 -0
  112. package/dist/distribution/lib/authorization-lock.d.ts.map +1 -0
  113. package/dist/distribution/lib/authorization-lock.js +34 -0
  114. package/dist/distribution/lib/authorization-lock.js.map +1 -0
  115. package/dist/distribution/lib/customer-edition-definition.d.ts +10 -1
  116. package/dist/distribution/lib/customer-edition-definition.d.ts.map +1 -1
  117. package/dist/distribution/lib/customer-edition-definition.js +53 -2
  118. package/dist/distribution/lib/customer-edition-definition.js.map +1 -1
  119. package/dist/distribution/lib/distribution-lock.d.ts +2 -1
  120. package/dist/distribution/lib/distribution-lock.d.ts.map +1 -1
  121. package/dist/distribution/lib/distribution-lock.js +20 -0
  122. package/dist/distribution/lib/distribution-lock.js.map +1 -1
  123. package/dist/distribution/lib/image-producer-evidence.d.ts +86 -14
  124. package/dist/distribution/lib/image-producer-evidence.d.ts.map +1 -1
  125. package/dist/distribution/lib/image-producer-evidence.js +72 -12
  126. package/dist/distribution/lib/image-producer-evidence.js.map +1 -1
  127. package/dist/distribution/lib/kernel-contract-authority.d.ts +1 -0
  128. package/dist/distribution/lib/kernel-contract-authority.d.ts.map +1 -1
  129. package/dist/distribution/lib/kernel-contract-authority.js +6 -2
  130. package/dist/distribution/lib/kernel-contract-authority.js.map +1 -1
  131. package/dist/distribution/lib/kernel-contract-source-paths.d.ts +1 -1
  132. package/dist/distribution/lib/kernel-contract-source-paths.d.ts.map +1 -1
  133. package/dist/distribution/lib/kernel-contract-source-paths.js +9 -1
  134. package/dist/distribution/lib/kernel-contract-source-paths.js.map +1 -1
  135. package/dist/distribution/lib/resolve-unsplit-deployment.d.ts +2 -0
  136. package/dist/distribution/lib/resolve-unsplit-deployment.d.ts.map +1 -1
  137. package/dist/distribution/lib/resolve-unsplit-deployment.js +14 -0
  138. package/dist/distribution/lib/resolve-unsplit-deployment.js.map +1 -1
  139. package/dist/distribution/lib/runtime-image-source-index.d.ts +18 -1
  140. package/dist/distribution/lib/runtime-image-source-index.d.ts.map +1 -1
  141. package/dist/distribution/lib/runtime-image-source-index.js +38 -2
  142. package/dist/distribution/lib/runtime-image-source-index.js.map +1 -1
  143. package/dist/distribution/lib/verify-delivered-locks.d.ts +41 -0
  144. package/dist/distribution/lib/verify-delivered-locks.d.ts.map +1 -0
  145. package/dist/distribution/lib/verify-delivered-locks.js +76 -0
  146. package/dist/distribution/lib/verify-delivered-locks.js.map +1 -0
  147. package/dist/distribution/lib/verify-resolved-deployment.d.ts +1 -0
  148. package/dist/distribution/lib/verify-resolved-deployment.d.ts.map +1 -1
  149. package/dist/distribution/lib/verify-resolved-deployment.js +8 -0
  150. package/dist/distribution/lib/verify-resolved-deployment.js.map +1 -1
  151. package/dist/distribution/server/index.d.ts +8 -0
  152. package/dist/distribution/server/index.d.ts.map +1 -0
  153. package/dist/distribution/server/index.js +34 -0
  154. package/dist/distribution/server/index.js.map +1 -0
  155. package/dist/edition-protocol/edition-contract.schema.json +1 -1
  156. package/dist/edition-protocol/edition-protocol.json +1 -1
  157. package/dist/edition-protocol/lib/edition-protocol.d.ts +2 -1
  158. package/dist/edition-protocol/lib/edition-protocol.d.ts.map +1 -1
  159. package/dist/edition-protocol/lib/edition-protocol.js +4 -2
  160. package/dist/edition-protocol/lib/edition-protocol.js.map +1 -1
  161. package/dist/resolved-deployment-fixture/lib/resolved-deployment-fixture.d.ts +2 -0
  162. package/dist/resolved-deployment-fixture/lib/resolved-deployment-fixture.d.ts.map +1 -1
  163. package/dist/resolved-deployment-fixture/lib/resolved-deployment-fixture.js +66 -1
  164. package/dist/resolved-deployment-fixture/lib/resolved-deployment-fixture.js.map +1 -1
  165. package/dist/setting/index.d.ts +10 -0
  166. package/dist/setting/index.d.ts.map +1 -0
  167. package/dist/setting/index.js +26 -0
  168. package/dist/setting/index.js.map +1 -0
  169. package/dist/setting/lib/setting-constraints.d.ts +32 -0
  170. package/dist/setting/lib/setting-constraints.d.ts.map +1 -0
  171. package/dist/setting/lib/setting-constraints.js +27 -0
  172. package/dist/setting/lib/setting-constraints.js.map +1 -0
  173. package/dist/setting/lib/setting-definition.d.ts +70 -0
  174. package/dist/setting/lib/setting-definition.d.ts.map +1 -0
  175. package/dist/setting/lib/setting-definition.js +144 -0
  176. package/dist/setting/lib/setting-definition.js.map +1 -0
  177. package/dist/setting/lib/setting-duration.d.ts +3 -0
  178. package/dist/setting/lib/setting-duration.d.ts.map +1 -0
  179. package/dist/setting/lib/setting-duration.js +39 -0
  180. package/dist/setting/lib/setting-duration.js.map +1 -0
  181. package/dist/setting/lib/setting-enums.d.ts +27 -0
  182. package/dist/setting/lib/setting-enums.d.ts.map +1 -0
  183. package/dist/setting/lib/setting-enums.js +34 -0
  184. package/dist/setting/lib/setting-enums.js.map +1 -0
  185. package/dist/setting/lib/setting-key.d.ts +19 -0
  186. package/dist/setting/lib/setting-key.d.ts.map +1 -0
  187. package/dist/setting/lib/setting-key.js +70 -0
  188. package/dist/setting/lib/setting-key.js.map +1 -0
  189. package/dist/setting/lib/setting-merge.d.ts +7 -0
  190. package/dist/setting/lib/setting-merge.d.ts.map +1 -0
  191. package/dist/setting/lib/setting-merge.js +36 -0
  192. package/dist/setting/lib/setting-merge.js.map +1 -0
  193. package/dist/setting/lib/setting-resolve.d.ts +11 -0
  194. package/dist/setting/lib/setting-resolve.d.ts.map +1 -0
  195. package/dist/setting/lib/setting-resolve.js +39 -0
  196. package/dist/setting/lib/setting-resolve.js.map +1 -0
  197. package/dist/setting/lib/setting-revision.d.ts +5 -0
  198. package/dist/setting/lib/setting-revision.d.ts.map +1 -0
  199. package/dist/setting/lib/setting-revision.js +68 -0
  200. package/dist/setting/lib/setting-revision.js.map +1 -0
  201. package/dist/setting/lib/setting-value.d.ts +5 -0
  202. package/dist/setting/lib/setting-value.d.ts.map +1 -0
  203. package/dist/setting/lib/setting-value.js +57 -0
  204. package/dist/setting/lib/setting-value.js.map +1 -0
  205. package/dist/space/index.d.ts +0 -1
  206. package/dist/space/index.d.ts.map +1 -1
  207. package/dist/space/index.js +0 -1
  208. package/dist/space/index.js.map +1 -1
  209. package/package.json +5 -2
  210. package/dist/space/lib/scoped-setting.d.ts +0 -28
  211. package/dist/space/lib/scoped-setting.d.ts.map +0 -1
  212. package/dist/space/lib/scoped-setting.js +0 -60
  213. package/dist/space/lib/scoped-setting.js.map +0 -1
package/README.md CHANGED
@@ -64,7 +64,7 @@ endpoints, or Kubernetes topology. The generated JSON Schema is exported as
64
64
  inferred from the same Zod source.
65
65
 
66
66
  The `edition-protocol` entrypoint names the edition protocol an edition tool
67
- speaks: `EDITION_PROTOCOL` (`{ version, contentDigest }`) and the entry
67
+ speaks: `EDITION_PROTOCOL` (`{ version, provisional, contentDigest }`; a tool refuses to pin a `provisional` identity) and the entry
68
68
  subpaths the tool loads. `contentDigest` is the kernel contract authority
69
69
  digest over the exact bytes of every source file those entry subpaths load at
70
70
  runtime, derived from the import graph; that file list is
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "algorithm": "sha256/len-framed-v1",
3
- "hash": "4f1cce8802a153154715090e69998cbadaced83a9a8722ccf1ec9ee9dc3cc163",
4
- "fileCount": 613
3
+ "hash": "751467371f4ca72b2d0e636d4e5d3772efd6498eb4a4501a76651c61546e46b4",
4
+ "fileCount": 631
5
5
  }
@@ -235,6 +235,7 @@ export declare enum FactsApplyRefusal {
235
235
  TypeNotWritable = "type_not_writable",
236
236
  RelationNotWritable = "relation_not_writable",
237
237
  TenantMismatch = "tenant_mismatch",
238
+ SubjectUnresolvable = "subject_unresolvable",
238
239
  SplitWouldWiden = "split_would_widen",
239
240
  TupleNotAdmittedByModel = "tuple_not_admitted_by_model"
240
241
  }
@@ -1 +1 @@
1
- {"version":3,"file":"facts-apply.d.ts","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-apply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2DxB,eAAO,MAAM,kBAAkB,aAA8B,CAAC;AAe9D,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;CAC/B;AAED,eAAO,MAAM,oBAAoB,kCAA+B,CAAC;AAEjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAa9B,CAAC;AAEL,eAAO,MAAM,wBAAwB;;;;;;;;;;kBAK1B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;kBAQ9B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;kBAM9B,CAAC;AAEZ,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAM1D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkChC,CAAC;AACL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGxE,oBAAY,iBAAiB;IAE3B,OAAO,YAAY;IAEnB,UAAU,eAAe;IAEzB,UAAU,eAAe;CAC1B;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC;AAEvE,eAAO,MAAM,sBAAsB;;;;;;;kBAOxB,CAAC;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE,eAAO,MAAM,wBAAwB;;;;;;;;;;;kBAM1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAM1E,oBAAY,iBAAiB;IAE3B,cAAc,oBAAoB;IAElC,eAAe,sBAAsB;IAErC,mBAAmB,0BAA0B;IAE7C,cAAc,oBAAoB;IAOlC,eAAe,sBAAsB;IAErC,uBAAuB,gCAAgC;CACxD;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC"}
1
+ {"version":3,"file":"facts-apply.d.ts","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-apply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2DxB,eAAO,MAAM,kBAAkB,aAA8B,CAAC;AAe9D,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;CAC/B;AAED,eAAO,MAAM,oBAAoB,kCAA+B,CAAC;AAEjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAa9B,CAAC;AAEL,eAAO,MAAM,wBAAwB;;;;;;;;;;kBAK1B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;kBAQ9B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;kBAM9B,CAAC;AAEZ,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAM1D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkChC,CAAC;AACL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGxE,oBAAY,iBAAiB;IAE3B,OAAO,YAAY;IAEnB,UAAU,eAAe;IAEzB,UAAU,eAAe;CAC1B;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC;AAEvE,eAAO,MAAM,sBAAsB;;;;;;;kBAOxB,CAAC;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE,eAAO,MAAM,wBAAwB;;;;;;;;;;;kBAM1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAM1E,oBAAY,iBAAiB;IAE3B,cAAc,oBAAoB;IAElC,eAAe,sBAAsB;IAErC,mBAAmB,0BAA0B;IAE7C,cAAc,oBAAoB;IAMlC,mBAAmB,yBAAyB;IAO5C,eAAe,sBAAsB;IAErC,uBAAuB,gCAAgC;CACxD;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC"}
@@ -114,6 +114,7 @@ var FactsApplyRefusal;
114
114
  FactsApplyRefusal["TypeNotWritable"] = "type_not_writable";
115
115
  FactsApplyRefusal["RelationNotWritable"] = "relation_not_writable";
116
116
  FactsApplyRefusal["TenantMismatch"] = "tenant_mismatch";
117
+ FactsApplyRefusal["SubjectUnresolvable"] = "subject_unresolvable";
117
118
  FactsApplyRefusal["SplitWouldWiden"] = "split_would_widen";
118
119
  FactsApplyRefusal["TupleNotAdmittedByModel"] = "tuple_not_admitted_by_model";
119
120
  })(FactsApplyRefusal || (exports.FactsApplyRefusal = FactsApplyRefusal = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"facts-apply.js","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-apply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facts-apply.js","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-apply.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,6CAQsB;AAiDT,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAe9D,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,gDAA8B,CAAA;IAC9B,gDAA8B,CAAA;AAChC,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAEY,QAAA,oBAAoB,GAAG,OAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AAEpD,QAAA,qBAAqB,GAAG,OAAC;KACnC,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;IACrC,MAAM,EAAE,gCAAmB;IAC3B,OAAO,EAAE,0BAAkB;IAC3B,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAe,CAAC;IAChC,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAe,CAAC;IAEjC,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;IACrD,OAAO,EAAE,sDAAsD;CAChE,CAAC,CAAC;AAEQ,QAAA,wBAAwB,GAAG,OAAC;KACtC,MAAM,CAAC;IACN,OAAO,EAAE,iCAAoB;IAC7B,SAAS,EAAE,gCAAmB,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,MAAM,EAAE,CAAC;AAEC,QAAA,4BAA4B,GAAG,OAAC;KAC1C,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC;IAC5C,MAAM,EAAE,gCAAmB;IAC3B,OAAO,EAAE,0BAAkB;IAC3B,SAAS,EAAE,OAAC,CAAC,MAAM,CAAC,+BAAkB,EAAE,OAAC,CAAC,KAAK,CAAC,gCAAwB,CAAC,CAAC;IAC1E,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,MAAM,EAAE,CAAC;AAEC,QAAA,4BAA4B,GAAG,OAAC;KAC1C,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC;IAC5C,MAAM,EAAE,gCAAmB;IAC3B,OAAO,EAAE,0BAAkB;CAC5B,CAAC;KACD,MAAM,EAAE,CAAC;AAEC,QAAA,gBAAgB,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC3D,6BAAqB;IACrB,oCAA4B;IAC5B,oCAA4B;CAC7B,CAAC,CAAC;AAGH,SAAS,SAAS,CAAC,MAAqB;IACtC,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;AACvC,CAAC;AAEY,QAAA,uBAAuB,GAAG,OAAC;KACrC,MAAM,CAAC;IAEN,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAExB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,wBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1C,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC;gBAClC,OAAO,EAAE,UAAU,GAAG,qGAAqG;aAC5H,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAA,yBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;oBACnD,GAAG,CAAC,QAAQ,CAAC;wBACX,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;wBACxB,OAAO,EAAE,SAAS,IAAA,yBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,6CAA6C;qBAClG,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAIL,IAAY,iBAOX;AAPD,WAAY,iBAAiB;IAE3B,wCAAmB,CAAA;IAEnB,8CAAyB,CAAA;IAEzB,8CAAyB,CAAA;AAC3B,CAAC,EAPW,iBAAiB,iCAAjB,iBAAiB,QAO5B;AAEY,QAAA,uBAAuB,GAAG,OAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AAE1D,QAAA,sBAAsB,GAAG,OAAC;KACpC,MAAM,CAAC;IACN,MAAM,EAAE,gCAAmB;IAC3B,OAAO,EAAE,+BAAuB;IAEhC,eAAe,EAAE,0BAAkB;CACpC,CAAC;KACD,MAAM,EAAE,CAAC;AAOC,QAAA,wBAAwB,GAAG,OAAC;KACtC,MAAM,CAAC;IACN,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC;IACxC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACvC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACxC,CAAC;KACD,MAAM,EAAE,CAAC;AAOZ,IAAY,iBAwBX;AAxBD,WAAY,iBAAiB;IAE3B,uDAAkC,CAAA;IAElC,0DAAqC,CAAA;IAErC,kEAA6C,CAAA;IAE7C,uDAAkC,CAAA;IAMlC,iEAA4C,CAAA;IAO5C,0DAAqC,CAAA;IAErC,4EAAuD,CAAA;AACzD,CAAC,EAxBW,iBAAiB,iCAAjB,iBAAiB,QAwB5B;AAEY,QAAA,uBAAuB,GAAG,OAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC"}
@@ -2,6 +2,17 @@ import { z } from 'zod';
2
2
  import { FactsApplyRefusal, type FactsApplyRequest } from './facts-apply';
3
3
  export declare const WritableRelationsSchema: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
4
4
  export type WritableRelations = z.infer<typeof WritableRelationsSchema>;
5
+ export declare const ORG_QUALIFIED_SUBJECT_TYPES: readonly string[];
6
+ export declare const ORG_RESOLVED_SUBJECT_TYPES: readonly string[];
7
+ export type SubjectOrgResolution = {
8
+ readonly known: true;
9
+ readonly orgId: string | null;
10
+ } | {
11
+ readonly known: false;
12
+ };
13
+ export interface SubjectOrgResolver {
14
+ resolveSubjectOrg(type: string, id: string): Promise<SubjectOrgResolution>;
15
+ }
5
16
  export interface FactsWriterAuthority {
6
17
  readonly biomeId: string;
7
18
  readonly writableRelations: WritableRelations;
@@ -11,5 +22,5 @@ export interface FactsFenceViolation {
11
22
  readonly changeIndex: number | null;
12
23
  readonly message: string;
13
24
  }
14
- export declare function factsFenceViolations(request: FactsApplyRequest, authority: FactsWriterAuthority): FactsFenceViolation[];
25
+ export declare function factsFenceViolations(request: FactsApplyRequest, authority: FactsWriterAuthority, resolver?: SubjectOrgResolver): Promise<FactsFenceViolation[]>;
15
26
  //# sourceMappingURL=facts-writer-authority.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"facts-writer-authority.d.ts","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-writer-authority.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAEL,iBAAiB,EACjB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AAevB,eAAO,MAAM,uBAAuB,mDAGnC,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;CAC/C;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAWD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,oBAAoB,GAC9B,mBAAmB,EAAE,CA6CvB"}
1
+ {"version":3,"file":"facts-writer-authority.d.ts","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-writer-authority.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAEL,iBAAiB,EACjB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AAiBvB,eAAO,MAAM,uBAAuB,mDAGnC,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AASxE,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAGvD,CAAC;AASH,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAGtD,CAAC;AAGH,MAAM,MAAM,oBAAoB,GAE5B;IAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAEvD;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAQ9B,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;CAC/C;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAgBD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,oBAAoB,EAC/B,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAkFhC"}
@@ -1,13 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WritableRelationsSchema = void 0;
3
+ exports.ORG_RESOLVED_SUBJECT_TYPES = exports.ORG_QUALIFIED_SUBJECT_TYPES = exports.WritableRelationsSchema = void 0;
4
4
  exports.factsFenceViolations = factsFenceViolations;
5
5
  const zod_1 = require("zod");
6
6
  const authzen_1 = require("../../authzen");
7
7
  const fact_tuple_1 = require("./fact-tuple");
8
8
  const facts_apply_1 = require("./facts-apply");
9
9
  exports.WritableRelationsSchema = zod_1.z.record(fact_tuple_1.FactTypeSchema, zod_1.z.array(fact_tuple_1.FactRelationSchema).min(1));
10
- function factsFenceViolations(request, authority) {
10
+ exports.ORG_QUALIFIED_SUBJECT_TYPES = Object.freeze([
11
+ 'project',
12
+ 'membership',
13
+ ]);
14
+ exports.ORG_RESOLVED_SUBJECT_TYPES = Object.freeze([
15
+ 'team',
16
+ 'role',
17
+ ]);
18
+ async function factsFenceViolations(request, authority, resolver) {
11
19
  const violations = [];
12
20
  if (request.biomeId !== authority.biomeId) {
13
21
  violations.push({
@@ -17,7 +25,20 @@ function factsFenceViolations(request, authority) {
17
25
  });
18
26
  return violations;
19
27
  }
20
- request.changes.forEach((change, index) => {
28
+ const resolved = new Map();
29
+ const resolve = (subject) => {
30
+ if (resolver === undefined) {
31
+ return null;
32
+ }
33
+ const key = `${subject.type}:${subject.id}`;
34
+ let resolution = resolved.get(key);
35
+ if (resolution === undefined) {
36
+ resolution = resolver.resolveSubjectOrg(subject.type, subject.id);
37
+ resolved.set(key, resolution);
38
+ }
39
+ return resolution;
40
+ };
41
+ for (const [index, change] of request.changes.entries()) {
21
42
  const { object } = change;
22
43
  const writable = authority.writableRelations[object.type];
23
44
  if (writable === undefined) {
@@ -26,7 +47,7 @@ function factsFenceViolations(request, authority) {
26
47
  changeIndex: index,
27
48
  message: `biome "${authority.biomeId}" may not write facts on type "${object.type}".`,
28
49
  });
29
- return;
50
+ continue;
30
51
  }
31
52
  if (!(0, authzen_1.resourceBelongsToOrg)(object, request.orgId)) {
32
53
  violations.push({
@@ -35,6 +56,27 @@ function factsFenceViolations(request, authority) {
35
56
  message: `object ${object.type}:${object.id} is not in org "${request.orgId}".`,
36
57
  });
37
58
  }
59
+ const writtenSubjects = change.kind === facts_apply_1.FactChangeKind.Delta
60
+ ? change.writes.map((t) => t.subject)
61
+ : change.kind === facts_apply_1.FactChangeKind.DesiredState
62
+ ? Object.values(change.relations).flatMap((subjects) => subjects.map((s) => s.subject))
63
+ : [];
64
+ for (const subject of writtenSubjects) {
65
+ if (exports.ORG_QUALIFIED_SUBJECT_TYPES.includes(subject.type) &&
66
+ !(0, authzen_1.resourceBelongsToOrg)(subject, request.orgId)) {
67
+ violations.push({
68
+ refusal: facts_apply_1.FactsApplyRefusal.TenantMismatch,
69
+ changeIndex: index,
70
+ message: `subject ${subject.type}:${subject.id} is not in org "${request.orgId}".`,
71
+ });
72
+ }
73
+ if (exports.ORG_RESOLVED_SUBJECT_TYPES.includes(subject.type)) {
74
+ const violation = subjectOrgViolation(subject, request.orgId, await resolve(subject));
75
+ if (violation !== null) {
76
+ violations.push({ ...violation, changeIndex: index });
77
+ }
78
+ }
79
+ }
38
80
  const relations = change.kind === facts_apply_1.FactChangeKind.Delta
39
81
  ? [...change.writes, ...change.deletes].map((t) => t.relation)
40
82
  : change.kind === facts_apply_1.FactChangeKind.DesiredState
@@ -49,7 +91,29 @@ function factsFenceViolations(request, authority) {
49
91
  });
50
92
  }
51
93
  }
52
- });
94
+ }
53
95
  return violations;
54
96
  }
97
+ function subjectOrgViolation(subject, orgId, resolution) {
98
+ const ref = `${subject.type}:${subject.id}`;
99
+ if (resolution === null) {
100
+ return {
101
+ refusal: facts_apply_1.FactsApplyRefusal.SubjectUnresolvable,
102
+ message: `subject ${ref} is unresolvable: the fence has no subject-org resolver, so its org is unknown.`,
103
+ };
104
+ }
105
+ if (!resolution.known) {
106
+ return {
107
+ refusal: facts_apply_1.FactsApplyRefusal.SubjectUnresolvable,
108
+ message: `subject ${ref} is unresolvable: its owning store knows no such ${subject.type}.`,
109
+ };
110
+ }
111
+ if (resolution.orgId !== orgId) {
112
+ return {
113
+ refusal: facts_apply_1.FactsApplyRefusal.TenantMismatch,
114
+ message: `subject ${ref} is not in org "${orgId}".`,
115
+ };
116
+ }
117
+ return null;
118
+ }
55
119
  //# sourceMappingURL=facts-writer-authority.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"facts-writer-authority.js","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-writer-authority.ts"],"names":[],"mappings":";;;AAmDA,oDAgDC;AAnGD,6BAAwB;AAExB,2CAAqD;AAErD,6CAAkE;AAClE,+CAIuB;AAeV,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAC7C,2BAAc,EACd,OAAC,CAAC,KAAK,CAAC,+BAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CACnC,CAAC;AAwBF,SAAgB,oBAAoB,CAClC,OAA0B,EAC1B,SAA+B;IAE/B,MAAM,UAAU,GAA0B,EAAE,CAAC;IAC7C,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QAC1C,UAAU,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,+BAAiB,CAAC,cAAc;YACzC,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,gCAAgC,OAAO,CAAC,OAAO,8BAA8B,SAAS,CAAC,OAAO,IAAI;SAC5G,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACxC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC1B,MAAM,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,+BAAiB,CAAC,eAAe;gBAC1C,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,UAAU,SAAS,CAAC,OAAO,kCAAkC,MAAM,CAAC,IAAI,IAAI;aACtF,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAA,8BAAoB,EAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,+BAAiB,CAAC,cAAc;gBACzC,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,UAAU,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,mBAAmB,OAAO,CAAC,KAAK,IAAI;aAChF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,SAAS,GACb,MAAM,CAAC,IAAI,KAAK,4BAAc,CAAC,KAAK;YAClC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC9D,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,4BAAc,CAAC,YAAY;gBAC3C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC/B,CAAC,CAAC,EAAE,CAAC;QACX,KAAK,MAAM,QAAQ,IAAI,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,UAAU,CAAC,IAAI,CAAC;oBACd,OAAO,EAAE,+BAAiB,CAAC,mBAAmB;oBAC9C,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,aAAa,MAAM,CAAC,IAAI,IAAI,QAAQ,+BAA+B,SAAS,CAAC,OAAO,IAAI;iBAClG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"facts-writer-authority.js","sourceRoot":"","sources":["../../../src/authorization-facts/lib/facts-writer-authority.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ export * from './lib/authorization-namespace';
2
2
  export * from './lib/platform-authorization-modules';
3
3
  export * from './lib/authorization-interface-requirements';
4
4
  export * from './lib/authorization-module-envelope';
5
+ export * from './lib/delegation-wildcard-ceiling';
6
+ export * from './lib/delegation-origination';
5
7
  export * from './lib/authorization-module-contribution';
6
8
  export * from './lib/authorization-composition-error';
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/authorization-module/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,uCAAuC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/authorization-module/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AACxD,cAAc,uCAAuC,CAAC"}
@@ -18,6 +18,8 @@ __exportStar(require("./lib/authorization-namespace"), exports);
18
18
  __exportStar(require("./lib/platform-authorization-modules"), exports);
19
19
  __exportStar(require("./lib/authorization-interface-requirements"), exports);
20
20
  __exportStar(require("./lib/authorization-module-envelope"), exports);
21
+ __exportStar(require("./lib/delegation-wildcard-ceiling"), exports);
22
+ __exportStar(require("./lib/delegation-origination"), exports);
21
23
  __exportStar(require("./lib/authorization-module-contribution"), exports);
22
24
  __exportStar(require("./lib/authorization-composition-error"), exports);
23
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/authorization-module/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,uEAAqD;AACrD,6EAA2D;AAC3D,sEAAoD;AACpD,0EAAwD;AACxD,wEAAsD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/authorization-module/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,uEAAqD;AACrD,6EAA2D;AAC3D,sEAAoD;AACpD,oEAAkD;AAClD,+DAA6C;AAC7C,0EAAwD;AACxD,wEAAsD"}
@@ -24,6 +24,15 @@ export declare enum AuthorizationCompositionViolationCode {
24
24
  InterfaceRelationMistyped = "interface_relation_mistyped",
25
25
  InterfaceRelationNotWritable = "interface_relation_not_writable",
26
26
  ImplementsForeignType = "implements_foreign_type",
27
+ ParentInheritanceCycle = "parent_inheritance_cycle",
28
+ DelegationOriginationNotAnchor = "delegation_origination_not_anchor",
29
+ DelegationOriginationRedelegableNotSubset = "delegation_origination_redelegable_not_subset",
30
+ DelegationOriginationCapabilityUndeclared = "delegation_origination_capability_undeclared",
31
+ DelegationOriginationMissing = "delegation_origination_missing",
32
+ DelegationOriginationHolderNotService = "delegation_origination_holder_not_service",
33
+ DelegationOriginationStatedRedelegableFixed = "delegation_origination_stated_redelegable_fixed",
34
+ DelegationOriginationWildcardNotPermitted = "delegation_origination_wildcard_not_permitted",
35
+ DelegationOriginationWildcardNotFirstParty = "delegation_origination_wildcard_not_first_party",
27
36
  WritableRelationInvalid = "writable_relation_invalid",
28
37
  SearchableInvalid = "searchable_invalid",
29
38
  PlatformTemplateInvalid = "platform_template_invalid",
@@ -45,4 +54,7 @@ export declare class AuthorizationCompositionError extends Error {
45
54
  readonly violations: readonly AuthorizationCompositionViolation[];
46
55
  constructor(violations: readonly AuthorizationCompositionViolation[]);
47
56
  }
57
+ export declare class AuthorizationCompositionInputError extends Error {
58
+ constructor(message: string);
59
+ }
48
60
  //# sourceMappingURL=authorization-composition-error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-composition-error.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-composition-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,oBAAY,qCAAqC;IAE/C,cAAc,qBAAqB;IACnC,iBAAiB,uBAAuB;IACxC,kBAAkB,wBAAwB;IAC1C,yBAAyB,gCAAgC;IACzD,kBAAkB,yBAAyB;IAC3C,kBAAkB,yBAAyB;IAE3C,oBAAoB,2BAA2B;IAC/C,yBAAyB,gCAAgC;IACzD,kBAAkB,yBAAyB;IAC3C,oBAAoB,2BAA2B;IAC/C,oBAAoB,2BAA2B;IAC/C,sBAAsB,8BAA8B;IACpD,qBAAqB,4BAA4B;IACjD,kBAAkB,wBAAwB;IAC1C,+BAA+B,uCAAuC;IAEtE,4BAA4B,qCAAqC;IACjE,iBAAiB,uBAAuB;IACxC,uBAAuB,+BAA+B;IACtD,uBAAuB,8BAA8B;IACrD,eAAe,qBAAqB;IAEpC,uBAAuB,8BAA8B;IAErD,yBAAyB,gCAAgC;IAEzD,4BAA4B,oCAAoC;IAChE,qBAAqB,4BAA4B;IACjD,uBAAuB,8BAA8B;IACrD,iBAAiB,uBAAuB;IAExC,uBAAuB,8BAA8B;IAErD,uBAAuB,+BAA+B;IAEtD,kBAAkB,wBAAwB;IAE1C,cAAc,oBAAoB;IAElC,sBAAsB,6BAA6B;IACnD,mBAAmB,0BAA0B;IAC7C,4BAA4B,mCAAmC;IAC/D,yBAAyB,iCAAiC;CAC3D;AAED,eAAO,MAAM,2CAA2C,yDAEvD,CAAC;AAEF,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,IAAI,EAAE,qCAAqC,CAAC;IAErD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAGD,qBAAa,6BAA8B,SAAQ,KAAK;IACtD,QAAQ,CAAC,UAAU,EAAE,SAAS,iCAAiC,EAAE,CAAC;gBAEtD,UAAU,EAAE,SAAS,iCAAiC,EAAE;CAUrE"}
1
+ {"version":3,"file":"authorization-composition-error.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-composition-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,oBAAY,qCAAqC;IAE/C,cAAc,qBAAqB;IACnC,iBAAiB,uBAAuB;IACxC,kBAAkB,wBAAwB;IAC1C,yBAAyB,gCAAgC;IACzD,kBAAkB,yBAAyB;IAC3C,kBAAkB,yBAAyB;IAE3C,oBAAoB,2BAA2B;IAC/C,yBAAyB,gCAAgC;IACzD,kBAAkB,yBAAyB;IAC3C,oBAAoB,2BAA2B;IAC/C,oBAAoB,2BAA2B;IAC/C,sBAAsB,8BAA8B;IACpD,qBAAqB,4BAA4B;IACjD,kBAAkB,wBAAwB;IAC1C,+BAA+B,uCAAuC;IAEtE,4BAA4B,qCAAqC;IACjE,iBAAiB,uBAAuB;IACxC,uBAAuB,+BAA+B;IACtD,uBAAuB,8BAA8B;IACrD,eAAe,qBAAqB;IAEpC,uBAAuB,8BAA8B;IAErD,yBAAyB,gCAAgC;IAEzD,4BAA4B,oCAAoC;IAChE,qBAAqB,4BAA4B;IAMjD,sBAAsB,6BAA6B;IAGnD,8BAA8B,sCAAsC;IAEpE,yCAAyC,kDAAkD;IAE3F,yCAAyC,iDAAiD;IAE1F,4BAA4B,mCAAmC;IAE/D,qCAAqC,8CAA8C;IAEnF,2CAA2C,oDAAoD;IAE/F,yCAAyC,kDAAkD;IAE3F,0CAA0C,oDAAoD;IAC9F,uBAAuB,8BAA8B;IACrD,iBAAiB,uBAAuB;IAExC,uBAAuB,8BAA8B;IAErD,uBAAuB,+BAA+B;IAEtD,kBAAkB,wBAAwB;IAE1C,cAAc,oBAAoB;IAElC,sBAAsB,6BAA6B;IACnD,mBAAmB,0BAA0B;IAC7C,4BAA4B,mCAAmC;IAC/D,yBAAyB,iCAAiC;CAC3D;AAED,eAAO,MAAM,2CAA2C,yDAEvD,CAAC;AAEF,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,IAAI,EAAE,qCAAqC,CAAC;IAErD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAGD,qBAAa,6BAA8B,SAAQ,KAAK;IACtD,QAAQ,CAAC,UAAU,EAAE,SAAS,iCAAiC,EAAE,CAAC;gBAEtD,UAAU,EAAE,SAAS,iCAAiC,EAAE;CAUrE;AAOD,qBAAa,kCAAmC,SAAQ,KAAK;gBAC/C,OAAO,EAAE,MAAM;CAI5B"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AuthorizationCompositionError = exports.AuthorizationCompositionViolationCodeSchema = exports.AuthorizationCompositionViolationCode = void 0;
3
+ exports.AuthorizationCompositionInputError = exports.AuthorizationCompositionError = exports.AuthorizationCompositionViolationCodeSchema = exports.AuthorizationCompositionViolationCode = void 0;
4
4
  const zod_1 = require("zod");
5
5
  var AuthorizationCompositionViolationCode;
6
6
  (function (AuthorizationCompositionViolationCode) {
@@ -28,6 +28,15 @@ var AuthorizationCompositionViolationCode;
28
28
  AuthorizationCompositionViolationCode["InterfaceRelationMistyped"] = "interface_relation_mistyped";
29
29
  AuthorizationCompositionViolationCode["InterfaceRelationNotWritable"] = "interface_relation_not_writable";
30
30
  AuthorizationCompositionViolationCode["ImplementsForeignType"] = "implements_foreign_type";
31
+ AuthorizationCompositionViolationCode["ParentInheritanceCycle"] = "parent_inheritance_cycle";
32
+ AuthorizationCompositionViolationCode["DelegationOriginationNotAnchor"] = "delegation_origination_not_anchor";
33
+ AuthorizationCompositionViolationCode["DelegationOriginationRedelegableNotSubset"] = "delegation_origination_redelegable_not_subset";
34
+ AuthorizationCompositionViolationCode["DelegationOriginationCapabilityUndeclared"] = "delegation_origination_capability_undeclared";
35
+ AuthorizationCompositionViolationCode["DelegationOriginationMissing"] = "delegation_origination_missing";
36
+ AuthorizationCompositionViolationCode["DelegationOriginationHolderNotService"] = "delegation_origination_holder_not_service";
37
+ AuthorizationCompositionViolationCode["DelegationOriginationStatedRedelegableFixed"] = "delegation_origination_stated_redelegable_fixed";
38
+ AuthorizationCompositionViolationCode["DelegationOriginationWildcardNotPermitted"] = "delegation_origination_wildcard_not_permitted";
39
+ AuthorizationCompositionViolationCode["DelegationOriginationWildcardNotFirstParty"] = "delegation_origination_wildcard_not_first_party";
31
40
  AuthorizationCompositionViolationCode["WritableRelationInvalid"] = "writable_relation_invalid";
32
41
  AuthorizationCompositionViolationCode["SearchableInvalid"] = "searchable_invalid";
33
42
  AuthorizationCompositionViolationCode["PlatformTemplateInvalid"] = "platform_template_invalid";
@@ -52,4 +61,11 @@ class AuthorizationCompositionError extends Error {
52
61
  }
53
62
  }
54
63
  exports.AuthorizationCompositionError = AuthorizationCompositionError;
64
+ class AuthorizationCompositionInputError extends Error {
65
+ constructor(message) {
66
+ super(message);
67
+ this.name = 'AuthorizationCompositionInputError';
68
+ }
69
+ }
70
+ exports.AuthorizationCompositionInputError = AuthorizationCompositionInputError;
55
71
  //# sourceMappingURL=authorization-composition-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-composition-error.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-composition-error.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAOxB,IAAY,qCA8CX;AA9CD,WAAY,qCAAqC;IAE/C,4EAAmC,CAAA;IACnC,iFAAwC,CAAA;IACxC,mFAA0C,CAAA;IAC1C,kGAAyD,CAAA;IACzD,oFAA2C,CAAA;IAC3C,oFAA2C,CAAA;IAE3C,wFAA+C,CAAA;IAC/C,kGAAyD,CAAA;IACzD,oFAA2C,CAAA;IAC3C,wFAA+C,CAAA;IAC/C,wFAA+C,CAAA;IAC/C,6FAAoD,CAAA;IACpD,0FAAiD,CAAA;IACjD,mFAA0C,CAAA;IAC1C,+GAAsE,CAAA;IAEtE,0GAAiE,CAAA;IACjE,iFAAwC,CAAA;IACxC,+FAAsD,CAAA;IACtD,8FAAqD,CAAA;IACrD,6EAAoC,CAAA;IAEpC,8FAAqD,CAAA;IAErD,kGAAyD,CAAA;IAEzD,yGAAgE,CAAA;IAChE,0FAAiD,CAAA;IACjD,8FAAqD,CAAA;IACrD,iFAAwC,CAAA;IAExC,8FAAqD,CAAA;IAErD,+FAAsD,CAAA;IAEtD,mFAA0C,CAAA;IAE1C,2EAAkC,CAAA;IAElC,4FAAmD,CAAA;IACnD,sFAA6C,CAAA;IAC7C,wGAA+D,CAAA;IAC/D,mGAA0D,CAAA;AAC5D,CAAC,EA9CW,qCAAqC,qDAArC,qCAAqC,QA8ChD;AAEY,QAAA,2CAA2C,GAAG,OAAC,CAAC,UAAU,CACrE,qCAAqC,CACtC,CAAC;AAUF,MAAa,6BAA8B,SAAQ,KAAK;IAC7C,UAAU,CAA+C;IAElE,YAAY,UAAwD;QAClE,KAAK,CACH,gDAAgD,UAAU,CAAC,MAAM,kBAAkB;YACjF,UAAU;iBACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;iBACtD,IAAI,CAAC,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAbD,sEAaC"}
1
+ {"version":3,"file":"authorization-composition-error.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-composition-error.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAOxB,IAAY,qCAqEX;AArED,WAAY,qCAAqC;IAE/C,4EAAmC,CAAA;IACnC,iFAAwC,CAAA;IACxC,mFAA0C,CAAA;IAC1C,kGAAyD,CAAA;IACzD,oFAA2C,CAAA;IAC3C,oFAA2C,CAAA;IAE3C,wFAA+C,CAAA;IAC/C,kGAAyD,CAAA;IACzD,oFAA2C,CAAA;IAC3C,wFAA+C,CAAA;IAC/C,wFAA+C,CAAA;IAC/C,6FAAoD,CAAA;IACpD,0FAAiD,CAAA;IACjD,mFAA0C,CAAA;IAC1C,+GAAsE,CAAA;IAEtE,0GAAiE,CAAA;IACjE,iFAAwC,CAAA;IACxC,+FAAsD,CAAA;IACtD,8FAAqD,CAAA;IACrD,6EAAoC,CAAA;IAEpC,8FAAqD,CAAA;IAErD,kGAAyD,CAAA;IAEzD,yGAAgE,CAAA;IAChE,0FAAiD,CAAA;IAMjD,4FAAmD,CAAA;IAGnD,6GAAoE,CAAA;IAEpE,oIAA2F,CAAA;IAE3F,mIAA0F,CAAA;IAE1F,wGAA+D,CAAA;IAE/D,4HAAmF,CAAA;IAEnF,wIAA+F,CAAA;IAE/F,oIAA2F,CAAA;IAE3F,uIAA8F,CAAA;IAC9F,8FAAqD,CAAA;IACrD,iFAAwC,CAAA;IAExC,8FAAqD,CAAA;IAErD,+FAAsD,CAAA;IAEtD,mFAA0C,CAAA;IAE1C,2EAAkC,CAAA;IAElC,4FAAmD,CAAA;IACnD,sFAA6C,CAAA;IAC7C,wGAA+D,CAAA;IAC/D,mGAA0D,CAAA;AAC5D,CAAC,EArEW,qCAAqC,qDAArC,qCAAqC,QAqEhD;AAEY,QAAA,2CAA2C,GAAG,OAAC,CAAC,UAAU,CACrE,qCAAqC,CACtC,CAAC;AAUF,MAAa,6BAA8B,SAAQ,KAAK;IAC7C,UAAU,CAA+C;IAElE,YAAY,UAAwD;QAClE,KAAK,CACH,gDAAgD,UAAU,CAAC,MAAM,kBAAkB;YACjF,UAAU;iBACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;iBACtD,IAAI,CAAC,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAbD,sEAaC;AAOD,MAAa,kCAAmC,SAAQ,KAAK;IAC3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,oCAAoC,CAAC;IACnD,CAAC;CACF;AALD,gFAKC"}
@@ -1,7 +1,8 @@
1
1
  export declare enum XemaInterfaceRelationKind {
2
2
  Defined = "defined",
3
3
  Assignable = "assignable",
4
- Computed = "computed"
4
+ Computed = "computed",
5
+ Checkable = "checkable"
5
6
  }
6
7
  export interface XemaInterfaceUsersetTerm {
7
8
  readonly relation: string;
@@ -15,6 +16,9 @@ export type XemaInterfaceRelationRequirement = {
15
16
  } | {
16
17
  readonly kind: XemaInterfaceRelationKind.Computed;
17
18
  readonly anyOf: readonly XemaInterfaceUsersetTerm[];
19
+ } | {
20
+ readonly kind: XemaInterfaceRelationKind.Checkable;
21
+ readonly subjects: readonly string[];
18
22
  };
19
23
  export type XemaInterfaceRequirements = Readonly<Record<string, XemaInterfaceRelationRequirement>>;
20
24
  export declare function formatXemaInterfaceUsersetTerm(term: XemaInterfaceUsersetTerm): string;
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-interface-requirements.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-interface-requirements.ts"],"names":[],"mappings":"AAeA,oBAAY,yBAAyB;IACnC,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAGD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,gCAAgC,GACxC;IAAE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAA;CAAE,GACpD;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,UAAU,CAAC;IAEpD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,QAAQ,CAAC;IAElD,QAAQ,CAAC,KAAK,EAAE,SAAS,wBAAwB,EAAE,CAAC;CACrD,CAAC;AAGN,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAC9C,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CACjD,CAAC;AAGF,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAErF"}
1
+ {"version":3,"file":"authorization-interface-requirements.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-interface-requirements.ts"],"names":[],"mappings":"AAkBA,oBAAY,yBAAyB;IACnC,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAGD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,gCAAgC,GACxC;IAAE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAA;CAAE,GACpD;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,UAAU,CAAC;IAEpD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,QAAQ,CAAC;IAElD,QAAQ,CAAC,KAAK,EAAE,SAAS,wBAAwB,EAAE,CAAC;CACrD,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,SAAS,CAAC;IAEnD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC,CAAC;AAGN,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAC9C,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CACjD,CAAC;AAGF,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAErF"}
@@ -7,6 +7,7 @@ var XemaInterfaceRelationKind;
7
7
  XemaInterfaceRelationKind["Defined"] = "defined";
8
8
  XemaInterfaceRelationKind["Assignable"] = "assignable";
9
9
  XemaInterfaceRelationKind["Computed"] = "computed";
10
+ XemaInterfaceRelationKind["Checkable"] = "checkable";
10
11
  })(XemaInterfaceRelationKind || (exports.XemaInterfaceRelationKind = XemaInterfaceRelationKind = {}));
11
12
  function formatXemaInterfaceUsersetTerm(term) {
12
13
  return term.from === undefined ? term.relation : `${term.relation} from ${term.from}`;
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-interface-requirements.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-interface-requirements.ts"],"names":[],"mappings":";;;AA8CA,wEAEC;AAjCD,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACnC,gDAAmB,CAAA;IACnB,sDAAyB,CAAA;IACzB,kDAAqB,CAAA;AACvB,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AA2BD,SAAgB,8BAA8B,CAAC,IAA8B;IAC3E,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"authorization-interface-requirements.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-interface-requirements.ts"],"names":[],"mappings":";;;AAuDA,wEAEC;AAvCD,IAAY,yBAKX;AALD,WAAY,yBAAyB;IACnC,gDAAmB,CAAA;IACnB,sDAAyB,CAAA;IACzB,kDAAqB,CAAA;IACrB,oDAAuB,CAAA;AACzB,CAAC,EALW,yBAAyB,yCAAzB,yBAAyB,QAKpC;AAgCD,SAAgB,8BAA8B,CAAC,IAA8B;IAC3E,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;AACxF,CAAC"}
@@ -22,6 +22,17 @@ export declare const AuthorizationModuleSourceManifestSchema: z.ZodObject<{
22
22
  minModuleVersion: z.ZodNumber;
23
23
  }, z.core.$strict>>;
24
24
  implements: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodEnum<typeof import("./platform-authorization-modules").XemaAuthorizationInterface>>>;
25
+ delegationOrigination: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
26
+ holderWorkload: z.ZodString;
27
+ capabilities: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
28
+ stated: z.ZodLiteral<true>;
29
+ ceiling: z.ZodOptional<z.ZodEnum<typeof import("./delegation-wildcard-ceiling").DelegationCeiling>>;
30
+ }, z.core.$strict>]>;
31
+ redelegable: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
32
+ stated: z.ZodLiteral<true>;
33
+ }, z.core.$strict>]>;
34
+ expiresAfter: z.ZodOptional<z.ZodString>;
35
+ }, z.core.$strict>>>;
25
36
  resourceTypes: z.ZodArray<z.ZodString>;
26
37
  writableRelations: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
27
38
  searchable: z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -69,6 +80,7 @@ export declare const SignedBiomeAuthorizationFactsSchema: z.ZodObject<{
69
80
  tier: z.ZodEnum<typeof import("../../biome").BiomeTier>;
70
81
  declaredBiomeDependencies: z.ZodArray<z.ZodString>;
71
82
  serviceNames: z.ZodArray<z.ZodString>;
83
+ declaredCapabilities: z.ZodArray<z.ZodString>;
72
84
  }, z.core.$strict>;
73
85
  export type SignedBiomeAuthorizationFacts = z.infer<typeof SignedBiomeAuthorizationFactsSchema>;
74
86
  export declare const AuthorizationModuleContributionManifestSchema: z.ZodObject<{
@@ -84,6 +96,17 @@ export declare const AuthorizationModuleContributionManifestSchema: z.ZodObject<
84
96
  minModuleVersion: z.ZodNumber;
85
97
  }, z.core.$strict>>;
86
98
  implements: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodEnum<typeof import("./platform-authorization-modules").XemaAuthorizationInterface>>>;
99
+ delegationOrigination: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
100
+ holderWorkload: z.ZodString;
101
+ capabilities: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
102
+ stated: z.ZodLiteral<true>;
103
+ ceiling: z.ZodOptional<z.ZodEnum<typeof import("./delegation-wildcard-ceiling").DelegationCeiling>>;
104
+ }, z.core.$strict>]>;
105
+ redelegable: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
106
+ stated: z.ZodLiteral<true>;
107
+ }, z.core.$strict>]>;
108
+ expiresAfter: z.ZodOptional<z.ZodString>;
109
+ }, z.core.$strict>>>;
87
110
  resourceTypes: z.ZodArray<z.ZodString>;
88
111
  writableRelations: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
89
112
  searchable: z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -129,6 +152,7 @@ export declare const AuthorizationModuleContributionManifestSchema: z.ZodObject<
129
152
  tier: z.ZodEnum<typeof import("../../biome").BiomeTier>;
130
153
  declaredBiomeDependencies: z.ZodArray<z.ZodString>;
131
154
  serviceNames: z.ZodArray<z.ZodString>;
155
+ declaredCapabilities: z.ZodArray<z.ZodString>;
132
156
  }, z.core.$strict>;
133
157
  }, z.core.$strict>;
134
158
  export type AuthorizationModuleContributionManifest = z.infer<typeof AuthorizationModuleContributionManifestSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-module-contribution.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-contribution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2BxB,eAAO,MAAM,6BAA6B;;;kBAK/B,CAAC;AACZ,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;kBAKnC,CAAC;AACZ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC;AAGF,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA2BhD,CAAC;AACL,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAC;AAsBF,eAAO,MAAM,mCAAmC;;;;kBAQrC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAGF,eAAO,MAAM,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgBtD,CAAC;AACL,MAAM,MAAM,uCAAuC,GAAG,CAAC,CAAC,KAAK,CAC3D,OAAO,6CAA6C,CACrD,CAAC;AAGF,qBAAa,oCAAqC,SAAQ,KAAK;gBACjD,OAAO,EAAE,MAAM;CAI5B;AAOD,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,6BAA6B,GACzC,uCAAuC,CAsBzC;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAYD,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACtC,MAAM,GAAG,IAAI,CAcf;AAGD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,uCAAuC,CAAC;CAC5D,CAAC,GACD,gBAAgB,EAAE,CAKpB;AAQD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,uCAAuC,GAAG,SAAS,GAC5D,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAOpD"}
1
+ {"version":3,"file":"authorization-module-contribution.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-contribution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2BxB,eAAO,MAAM,6BAA6B;;;kBAK/B,CAAC;AACZ,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;kBAKnC,CAAC;AACZ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC;AAGF,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA2BhD,CAAC;AACL,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAC;AAsBF,eAAO,MAAM,mCAAmC;;;;;kBAarC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAGF,eAAO,MAAM,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgBtD,CAAC;AACL,MAAM,MAAM,uCAAuC,GAAG,CAAC,CAAC,KAAK,CAC3D,OAAO,6CAA6C,CACrD,CAAC;AAGF,qBAAa,oCAAqC,SAAQ,KAAK;gBACjD,OAAO,EAAE,MAAM;CAI5B;AAOD,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,6BAA6B,GACzC,uCAAuC,CAsBzC;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAYD,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACtC,MAAM,GAAG,IAAI,CAcf;AAGD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,uCAAuC,CAAC;CAC5D,CAAC,GACD,gBAAgB,EAAE,CAKpB;AAQD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,uCAAuC,GAAG,SAAS,GAC5D,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAOpD"}
@@ -59,6 +59,7 @@ exports.SignedBiomeAuthorizationFactsSchema = zod_1.z
59
59
  tier: biome_1.BiomeTierSchema,
60
60
  declaredBiomeDependencies: uniqueNonEmptyStrings('declaredBiomeDependencies'),
61
61
  serviceNames: uniqueNonEmptyStrings('serviceNames'),
62
+ declaredCapabilities: uniqueNonEmptyStrings('declaredCapabilities'),
62
63
  })
63
64
  .strict();
64
65
  exports.AuthorizationModuleContributionManifestSchema = zod_1.z
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-module-contribution.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization-module-contribution.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-contribution.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,17 @@ export declare const AuthorizationModuleEnvelopeSchema: z.ZodObject<{
79
79
  minModuleVersion: z.ZodNumber;
80
80
  }, z.core.$strict>>;
81
81
  implements: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodEnum<typeof import("./platform-authorization-modules").XemaAuthorizationInterface>>>;
82
+ delegationOrigination: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
83
+ holderWorkload: z.ZodString;
84
+ capabilities: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
85
+ stated: z.ZodLiteral<true>;
86
+ ceiling: z.ZodOptional<z.ZodEnum<typeof import("./delegation-wildcard-ceiling").DelegationCeiling>>;
87
+ }, z.core.$strict>]>;
88
+ redelegable: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
89
+ stated: z.ZodLiteral<true>;
90
+ }, z.core.$strict>]>;
91
+ expiresAfter: z.ZodOptional<z.ZodString>;
92
+ }, z.core.$strict>>>;
82
93
  resourceTypes: z.ZodArray<z.ZodString>;
83
94
  writableRelations: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
84
95
  searchable: z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-module-envelope.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+BxB,eAAO,MAAM,iCAAiC,QAAgC,CAAC;AAE/E,eAAO,MAAM,sCAAsC,QACd,CAAC;AAStC,eAAO,MAAM,mCAAmC;;;kBAKrC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAGF,eAAO,MAAM,6BAA6B;;;kBAiBtC,CAAC;AACL,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AAOF,oBAAY,8BAA8B;IACxC,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,QAAQ,cAAc;IACtB,YAAY,kBAAkB;IAC9B,iBAAiB,uBAAuB;CACzC;AAED,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;4BAsC3C,CAAC;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AASF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;kBAKpC,CAAC;AACZ,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,kCAAkC,CAC1C,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqDnC,CAAC;AACZ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC"}
1
+ {"version":3,"file":"authorization-module-envelope.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgCxB,eAAO,MAAM,iCAAiC,QAAgC,CAAC;AAE/E,eAAO,MAAM,sCAAsC,QACd,CAAC;AAStC,eAAO,MAAM,mCAAmC;;;kBAKrC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAGF,eAAO,MAAM,6BAA6B;;;kBAiBtC,CAAC;AACL,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AAOF,oBAAY,8BAA8B;IACxC,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,QAAQ,cAAc;IACtB,YAAY,kBAAkB;IAC9B,iBAAiB,uBAAuB;CACzC;AAED,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;4BAsC3C,CAAC;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AASF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;kBAKpC,CAAC;AACZ,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,kCAAkC,CAC1C,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4DnC,CAAC;AACZ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC"}
@@ -5,6 +5,7 @@ const zod_1 = require("zod");
5
5
  const authorization_facts_1 = require("../../authorization-facts");
6
6
  const platform_generation_1 = require("../../platform-generation");
7
7
  const authorization_namespace_1 = require("./authorization-namespace");
8
+ const delegation_origination_1 = require("./delegation-origination");
8
9
  const platform_authorization_modules_1 = require("./platform-authorization-modules");
9
10
  const TypeNameSchema = zod_1.z.string().regex(/^[^:#@*\s]{1,254}$/);
10
11
  const RelationNameSchema = zod_1.z.string().regex(/^[^:#@*\s]{1,50}$/);
@@ -94,6 +95,9 @@ exports.AuthorizationModuleEnvelopeSchema = zod_1.z
94
95
  .array(exports.AuthorizationModuleDependencySchema)
95
96
  .refine((deps) => new Set(deps.map((d) => d.biome)).size === deps.length, { message: 'dependsOn must not name a biome twice.' }),
96
97
  implements: zod_1.z.record(TypeNameSchema, uniqueArray(platform_authorization_modules_1.XemaAuthorizationInterfaceSchema, 'implements').min(1)),
98
+ delegationOrigination: zod_1.z
99
+ .record(TypeNameSchema, delegation_origination_1.DelegationOriginationSchema)
100
+ .optional(),
97
101
  resourceTypes: uniqueArray(TypeNameSchema, 'resourceTypes').min(1),
98
102
  writableRelations: authorization_facts_1.WritableRelationsSchema,
99
103
  searchable: zod_1.z.record(TypeNameSchema, exports.AuthorizationSearchableSchema),
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-module-envelope.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-envelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization-module-envelope.js","sourceRoot":"","sources":["../../../src/authorization-module/lib/authorization-module-envelope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ import { DelegationCeiling } from './delegation-wildcard-ceiling';
3
+ export declare const DELEGATION_ORIGINATION_DURATION_PATTERN: RegExp;
4
+ declare const StatedCapabilitiesSchema: z.ZodObject<{
5
+ stated: z.ZodLiteral<true>;
6
+ ceiling: z.ZodOptional<z.ZodEnum<typeof DelegationCeiling>>;
7
+ }, z.core.$strict>;
8
+ export declare const DelegationOriginationSchema: z.ZodObject<{
9
+ holderWorkload: z.ZodString;
10
+ capabilities: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
11
+ stated: z.ZodLiteral<true>;
12
+ ceiling: z.ZodOptional<z.ZodEnum<typeof DelegationCeiling>>;
13
+ }, z.core.$strict>]>;
14
+ redelegable: z.ZodUnion<readonly [z.ZodArray<z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>>, z.ZodObject<{
15
+ stated: z.ZodLiteral<true>;
16
+ }, z.core.$strict>]>;
17
+ expiresAfter: z.ZodOptional<z.ZodString>;
18
+ }, z.core.$strict>;
19
+ export type DelegationOrigination = z.infer<typeof DelegationOriginationSchema>;
20
+ export type StatedCapabilities = z.infer<typeof StatedCapabilitiesSchema>;
21
+ export declare function hasStatedCapabilities(origination: Pick<DelegationOrigination, 'capabilities'>): origination is {
22
+ capabilities: StatedCapabilities;
23
+ } & typeof origination;
24
+ export declare function hasWildcardCeiling(origination: Pick<DelegationOrigination, 'capabilities'>): boolean;
25
+ export {};
26
+ //# sourceMappingURL=delegation-origination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delegation-origination.d.ts","sourceRoot":"","sources":["../../../src/authorization-module/lib/delegation-origination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAQlE,eAAO,MAAM,uCAAuC,QACiB,CAAC;AAWtE,QAAA,MAAM,wBAAwB;;;kBAKnB,CAAC;AAgCZ,eAAO,MAAM,2BAA2B;;;;;;;;;;kBAqB7B,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAG1E,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,cAAc,CAAC,GACvD,WAAW,IAAI;IAAE,YAAY,EAAE,kBAAkB,CAAA;CAAE,GAAG,OAAO,WAAW,CAE1E;AAQD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,cAAc,CAAC,GAAG,OAAO,CAKpG"}