@parmana/shared 0.0.0-stage → 0.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.
Files changed (417) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +8 -0
  3. package/README.md +16 -2
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/config/ApiKeyEntry.d.ts +97 -0
  6. package/dist/config/ApiKeyEntry.d.ts.map +1 -0
  7. package/dist/config/ApiKeyEntry.js +2 -0
  8. package/dist/config/ApiKeyEntry.js.map +1 -0
  9. package/dist/config/Config.d.ts +202 -0
  10. package/dist/config/Config.d.ts.map +1 -0
  11. package/dist/config/Config.js +172 -0
  12. package/dist/config/Config.js.map +1 -0
  13. package/dist/config/ConfigLoader.d.ts +5 -0
  14. package/dist/config/ConfigLoader.d.ts.map +1 -0
  15. package/dist/config/ConfigLoader.js +8 -0
  16. package/dist/config/ConfigLoader.js.map +1 -0
  17. package/dist/config/ConfigUtils.d.ts +6 -0
  18. package/dist/config/ConfigUtils.d.ts.map +1 -0
  19. package/dist/config/ConfigUtils.js +8 -0
  20. package/dist/config/ConfigUtils.js.map +1 -0
  21. package/dist/config/ConfigValidation.d.ts +30 -0
  22. package/dist/config/ConfigValidation.d.ts.map +1 -0
  23. package/dist/config/ConfigValidation.js +170 -0
  24. package/dist/config/ConfigValidation.js.map +1 -0
  25. package/dist/config/CryptoAlgorithms.d.ts +42 -0
  26. package/dist/config/CryptoAlgorithms.d.ts.map +1 -0
  27. package/dist/config/CryptoAlgorithms.js +42 -0
  28. package/dist/config/CryptoAlgorithms.js.map +1 -0
  29. package/dist/config/KeyProviders.d.ts +9 -0
  30. package/dist/config/KeyProviders.d.ts.map +1 -0
  31. package/dist/config/KeyProviders.js +8 -0
  32. package/dist/config/KeyProviders.js.map +1 -0
  33. package/dist/config/SecretsProviders.d.ts +6 -0
  34. package/dist/config/SecretsProviders.d.ts.map +1 -0
  35. package/dist/config/SecretsProviders.js +5 -0
  36. package/dist/config/SecretsProviders.js.map +1 -0
  37. package/dist/config/StorageProviders.d.ts +18 -0
  38. package/dist/config/StorageProviders.d.ts.map +1 -0
  39. package/dist/config/StorageProviders.js +20 -0
  40. package/dist/config/StorageProviders.js.map +1 -0
  41. package/dist/config/TrustProfiles.d.ts +5 -0
  42. package/dist/config/TrustProfiles.d.ts.map +1 -0
  43. package/dist/config/TrustProfiles.js +4 -0
  44. package/dist/config/TrustProfiles.js.map +1 -0
  45. package/dist/config/index.d.ts +11 -0
  46. package/dist/config/index.d.ts.map +1 -0
  47. package/dist/config/index.js +11 -0
  48. package/dist/config/index.js.map +1 -0
  49. package/dist/domain/approval-artifact.d.ts +136 -0
  50. package/dist/domain/approval-artifact.d.ts.map +1 -0
  51. package/dist/domain/approval-artifact.js +2 -0
  52. package/dist/domain/approval-artifact.js.map +1 -0
  53. package/dist/domain/approval-issuer.d.ts +52 -0
  54. package/dist/domain/approval-issuer.d.ts.map +1 -0
  55. package/dist/domain/approval-issuer.js +2 -0
  56. package/dist/domain/approval-issuer.js.map +1 -0
  57. package/dist/domain/authority-grant.d.ts +54 -0
  58. package/dist/domain/authority-grant.d.ts.map +1 -0
  59. package/dist/domain/authority-grant.js +2 -0
  60. package/dist/domain/authority-grant.js.map +1 -0
  61. package/dist/domain/authority.d.ts +42 -0
  62. package/dist/domain/authority.d.ts.map +1 -0
  63. package/dist/domain/authority.js +11 -0
  64. package/dist/domain/authority.js.map +1 -0
  65. package/dist/domain/authorization.d.ts +54 -0
  66. package/dist/domain/authorization.d.ts.map +1 -0
  67. package/dist/domain/authorization.js +2 -0
  68. package/dist/domain/authorization.js.map +1 -0
  69. package/dist/domain/business-signal-source.d.ts +52 -0
  70. package/dist/domain/business-signal-source.d.ts.map +1 -0
  71. package/dist/domain/business-signal-source.js +2 -0
  72. package/dist/domain/business-signal-source.js.map +1 -0
  73. package/dist/domain/business-transaction.d.ts +99 -0
  74. package/dist/domain/business-transaction.d.ts.map +1 -0
  75. package/dist/domain/business-transaction.js +16 -0
  76. package/dist/domain/business-transaction.js.map +1 -0
  77. package/dist/domain/business-validation.d.ts +177 -0
  78. package/dist/domain/business-validation.d.ts.map +1 -0
  79. package/dist/domain/business-validation.js +60 -0
  80. package/dist/domain/business-validation.js.map +1 -0
  81. package/dist/domain/challenge-record.d.ts +181 -0
  82. package/dist/domain/challenge-record.d.ts.map +1 -0
  83. package/dist/domain/challenge-record.js +2 -0
  84. package/dist/domain/challenge-record.js.map +1 -0
  85. package/dist/domain/decision.d.ts +89 -0
  86. package/dist/domain/decision.d.ts.map +1 -0
  87. package/dist/domain/decision.js +9 -0
  88. package/dist/domain/decision.js.map +1 -0
  89. package/dist/domain/evidence-anchor.d.ts +54 -0
  90. package/dist/domain/evidence-anchor.d.ts.map +1 -0
  91. package/dist/domain/evidence-anchor.js +2 -0
  92. package/dist/domain/evidence-anchor.js.map +1 -0
  93. package/dist/domain/executable-content.d.ts +45 -0
  94. package/dist/domain/executable-content.d.ts.map +1 -0
  95. package/dist/domain/executable-content.js +39 -0
  96. package/dist/domain/executable-content.js.map +1 -0
  97. package/dist/domain/execution-audit-event.d.ts +65 -0
  98. package/dist/domain/execution-audit-event.d.ts.map +1 -0
  99. package/dist/domain/execution-audit-event.js +2 -0
  100. package/dist/domain/execution-audit-event.js.map +1 -0
  101. package/dist/domain/execution-authorization.d.ts +224 -0
  102. package/dist/domain/execution-authorization.d.ts.map +1 -0
  103. package/dist/domain/execution-authorization.js +2 -0
  104. package/dist/domain/execution-authorization.js.map +1 -0
  105. package/dist/domain/execution-evidence.d.ts +38 -0
  106. package/dist/domain/execution-evidence.d.ts.map +1 -0
  107. package/dist/domain/execution-evidence.js +2 -0
  108. package/dist/domain/execution-evidence.js.map +1 -0
  109. package/dist/domain/execution-intent.d.ts +92 -0
  110. package/dist/domain/execution-intent.d.ts.map +1 -0
  111. package/dist/domain/execution-intent.js +2 -0
  112. package/dist/domain/execution-intent.js.map +1 -0
  113. package/dist/domain/execution-metadata.d.ts +8 -0
  114. package/dist/domain/execution-metadata.d.ts.map +1 -0
  115. package/dist/domain/execution-metadata.js +2 -0
  116. package/dist/domain/execution-metadata.js.map +1 -0
  117. package/dist/domain/execution-outcome-store.d.ts +49 -0
  118. package/dist/domain/execution-outcome-store.d.ts.map +1 -0
  119. package/dist/domain/execution-outcome-store.js +10 -0
  120. package/dist/domain/execution-outcome-store.js.map +1 -0
  121. package/dist/domain/execution-result.d.ts +49 -0
  122. package/dist/domain/execution-result.d.ts.map +1 -0
  123. package/dist/domain/execution-result.js +2 -0
  124. package/dist/domain/execution-result.js.map +1 -0
  125. package/dist/domain/execution-trust-record.d.ts +142 -0
  126. package/dist/domain/execution-trust-record.d.ts.map +1 -0
  127. package/dist/domain/execution-trust-record.js +2 -0
  128. package/dist/domain/execution-trust-record.js.map +1 -0
  129. package/dist/domain/execution.d.ts +108 -0
  130. package/dist/domain/execution.d.ts.map +1 -0
  131. package/dist/domain/execution.js +18 -0
  132. package/dist/domain/execution.js.map +1 -0
  133. package/dist/domain/external-connector.d.ts +68 -0
  134. package/dist/domain/external-connector.d.ts.map +1 -0
  135. package/dist/domain/external-connector.js +2 -0
  136. package/dist/domain/external-connector.js.map +1 -0
  137. package/dist/domain/index.d.ts +37 -0
  138. package/dist/domain/index.d.ts.map +1 -0
  139. package/dist/domain/index.js +37 -0
  140. package/dist/domain/index.js.map +1 -0
  141. package/dist/domain/intent.d.ts +66 -0
  142. package/dist/domain/intent.d.ts.map +1 -0
  143. package/dist/domain/intent.js +2 -0
  144. package/dist/domain/intent.js.map +1 -0
  145. package/dist/domain/metadata.d.ts +53 -0
  146. package/dist/domain/metadata.d.ts.map +1 -0
  147. package/dist/domain/metadata.js +11 -0
  148. package/dist/domain/metadata.js.map +1 -0
  149. package/dist/domain/override.d.ts +39 -0
  150. package/dist/domain/override.d.ts.map +1 -0
  151. package/dist/domain/override.js +2 -0
  152. package/dist/domain/override.js.map +1 -0
  153. package/dist/domain/pending-policy-change.d.ts +109 -0
  154. package/dist/domain/pending-policy-change.d.ts.map +1 -0
  155. package/dist/domain/pending-policy-change.js +12 -0
  156. package/dist/domain/pending-policy-change.js.map +1 -0
  157. package/dist/domain/policy-change-approval-record.d.ts +81 -0
  158. package/dist/domain/policy-change-approval-record.d.ts.map +1 -0
  159. package/dist/domain/policy-change-approval-record.js +2 -0
  160. package/dist/domain/policy-change-approval-record.js.map +1 -0
  161. package/dist/domain/policy-change-step-up-authorization.d.ts +97 -0
  162. package/dist/domain/policy-change-step-up-authorization.d.ts.map +1 -0
  163. package/dist/domain/policy-change-step-up-authorization.js +2 -0
  164. package/dist/domain/policy-change-step-up-authorization.js.map +1 -0
  165. package/dist/domain/policy-reference.d.ts +58 -0
  166. package/dist/domain/policy-reference.d.ts.map +1 -0
  167. package/dist/domain/policy-reference.js +2 -0
  168. package/dist/domain/policy-reference.js.map +1 -0
  169. package/dist/domain/receipt.d.ts +72 -0
  170. package/dist/domain/receipt.d.ts.map +1 -0
  171. package/dist/domain/receipt.js +2 -0
  172. package/dist/domain/receipt.js.map +1 -0
  173. package/dist/domain/refusal-record.d.ts +110 -0
  174. package/dist/domain/refusal-record.d.ts.map +1 -0
  175. package/dist/domain/refusal-record.js +2 -0
  176. package/dist/domain/refusal-record.js.map +1 -0
  177. package/dist/domain/release-approval.d.ts +14 -0
  178. package/dist/domain/release-approval.d.ts.map +1 -0
  179. package/dist/domain/release-approval.js +2 -0
  180. package/dist/domain/release-approval.js.map +1 -0
  181. package/dist/domain/signals.d.ts +10 -0
  182. package/dist/domain/signals.d.ts.map +1 -0
  183. package/dist/domain/signals.js +2 -0
  184. package/dist/domain/signals.js.map +1 -0
  185. package/dist/domain/signature-entry.d.ts +23 -0
  186. package/dist/domain/signature-entry.d.ts.map +1 -0
  187. package/dist/domain/signature-entry.js +2 -0
  188. package/dist/domain/signature-entry.js.map +1 -0
  189. package/dist/domain/signature.d.ts +26 -0
  190. package/dist/domain/signature.d.ts.map +1 -0
  191. package/dist/domain/signature.js +2 -0
  192. package/dist/domain/signature.js.map +1 -0
  193. package/dist/domain/unsigned-execution-trust-record.d.ts +7 -0
  194. package/dist/domain/unsigned-execution-trust-record.d.ts.map +1 -0
  195. package/dist/domain/unsigned-execution-trust-record.js +2 -0
  196. package/dist/domain/unsigned-execution-trust-record.js.map +1 -0
  197. package/dist/domain/verification.d.ts +48 -0
  198. package/dist/domain/verification.d.ts.map +1 -0
  199. package/dist/domain/verification.js +9 -0
  200. package/dist/domain/verification.js.map +1 -0
  201. package/dist/errors/approval-issuer-change-not-found-error.d.ts +9 -0
  202. package/dist/errors/approval-issuer-change-not-found-error.d.ts.map +1 -0
  203. package/dist/errors/approval-issuer-change-not-found-error.js +11 -0
  204. package/dist/errors/approval-issuer-change-not-found-error.js.map +1 -0
  205. package/dist/errors/authority-grant-change-not-found-error.d.ts +9 -0
  206. package/dist/errors/authority-grant-change-not-found-error.d.ts.map +1 -0
  207. package/dist/errors/authority-grant-change-not-found-error.js +11 -0
  208. package/dist/errors/authority-grant-change-not-found-error.js.map +1 -0
  209. package/dist/errors/authority-required-error.d.ts +5 -0
  210. package/dist/errors/authority-required-error.d.ts.map +1 -0
  211. package/dist/errors/authority-required-error.js +7 -0
  212. package/dist/errors/authority-required-error.js.map +1 -0
  213. package/dist/errors/authorization-no-longer-valid-error.d.ts +19 -0
  214. package/dist/errors/authorization-no-longer-valid-error.d.ts.map +1 -0
  215. package/dist/errors/authorization-no-longer-valid-error.js +23 -0
  216. package/dist/errors/authorization-no-longer-valid-error.js.map +1 -0
  217. package/dist/errors/authorization-required-error.d.ts +5 -0
  218. package/dist/errors/authorization-required-error.d.ts.map +1 -0
  219. package/dist/errors/authorization-required-error.js +7 -0
  220. package/dist/errors/authorization-required-error.js.map +1 -0
  221. package/dist/errors/business-signal-source-change-not-found-error.d.ts +9 -0
  222. package/dist/errors/business-signal-source-change-not-found-error.d.ts.map +1 -0
  223. package/dist/errors/business-signal-source-change-not-found-error.js +11 -0
  224. package/dist/errors/business-signal-source-change-not-found-error.js.map +1 -0
  225. package/dist/errors/business-transaction-not-found-error.d.ts +5 -0
  226. package/dist/errors/business-transaction-not-found-error.d.ts.map +1 -0
  227. package/dist/errors/business-transaction-not-found-error.js +7 -0
  228. package/dist/errors/business-transaction-not-found-error.js.map +1 -0
  229. package/dist/errors/challenge-record-not-found-error.d.ts +9 -0
  230. package/dist/errors/challenge-record-not-found-error.d.ts.map +1 -0
  231. package/dist/errors/challenge-record-not-found-error.js +11 -0
  232. package/dist/errors/challenge-record-not-found-error.js.map +1 -0
  233. package/dist/errors/conflict-error.d.ts +5 -0
  234. package/dist/errors/conflict-error.d.ts.map +1 -0
  235. package/dist/errors/conflict-error.js +7 -0
  236. package/dist/errors/conflict-error.js.map +1 -0
  237. package/dist/errors/connector-not-registered-error.d.ts +21 -0
  238. package/dist/errors/connector-not-registered-error.d.ts.map +1 -0
  239. package/dist/errors/connector-not-registered-error.js +24 -0
  240. package/dist/errors/connector-not-registered-error.js.map +1 -0
  241. package/dist/errors/decision-not-approved-error.d.ts +5 -0
  242. package/dist/errors/decision-not-approved-error.d.ts.map +1 -0
  243. package/dist/errors/decision-not-approved-error.js +7 -0
  244. package/dist/errors/decision-not-approved-error.js.map +1 -0
  245. package/dist/errors/duplicate-business-transaction-error.d.ts +26 -0
  246. package/dist/errors/duplicate-business-transaction-error.d.ts.map +1 -0
  247. package/dist/errors/duplicate-business-transaction-error.js +28 -0
  248. package/dist/errors/duplicate-business-transaction-error.js.map +1 -0
  249. package/dist/errors/external-connector-change-not-found-error.d.ts +9 -0
  250. package/dist/errors/external-connector-change-not-found-error.d.ts.map +1 -0
  251. package/dist/errors/external-connector-change-not-found-error.js +11 -0
  252. package/dist/errors/external-connector-change-not-found-error.js.map +1 -0
  253. package/dist/errors/forbidden-error.d.ts +5 -0
  254. package/dist/errors/forbidden-error.d.ts.map +1 -0
  255. package/dist/errors/forbidden-error.js +7 -0
  256. package/dist/errors/forbidden-error.js.map +1 -0
  257. package/dist/errors/index.d.ts +30 -0
  258. package/dist/errors/index.d.ts.map +1 -0
  259. package/dist/errors/index.js +30 -0
  260. package/dist/errors/index.js.map +1 -0
  261. package/dist/errors/intent-required-error.d.ts +5 -0
  262. package/dist/errors/intent-required-error.d.ts.map +1 -0
  263. package/dist/errors/intent-required-error.js +7 -0
  264. package/dist/errors/intent-required-error.js.map +1 -0
  265. package/dist/errors/non-human-caller-denied-error.d.ts +10 -0
  266. package/dist/errors/non-human-caller-denied-error.d.ts.map +1 -0
  267. package/dist/errors/non-human-caller-denied-error.js +12 -0
  268. package/dist/errors/non-human-caller-denied-error.js.map +1 -0
  269. package/dist/errors/nonce-already-consumed-error.d.ts +26 -0
  270. package/dist/errors/nonce-already-consumed-error.d.ts.map +1 -0
  271. package/dist/errors/nonce-already-consumed-error.js +29 -0
  272. package/dist/errors/nonce-already-consumed-error.js.map +1 -0
  273. package/dist/errors/outcome-unknown-error.d.ts +15 -0
  274. package/dist/errors/outcome-unknown-error.d.ts.map +1 -0
  275. package/dist/errors/outcome-unknown-error.js +19 -0
  276. package/dist/errors/outcome-unknown-error.js.map +1 -0
  277. package/dist/errors/override-not-allowed-error.d.ts +5 -0
  278. package/dist/errors/override-not-allowed-error.d.ts.map +1 -0
  279. package/dist/errors/override-not-allowed-error.js +7 -0
  280. package/dist/errors/override-not-allowed-error.js.map +1 -0
  281. package/dist/errors/parmana-error.d.ts +15 -0
  282. package/dist/errors/parmana-error.d.ts.map +1 -0
  283. package/dist/errors/parmana-error.js +21 -0
  284. package/dist/errors/parmana-error.js.map +1 -0
  285. package/dist/errors/pending-policy-change-not-found-error.d.ts +9 -0
  286. package/dist/errors/pending-policy-change-not-found-error.d.ts.map +1 -0
  287. package/dist/errors/pending-policy-change-not-found-error.js +11 -0
  288. package/dist/errors/pending-policy-change-not-found-error.js.map +1 -0
  289. package/dist/errors/policy-not-found-error.d.ts +5 -0
  290. package/dist/errors/policy-not-found-error.d.ts.map +1 -0
  291. package/dist/errors/policy-not-found-error.js +7 -0
  292. package/dist/errors/policy-not-found-error.js.map +1 -0
  293. package/dist/errors/receipt-generation-error.d.ts +5 -0
  294. package/dist/errors/receipt-generation-error.d.ts.map +1 -0
  295. package/dist/errors/receipt-generation-error.js +7 -0
  296. package/dist/errors/receipt-generation-error.js.map +1 -0
  297. package/dist/errors/same-actor-cannot-approve-own-change-error.d.ts +12 -0
  298. package/dist/errors/same-actor-cannot-approve-own-change-error.d.ts.map +1 -0
  299. package/dist/errors/same-actor-cannot-approve-own-change-error.js +15 -0
  300. package/dist/errors/same-actor-cannot-approve-own-change-error.js.map +1 -0
  301. package/dist/errors/step-up-authorization-invalid-error.d.ts +25 -0
  302. package/dist/errors/step-up-authorization-invalid-error.d.ts.map +1 -0
  303. package/dist/errors/step-up-authorization-invalid-error.js +28 -0
  304. package/dist/errors/step-up-authorization-invalid-error.js.map +1 -0
  305. package/dist/errors/trust-chain-validation-error.d.ts +5 -0
  306. package/dist/errors/trust-chain-validation-error.d.ts.map +1 -0
  307. package/dist/errors/trust-chain-validation-error.js +7 -0
  308. package/dist/errors/trust-chain-validation-error.js.map +1 -0
  309. package/dist/errors/unauthorized-error.d.ts +5 -0
  310. package/dist/errors/unauthorized-error.d.ts.map +1 -0
  311. package/dist/errors/unauthorized-error.js +7 -0
  312. package/dist/errors/unauthorized-error.js.map +1 -0
  313. package/dist/errors/validation-error.d.ts +5 -0
  314. package/dist/errors/validation-error.d.ts.map +1 -0
  315. package/dist/errors/validation-error.js +7 -0
  316. package/dist/errors/validation-error.js.map +1 -0
  317. package/dist/errors/verification-failed-error.d.ts +5 -0
  318. package/dist/errors/verification-failed-error.d.ts.map +1 -0
  319. package/dist/errors/verification-failed-error.js +7 -0
  320. package/dist/errors/verification-failed-error.js.map +1 -0
  321. package/dist/gateway/GatewayAuthentication.d.ts +8 -0
  322. package/dist/gateway/GatewayAuthentication.d.ts.map +1 -0
  323. package/dist/gateway/GatewayAuthentication.js +2 -0
  324. package/dist/gateway/GatewayAuthentication.js.map +1 -0
  325. package/dist/gateway/GatewayAuthenticationClaims.d.ts +10 -0
  326. package/dist/gateway/GatewayAuthenticationClaims.d.ts.map +1 -0
  327. package/dist/gateway/GatewayAuthenticationClaims.js +2 -0
  328. package/dist/gateway/GatewayAuthenticationClaims.js.map +1 -0
  329. package/dist/gateway/GatewayAuthenticationPayload.d.ts +15 -0
  330. package/dist/gateway/GatewayAuthenticationPayload.d.ts.map +1 -0
  331. package/dist/gateway/GatewayAuthenticationPayload.js +2 -0
  332. package/dist/gateway/GatewayAuthenticationPayload.js.map +1 -0
  333. package/dist/gateway/SignedGatewayAuthentication.d.ts +9 -0
  334. package/dist/gateway/SignedGatewayAuthentication.d.ts.map +1 -0
  335. package/dist/gateway/SignedGatewayAuthentication.js +2 -0
  336. package/dist/gateway/SignedGatewayAuthentication.js.map +1 -0
  337. package/dist/gateway/index.d.ts +4 -0
  338. package/dist/gateway/index.d.ts.map +1 -0
  339. package/dist/gateway/index.js +4 -0
  340. package/dist/gateway/index.js.map +1 -0
  341. package/dist/index.d.ts +19 -0
  342. package/dist/index.d.ts.map +1 -0
  343. package/dist/index.js +19 -0
  344. package/dist/index.js.map +1 -0
  345. package/dist/logging/Logger.d.ts +65 -0
  346. package/dist/logging/Logger.d.ts.map +1 -0
  347. package/dist/logging/Logger.js +97 -0
  348. package/dist/logging/Logger.js.map +1 -0
  349. package/dist/network/externalEndpointAddress.d.ts +48 -0
  350. package/dist/network/externalEndpointAddress.d.ts.map +1 -0
  351. package/dist/network/externalEndpointAddress.js +147 -0
  352. package/dist/network/externalEndpointAddress.js.map +1 -0
  353. package/dist/repositories/approval-issuer-repository.d.ts +31 -0
  354. package/dist/repositories/approval-issuer-repository.d.ts.map +1 -0
  355. package/dist/repositories/approval-issuer-repository.js +2 -0
  356. package/dist/repositories/approval-issuer-repository.js.map +1 -0
  357. package/dist/repositories/authority-grant-repository.d.ts +22 -0
  358. package/dist/repositories/authority-grant-repository.d.ts.map +1 -0
  359. package/dist/repositories/authority-grant-repository.js +2 -0
  360. package/dist/repositories/authority-grant-repository.js.map +1 -0
  361. package/dist/repositories/business-signal-source-repository.d.ts +17 -0
  362. package/dist/repositories/business-signal-source-repository.d.ts.map +1 -0
  363. package/dist/repositories/business-signal-source-repository.js +2 -0
  364. package/dist/repositories/business-signal-source-repository.js.map +1 -0
  365. package/dist/repositories/business-transaction-repository.d.ts +34 -0
  366. package/dist/repositories/business-transaction-repository.d.ts.map +1 -0
  367. package/dist/repositories/business-transaction-repository.js +2 -0
  368. package/dist/repositories/business-transaction-repository.js.map +1 -0
  369. package/dist/repositories/challenge-record-repository.d.ts +67 -0
  370. package/dist/repositories/challenge-record-repository.d.ts.map +1 -0
  371. package/dist/repositories/challenge-record-repository.js +76 -0
  372. package/dist/repositories/challenge-record-repository.js.map +1 -0
  373. package/dist/repositories/execution-intent-repository.d.ts +38 -0
  374. package/dist/repositories/execution-intent-repository.d.ts.map +1 -0
  375. package/dist/repositories/execution-intent-repository.js +2 -0
  376. package/dist/repositories/execution-intent-repository.js.map +1 -0
  377. package/dist/repositories/execution-trust-record-repository.d.ts +62 -0
  378. package/dist/repositories/execution-trust-record-repository.d.ts.map +1 -0
  379. package/dist/repositories/execution-trust-record-repository.js +2 -0
  380. package/dist/repositories/execution-trust-record-repository.js.map +1 -0
  381. package/dist/repositories/external-connector-repository.d.ts +37 -0
  382. package/dist/repositories/external-connector-repository.d.ts.map +1 -0
  383. package/dist/repositories/external-connector-repository.js +2 -0
  384. package/dist/repositories/external-connector-repository.js.map +1 -0
  385. package/dist/repositories/handbook-download-lead-repository.d.ts +18 -0
  386. package/dist/repositories/handbook-download-lead-repository.d.ts.map +1 -0
  387. package/dist/repositories/handbook-download-lead-repository.js +2 -0
  388. package/dist/repositories/handbook-download-lead-repository.js.map +1 -0
  389. package/dist/repositories/index.d.ts +14 -0
  390. package/dist/repositories/index.d.ts.map +1 -0
  391. package/dist/repositories/index.js +14 -0
  392. package/dist/repositories/index.js.map +1 -0
  393. package/dist/repositories/pending-policy-change-repository.d.ts +72 -0
  394. package/dist/repositories/pending-policy-change-repository.d.ts.map +1 -0
  395. package/dist/repositories/pending-policy-change-repository.js +46 -0
  396. package/dist/repositories/pending-policy-change-repository.js.map +1 -0
  397. package/dist/repositories/policy-change-approval-record-repository.d.ts +39 -0
  398. package/dist/repositories/policy-change-approval-record-repository.d.ts.map +1 -0
  399. package/dist/repositories/policy-change-approval-record-repository.js +2 -0
  400. package/dist/repositories/policy-change-approval-record-repository.js.map +1 -0
  401. package/dist/repositories/policy-repository.d.ts +15 -0
  402. package/dist/repositories/policy-repository.d.ts.map +1 -0
  403. package/dist/repositories/policy-repository.js +2 -0
  404. package/dist/repositories/policy-repository.js.map +1 -0
  405. package/dist/repositories/refusal-record-repository.d.ts +13 -0
  406. package/dist/repositories/refusal-record-repository.d.ts.map +1 -0
  407. package/dist/repositories/refusal-record-repository.js +2 -0
  408. package/dist/repositories/refusal-record-repository.js.map +1 -0
  409. package/dist/types/Json.d.ts +7 -0
  410. package/dist/types/Json.d.ts.map +1 -0
  411. package/dist/types/Json.js +2 -0
  412. package/dist/types/Json.js.map +1 -0
  413. package/dist/utils/normalize-policy.d.ts +16 -0
  414. package/dist/utils/normalize-policy.d.ts.map +1 -0
  415. package/dist/utils/normalize-policy.js +10 -0
  416. package/dist/utils/normalize-policy.js.map +1 -0
  417. package/package.json +39 -4
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Canonical hash algorithms supported by Parmana.
3
+ *
4
+ * New algorithms are additive.
5
+ */
6
+ export declare const HashAlgorithms: {
7
+ readonly SHA256: "sha256";
8
+ readonly SHA3512: "sha3-512";
9
+ readonly BLAKE3: "blake3";
10
+ };
11
+ export type HashAlgorithm = (typeof HashAlgorithms)[keyof typeof HashAlgorithms];
12
+ /**
13
+ * Canonical signature algorithms.
14
+ */
15
+ export declare const SignatureAlgorithms: {
16
+ readonly ED25519: "ed25519";
17
+ readonly ECDSA_P256: "ecdsa-p256";
18
+ readonly DILITHIUM3: "dilithium3";
19
+ readonly DILITHIUM5: "dilithium5";
20
+ readonly SPHINCS_PLUS: "sphincs-plus";
21
+ };
22
+ export type SignatureAlgorithm = (typeof SignatureAlgorithms)[keyof typeof SignatureAlgorithms];
23
+ /**
24
+ * Crypto signing modes.
25
+ *
26
+ * single: exactly one SignatureProvider (PRIMARY_SIGNATURE_PROVIDER)
27
+ * signs and verifies everything -- today's behavior, unchanged.
28
+ *
29
+ * hybrid: PRIMARY_SIGNATURE_PROVIDER and SECONDARY_SIGNATURE_PROVIDER
30
+ * both sign Execution Trust Records and Receipts; verification
31
+ * requires both to pass. See HybridSignatureProvider (@parmana/crypto).
32
+ *
33
+ * pq: reserved for a future post-quantum-only mode. Not read by any
34
+ * production call site today.
35
+ */
36
+ export declare const CryptoModes: {
37
+ readonly SINGLE: "single";
38
+ readonly HYBRID: "hybrid";
39
+ readonly PQ: "pq";
40
+ };
41
+ export type CryptoMode = (typeof CryptoModes)[keyof typeof CryptoModes];
42
+ //# sourceMappingURL=CryptoAlgorithms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptoAlgorithms.d.ts","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc;aACzB,MAAM,EAAE,QAAQ;aAChB,OAAO,EAAE,UAAU;aACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,mBAAmB;aAC9B,OAAO,EAAE,SAAS;aAClB,UAAU,EAAE,YAAY;aAKxB,UAAU,EAAE,YAAY;aACxB,UAAU,EAAE,YAAY;aACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW;aACtB,MAAM,EAAE,QAAQ;aAChB,MAAM,EAAE,QAAQ;aAChB,EAAE,EAAE,IAAI;CACA,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Canonical hash algorithms supported by Parmana.
3
+ *
4
+ * New algorithms are additive.
5
+ */
6
+ export const HashAlgorithms = {
7
+ SHA256: "sha256",
8
+ SHA3512: "sha3-512",
9
+ BLAKE3: "blake3",
10
+ };
11
+ /**
12
+ * Canonical signature algorithms.
13
+ */
14
+ export const SignatureAlgorithms = {
15
+ ED25519: "ed25519",
16
+ ECDSA_P256: "ecdsa-p256",
17
+ //
18
+ // Post-Quantum Ready
19
+ //
20
+ DILITHIUM3: "dilithium3",
21
+ DILITHIUM5: "dilithium5",
22
+ SPHINCS_PLUS: "sphincs-plus",
23
+ };
24
+ /**
25
+ * Crypto signing modes.
26
+ *
27
+ * single: exactly one SignatureProvider (PRIMARY_SIGNATURE_PROVIDER)
28
+ * signs and verifies everything -- today's behavior, unchanged.
29
+ *
30
+ * hybrid: PRIMARY_SIGNATURE_PROVIDER and SECONDARY_SIGNATURE_PROVIDER
31
+ * both sign Execution Trust Records and Receipts; verification
32
+ * requires both to pass. See HybridSignatureProvider (@parmana/crypto).
33
+ *
34
+ * pq: reserved for a future post-quantum-only mode. Not read by any
35
+ * production call site today.
36
+ */
37
+ export const CryptoModes = {
38
+ SINGLE: "single",
39
+ HYBRID: "hybrid",
40
+ PQ: "pq",
41
+ };
42
+ //# sourceMappingURL=CryptoAlgorithms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptoAlgorithms.js","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAKX;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IAExB,EAAE;IACF,qBAAqB;IACrB,EAAE;IACF,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAKX;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,EAAE,EAAE,IAAI;CACA,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare const KeyProviders: {
2
+ readonly LOCAL: "local";
3
+ readonly AWS_KMS: "aws-kms";
4
+ readonly AZURE_KEY_VAULT: "azure-key-vault";
5
+ readonly GCP_KMS: "gcp-kms";
6
+ readonly HSM: "hsm";
7
+ };
8
+ export type KeyProvider = (typeof KeyProviders)[keyof typeof KeyProviders];
9
+ //# sourceMappingURL=KeyProviders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeyProviders.d.ts","sourceRoot":"","sources":["../../src/config/KeyProviders.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;aACvB,KAAK,EAAE,OAAO;aACd,OAAO,EAAE,SAAS;aAClB,eAAe,EAAE,iBAAiB;aAClC,OAAO,EAAE,SAAS;aAClB,GAAG,EAAE,KAAK;CACF,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export const KeyProviders = {
2
+ LOCAL: "local",
3
+ AWS_KMS: "aws-kms",
4
+ AZURE_KEY_VAULT: "azure-key-vault",
5
+ GCP_KMS: "gcp-kms",
6
+ HSM: "hsm",
7
+ };
8
+ //# sourceMappingURL=KeyProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeyProviders.js","sourceRoot":"","sources":["../../src/config/KeyProviders.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,iBAAiB;IAClC,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,KAAK;CACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const SecretsProviders: {
2
+ readonly ENV: "env";
3
+ readonly AWS_SECRETS_MANAGER: "aws-secrets-manager";
4
+ };
5
+ export type SecretsProvider = (typeof SecretsProviders)[keyof typeof SecretsProviders];
6
+ //# sourceMappingURL=SecretsProviders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretsProviders.d.ts","sourceRoot":"","sources":["../../src/config/SecretsProviders.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;aAC3B,GAAG,EAAE,KAAK;aACV,mBAAmB,EAAE,qBAAqB;CAClC,CAAC;AAEX,MAAM,MAAM,eAAe,GACzB,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export const SecretsProviders = {
2
+ ENV: "env",
3
+ AWS_SECRETS_MANAGER: "aws-secrets-manager",
4
+ };
5
+ //# sourceMappingURL=SecretsProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretsProviders.js","sourceRoot":"","sources":["../../src/config/SecretsProviders.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK;IACV,mBAAmB,EAAE,qBAAqB;CAClC,CAAC"}
@@ -0,0 +1,18 @@
1
+ export declare const StorageProviders: {
2
+ readonly MEMORY: "memory";
3
+ readonly POSTGRES: "postgres";
4
+ readonly SUPABASE: "supabase";
5
+ };
6
+ export type StorageProvider = (typeof StorageProviders)[keyof typeof StorageProviders];
7
+ /**
8
+ * Whether a provider name selects the durable Postgres storage.
9
+ *
10
+ * `postgres` and `supabase` select the same implementation: every
11
+ * repository, audit sink and nonce store behind them writes through
12
+ * PostgresPoolFactory (DATABASE_URL), so it runs on any Postgres,
13
+ * Supabase hosted or self hosted. `supabase` is kept so existing
14
+ * deployments are unchanged; `postgres` is the name for a self hosted
15
+ * database (G-57).
16
+ */
17
+ export declare function isPostgresStorage(provider: string | undefined): boolean;
18
+ //# sourceMappingURL=StorageProviders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageProviders.d.ts","sourceRoot":"","sources":["../../src/config/StorageProviders.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;aAC3B,MAAM,EAAE,QAAQ;aAChB,QAAQ,EAAE,UAAU;aACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAEX,MAAM,MAAM,eAAe,GACzB,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAE3D;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAKvE"}
@@ -0,0 +1,20 @@
1
+ export const StorageProviders = {
2
+ MEMORY: "memory",
3
+ POSTGRES: "postgres",
4
+ SUPABASE: "supabase",
5
+ };
6
+ /**
7
+ * Whether a provider name selects the durable Postgres storage.
8
+ *
9
+ * `postgres` and `supabase` select the same implementation: every
10
+ * repository, audit sink and nonce store behind them writes through
11
+ * PostgresPoolFactory (DATABASE_URL), so it runs on any Postgres,
12
+ * Supabase hosted or self hosted. `supabase` is kept so existing
13
+ * deployments are unchanged; `postgres` is the name for a self hosted
14
+ * database (G-57).
15
+ */
16
+ export function isPostgresStorage(provider) {
17
+ return (provider === StorageProviders.POSTGRES ||
18
+ provider === StorageProviders.SUPABASE);
19
+ }
20
+ //# sourceMappingURL=StorageProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageProviders.js","sourceRoot":"","sources":["../../src/config/StorageProviders.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAKX;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA4B;IAC5D,OAAO,CACL,QAAQ,KAAK,gBAAgB,CAAC,QAAQ;QACtC,QAAQ,KAAK,gBAAgB,CAAC,QAAQ,CACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const TrustProfiles: {
2
+ readonly V1: "v1";
3
+ };
4
+ export type TrustProfile = (typeof TrustProfiles)[keyof typeof TrustProfiles];
5
+ //# sourceMappingURL=TrustProfiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrustProfiles.d.ts","sourceRoot":"","sources":["../../src/config/TrustProfiles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;aACxB,EAAE,EAAE,IAAI;CACA,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const TrustProfiles = {
2
+ V1: "v1",
3
+ };
4
+ //# sourceMappingURL=TrustProfiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrustProfiles.js","sourceRoot":"","sources":["../../src/config/TrustProfiles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,EAAE,EAAE,IAAI;CACA,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from "./Config.js";
2
+ export * from "./ConfigLoader.js";
3
+ export * from "./ConfigValidation.js";
4
+ export * from "./CryptoAlgorithms.js";
5
+ export * from "./StorageProviders.js";
6
+ export * from "./KeyProviders.js";
7
+ export * from "./SecretsProviders.js";
8
+ export * from "./TrustProfiles.js";
9
+ export * from "./ApiKeyEntry.js";
10
+ export * from "./ConfigUtils.js";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from "./Config.js";
2
+ export * from "./ConfigLoader.js";
3
+ export * from "./ConfigValidation.js";
4
+ export * from "./CryptoAlgorithms.js";
5
+ export * from "./StorageProviders.js";
6
+ export * from "./KeyProviders.js";
7
+ export * from "./SecretsProviders.js";
8
+ export * from "./TrustProfiles.js";
9
+ export * from "./ApiKeyEntry.js";
10
+ export * from "./ConfigUtils.js";
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,136 @@
1
+ import type { JsonValue } from "../types/Json.js";
2
+ import type { Signature } from "./signature.js";
3
+ /**
4
+ * Parmana Trust Core
5
+ *
6
+ * Approval Artifact (TD-23 closure, Phase 3C)
7
+ *
8
+ * A cryptographically verifiable, independently-issued attestation
9
+ * that a specific external business authority approved a specific,
10
+ * bounded fact about a specific capability and business object --
11
+ * replacing a caller-declared authorization assertion (e.g.
12
+ * `preAuthorizedForAmountChange: true`) that Parmana's own
13
+ * Execution Authorization cannot truthfully represent, because the
14
+ * Execution Authorization proves Parmana's own runtime approved a
15
+ * Decision, not that an independent business authority approved an
16
+ * exception to it.
17
+ *
18
+ * Design frozen in §7 of the Phase 3A approval artifact design (in git
19
+ * history). This file implements that specification's schema exactly --
20
+ * field names, types, and mandatory/optional status are not
21
+ * reinterpreted here.
22
+ *
23
+ * Trust Chain (mirrors ExecutionAuthorizationPayload's own doc
24
+ * comment style):
25
+ *
26
+ * Business Approval (an authority independent of the AI caller and
27
+ * of Parmana's own runtime)
28
+ * ↓
29
+ * Approval Artifact (this type)
30
+ * ↓
31
+ * Canonical Serialization (CanonicalSerializer, reused verbatim)
32
+ * ↓
33
+ * Signature (the issuer's own key -- never Parmana's runtime key)
34
+ * ↓
35
+ * Verification (@parmana/approval's ApprovalVerifier)
36
+ * ↓
37
+ * Policy (the verified fact populates a policy signal, replacing the
38
+ * caller's own declared value)
39
+ */
40
+ /**
41
+ * Restricted comparator vocabulary for Approval scope checks.
42
+ * Deliberately narrower than PolicyEngine's own operator set (see
43
+ * packages/policy/src/types/Policy.ts's PolicyOperator) -- an
44
+ * approval bounds one numeric or exact-match fact, not an arbitrary
45
+ * policy condition tree.
46
+ */
47
+ export type ApprovalScopeComparator = "eq" | "lte" | "gte" | "lt" | "gt" | "between";
48
+ /**
49
+ * The bound being approved. `value`'s shape depends on `comparator`:
50
+ * a plain number/string for eq/lte/gte/lt/gt, or a {min, max} range
51
+ * for `between`.
52
+ */
53
+ export interface ApprovalScope {
54
+ /**
55
+ * The name of the specific policy-evaluated fact this artifact
56
+ * attests to -- e.g. "amountDeltaAbs". Exactly one fact per
57
+ * artifact; an approval is never a blanket "everything about this
58
+ * request is fine."
59
+ */
60
+ readonly field: string;
61
+ readonly comparator: ApprovalScopeComparator;
62
+ readonly value: number | string | {
63
+ readonly min: number;
64
+ readonly max: number;
65
+ };
66
+ }
67
+ /**
68
+ * Identifies the approving party and which of their registered keys
69
+ * signed this artifact. Never the AI caller's own callerId, and
70
+ * never Parmana's own runtime identity (DEFAULT_KEY_ID) -- see
71
+ * ApprovalIssuerRegistry (@parmana/approval) for how this is
72
+ * resolved to a trusted public key.
73
+ */
74
+ export interface ApprovalIssuer {
75
+ readonly approverId: string;
76
+ readonly keyId: string;
77
+ }
78
+ export interface ApprovalPayload {
79
+ /**
80
+ * Payload format version. Verifiers MUST reject any other value
81
+ * (including missing) before attempting signature verification --
82
+ * identical discipline to ExecutionAuthorizationPayload.version.
83
+ */
84
+ readonly version: 1;
85
+ /**
86
+ * Unique identifier for this artifact.
87
+ */
88
+ readonly approvalId: string;
89
+ readonly issuer: ApprovalIssuer;
90
+ /**
91
+ * ISO-8601 UTC timestamp when the approval was granted.
92
+ */
93
+ readonly issuedAt: string;
94
+ /**
95
+ * ISO-8601 UTC expiry. REQUIRED. Verifiers MUST reject an artifact
96
+ * past this time -- identical discipline to
97
+ * ExecutionAuthorizationPayload.expiresAt.
98
+ */
99
+ readonly expiresAt: string;
100
+ /**
101
+ * The exact capability (Intent.action) this approval is scoped to
102
+ * -- e.g. "hubspot:deal-update". Prevents capability substitution.
103
+ */
104
+ readonly capability: string;
105
+ /**
106
+ * The exact business object this approval covers, in the same
107
+ * identifier shape the capability's own Intent.parameters carries
108
+ * (e.g. a HubSpot dealId) -- not a wildcard, not a pattern.
109
+ * Prevents authorization transfer to another business object.
110
+ */
111
+ readonly resourceId: string;
112
+ readonly scope: ApprovalScope;
113
+ /**
114
+ * Reserved, additive extension point for future scope dimensions.
115
+ * Absent by default -- no concrete field needed yet (Phase 3A §17,
116
+ * Open Question #3).
117
+ */
118
+ readonly constraints?: Readonly<Record<string, JsonValue>>;
119
+ /**
120
+ * Single-use. Burned on first successful verification via the
121
+ * existing NonceStore interface, reused verbatim.
122
+ */
123
+ readonly nonce: string;
124
+ }
125
+ /**
126
+ * The complete envelope an Approval Artifact travels as.
127
+ */
128
+ export interface SignedApproval {
129
+ readonly payload: ApprovalPayload;
130
+ /**
131
+ * Signature over the canonical serialization of payload, produced
132
+ * by the issuer's own private key -- never Parmana's runtime key.
133
+ */
134
+ readonly signature: Signature;
135
+ }
136
+ //# sourceMappingURL=approval-artifact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-artifact.d.ts","sourceRoot":"","sources":["../../src/domain/approval-artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GACjC,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAE7C,QAAQ,CAAC,KAAK,EACZ,MAAM,GAAG,MAAM,GAAG;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAE9B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAE3D;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=approval-artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-artifact.js","sourceRoot":"","sources":["../../src/domain/approval-artifact.ts"],"names":[],"mappings":""}
@@ -0,0 +1,52 @@
1
+ import type { PendingPolicyChangeStatus } from "./pending-policy-change.js";
2
+ /**
3
+ * An approver key trusted to sign Approval Artifacts, added through
4
+ * maker checker (approval-issuers.ts) instead of a deploy. The
5
+ * server's code list (createApprovalIssuerRegistry.ts) is checked
6
+ * first; these rows add to it.
7
+ */
8
+ export interface ApprovalIssuerRecord {
9
+ readonly approverId: string;
10
+ readonly keyId: string;
11
+ /**
12
+ * The approver's Ed25519 public key, PEM (SPKI).
13
+ */
14
+ readonly publicKeyPem: string;
15
+ /**
16
+ * Revoking a key refuses every approval it ever signed.
17
+ */
18
+ readonly revoked: boolean;
19
+ /**
20
+ * The approved change that added this key. Its proposedBy and
21
+ * resolvedBy say who asked and who approved.
22
+ */
23
+ readonly addedByChangeId: string;
24
+ readonly addedAt: Date;
25
+ readonly revokedByChangeId?: string;
26
+ readonly revokedAt?: Date;
27
+ }
28
+ export type ApprovalIssuerChangeAction = "add" | "revoke";
29
+ /**
30
+ * A proposal to add or revoke an approver key, and its resolution. One
31
+ * person proposes; a different person approves or rejects it with a
32
+ * step up signature. Only an approved change touches
33
+ * approval_issuers.
34
+ */
35
+ export interface ApprovalIssuerChange {
36
+ readonly changeId: string;
37
+ readonly action: ApprovalIssuerChangeAction;
38
+ readonly approverId: string;
39
+ readonly keyId: string;
40
+ /**
41
+ * Required to add, absent to revoke.
42
+ */
43
+ readonly publicKeyPem?: string;
44
+ readonly reason: string;
45
+ readonly proposedBy: string;
46
+ readonly proposedAt: Date;
47
+ readonly status: PendingPolicyChangeStatus;
48
+ readonly resolvedBy?: string;
49
+ readonly resolvedAt?: Date;
50
+ readonly rejectionReason?: string;
51
+ }
52
+ //# sourceMappingURL=approval-issuer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-issuer.d.ts","sourceRoot":"","sources":["../../src/domain/approval-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IAEvB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;CAC3B;AAED,MAAM,MAAM,0BAA0B,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=approval-issuer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-issuer.js","sourceRoot":"","sources":["../../src/domain/approval-issuer.ts"],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ import type { AuthorityGrantLimit } from "./business-validation.js";
2
+ import type { PendingPolicyChangeStatus } from "./pending-policy-change.js";
3
+ /**
4
+ * Authority granted to one caller for one capability (RFC-0023 phase
5
+ * 3): "agent X may release goods, up to 100000, until 31 December".
6
+ * Created only by an approved grant change; a revoke change marks it
7
+ * revoked. A policy with requireAuthorityGrant decides a request only
8
+ * when its caller holds a current grant for the action and the request
9
+ * is within the grant's limits.
10
+ */
11
+ export interface AuthorityGrant {
12
+ /** The changeId of the approved grant change that created it. */
13
+ readonly grantId: string;
14
+ /** The authenticated caller (API key's callerId) it is granted to. */
15
+ readonly callerId: string;
16
+ /** The capability, namespace:verb, such as "erp:release-goods". */
17
+ readonly capability: string;
18
+ /** Limits on the request, by Intent path ("target", "parameters.x"). */
19
+ readonly limits?: Readonly<Record<string, AuthorityGrantLimit>>;
20
+ /** From when it holds. */
21
+ readonly validFrom: Date;
22
+ /** Until when it holds. After this, AUTHORITY_EXPIRED. */
23
+ readonly validUntil: Date;
24
+ readonly status: "active" | "revoked";
25
+ readonly grantedAt: Date;
26
+ readonly revokedByChangeId?: string;
27
+ readonly revokedAt?: Date;
28
+ }
29
+ export type AuthorityGrantChangeAction = "grant" | "revoke";
30
+ /**
31
+ * A proposal to grant authority to a caller for a capability, or to
32
+ * revoke the active grant. One person proposes, a different person
33
+ * approves or rejects with a step up authorization; neither may be the
34
+ * caller the authority is granted to.
35
+ */
36
+ export interface AuthorityGrantChange {
37
+ readonly changeId: string;
38
+ readonly action: AuthorityGrantChangeAction;
39
+ readonly callerId: string;
40
+ readonly capability: string;
41
+ readonly limits?: Readonly<Record<string, AuthorityGrantLimit>>;
42
+ /** grant only. Defaults to the approval time. */
43
+ readonly validFrom?: Date;
44
+ /** grant only, required. */
45
+ readonly validUntil?: Date;
46
+ readonly reason: string;
47
+ readonly proposedBy: string;
48
+ readonly proposedAt: Date;
49
+ readonly status: PendingPolicyChangeStatus;
50
+ readonly resolvedBy?: string;
51
+ readonly resolvedAt?: Date;
52
+ readonly rejectionReason?: string;
53
+ }
54
+ //# sourceMappingURL=authority-grant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority-grant.d.ts","sourceRoot":"","sources":["../../src/domain/authority-grant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,mEAAmE;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,wEAAwE;IACxE,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEhE,0BAA0B;IAC1B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IAEzB,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAE1B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;CAC3B;AAED,MAAM,MAAM,0BAA0B,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAChE,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=authority-grant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority-grant.js","sourceRoot":"","sources":["../../src/domain/authority-grant.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Parmana Trust Core
3
+ *
4
+ * Authority
5
+ *
6
+ * Represents the entity empowered to authorize
7
+ * execution within a trust domain.
8
+ *
9
+ * Authority is immutable once issued.
10
+ */
11
+ export interface Authority {
12
+ /**
13
+ * Unique Authority identifier.
14
+ */
15
+ readonly authorityId: string;
16
+ /**
17
+ * Type of authority.
18
+ */
19
+ readonly authorityType: AuthorityType;
20
+ /**
21
+ * Principal identifier.
22
+ */
23
+ readonly principalId: string;
24
+ /**
25
+ * Human-readable display name.
26
+ */
27
+ readonly displayName?: string;
28
+ /**
29
+ * UTC timestamp when Authority became effective.
30
+ */
31
+ readonly issuedAt: Date;
32
+ }
33
+ /**
34
+ * Supported Authority types.
35
+ */
36
+ export declare enum AuthorityType {
37
+ USER = "USER",
38
+ ROLE = "ROLE",
39
+ SERVICE = "SERVICE",
40
+ ORGANIZATION = "ORGANIZATION"
41
+ }
42
+ //# sourceMappingURL=authority.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.d.ts","sourceRoot":"","sources":["../../src/domain/authority.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB,IAAI,SAAS;IAEb,IAAI,SAAS;IAEb,OAAO,YAAY;IAEnB,YAAY,iBAAiB;CAC9B"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Supported Authority types.
3
+ */
4
+ export var AuthorityType;
5
+ (function (AuthorityType) {
6
+ AuthorityType["USER"] = "USER";
7
+ AuthorityType["ROLE"] = "ROLE";
8
+ AuthorityType["SERVICE"] = "SERVICE";
9
+ AuthorityType["ORGANIZATION"] = "ORGANIZATION";
10
+ })(AuthorityType || (AuthorityType = {}));
11
+ //# sourceMappingURL=authority.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.js","sourceRoot":"","sources":["../../src/domain/authority.ts"],"names":[],"mappings":"AAqCA;;GAEG;AACH,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IAEb,8BAAa,CAAA;IAEb,oCAAmB,CAAA;IAEnB,8CAA6B,CAAA;AAC/B,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Parmana Trust Core
3
+ *
4
+ * Authorization
5
+ *
6
+ * Immutable trust artifact proving that an Authority
7
+ * granted approval for an intended execution.
8
+ *
9
+ * Authorization is part of the canonical
10
+ * Execution Trust Chain.
11
+ *
12
+ * Authority
13
+ * ↓
14
+ * Authorization
15
+ * ↓
16
+ * Intent
17
+ * ↓
18
+ * Policy
19
+ * ↓
20
+ * Decision
21
+ */
22
+ export interface Authorization {
23
+ /**
24
+ * Unique Authorization identifier.
25
+ */
26
+ readonly authorizationId: string;
27
+ /**
28
+ * Authority issuing this Authorization.
29
+ */
30
+ readonly authorityId: string;
31
+ /**
32
+ * Business purpose for which the Authorization
33
+ * was granted.
34
+ *
35
+ * Examples:
36
+ * - Approve vendor payment
37
+ * - Authorize production deployment
38
+ * - Approve account closure
39
+ */
40
+ readonly purpose: string;
41
+ /**
42
+ * UTC timestamp when the Authorization
43
+ * was issued.
44
+ */
45
+ readonly issuedAt: Date;
46
+ /**
47
+ * Optional expiration timestamp.
48
+ *
49
+ * After this time the Authorization
50
+ * is no longer valid.
51
+ */
52
+ readonly expiresAt?: Date;
53
+ }
54
+ //# sourceMappingURL=authorization.d.ts.map