@vertesia/common 1.5.0-dev.20260722.120446Z → 1.5.0-dev.20260804.124748Z

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 (522) hide show
  1. package/lib/access-control-values.d.ts +98 -0
  2. package/lib/access-control-values.d.ts.map +1 -0
  3. package/lib/access-control-values.js +101 -0
  4. package/lib/access-control-values.js.map +1 -0
  5. package/lib/access-control.d.ts +22 -119
  6. package/lib/access-control.d.ts.map +1 -1
  7. package/lib/access-control.js +6 -78
  8. package/lib/access-control.js.map +1 -1
  9. package/lib/account-values.d.ts +53 -0
  10. package/lib/account-values.d.ts.map +1 -0
  11. package/lib/account-values.js +91 -0
  12. package/lib/account-values.js.map +1 -0
  13. package/lib/analytics.d.ts +12 -38
  14. package/lib/analytics.d.ts.map +1 -1
  15. package/lib/api-schemas/access-control.d.ts +215 -0
  16. package/lib/api-schemas/access-control.d.ts.map +1 -0
  17. package/lib/api-schemas/access-control.js +165 -0
  18. package/lib/api-schemas/access-control.js.map +1 -0
  19. package/lib/api-schemas/account.d.ts +101 -0
  20. package/lib/api-schemas/account.d.ts.map +1 -0
  21. package/lib/api-schemas/account.js +136 -0
  22. package/lib/api-schemas/account.js.map +1 -0
  23. package/lib/api-schemas/adapter.d.ts +80 -0
  24. package/lib/api-schemas/adapter.d.ts.map +1 -0
  25. package/lib/api-schemas/adapter.js +726 -0
  26. package/lib/api-schemas/adapter.js.map +1 -0
  27. package/lib/api-schemas/agent-runs.d.ts +3781 -0
  28. package/lib/api-schemas/agent-runs.d.ts.map +1 -0
  29. package/lib/api-schemas/agent-runs.js +991 -0
  30. package/lib/api-schemas/agent-runs.js.map +1 -0
  31. package/lib/api-schemas/analytics.d.ts +86 -0
  32. package/lib/api-schemas/analytics.d.ts.map +1 -0
  33. package/lib/api-schemas/analytics.js +58 -0
  34. package/lib/api-schemas/analytics.js.map +1 -0
  35. package/lib/api-schemas/apikey.d.ts +231 -0
  36. package/lib/api-schemas/apikey.d.ts.map +1 -0
  37. package/lib/api-schemas/apikey.js +172 -0
  38. package/lib/api-schemas/apikey.js.map +1 -0
  39. package/lib/api-schemas/app-lifecycle.d.ts +1114 -0
  40. package/lib/api-schemas/app-lifecycle.d.ts.map +1 -0
  41. package/lib/api-schemas/app-lifecycle.js +750 -0
  42. package/lib/api-schemas/app-lifecycle.js.map +1 -0
  43. package/lib/api-schemas/app-runtime.d.ts +9056 -0
  44. package/lib/api-schemas/app-runtime.d.ts.map +1 -0
  45. package/lib/api-schemas/app-runtime.js +782 -0
  46. package/lib/api-schemas/app-runtime.js.map +1 -0
  47. package/lib/api-schemas/apps.d.ts +247 -0
  48. package/lib/api-schemas/apps.d.ts.map +1 -0
  49. package/lib/api-schemas/apps.js +366 -0
  50. package/lib/api-schemas/apps.js.map +1 -0
  51. package/lib/api-schemas/audit-trail.d.ts +465 -0
  52. package/lib/api-schemas/audit-trail.d.ts.map +1 -0
  53. package/lib/api-schemas/audit-trail.js +218 -0
  54. package/lib/api-schemas/audit-trail.js.map +1 -0
  55. package/lib/api-schemas/bulk-operation.d.ts +104 -0
  56. package/lib/api-schemas/bulk-operation.d.ts.map +1 -0
  57. package/lib/api-schemas/bulk-operation.js +66 -0
  58. package/lib/api-schemas/bulk-operation.js.map +1 -0
  59. package/lib/api-schemas/commands.d.ts +50 -0
  60. package/lib/api-schemas/commands.d.ts.map +1 -0
  61. package/lib/api-schemas/commands.js +58 -0
  62. package/lib/api-schemas/commands.js.map +1 -0
  63. package/lib/api-schemas/content.d.ts +3561 -0
  64. package/lib/api-schemas/content.d.ts.map +1 -0
  65. package/lib/api-schemas/content.js +842 -0
  66. package/lib/api-schemas/content.js.map +1 -0
  67. package/lib/api-schemas/cost-analytics.d.ts +300 -0
  68. package/lib/api-schemas/cost-analytics.d.ts.map +1 -0
  69. package/lib/api-schemas/cost-analytics.js +218 -0
  70. package/lib/api-schemas/cost-analytics.js.map +1 -0
  71. package/lib/api-schemas/dashboard.d.ts +408 -0
  72. package/lib/api-schemas/dashboard.d.ts.map +1 -0
  73. package/lib/api-schemas/dashboard.js +311 -0
  74. package/lib/api-schemas/dashboard.js.map +1 -0
  75. package/lib/api-schemas/data-store.d.ts +1650 -0
  76. package/lib/api-schemas/data-store.d.ts.map +1 -0
  77. package/lib/api-schemas/data-store.js +504 -0
  78. package/lib/api-schemas/data-store.js.map +1 -0
  79. package/lib/api-schemas/document-processing.d.ts +1501 -0
  80. package/lib/api-schemas/document-processing.d.ts.map +1 -0
  81. package/lib/api-schemas/document-processing.js +312 -0
  82. package/lib/api-schemas/document-processing.js.map +1 -0
  83. package/lib/api-schemas/embeddings.d.ts +184 -0
  84. package/lib/api-schemas/embeddings.d.ts.map +1 -0
  85. package/lib/api-schemas/embeddings.js +102 -0
  86. package/lib/api-schemas/embeddings.js.map +1 -0
  87. package/lib/api-schemas/environment.d.ts +412 -0
  88. package/lib/api-schemas/environment.d.ts.map +1 -0
  89. package/lib/api-schemas/environment.js +170 -0
  90. package/lib/api-schemas/environment.js.map +1 -0
  91. package/lib/api-schemas/events.d.ts +4880 -0
  92. package/lib/api-schemas/events.d.ts.map +1 -0
  93. package/lib/api-schemas/events.js +832 -0
  94. package/lib/api-schemas/events.js.map +1 -0
  95. package/lib/api-schemas/files.d.ts +107 -0
  96. package/lib/api-schemas/files.d.ts.map +1 -0
  97. package/lib/api-schemas/files.js +137 -0
  98. package/lib/api-schemas/files.js.map +1 -0
  99. package/lib/api-schemas/group.d.ts +122 -0
  100. package/lib/api-schemas/group.d.ts.map +1 -0
  101. package/lib/api-schemas/group.js +142 -0
  102. package/lib/api-schemas/group.js.map +1 -0
  103. package/lib/api-schemas/index.d.ts +36 -0
  104. package/lib/api-schemas/index.d.ts.map +1 -0
  105. package/lib/api-schemas/index.js +36 -0
  106. package/lib/api-schemas/index.js.map +1 -0
  107. package/lib/api-schemas/indexing.d.ts +144 -0
  108. package/lib/api-schemas/indexing.d.ts.map +1 -0
  109. package/lib/api-schemas/indexing.js +217 -0
  110. package/lib/api-schemas/indexing.js.map +1 -0
  111. package/lib/api-schemas/integrations.d.ts +269 -0
  112. package/lib/api-schemas/integrations.d.ts.map +1 -0
  113. package/lib/api-schemas/integrations.js +335 -0
  114. package/lib/api-schemas/integrations.js.map +1 -0
  115. package/lib/api-schemas/interaction.d.ts +22454 -0
  116. package/lib/api-schemas/interaction.d.ts.map +1 -0
  117. package/lib/api-schemas/interaction.js +2065 -0
  118. package/lib/api-schemas/interaction.js.map +1 -0
  119. package/lib/api-schemas/invites.d.ts +162 -0
  120. package/lib/api-schemas/invites.d.ts.map +1 -0
  121. package/lib/api-schemas/invites.js +106 -0
  122. package/lib/api-schemas/invites.js.map +1 -0
  123. package/lib/api-schemas/oauth-server.d.ts +415 -0
  124. package/lib/api-schemas/oauth-server.d.ts.map +1 -0
  125. package/lib/api-schemas/oauth-server.js +193 -0
  126. package/lib/api-schemas/oauth-server.js.map +1 -0
  127. package/lib/api-schemas/oauth.d.ts +150 -0
  128. package/lib/api-schemas/oauth.d.ts.map +1 -0
  129. package/lib/api-schemas/oauth.js +148 -0
  130. package/lib/api-schemas/oauth.js.map +1 -0
  131. package/lib/api-schemas/parameters.d.ts +64 -0
  132. package/lib/api-schemas/parameters.d.ts.map +1 -0
  133. package/lib/api-schemas/parameters.js +246 -0
  134. package/lib/api-schemas/parameters.js.map +1 -0
  135. package/lib/api-schemas/process.d.ts +499 -0
  136. package/lib/api-schemas/process.d.ts.map +1 -0
  137. package/lib/api-schemas/process.js +817 -0
  138. package/lib/api-schemas/process.js.map +1 -0
  139. package/lib/api-schemas/project-configuration.d.ts +4900 -0
  140. package/lib/api-schemas/project-configuration.d.ts.map +1 -0
  141. package/lib/api-schemas/project-configuration.js +425 -0
  142. package/lib/api-schemas/project-configuration.js.map +1 -0
  143. package/lib/api-schemas/project.d.ts +7247 -0
  144. package/lib/api-schemas/project.d.ts.map +1 -0
  145. package/lib/api-schemas/project.js +185 -0
  146. package/lib/api-schemas/project.js.map +1 -0
  147. package/lib/api-schemas/prompt.d.ts +70 -0
  148. package/lib/api-schemas/prompt.d.ts.map +1 -0
  149. package/lib/api-schemas/prompt.js +77 -0
  150. package/lib/api-schemas/prompt.js.map +1 -0
  151. package/lib/api-schemas/quota.d.ts +90 -0
  152. package/lib/api-schemas/quota.d.ts.map +1 -0
  153. package/lib/api-schemas/quota.js +95 -0
  154. package/lib/api-schemas/quota.js.map +1 -0
  155. package/lib/api-schemas/registry.d.ts +97458 -0
  156. package/lib/api-schemas/registry.d.ts.map +1 -0
  157. package/lib/api-schemas/registry.js +2586 -0
  158. package/lib/api-schemas/registry.js.map +1 -0
  159. package/lib/api-schemas/schema-primitives.d.ts +5 -0
  160. package/lib/api-schemas/schema-primitives.d.ts.map +1 -0
  161. package/lib/api-schemas/schema-primitives.js +11 -0
  162. package/lib/api-schemas/schema-primitives.js.map +1 -0
  163. package/lib/api-schemas/secrets.d.ts +497 -0
  164. package/lib/api-schemas/secrets.d.ts.map +1 -0
  165. package/lib/api-schemas/secrets.js +298 -0
  166. package/lib/api-schemas/secrets.js.map +1 -0
  167. package/lib/api-schemas/store.d.ts +22140 -0
  168. package/lib/api-schemas/store.d.ts.map +1 -0
  169. package/lib/api-schemas/store.js +557 -0
  170. package/lib/api-schemas/store.js.map +1 -0
  171. package/lib/api-schemas/sts.d.ts +156 -0
  172. package/lib/api-schemas/sts.d.ts.map +1 -0
  173. package/lib/api-schemas/sts.js +96 -0
  174. package/lib/api-schemas/sts.js.map +1 -0
  175. package/lib/api-schemas/task.d.ts +215 -0
  176. package/lib/api-schemas/task.d.ts.map +1 -0
  177. package/lib/api-schemas/task.js +95 -0
  178. package/lib/api-schemas/task.js.map +1 -0
  179. package/lib/api-schemas/tools.d.ts +111 -0
  180. package/lib/api-schemas/tools.d.ts.map +1 -0
  181. package/lib/api-schemas/tools.js +122 -0
  182. package/lib/api-schemas/tools.js.map +1 -0
  183. package/lib/api-schemas/user.d.ts +208 -0
  184. package/lib/api-schemas/user.d.ts.map +1 -0
  185. package/lib/api-schemas/user.js +180 -0
  186. package/lib/api-schemas/user.js.map +1 -0
  187. package/lib/api-schemas/view-execution.d.ts +3163 -0
  188. package/lib/api-schemas/view-execution.d.ts.map +1 -0
  189. package/lib/api-schemas/view-execution.js +172 -0
  190. package/lib/api-schemas/view-execution.js.map +1 -0
  191. package/lib/api-schemas/views.d.ts +5990 -0
  192. package/lib/api-schemas/views.d.ts.map +1 -0
  193. package/lib/api-schemas/views.js +396 -0
  194. package/lib/api-schemas/views.js.map +1 -0
  195. package/lib/api-schemas/workflow-runs.d.ts +2209 -0
  196. package/lib/api-schemas/workflow-runs.d.ts.map +1 -0
  197. package/lib/api-schemas/workflow-runs.js +589 -0
  198. package/lib/api-schemas/workflow-runs.js.map +1 -0
  199. package/lib/apikey-values.d.ts +10 -0
  200. package/lib/apikey-values.d.ts.map +1 -0
  201. package/lib/apikey-values.js +11 -0
  202. package/lib/apikey-values.js.map +1 -0
  203. package/lib/apikey.d.ts +37 -36
  204. package/lib/apikey.d.ts.map +1 -1
  205. package/lib/apikey.js +5 -4
  206. package/lib/apikey.js.map +1 -1
  207. package/lib/apps.d.ts +116 -1121
  208. package/lib/apps.d.ts.map +1 -1
  209. package/lib/apps.js.map +1 -1
  210. package/lib/ask-user.d.ts +8 -1
  211. package/lib/ask-user.d.ts.map +1 -1
  212. package/lib/audit-trail.d.ts +17 -128
  213. package/lib/audit-trail.d.ts.map +1 -1
  214. package/lib/audit-trail.js.map +1 -1
  215. package/lib/browser-credentials.d.ts +11 -106
  216. package/lib/browser-credentials.d.ts.map +1 -1
  217. package/lib/common.d.ts +59 -81
  218. package/lib/common.d.ts.map +1 -1
  219. package/lib/cost-analytics.d.ts +14 -167
  220. package/lib/cost-analytics.d.ts.map +1 -1
  221. package/lib/cost-analytics.js.map +1 -1
  222. package/lib/data-platform.d.ts +122 -786
  223. package/lib/data-platform.d.ts.map +1 -1
  224. package/lib/data-platform.js +41 -61
  225. package/lib/data-platform.js.map +1 -1
  226. package/lib/email.d.ts +5 -17
  227. package/lib/email.d.ts.map +1 -1
  228. package/lib/email.js +0 -3
  229. package/lib/email.js.map +1 -1
  230. package/lib/embeddings.d.ts +14 -56
  231. package/lib/embeddings.d.ts.map +1 -1
  232. package/lib/environment.d.ts +19 -113
  233. package/lib/environment.d.ts.map +1 -1
  234. package/lib/environment.js +3 -0
  235. package/lib/environment.js.map +1 -1
  236. package/lib/facets.d.ts +4 -7
  237. package/lib/facets.d.ts.map +1 -1
  238. package/lib/group.d.ts +33 -39
  239. package/lib/group.d.ts.map +1 -1
  240. package/lib/group.js +0 -1
  241. package/lib/group.js.map +1 -1
  242. package/lib/index.d.ts +7 -0
  243. package/lib/index.d.ts.map +1 -1
  244. package/lib/index.js.map +1 -1
  245. package/lib/integrations.d.ts +20 -108
  246. package/lib/integrations.d.ts.map +1 -1
  247. package/lib/integrations.js.map +1 -1
  248. package/lib/interaction-values.d.ts +11 -0
  249. package/lib/interaction-values.d.ts.map +1 -0
  250. package/lib/interaction-values.js +24 -0
  251. package/lib/interaction-values.js.map +1 -0
  252. package/lib/interaction.d.ts +116 -734
  253. package/lib/interaction.d.ts.map +1 -1
  254. package/lib/interaction.js +56 -12
  255. package/lib/interaction.js.map +1 -1
  256. package/lib/meters.d.ts +11 -7
  257. package/lib/meters.d.ts.map +1 -1
  258. package/lib/meters.js.map +1 -1
  259. package/lib/oauth-server.d.ts +33 -119
  260. package/lib/oauth-server.d.ts.map +1 -1
  261. package/lib/oauth.d.ts +14 -96
  262. package/lib/oauth.d.ts.map +1 -1
  263. package/lib/oauth.js +0 -4
  264. package/lib/oauth.js.map +1 -1
  265. package/lib/payload.d.ts +15 -38
  266. package/lib/payload.d.ts.map +1 -1
  267. package/lib/platform-event.d.ts +49 -462
  268. package/lib/platform-event.d.ts.map +1 -1
  269. package/lib/platform-event.js.map +1 -1
  270. package/lib/principal-context.d.ts +10 -15
  271. package/lib/principal-context.d.ts.map +1 -1
  272. package/lib/project-values.d.ts +24 -0
  273. package/lib/project-values.d.ts.map +1 -0
  274. package/lib/project-values.js +42 -0
  275. package/lib/project-values.js.map +1 -0
  276. package/lib/project.d.ts +55 -503
  277. package/lib/project.d.ts.map +1 -1
  278. package/lib/project.js +6 -76
  279. package/lib/project.js.map +1 -1
  280. package/lib/prompt.d.ts +20 -51
  281. package/lib/prompt.d.ts.map +1 -1
  282. package/lib/prompt.js.map +1 -1
  283. package/lib/query.d.ts +27 -88
  284. package/lib/query.d.ts.map +1 -1
  285. package/lib/rate-limiter.d.ts +19 -70
  286. package/lib/rate-limiter.d.ts.map +1 -1
  287. package/lib/rate-limiter.js +0 -3
  288. package/lib/rate-limiter.js.map +1 -1
  289. package/lib/refs.d.ts +3 -11
  290. package/lib/refs.d.ts.map +1 -1
  291. package/lib/refs.js.map +1 -1
  292. package/lib/roles/types.d.ts +14 -20
  293. package/lib/roles/types.d.ts.map +1 -1
  294. package/lib/roles/types.js +5 -9
  295. package/lib/roles/types.js.map +1 -1
  296. package/lib/runs.d.ts +6 -25
  297. package/lib/runs.d.ts.map +1 -1
  298. package/lib/secrets.d.ts +20 -105
  299. package/lib/secrets.d.ts.map +1 -1
  300. package/lib/store/agent-approval.d.ts +5 -14
  301. package/lib/store/agent-approval.d.ts.map +1 -1
  302. package/lib/store/agent-approval.js.map +1 -1
  303. package/lib/store/agent-run.d.ts +63 -342
  304. package/lib/store/agent-run.d.ts.map +1 -1
  305. package/lib/store/collections.d.ts +11 -63
  306. package/lib/store/collections.d.ts.map +1 -1
  307. package/lib/store/collections.js.map +1 -1
  308. package/lib/store/conversation-state.d.ts +63 -61
  309. package/lib/store/conversation-state.d.ts.map +1 -1
  310. package/lib/store/conversation-state.js +2 -0
  311. package/lib/store/conversation-state.js.map +1 -1
  312. package/lib/store/doc-analyzer.d.ts +9 -32
  313. package/lib/store/doc-analyzer.d.ts.map +1 -1
  314. package/lib/store/dsl-workflow.d.ts +37 -151
  315. package/lib/store/dsl-workflow.d.ts.map +1 -1
  316. package/lib/store/dsl-workflow.js.map +1 -1
  317. package/lib/store/editing-policy-schema.generated.d.ts +3 -0
  318. package/lib/store/editing-policy-schema.generated.d.ts.map +1 -0
  319. package/lib/store/editing-policy-schema.generated.js +28 -0
  320. package/lib/store/editing-policy-schema.generated.js.map +1 -0
  321. package/lib/store/grounded-extraction.d.ts +7 -104
  322. package/lib/store/grounded-extraction.d.ts.map +1 -1
  323. package/lib/store/grounded-extraction.js.map +1 -1
  324. package/lib/store/index.d.ts +2 -0
  325. package/lib/store/index.d.ts.map +1 -1
  326. package/lib/store/index.js +3 -0
  327. package/lib/store/index.js.map +1 -1
  328. package/lib/store/intake-policy-schema.generated.d.ts +3 -0
  329. package/lib/store/intake-policy-schema.generated.d.ts.map +1 -0
  330. package/lib/store/intake-policy-schema.generated.js +1425 -0
  331. package/lib/store/intake-policy-schema.generated.js.map +1 -0
  332. package/lib/store/process-schema.d.ts +80 -0
  333. package/lib/store/process-schema.d.ts.map +1 -1
  334. package/lib/store/process-schema.js +79 -0
  335. package/lib/store/process-schema.js.map +1 -1
  336. package/lib/store/process-validation.d.ts.map +1 -1
  337. package/lib/store/process-validation.js +70 -2
  338. package/lib/store/process-validation.js.map +1 -1
  339. package/lib/store/process.d.ts +36 -125
  340. package/lib/store/process.d.ts.map +1 -1
  341. package/lib/store/process.js.map +1 -1
  342. package/lib/store/rendering.d.ts +9 -64
  343. package/lib/store/rendering.d.ts.map +1 -1
  344. package/lib/store/rendering.js.map +1 -1
  345. package/lib/store/store.d.ts +98 -693
  346. package/lib/store/store.d.ts.map +1 -1
  347. package/lib/store/store.js +4 -443
  348. package/lib/store/store.js.map +1 -1
  349. package/lib/store/task.d.ts +15 -59
  350. package/lib/store/task.d.ts.map +1 -1
  351. package/lib/store/task.js +0 -3
  352. package/lib/store/task.js.map +1 -1
  353. package/lib/store/workflow.d.ts +56 -516
  354. package/lib/store/workflow.d.ts.map +1 -1
  355. package/lib/store/workflow.js +28 -11
  356. package/lib/store/workflow.js.map +1 -1
  357. package/lib/sts-token-types.d.ts +12 -66
  358. package/lib/sts-token-types.d.ts.map +1 -1
  359. package/lib/sts-token-types.js.map +1 -1
  360. package/lib/tools.d.ts +8 -100
  361. package/lib/tools.d.ts.map +1 -1
  362. package/lib/transient-tokens-values.d.ts +11 -0
  363. package/lib/transient-tokens-values.d.ts.map +1 -0
  364. package/lib/transient-tokens-values.js +12 -0
  365. package/lib/transient-tokens-values.js.map +1 -0
  366. package/lib/transient-tokens.d.ts +15 -13
  367. package/lib/transient-tokens.d.ts.map +1 -1
  368. package/lib/transient-tokens.js +5 -5
  369. package/lib/transient-tokens.js.map +1 -1
  370. package/lib/user.d.ts +54 -155
  371. package/lib/user.d.ts.map +1 -1
  372. package/lib/user.js +1 -78
  373. package/lib/user.js.map +1 -1
  374. package/lib/versions.d.ts +24 -1
  375. package/lib/versions.d.ts.map +1 -1
  376. package/lib/versions.js +23 -0
  377. package/lib/versions.js.map +1 -1
  378. package/lib/vertesia-common.js +6 -2
  379. package/lib/vertesia-common.js.map +1 -1
  380. package/lib/views-schema.d.ts +4 -4
  381. package/lib/views.d.ts +56 -312
  382. package/lib/views.d.ts.map +1 -1
  383. package/lib/views.js.map +1 -1
  384. package/package.json +14 -5
  385. package/src/access-control-values.ts +113 -0
  386. package/src/access-control.ts +33 -138
  387. package/src/account-values.ts +95 -0
  388. package/src/agent-resources.test.ts +100 -0
  389. package/src/analytics.ts +18 -42
  390. package/src/api-schemas/access-control.contract.test.ts +209 -0
  391. package/src/api-schemas/access-control.ts +208 -0
  392. package/src/api-schemas/account.contract.test.ts +318 -0
  393. package/src/api-schemas/account.ts +150 -0
  394. package/src/api-schemas/adapter-edge-cases.test.ts +480 -0
  395. package/src/api-schemas/adapter.ts +778 -0
  396. package/src/api-schemas/agent-runs.ts +1081 -0
  397. package/src/api-schemas/analytics.ts +65 -0
  398. package/src/api-schemas/apikey.contract.test.ts +270 -0
  399. package/src/api-schemas/apikey.ts +199 -0
  400. package/src/api-schemas/app-lifecycle.ts +841 -0
  401. package/src/api-schemas/app-runtime.ts +919 -0
  402. package/src/api-schemas/apps.ts +415 -0
  403. package/src/api-schemas/audit-trail.ts +243 -0
  404. package/src/api-schemas/bulk-operation.contract.test.ts +39 -0
  405. package/src/api-schemas/bulk-operation.ts +75 -0
  406. package/src/api-schemas/bundle-isolation.test.ts +80 -0
  407. package/src/api-schemas/commands.contract.test.ts +51 -0
  408. package/src/api-schemas/commands.ts +62 -0
  409. package/src/api-schemas/content.ts +939 -0
  410. package/src/api-schemas/cost-analytics.contract.test.ts +64 -0
  411. package/src/api-schemas/cost-analytics.ts +235 -0
  412. package/src/api-schemas/dashboard.contract.test.ts +127 -0
  413. package/src/api-schemas/dashboard.ts +351 -0
  414. package/src/api-schemas/data-store.contract.test.ts +91 -0
  415. package/src/api-schemas/data-store.ts +571 -0
  416. package/src/api-schemas/document-processing.contract.test.ts +76 -0
  417. package/src/api-schemas/document-processing.ts +344 -0
  418. package/src/api-schemas/embeddings.ts +113 -0
  419. package/src/api-schemas/environment.contract.test.ts +184 -0
  420. package/src/api-schemas/environment.ts +190 -0
  421. package/src/api-schemas/events.ts +921 -0
  422. package/src/api-schemas/files.ts +159 -0
  423. package/src/api-schemas/group.contract.test.ts +205 -0
  424. package/src/api-schemas/group.ts +155 -0
  425. package/src/api-schemas/index.ts +35 -0
  426. package/src/api-schemas/indexing.contract.test.ts +83 -0
  427. package/src/api-schemas/indexing.ts +234 -0
  428. package/src/api-schemas/integrations.ts +369 -0
  429. package/src/api-schemas/interaction.ts +2357 -0
  430. package/src/api-schemas/invites.contract.test.ts +268 -0
  431. package/src/api-schemas/invites.ts +127 -0
  432. package/src/api-schemas/llumiverse.contract.test.ts +108 -0
  433. package/src/api-schemas/oauth-server.ts +219 -0
  434. package/src/api-schemas/oauth.contract.test.ts +118 -0
  435. package/src/api-schemas/oauth.ts +166 -0
  436. package/src/api-schemas/parameters.test.ts +402 -0
  437. package/src/api-schemas/parameters.ts +310 -0
  438. package/src/api-schemas/process.ts +929 -0
  439. package/src/api-schemas/project-configuration.ts +478 -0
  440. package/src/api-schemas/project.contract.test.ts +365 -0
  441. package/src/api-schemas/project.ts +214 -0
  442. package/src/api-schemas/prompt.ts +88 -0
  443. package/src/api-schemas/pruning-limits.test.ts +189 -0
  444. package/src/api-schemas/quota.contract.test.ts +147 -0
  445. package/src/api-schemas/quota.ts +122 -0
  446. package/src/api-schemas/registry-groups.test.ts +91 -0
  447. package/src/api-schemas/registry.ts +3487 -0
  448. package/src/api-schemas/response-pruning.test.ts +260 -0
  449. package/src/api-schemas/schema-primitives.ts +12 -0
  450. package/src/api-schemas/secrets.ts +332 -0
  451. package/src/api-schemas/store.contract.test.ts +450 -0
  452. package/src/api-schemas/store.ts +604 -0
  453. package/src/api-schemas/sts.contract.test.ts +80 -0
  454. package/src/api-schemas/sts.ts +110 -0
  455. package/src/api-schemas/task.ts +104 -0
  456. package/src/api-schemas/tools.ts +140 -0
  457. package/src/api-schemas/user.contract.test.ts +191 -0
  458. package/src/api-schemas/user.ts +204 -0
  459. package/src/api-schemas/view-execution.ts +200 -0
  460. package/src/api-schemas/views.ts +437 -0
  461. package/src/api-schemas/workflow-runs.ts +653 -0
  462. package/src/apikey-values.ts +10 -0
  463. package/src/apikey.ts +49 -40
  464. package/src/apps.ts +249 -1179
  465. package/src/ask-user.ts +9 -1
  466. package/src/audit-trail.ts +45 -137
  467. package/src/browser-credentials.ts +21 -106
  468. package/src/common.ts +67 -78
  469. package/src/cost-analytics.ts +37 -176
  470. package/src/data-platform.ts +205 -776
  471. package/src/email.ts +5 -17
  472. package/src/embeddings.ts +22 -60
  473. package/src/environment.ts +52 -124
  474. package/src/facets.ts +4 -7
  475. package/src/group.ts +38 -42
  476. package/src/index.ts +11 -0
  477. package/src/integrations.ts +39 -129
  478. package/src/interaction-values.ts +23 -0
  479. package/src/interaction.ts +231 -841
  480. package/src/meters.ts +11 -7
  481. package/src/oauth-server.ts +58 -127
  482. package/src/oauth.ts +24 -108
  483. package/src/payload.ts +25 -40
  484. package/src/platform-event.ts +98 -484
  485. package/src/principal-context.ts +11 -15
  486. package/src/project-values.ts +41 -0
  487. package/src/project.ts +116 -588
  488. package/src/prompt.ts +34 -61
  489. package/src/query.ts +34 -93
  490. package/src/rate-limiter.ts +27 -75
  491. package/src/refs.ts +4 -11
  492. package/src/roles/types.ts +20 -20
  493. package/src/runs.ts +11 -24
  494. package/src/secrets.ts +38 -117
  495. package/src/store/agent-approval.ts +9 -14
  496. package/src/store/agent-run.ts +106 -434
  497. package/src/store/collections.ts +21 -63
  498. package/src/store/content-type-editing.test.ts +17 -0
  499. package/src/store/conversation-state.ts +78 -64
  500. package/src/store/doc-analyzer.ts +17 -33
  501. package/src/store/dsl-workflow.ts +62 -158
  502. package/src/store/editing-policy-schema.generated.ts +30 -0
  503. package/src/store/grounded-extraction.ts +13 -104
  504. package/src/store/index.ts +3 -0
  505. package/src/store/intake-policy-schema.generated.ts +1442 -0
  506. package/src/store/process-schema.test.ts +43 -0
  507. package/src/store/process-schema.ts +79 -0
  508. package/src/store/process-validation.test.ts +141 -0
  509. package/src/store/process-validation.ts +82 -2
  510. package/src/store/process.ts +70 -146
  511. package/src/store/rendering.ts +15 -64
  512. package/src/store/store.ts +197 -1182
  513. package/src/store/task.ts +25 -59
  514. package/src/store/workflow.ts +103 -554
  515. package/src/sts-token-types.ts +24 -75
  516. package/src/tools.ts +18 -97
  517. package/src/transient-tokens-values.ts +11 -0
  518. package/src/transient-tokens.ts +16 -13
  519. package/src/user.ts +74 -214
  520. package/src/versions.ts +24 -0
  521. package/src/views-schema.test.ts +9 -1
  522. package/src/views.ts +106 -329
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Access-control values that exist at runtime — the enums and the scope list.
3
+ *
4
+ * Split out of `access-control.ts` and `roles/types.ts` for the same reason `account-values.ts` was
5
+ * split out of `user.ts`: the API schemas need these values (`z.enum(Permission)`,
6
+ * `z.enum(AbacScopes)`) while those two modules need the types the schemas infer. Keeping them where
7
+ * they were would make each import a module that imports it back; here, both sides depend on this
8
+ * module and nothing depends on them.
9
+ *
10
+ * Everything is re-exported from its original module, so existing import paths keep working — this
11
+ * is a move, not a rename.
12
+ */
13
+ export declare enum Permission {
14
+ int_read = "interaction:read",
15
+ int_write = "interaction:write",
16
+ int_delete = "interaction:delete",
17
+ int_execute = "interaction:execute",
18
+ run_read = "run:read",
19
+ run_write = "run:write",
20
+ env_admin = "environment:admin",
21
+ app_manage = "app:manage",
22
+ project_admin = "project:admin",
23
+ project_integration_read = "project:integration_read",
24
+ project_settings_write = "project:settings_write",
25
+ api_key_create = "api_key:create",
26
+ api_key_read = "api_key:read",
27
+ api_key_secret_read = "api_key:secret_read",
28
+ api_key_update = "api_key:update",
29
+ api_key_delete = "api_key:delete",
30
+ account_read = "account:read",
31
+ account_write = "account:write",
32
+ account_admin = "account:admin",
33
+ manage_billing = "account:billing",
34
+ /** View cost and usage analytics */
35
+ billing_read = "billing:read",
36
+ /** View account and project audit events. */
37
+ audit_read = "audit:read",
38
+ account_member = "account:member",
39
+ content_read = "content:read",
40
+ content_read_all = "content:read_all",
41
+ content_write = "content:write",
42
+ content_delete = "content:delete",
43
+ content_admin = "content:admin",//manage schemas
44
+ content_superadmin = "content:superadmin",// list all objects and collections
45
+ workflow_read = "workflow:read",
46
+ workflow_run = "workflow:run",
47
+ workflow_admin = "workflow:admin",
48
+ workflow_superadmin = "workflow:superadmin",
49
+ agent_run_read = "agent_run:read",
50
+ task_read = "task:read",
51
+ task_manage = "task:manage",
52
+ iam_impersonate = "iam:impersonate",
53
+ /** whether the user has access to Sutdio App. */
54
+ studio_access = "studio:access"
55
+ }
56
+ export declare enum AccessControlResourceType {
57
+ project = "project",
58
+ environment = "environment",
59
+ account = "account",
60
+ interaction = "interaction",
61
+ app = "application",
62
+ /**
63
+ * Dynamic resource matching by property conditions at query time. The role
64
+ * partitions (content, future tasks/etc.) determine which kind of object
65
+ * the conditions match — selected via `AceConditions.scope`.
66
+ *
67
+ * NOTE: the string value remains `'content_set'` for backward compatibility
68
+ * with stored ACEs and JWTs. The wire/DB rename to `'resource_set'` is a
69
+ * separate concern (deferred). Until then, code reads
70
+ * `AccessControlResourceType.resource_set` but the value on the wire stays
71
+ * `'content_set'`.
72
+ */
73
+ resource_set = "content_set"
74
+ }
75
+ export declare enum AccessControlPrincipalType {
76
+ user = "user",
77
+ group = "group",
78
+ apikey = "apikey",
79
+ /** Dynamic principal matching by user/group properties at token time. */
80
+ principal_set = "principal_set"
81
+ }
82
+ /**
83
+ * Kind of object a ResourceSet's `resource_props` matches at query time. Used
84
+ * in `AceConditions.scope` (validated at runtime against this list) and as
85
+ * the prefix in JWT `content_security` keys (e.g. `collection:read`).
86
+ *
87
+ * Each scope is owned by exactly one partition. When adding a new partition
88
+ * (e.g. tasks), extend this list with the new scope(s) AND extend `RoleDomain`
89
+ * with the new domain.
90
+ */
91
+ export declare const AbacScopes: readonly ["document", "collection", "task"];
92
+ /**
93
+ * Logical grouping of roles by the service area that owns them. Declared as a
94
+ * runtime list so the role schemas can publish it as an enum component; the
95
+ * `RoleDomain` type is inferred from it in `roles/types.ts`.
96
+ */
97
+ export declare const RoleDomains: readonly ["system", "content", "tasks"];
98
+ //# sourceMappingURL=access-control-values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access-control-values.d.ts","sourceRoot":"","sources":["../src/access-control-values.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,oBAAY,UAAU;IAClB,QAAQ,qBAAqB;IAC7B,SAAS,sBAAsB;IAC/B,UAAU,uBAAuB;IAEjC,WAAW,wBAAwB;IACnC,QAAQ,aAAa;IACrB,SAAS,cAAc;IAEvB,SAAS,sBAAsB;IAE/B,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,wBAAwB,6BAA6B;IACrD,sBAAsB,2BAA2B;IAEjD,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IAEjC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,cAAc,oBAAoB;IAClC,oCAAoC;IACpC,YAAY,iBAAiB;IAC7B,6CAA6C;IAC7C,UAAU,eAAe;IACzB,cAAc,mBAAmB;IAEjC,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,aAAa,kBAAkB,CAAE,gBAAgB;IACjD,kBAAkB,uBAAuB,CAAE,mCAAmC;IAE9E,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAE3C,cAAc,mBAAmB;IAEjC,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAE3B,eAAe,oBAAoB;IAEnC,iDAAiD;IACjD,aAAa,kBAAkB;CAClC;AAED,oBAAY,yBAAyB;IACjC,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,GAAG,gBAAgB;IACnB;;;;;;;;;;OAUG;IACH,YAAY,gBAAgB;CAC/B;AAED,oBAAY,0BAA0B;IAClC,IAAI,SAAS;IACb,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,yEAAyE;IACzE,aAAa,kBAAkB;CAClC;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,6CAA8C,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,WAAW,yCAA0C,CAAC"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Access-control values that exist at runtime — the enums and the scope list.
3
+ *
4
+ * Split out of `access-control.ts` and `roles/types.ts` for the same reason `account-values.ts` was
5
+ * split out of `user.ts`: the API schemas need these values (`z.enum(Permission)`,
6
+ * `z.enum(AbacScopes)`) while those two modules need the types the schemas infer. Keeping them where
7
+ * they were would make each import a module that imports it back; here, both sides depend on this
8
+ * module and nothing depends on them.
9
+ *
10
+ * Everything is re-exported from its original module, so existing import paths keep working — this
11
+ * is a move, not a rename.
12
+ */
13
+ export var Permission;
14
+ (function (Permission) {
15
+ Permission["int_read"] = "interaction:read";
16
+ Permission["int_write"] = "interaction:write";
17
+ Permission["int_delete"] = "interaction:delete";
18
+ Permission["int_execute"] = "interaction:execute";
19
+ Permission["run_read"] = "run:read";
20
+ Permission["run_write"] = "run:write";
21
+ Permission["env_admin"] = "environment:admin";
22
+ Permission["app_manage"] = "app:manage";
23
+ Permission["project_admin"] = "project:admin";
24
+ Permission["project_integration_read"] = "project:integration_read";
25
+ Permission["project_settings_write"] = "project:settings_write";
26
+ Permission["api_key_create"] = "api_key:create";
27
+ Permission["api_key_read"] = "api_key:read";
28
+ Permission["api_key_secret_read"] = "api_key:secret_read";
29
+ Permission["api_key_update"] = "api_key:update";
30
+ Permission["api_key_delete"] = "api_key:delete";
31
+ Permission["account_read"] = "account:read";
32
+ Permission["account_write"] = "account:write";
33
+ Permission["account_admin"] = "account:admin";
34
+ Permission["manage_billing"] = "account:billing";
35
+ /** View cost and usage analytics */
36
+ Permission["billing_read"] = "billing:read";
37
+ /** View account and project audit events. */
38
+ Permission["audit_read"] = "audit:read";
39
+ Permission["account_member"] = "account:member";
40
+ Permission["content_read"] = "content:read";
41
+ Permission["content_read_all"] = "content:read_all";
42
+ Permission["content_write"] = "content:write";
43
+ Permission["content_delete"] = "content:delete";
44
+ Permission["content_admin"] = "content:admin";
45
+ Permission["content_superadmin"] = "content:superadmin";
46
+ Permission["workflow_read"] = "workflow:read";
47
+ Permission["workflow_run"] = "workflow:run";
48
+ Permission["workflow_admin"] = "workflow:admin";
49
+ Permission["workflow_superadmin"] = "workflow:superadmin";
50
+ Permission["agent_run_read"] = "agent_run:read";
51
+ Permission["task_read"] = "task:read";
52
+ Permission["task_manage"] = "task:manage";
53
+ Permission["iam_impersonate"] = "iam:impersonate";
54
+ /** whether the user has access to Sutdio App. */
55
+ Permission["studio_access"] = "studio:access";
56
+ })(Permission || (Permission = {}));
57
+ export var AccessControlResourceType;
58
+ (function (AccessControlResourceType) {
59
+ AccessControlResourceType["project"] = "project";
60
+ AccessControlResourceType["environment"] = "environment";
61
+ AccessControlResourceType["account"] = "account";
62
+ AccessControlResourceType["interaction"] = "interaction";
63
+ AccessControlResourceType["app"] = "application";
64
+ /**
65
+ * Dynamic resource matching by property conditions at query time. The role
66
+ * partitions (content, future tasks/etc.) determine which kind of object
67
+ * the conditions match — selected via `AceConditions.scope`.
68
+ *
69
+ * NOTE: the string value remains `'content_set'` for backward compatibility
70
+ * with stored ACEs and JWTs. The wire/DB rename to `'resource_set'` is a
71
+ * separate concern (deferred). Until then, code reads
72
+ * `AccessControlResourceType.resource_set` but the value on the wire stays
73
+ * `'content_set'`.
74
+ */
75
+ AccessControlResourceType["resource_set"] = "content_set";
76
+ })(AccessControlResourceType || (AccessControlResourceType = {}));
77
+ export var AccessControlPrincipalType;
78
+ (function (AccessControlPrincipalType) {
79
+ AccessControlPrincipalType["user"] = "user";
80
+ AccessControlPrincipalType["group"] = "group";
81
+ AccessControlPrincipalType["apikey"] = "apikey";
82
+ /** Dynamic principal matching by user/group properties at token time. */
83
+ AccessControlPrincipalType["principal_set"] = "principal_set";
84
+ })(AccessControlPrincipalType || (AccessControlPrincipalType = {}));
85
+ /**
86
+ * Kind of object a ResourceSet's `resource_props` matches at query time. Used
87
+ * in `AceConditions.scope` (validated at runtime against this list) and as
88
+ * the prefix in JWT `content_security` keys (e.g. `collection:read`).
89
+ *
90
+ * Each scope is owned by exactly one partition. When adding a new partition
91
+ * (e.g. tasks), extend this list with the new scope(s) AND extend `RoleDomain`
92
+ * with the new domain.
93
+ */
94
+ export const AbacScopes = ['document', 'collection', 'task'];
95
+ /**
96
+ * Logical grouping of roles by the service area that owns them. Declared as a
97
+ * runtime list so the role schemas can publish it as an enum component; the
98
+ * `RoleDomain` type is inferred from it in `roles/types.ts`.
99
+ */
100
+ export const RoleDomains = ['system', 'content', 'tasks'];
101
+ //# sourceMappingURL=access-control-values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access-control-values.js","sourceRoot":"","sources":["../src/access-control-values.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,CAAN,IAAY,UAqDX;AArDD,WAAY,UAAU;IAClB,2CAA6B,CAAA;IAC7B,6CAA+B,CAAA;IAC/B,+CAAiC,CAAA;IAEjC,iDAAmC,CAAA;IACnC,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IAEvB,6CAA+B,CAAA;IAE/B,uCAAyB,CAAA;IACzB,6CAA+B,CAAA;IAC/B,mEAAqD,CAAA;IACrD,+DAAiD,CAAA;IAEjD,+CAAiC,CAAA;IACjC,2CAA6B,CAAA;IAC7B,yDAA2C,CAAA;IAC3C,+CAAiC,CAAA;IACjC,+CAAiC,CAAA;IAEjC,2CAA6B,CAAA;IAC7B,6CAA+B,CAAA;IAC/B,6CAA+B,CAAA;IAC/B,gDAAkC,CAAA;IAClC,oCAAoC;IACpC,2CAA6B,CAAA;IAC7B,6CAA6C;IAC7C,uCAAyB,CAAA;IACzB,+CAAiC,CAAA;IAEjC,2CAA6B,CAAA;IAC7B,mDAAqC,CAAA;IACrC,6CAA+B,CAAA;IAC/B,+CAAiC,CAAA;IACjC,6CAA+B,CAAA;IAC/B,uDAAyC,CAAA;IAEzC,6CAA+B,CAAA;IAC/B,2CAA6B,CAAA;IAC7B,+CAAiC,CAAA;IACjC,yDAA2C,CAAA;IAE3C,+CAAiC,CAAA;IAEjC,qCAAuB,CAAA;IACvB,yCAA2B,CAAA;IAE3B,iDAAmC,CAAA;IAEnC,iDAAiD;IACjD,6CAA+B,CAAA;AACnC,CAAC,EArDW,UAAU,KAAV,UAAU,QAqDrB;AAED,MAAM,CAAN,IAAY,yBAkBX;AAlBD,WAAY,yBAAyB;IACjC,gDAAmB,CAAA;IACnB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB;;;;;;;;;;OAUG;IACH,yDAA4B,CAAA;AAChC,CAAC,EAlBW,yBAAyB,KAAzB,yBAAyB,QAkBpC;AAED,MAAM,CAAN,IAAY,0BAMX;AAND,WAAY,0BAA0B;IAClC,2CAAa,CAAA;IACb,6CAAe,CAAA;IACf,+CAAiB,CAAA;IACjB,yEAAyE;IACzE,6DAA+B,CAAA;AACnC,CAAC,EANW,0BAA0B,KAA1B,0BAA0B,QAMrC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAU,CAAC;AAEtE;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC"}
@@ -1,78 +1,16 @@
1
+ import type { z } from 'zod';
1
2
  /**
2
3
  * @module access-control
3
4
  * @description
4
5
  * Access control interfaces
5
6
  */
6
- import type { AbacScope } from './roles/types.js';
7
- export declare enum Permission {
8
- int_read = "interaction:read",
9
- int_write = "interaction:write",
10
- int_delete = "interaction:delete",
11
- int_execute = "interaction:execute",
12
- run_read = "run:read",
13
- run_write = "run:write",
14
- env_admin = "environment:admin",
15
- app_manage = "app:manage",
16
- project_admin = "project:admin",
17
- project_integration_read = "project:integration_read",
18
- project_settings_write = "project:settings_write",
19
- api_key_create = "api_key:create",
20
- api_key_read = "api_key:read",
21
- api_key_secret_read = "api_key:secret_read",
22
- api_key_update = "api_key:update",
23
- api_key_delete = "api_key:delete",
24
- account_read = "account:read",
25
- account_write = "account:write",
26
- account_admin = "account:admin",
27
- manage_billing = "account:billing",
28
- /** View cost and usage analytics */
29
- billing_read = "billing:read",
30
- /** View account and project audit events. */
31
- audit_read = "audit:read",
32
- account_member = "account:member",
33
- content_read = "content:read",
34
- content_read_all = "content:read_all",
35
- content_write = "content:write",
36
- content_delete = "content:delete",
37
- content_admin = "content:admin",//manage schemas
38
- content_superadmin = "content:superadmin",// list all objects and collections
39
- workflow_read = "workflow:read",
40
- workflow_run = "workflow:run",
41
- workflow_admin = "workflow:admin",
42
- workflow_superadmin = "workflow:superadmin",
43
- agent_run_read = "agent_run:read",
44
- task_read = "task:read",
45
- task_manage = "task:manage",
46
- iam_impersonate = "iam:impersonate",
47
- /** whether the user has access to Sutdio App. */
48
- studio_access = "studio:access"
49
- }
50
- export declare enum AccessControlResourceType {
51
- project = "project",
52
- environment = "environment",
53
- account = "account",
54
- interaction = "interaction",
55
- app = "application",
56
- /**
57
- * Dynamic resource matching by property conditions at query time. The role
58
- * partitions (content, future tasks/etc.) determine which kind of object
59
- * the conditions match — selected via `AceConditions.scope`.
60
- *
61
- * NOTE: the string value remains `'content_set'` for backward compatibility
62
- * with stored ACEs and JWTs. The wire/DB rename to `'resource_set'` is a
63
- * separate concern (deferred). Until then, code reads
64
- * `AccessControlResourceType.resource_set` but the value on the wire stays
65
- * `'content_set'`.
66
- */
67
- resource_set = "content_set"
68
- }
69
- export declare enum AccessControlPrincipalType {
70
- user = "user",
71
- group = "group",
72
- apikey = "apikey",
73
- /** Dynamic principal matching by user/group properties at token time. */
74
- principal_set = "principal_set"
75
- }
7
+ import type { AccessControlResourceType } from './access-control-values.js';
8
+ import type { ACECreatePayloadSchema, ACEUpdatePayloadSchema, AccessControlEntrySchema, AceConditionsSchema, PropertyConditionsSchema, PropertyConditionValueSchema } from './api-schemas/access-control.js';
9
+ /**
10
+ * The enums live in `./access-control-values.js` so the API schemas can consume them without
11
+ * importing this module back. Re-exported here so every existing import path keeps working.
12
+ */
13
+ export * from './access-control-values.js';
76
14
  /**
77
15
  * MongoDB query syntax subset for matching properties.
78
16
  * Keys are property names, values are either direct match values or operator objects.
@@ -88,57 +26,22 @@ export declare enum AccessControlPrincipalType {
88
26
  * { region: { $in: ["us-east", "eu-west"] } } // set membership (literal)
89
27
  * { security_level: { $lte: "$principal.access_level" } } // cross-reference (resolved at token time)
90
28
  */
91
- /** A single condition value. Resolved and evaluated dynamically by token/content security code. */
92
- export type PropertyConditionValue = unknown;
93
- export type PropertyConditions = Record<string, PropertyConditionValue>;
29
+ export type PropertyConditionValue = z.infer<typeof PropertyConditionValueSchema>;
30
+ export type PropertyConditions = z.infer<typeof PropertyConditionsSchema>;
94
31
  /**
95
- * Conditions attached to an ACE for dynamic matching.
96
- * - `principal_props`: matched against user/group properties at token time (PrincipalSet).
97
- * - `resource_props`: matched against object properties at query time (ResourceSet).
32
+ * The access-control wire types, inferred from the schemas in `./api-schemas/access-control.js` —
33
+ * which are what OpenAPI publishes and AJV compiles. The field descriptions live there too, since
34
+ * Zod reads `.meta()` and not TSDoc.
35
+ *
36
+ * NOTE `conditions` carries ONLY the three fields it declares. The server stores two more there —
37
+ * `principal_name` / `resource_name`, see `IAceConditions` in `@dglabs/server-common` — and copies
38
+ * them into `principal` / `resource` on the way out. They are not part of this contract, and the
39
+ * response mappers drop them rather than serializing the sub-document.
98
40
  */
99
- export interface AceConditions {
100
- /** Property conditions matched against user/group properties at token time (PrincipalSet). */
101
- principal_props?: PropertyConditions;
102
- /** Property conditions matched against object properties at query time (ResourceSet). */
103
- resource_props?: PropertyConditions;
104
- /**
105
- * Kind of object the `resource_props` matches. Used to disambiguate which
106
- * partition's roles apply (e.g. content roles vs task roles) and to form
107
- * the JWT `content_security` key prefix (`{scope}:{verb}`). Absent →
108
- * `'document'` (default; emits bare `read`/`write`/`delete` keys for
109
- * backward compatibility).
110
- */
111
- scope?: AbacScope;
112
- }
113
- export interface AccessControlEntry {
114
- /**
115
- * Role name. Typed as `string` because role names now span multiple
116
- * partitions: `SystemRoles` enum values for system-domain roles, and bare
117
- * strings for ABAC-domain roles (e.g. `'content:reader'`,
118
- * `'content:writer'`, `'content:manager'`). Mongoose schema validates the
119
- * value against the registered role catalog via `getAllRoleNames()`.
120
- */
121
- role: string;
122
- resource_type: AccessControlResourceType;
123
- resource: string;
124
- principal_type: AccessControlPrincipalType;
125
- principal: string;
126
- /** Account scope — required for principal_set/content_set ACEs. */
127
- account?: string;
128
- /** Project scope — narrows a principal_set/content_set ACE to a single project. */
129
- project?: string;
130
- /** Dynamic matching conditions for principal_set/content_set ACEs. */
131
- conditions?: AceConditions;
132
- tags?: string[];
133
- expires_at?: string;
134
- created_at?: string;
135
- updated_at?: string;
136
- id: string;
137
- }
138
- export interface ACECreatePayload extends Omit<AccessControlEntry, 'created_at' | 'updated_at' | 'id'> {
139
- }
140
- export interface ACEUpdatePayload extends Partial<ACECreatePayload> {
141
- }
41
+ export type AceConditions = z.infer<typeof AceConditionsSchema>;
42
+ export type AccessControlEntry = z.infer<typeof AccessControlEntrySchema>;
43
+ export type ACECreatePayload = z.infer<typeof ACECreatePayloadSchema>;
44
+ export type ACEUpdatePayload = z.infer<typeof ACEUpdatePayloadSchema>;
142
45
  /**
143
46
  * Default sensitivity/clearance levels for the Bell-LaPadula security model.
144
47
  * The numeric value is the index in the array (0 = lowest, 4 = highest).
@@ -1 +1 @@
1
- {"version":3,"file":"access-control.d.ts","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,oBAAY,UAAU;IAClB,QAAQ,qBAAqB;IAC7B,SAAS,sBAAsB;IAC/B,UAAU,uBAAuB;IAEjC,WAAW,wBAAwB;IACnC,QAAQ,aAAa;IACrB,SAAS,cAAc;IAEvB,SAAS,sBAAsB;IAE/B,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,wBAAwB,6BAA6B;IACrD,sBAAsB,2BAA2B;IAEjD,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IAEjC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,cAAc,oBAAoB;IAClC,oCAAoC;IACpC,YAAY,iBAAiB;IAC7B,6CAA6C;IAC7C,UAAU,eAAe;IACzB,cAAc,mBAAmB;IAEjC,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,aAAa,kBAAkB,CAAE,gBAAgB;IACjD,kBAAkB,uBAAuB,CAAE,mCAAmC;IAE9E,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAE3C,cAAc,mBAAmB;IAEjC,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAE3B,eAAe,oBAAoB;IAEnC,iDAAiD;IACjD,aAAa,kBAAkB;CAClC;AAED,oBAAY,yBAAyB;IACjC,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,GAAG,gBAAgB;IACnB;;;;;;;;;;OAUG;IACH,YAAY,gBAAgB;CAC/B;AAED,oBAAY,0BAA0B;IAClC,IAAI,SAAS;IACb,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,yEAAyE;IACzE,aAAa,kBAAkB;CAClC;AAED;;;;;;;;;;;;;;GAcG;AACH,mGAAmG;AACnG,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;AAExE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,8FAA8F;IAC9F,eAAe,CAAC,EAAE,kBAAkB,CAAC;IACrC,yFAAyF;IACzF,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IAC/B;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,yBAAyB,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,0BAA0B,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,YAAY,GAAG,IAAI,CAAC;CAAG;AAEzG,MAAM,WAAW,gBAAiB,SAAQ,OAAO,CAAC,gBAAgB,CAAC;CAAG;AAUtE;;;;GAIG;AACH,oBAAY,aAAa;IACrB,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,YAAY,IAAI;IAChB,UAAU,IAAI;IACd,MAAM,IAAI;CACb;AAED,+EAA+E;AAC/E,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAAmE,CAAC;AAErH,2FAA2F;AAC3F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,yBAAyB,CAAC;CACpC"}
1
+ {"version":3,"file":"access-control.d.ts","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B;;;;GAIG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EACR,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,EAC/B,MAAM,iCAAiC,CAAC;AAEzC;;;GAGG;AACH,cAAc,4BAA4B,CAAC;AAE3C;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAUtE;;;;GAIG;AACH,oBAAY,aAAa;IACrB,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,YAAY,IAAI;IAChB,UAAU,IAAI;IACd,MAAM,IAAI;CACb;AAED,+EAA+E;AAC/E,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAAmE,CAAC;AAErH,2FAA2F;AAC3F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,yBAAyB,CAAC;CACpC"}
@@ -1,83 +1,11 @@
1
1
  /**
2
- * @module access-control
3
- * @description
4
- * Access control interfaces
2
+ * The enums live in `./access-control-values.js` so the API schemas can consume them without
3
+ * importing this module back. Re-exported here so every existing import path keeps working.
5
4
  */
6
- export var Permission;
7
- (function (Permission) {
8
- Permission["int_read"] = "interaction:read";
9
- Permission["int_write"] = "interaction:write";
10
- Permission["int_delete"] = "interaction:delete";
11
- Permission["int_execute"] = "interaction:execute";
12
- Permission["run_read"] = "run:read";
13
- Permission["run_write"] = "run:write";
14
- Permission["env_admin"] = "environment:admin";
15
- Permission["app_manage"] = "app:manage";
16
- Permission["project_admin"] = "project:admin";
17
- Permission["project_integration_read"] = "project:integration_read";
18
- Permission["project_settings_write"] = "project:settings_write";
19
- Permission["api_key_create"] = "api_key:create";
20
- Permission["api_key_read"] = "api_key:read";
21
- Permission["api_key_secret_read"] = "api_key:secret_read";
22
- Permission["api_key_update"] = "api_key:update";
23
- Permission["api_key_delete"] = "api_key:delete";
24
- Permission["account_read"] = "account:read";
25
- Permission["account_write"] = "account:write";
26
- Permission["account_admin"] = "account:admin";
27
- Permission["manage_billing"] = "account:billing";
28
- /** View cost and usage analytics */
29
- Permission["billing_read"] = "billing:read";
30
- /** View account and project audit events. */
31
- Permission["audit_read"] = "audit:read";
32
- Permission["account_member"] = "account:member";
33
- Permission["content_read"] = "content:read";
34
- Permission["content_read_all"] = "content:read_all";
35
- Permission["content_write"] = "content:write";
36
- Permission["content_delete"] = "content:delete";
37
- Permission["content_admin"] = "content:admin";
38
- Permission["content_superadmin"] = "content:superadmin";
39
- Permission["workflow_read"] = "workflow:read";
40
- Permission["workflow_run"] = "workflow:run";
41
- Permission["workflow_admin"] = "workflow:admin";
42
- Permission["workflow_superadmin"] = "workflow:superadmin";
43
- Permission["agent_run_read"] = "agent_run:read";
44
- Permission["task_read"] = "task:read";
45
- Permission["task_manage"] = "task:manage";
46
- Permission["iam_impersonate"] = "iam:impersonate";
47
- /** whether the user has access to Sutdio App. */
48
- Permission["studio_access"] = "studio:access";
49
- })(Permission || (Permission = {}));
50
- export var AccessControlResourceType;
51
- (function (AccessControlResourceType) {
52
- AccessControlResourceType["project"] = "project";
53
- AccessControlResourceType["environment"] = "environment";
54
- AccessControlResourceType["account"] = "account";
55
- AccessControlResourceType["interaction"] = "interaction";
56
- AccessControlResourceType["app"] = "application";
57
- /**
58
- * Dynamic resource matching by property conditions at query time. The role
59
- * partitions (content, future tasks/etc.) determine which kind of object
60
- * the conditions match — selected via `AceConditions.scope`.
61
- *
62
- * NOTE: the string value remains `'content_set'` for backward compatibility
63
- * with stored ACEs and JWTs. The wire/DB rename to `'resource_set'` is a
64
- * separate concern (deferred). Until then, code reads
65
- * `AccessControlResourceType.resource_set` but the value on the wire stays
66
- * `'content_set'`.
67
- */
68
- AccessControlResourceType["resource_set"] = "content_set";
69
- })(AccessControlResourceType || (AccessControlResourceType = {}));
70
- export var AccessControlPrincipalType;
71
- (function (AccessControlPrincipalType) {
72
- AccessControlPrincipalType["user"] = "user";
73
- AccessControlPrincipalType["group"] = "group";
74
- AccessControlPrincipalType["apikey"] = "apikey";
75
- /** Dynamic principal matching by user/group properties at token time. */
76
- AccessControlPrincipalType["principal_set"] = "principal_set";
77
- })(AccessControlPrincipalType || (AccessControlPrincipalType = {}));
78
- // RoleDefinition + SystemRoleDefinition now live in `./roles/types.js` to
79
- // avoid a circular import with `RoleDomain`. They remain re-exported via
80
- // the package's index.ts so consumers see no path change.
5
+ export * from './access-control-values.js';
6
+ // RoleDefinition + SystemRoleDefinition now live in `./roles/types.js`, and are likewise inferred
7
+ // from `./api-schemas/access-control.js`. They remain re-exported via the package's index.ts so
8
+ // consumers see no path change.
81
9
  // ============================================================================
82
10
  // BLP Security Levels
83
11
  // ============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"access-control.js","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAN,IAAY,UAqDX;AArDD,WAAY,UAAU;IAClB,2CAA6B,CAAA;IAC7B,6CAA+B,CAAA;IAC/B,+CAAiC,CAAA;IAEjC,iDAAmC,CAAA;IACnC,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IAEvB,6CAA+B,CAAA;IAE/B,uCAAyB,CAAA;IACzB,6CAA+B,CAAA;IAC/B,mEAAqD,CAAA;IACrD,+DAAiD,CAAA;IAEjD,+CAAiC,CAAA;IACjC,2CAA6B,CAAA;IAC7B,yDAA2C,CAAA;IAC3C,+CAAiC,CAAA;IACjC,+CAAiC,CAAA;IAEjC,2CAA6B,CAAA;IAC7B,6CAA+B,CAAA;IAC/B,6CAA+B,CAAA;IAC/B,gDAAkC,CAAA;IAClC,oCAAoC;IACpC,2CAA6B,CAAA;IAC7B,6CAA6C;IAC7C,uCAAyB,CAAA;IACzB,+CAAiC,CAAA;IAEjC,2CAA6B,CAAA;IAC7B,mDAAqC,CAAA;IACrC,6CAA+B,CAAA;IAC/B,+CAAiC,CAAA;IACjC,6CAA+B,CAAA;IAC/B,uDAAyC,CAAA;IAEzC,6CAA+B,CAAA;IAC/B,2CAA6B,CAAA;IAC7B,+CAAiC,CAAA;IACjC,yDAA2C,CAAA;IAE3C,+CAAiC,CAAA;IAEjC,qCAAuB,CAAA;IACvB,yCAA2B,CAAA;IAE3B,iDAAmC,CAAA;IAEnC,iDAAiD;IACjD,6CAA+B,CAAA;AACnC,CAAC,EArDW,UAAU,KAAV,UAAU,QAqDrB;AAED,MAAM,CAAN,IAAY,yBAkBX;AAlBD,WAAY,yBAAyB;IACjC,gDAAmB,CAAA;IACnB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB;;;;;;;;;;OAUG;IACH,yDAA4B,CAAA;AAChC,CAAC,EAlBW,yBAAyB,KAAzB,yBAAyB,QAkBpC;AAED,MAAM,CAAN,IAAY,0BAMX;AAND,WAAY,0BAA0B;IAClC,2CAAa,CAAA;IACb,6CAAe,CAAA;IACf,+CAAiB,CAAA;IACjB,yEAAyE;IACzE,6DAA+B,CAAA;AACnC,CAAC,EANW,0BAA0B,KAA1B,0BAA0B,QAMrC;AAwED,0EAA0E;AAC1E,yEAAyE;AACzE,0DAA0D;AAE1D,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACrB,qDAAU,CAAA;IACV,yDAAY,CAAA;IACZ,iEAAgB,CAAA;IAChB,6DAAc,CAAA;IACd,qDAAU,CAAA;AACd,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,mBAAmB,GAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AAErH,2FAA2F;AAC3F,MAAM,UAAU,qBAAqB,CAAC,KAAa;IAC/C,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"access-control.js","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,cAAc,4BAA4B,CAAC;AAmC3C,kGAAkG;AAClG,gGAAgG;AAChG,gCAAgC;AAEhC,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACrB,qDAAU,CAAA;IACV,yDAAY,CAAA;IACZ,iEAAgB,CAAA;IAChB,6DAAc,CAAA;IACd,qDAAU,CAAA;AACd,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,mBAAmB,GAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AAErH,2FAA2F;AAC3F,MAAM,UAAU,qBAAqB,CAAC,KAAa;IAC/C,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Account values that exist at runtime — enums, constants, and the pure helpers over them.
3
+ *
4
+ * Split out of `user.ts` so the dependency direction can run one way. The API schemas need these
5
+ * values (`z.enum(BillingMethod)`, `.max(ACCOUNT_APP_ACCESS_MESSAGE_MAX_LENGTH)`), and `user.ts`
6
+ * needs the types the schemas infer. Both living in `user.ts` would make it import from a module
7
+ * that imports it back; here, `user.ts` and `api-schemas/account.ts` both depend on this module and
8
+ * nothing depends on them.
9
+ *
10
+ * Everything here is re-exported from `user.ts`, so existing import paths keep working — this is a
11
+ * move, not a rename.
12
+ */
13
+ export declare enum Datacenters {
14
+ aws = "aws",
15
+ gcp = "gcp",
16
+ azure = "azure"
17
+ }
18
+ export declare enum BillingMethod {
19
+ stripe = "stripe",
20
+ invoice = "invoice"
21
+ }
22
+ export declare enum AccountType {
23
+ vertesia = "vertesia",
24
+ partner = "partner",
25
+ free = "free",
26
+ customer = "customer",
27
+ prospect = "prospect",
28
+ unknown = "unknown"
29
+ }
30
+ /**
31
+ * Quota/rate-limit tier assigned to an account. Code-defined tiers live in `@dglabs/quota`
32
+ * (`QUOTA_TIERS`); these names must match its keys.
33
+ * - `standard` — protective baseline limits (the default for most accounts).
34
+ * - `enterprise` — high limits for contracted customers / internal / partners.
35
+ *
36
+ * An account with no explicit `quota_tier` derives its tier from its `account_type`.
37
+ */
38
+ export declare enum QuotaTier {
39
+ standard = "standard",
40
+ enterprise = "enterprise"
41
+ }
42
+ /**
43
+ * Default tier for an account that has no explicit `quota_tier`, derived from its `account_type`:
44
+ * contracted customers and internal Vertesia accounts get `enterprise`; everyone else (partner,
45
+ * free, prospect, unknown) gets the protective `standard` baseline.
46
+ */
47
+ export declare function quotaTierForAccountType(accountType: AccountType | undefined | null): QuotaTier;
48
+ export declare const ACCOUNT_NAMESPACE_MAX_LENGTH = 63;
49
+ export declare const ACCOUNT_APP_ACCESS_MESSAGE_MAX_LENGTH = 1000;
50
+ export declare const RESERVED_ACCOUNT_NAMESPACES: readonly ["admin", "api", "apps", "auth", "cdn", "docs", "internal-auth", "mcp", "status", "sts", "www"];
51
+ export declare function normalizeAccountNamespace(namespace: string): string;
52
+ export declare function getAccountNamespaceValidationError(namespace: string): string | undefined;
53
+ //# sourceMappingURL=account-values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-values.d.ts","sourceRoot":"","sources":["../src/account-values.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,oBAAY,WAAW;IACnB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,KAAK,UAAU;CAClB;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;CACtB;AAED,oBAAY,WAAW;IACnB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACtB;AAED;;;;;;;GAOG;AACH,oBAAY,SAAS;IACjB,QAAQ,aAAa;IACrB,UAAU,eAAe;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,CAQ9F;AAED,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,qCAAqC,OAAO,CAAC;AAC1D,eAAO,MAAM,2BAA2B,0GAY9B,CAAC;AAIX,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAWxF"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Account values that exist at runtime — enums, constants, and the pure helpers over them.
3
+ *
4
+ * Split out of `user.ts` so the dependency direction can run one way. The API schemas need these
5
+ * values (`z.enum(BillingMethod)`, `.max(ACCOUNT_APP_ACCESS_MESSAGE_MAX_LENGTH)`), and `user.ts`
6
+ * needs the types the schemas infer. Both living in `user.ts` would make it import from a module
7
+ * that imports it back; here, `user.ts` and `api-schemas/account.ts` both depend on this module and
8
+ * nothing depends on them.
9
+ *
10
+ * Everything here is re-exported from `user.ts`, so existing import paths keep working — this is a
11
+ * move, not a rename.
12
+ */
13
+ export var Datacenters;
14
+ (function (Datacenters) {
15
+ Datacenters["aws"] = "aws";
16
+ Datacenters["gcp"] = "gcp";
17
+ Datacenters["azure"] = "azure";
18
+ })(Datacenters || (Datacenters = {}));
19
+ export var BillingMethod;
20
+ (function (BillingMethod) {
21
+ BillingMethod["stripe"] = "stripe";
22
+ BillingMethod["invoice"] = "invoice";
23
+ })(BillingMethod || (BillingMethod = {}));
24
+ export var AccountType;
25
+ (function (AccountType) {
26
+ AccountType["vertesia"] = "vertesia";
27
+ AccountType["partner"] = "partner";
28
+ AccountType["free"] = "free";
29
+ AccountType["customer"] = "customer";
30
+ AccountType["prospect"] = "prospect";
31
+ AccountType["unknown"] = "unknown";
32
+ })(AccountType || (AccountType = {}));
33
+ /**
34
+ * Quota/rate-limit tier assigned to an account. Code-defined tiers live in `@dglabs/quota`
35
+ * (`QUOTA_TIERS`); these names must match its keys.
36
+ * - `standard` — protective baseline limits (the default for most accounts).
37
+ * - `enterprise` — high limits for contracted customers / internal / partners.
38
+ *
39
+ * An account with no explicit `quota_tier` derives its tier from its `account_type`.
40
+ */
41
+ export var QuotaTier;
42
+ (function (QuotaTier) {
43
+ QuotaTier["standard"] = "standard";
44
+ QuotaTier["enterprise"] = "enterprise";
45
+ })(QuotaTier || (QuotaTier = {}));
46
+ /**
47
+ * Default tier for an account that has no explicit `quota_tier`, derived from its `account_type`:
48
+ * contracted customers and internal Vertesia accounts get `enterprise`; everyone else (partner,
49
+ * free, prospect, unknown) gets the protective `standard` baseline.
50
+ */
51
+ export function quotaTierForAccountType(accountType) {
52
+ switch (accountType) {
53
+ case AccountType.customer:
54
+ case AccountType.vertesia:
55
+ return QuotaTier.enterprise;
56
+ default:
57
+ return QuotaTier.standard;
58
+ }
59
+ }
60
+ export const ACCOUNT_NAMESPACE_MAX_LENGTH = 63;
61
+ export const ACCOUNT_APP_ACCESS_MESSAGE_MAX_LENGTH = 1000;
62
+ export const RESERVED_ACCOUNT_NAMESPACES = [
63
+ 'admin',
64
+ 'api',
65
+ 'apps',
66
+ 'auth',
67
+ 'cdn',
68
+ 'docs',
69
+ 'internal-auth',
70
+ 'mcp',
71
+ 'status',
72
+ 'sts',
73
+ 'www',
74
+ ];
75
+ const ACCOUNT_NAMESPACE_PATTERN = /^[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$/;
76
+ export function normalizeAccountNamespace(namespace) {
77
+ return namespace.trim().toLowerCase();
78
+ }
79
+ export function getAccountNamespaceValidationError(namespace) {
80
+ if (!namespace) {
81
+ return 'Account namespace is required';
82
+ }
83
+ if (namespace.length > ACCOUNT_NAMESPACE_MAX_LENGTH || !ACCOUNT_NAMESPACE_PATTERN.test(namespace)) {
84
+ return 'Account namespace must be a lowercase DNS label containing only letters, numbers, and hyphens';
85
+ }
86
+ if (RESERVED_ACCOUNT_NAMESPACES.includes(namespace)) {
87
+ return `Account namespace '${namespace}' is reserved`;
88
+ }
89
+ return undefined;
90
+ }
91
+ //# sourceMappingURL=account-values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-values.js","sourceRoot":"","sources":["../src/account-values.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACnB,0BAAW,CAAA;IACX,0BAAW,CAAA;IACX,8BAAe,CAAA;AACnB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,kCAAiB,CAAA;IACjB,oCAAmB,CAAA;AACvB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,WAOX;AAPD,WAAY,WAAW;IACnB,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;IACnB,4BAAa,CAAA;IACb,oCAAqB,CAAA;IACrB,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;AACvB,CAAC,EAPW,WAAW,KAAX,WAAW,QAOtB;AAED;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,kCAAqB,CAAA;IACrB,sCAAyB,CAAA;AAC7B,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAA2C;IAC/E,QAAQ,WAAW,EAAE,CAAC;QAClB,KAAK,WAAW,CAAC,QAAQ,CAAC;QAC1B,KAAK,WAAW,CAAC,QAAQ;YACrB,OAAO,SAAS,CAAC,UAAU,CAAC;QAChC;YACI,OAAO,SAAS,CAAC,QAAQ,CAAC;IAClC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAC/C,MAAM,CAAC,MAAM,qCAAqC,GAAG,IAAI,CAAC;AAC1D,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACvC,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,eAAe;IACf,KAAK;IACL,QAAQ;IACR,KAAK;IACL,KAAK;CACC,CAAC;AAEX,MAAM,yBAAyB,GAAG,wCAAwC,CAAC;AAE3E,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IACvD,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,SAAiB;IAChE,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,+BAA+B,CAAC;IAC3C,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,4BAA4B,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAChG,OAAO,+FAA+F,CAAC;IAC3G,CAAC;IACD,IAAK,2BAAiD,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACzE,OAAO,sBAAsB,SAAS,eAAe,CAAC;IAC1D,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC"}