@takeshape/schema 12.1.1 → 12.1.5

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 (514) hide show
  1. package/dist/agents.d.ts +62 -0
  2. package/dist/agents.js +346 -0
  3. package/dist/api-version.d.ts +5 -0
  4. package/dist/api-version.js +17 -0
  5. package/dist/auth-schemas.d.ts +144 -0
  6. package/dist/auth-schemas.js +7 -0
  7. package/dist/auth-utils.d.ts +19 -0
  8. package/dist/auth-utils.js +26 -0
  9. package/dist/builtin-schema.d.ts +18 -0
  10. package/dist/builtin-schema.js +710 -0
  11. package/dist/constants.d.ts +1 -0
  12. package/dist/constants.js +1 -0
  13. package/dist/content-schema-transform.d.ts +35 -0
  14. package/dist/content-schema-transform.js +162 -0
  15. package/dist/create-input-schema.d.ts +9 -0
  16. package/dist/create-input-schema.js +68 -0
  17. package/dist/enum.d.ts +2 -0
  18. package/dist/enum.js +9 -0
  19. package/dist/flatten-templates.d.ts +2 -0
  20. package/dist/flatten-templates.js +20 -0
  21. package/dist/get-is-leaf.d.ts +3 -0
  22. package/dist/get-is-leaf.js +56 -0
  23. package/dist/index.d.ts +64 -0
  24. package/dist/index.js +61 -0
  25. package/dist/interfaces.d.ts +14 -0
  26. package/dist/interfaces.js +86 -0
  27. package/dist/layers/layers.d.ts +26 -0
  28. package/dist/layers/layers.js +301 -0
  29. package/dist/layers/refs.d.ts +102 -0
  30. package/dist/layers/refs.js +220 -0
  31. package/dist/layers/type-utils.d.ts +59 -0
  32. package/dist/layers/type-utils.js +118 -0
  33. package/dist/layers/visitor.d.ts +5 -0
  34. package/dist/layers/visitor.js +38 -0
  35. package/dist/migration/index.d.ts +79 -0
  36. package/dist/migration/index.js +110 -0
  37. package/dist/migration/to/v3.0.0.d.ts +4 -0
  38. package/dist/migration/to/v3.0.0.js +212 -0
  39. package/dist/migration/to/v3.1.0.d.ts +4 -0
  40. package/dist/migration/to/v3.1.0.js +194 -0
  41. package/dist/migration/to/v3.10.0.d.ts +4 -0
  42. package/dist/migration/to/v3.10.0.js +67 -0
  43. package/dist/migration/to/v3.11.0.d.ts +4 -0
  44. package/dist/migration/to/v3.11.0.js +85 -0
  45. package/dist/migration/to/v3.12.3.d.ts +4 -0
  46. package/dist/migration/to/v3.12.3.js +87 -0
  47. package/dist/migration/to/v3.13.0.d.ts +4 -0
  48. package/dist/migration/to/v3.13.0.js +17 -0
  49. package/dist/migration/to/v3.17.0.d.ts +4 -0
  50. package/dist/migration/to/v3.17.0.js +22 -0
  51. package/dist/migration/to/v3.18.0.d.ts +4 -0
  52. package/dist/migration/to/v3.18.0.js +64 -0
  53. package/dist/migration/to/v3.18.1.d.ts +4 -0
  54. package/dist/migration/to/v3.18.1.js +12 -0
  55. package/dist/migration/to/v3.18.2.d.ts +4 -0
  56. package/dist/migration/to/v3.18.2.js +19 -0
  57. package/dist/migration/to/v3.20.0.d.ts +4 -0
  58. package/dist/migration/to/v3.20.0.js +24 -0
  59. package/dist/migration/to/v3.22.0.d.ts +4 -0
  60. package/dist/migration/to/v3.22.0.js +25 -0
  61. package/dist/migration/to/v3.24.0.d.ts +4 -0
  62. package/dist/migration/to/v3.24.0.js +11 -0
  63. package/dist/migration/to/v3.25.0.d.ts +4 -0
  64. package/dist/migration/to/v3.25.0.js +11 -0
  65. package/dist/migration/to/v3.3.0.d.ts +4 -0
  66. package/dist/migration/to/v3.3.0.js +13 -0
  67. package/dist/migration/to/v3.31.0.d.ts +4 -0
  68. package/dist/migration/to/v3.31.0.js +38 -0
  69. package/dist/migration/to/v3.32.0.d.ts +4 -0
  70. package/dist/migration/to/v3.32.0.js +59 -0
  71. package/dist/migration/to/v3.34.0.d.ts +6 -0
  72. package/dist/migration/to/v3.34.0.js +111 -0
  73. package/dist/migration/to/v3.36.0.d.ts +4 -0
  74. package/dist/migration/to/v3.36.0.js +22 -0
  75. package/dist/migration/to/v3.39.0.d.ts +4 -0
  76. package/dist/migration/to/v3.39.0.js +45 -0
  77. package/dist/migration/to/v3.40.0.d.ts +4 -0
  78. package/dist/migration/to/v3.40.0.js +26 -0
  79. package/dist/migration/to/v3.46.0.d.ts +4 -0
  80. package/dist/migration/to/v3.46.0.js +35 -0
  81. package/dist/migration/to/v3.57.0.d.ts +4 -0
  82. package/dist/migration/to/v3.57.0.js +18 -0
  83. package/dist/migration/to/v3.60.0.d.ts +4 -0
  84. package/dist/migration/to/v3.60.0.js +129 -0
  85. package/dist/migration/to/v3.9.0.d.ts +4 -0
  86. package/dist/migration/to/v3.9.0.js +79 -0
  87. package/dist/migration/types.d.ts +26 -0
  88. package/dist/migration/types.js +3 -0
  89. package/dist/migration/utils.d.ts +2 -0
  90. package/dist/migration/utils.js +6 -0
  91. package/dist/mocks.d.ts +14 -0
  92. package/dist/mocks.js +58 -0
  93. package/dist/models/agent.d.ts +3 -0
  94. package/dist/models/agent.js +73 -0
  95. package/dist/models/project-schema.d.ts +28 -0
  96. package/dist/models/project-schema.js +186 -0
  97. package/dist/models/query.d.ts +3 -0
  98. package/dist/models/query.js +46 -0
  99. package/dist/models/runtime-schema.d.ts +9 -0
  100. package/dist/models/runtime-schema.js +20 -0
  101. package/dist/models/shape.d.ts +4 -0
  102. package/dist/models/shape.js +36 -0
  103. package/dist/models/tool.d.ts +4 -0
  104. package/dist/models/tool.js +147 -0
  105. package/dist/models/types.d.ts +97 -0
  106. package/dist/models/types.js +1 -0
  107. package/dist/models/user-schema.d.ts +7 -0
  108. package/dist/models/user-schema.js +9 -0
  109. package/dist/patterns.d.ts +12 -0
  110. package/dist/patterns.js +1 -0
  111. package/dist/project-schema/index.d.ts +229 -0
  112. package/dist/project-schema/index.js +89 -0
  113. package/dist/project-schema/latest.d.ts +2762 -0
  114. package/dist/project-schema/latest.js +7 -0
  115. package/dist/project-schema/migrate.d.ts +4 -0
  116. package/dist/project-schema/migrate.js +236 -0
  117. package/dist/project-schema/v1.0.0.d.ts +299 -0
  118. package/dist/project-schema/v1.0.0.js +7 -0
  119. package/dist/project-schema/v3.0.0.d.ts +478 -0
  120. package/dist/project-schema/v3.0.0.js +7 -0
  121. package/dist/project-schema/v3.1.0.d.ts +621 -0
  122. package/dist/project-schema/v3.1.0.js +7 -0
  123. package/dist/project-schema/v3.10.0.d.ts +1201 -0
  124. package/dist/project-schema/v3.10.0.js +7 -0
  125. package/dist/project-schema/v3.11.0.d.ts +1210 -0
  126. package/dist/project-schema/v3.11.0.js +7 -0
  127. package/dist/project-schema/v3.12.0.d.ts +1214 -0
  128. package/dist/project-schema/v3.12.0.js +7 -0
  129. package/dist/project-schema/v3.12.1.d.ts +1273 -0
  130. package/dist/project-schema/v3.12.1.js +7 -0
  131. package/dist/project-schema/v3.12.2.d.ts +1283 -0
  132. package/dist/project-schema/v3.12.2.js +7 -0
  133. package/dist/project-schema/v3.12.3.d.ts +1306 -0
  134. package/dist/project-schema/v3.12.3.js +7 -0
  135. package/dist/project-schema/v3.13.0.d.ts +1317 -0
  136. package/dist/project-schema/v3.13.0.js +7 -0
  137. package/dist/project-schema/v3.13.1.d.ts +1412 -0
  138. package/dist/project-schema/v3.13.1.js +7 -0
  139. package/dist/project-schema/v3.14.0.d.ts +1436 -0
  140. package/dist/project-schema/v3.14.0.js +7 -0
  141. package/dist/project-schema/v3.15.0.d.ts +1458 -0
  142. package/dist/project-schema/v3.15.0.js +7 -0
  143. package/dist/project-schema/v3.16.0.d.ts +1470 -0
  144. package/dist/project-schema/v3.16.0.js +7 -0
  145. package/dist/project-schema/v3.17.0.d.ts +1467 -0
  146. package/dist/project-schema/v3.17.0.js +7 -0
  147. package/dist/project-schema/v3.17.1.d.ts +1468 -0
  148. package/dist/project-schema/v3.17.1.js +7 -0
  149. package/dist/project-schema/v3.18.0.d.ts +1333 -0
  150. package/dist/project-schema/v3.18.0.js +7 -0
  151. package/dist/project-schema/v3.18.1.d.ts +1332 -0
  152. package/dist/project-schema/v3.18.1.js +7 -0
  153. package/dist/project-schema/v3.18.2.d.ts +1332 -0
  154. package/dist/project-schema/v3.18.2.js +7 -0
  155. package/dist/project-schema/v3.19.0.d.ts +1336 -0
  156. package/dist/project-schema/v3.19.0.js +7 -0
  157. package/dist/project-schema/v3.2.0.d.ts +632 -0
  158. package/dist/project-schema/v3.2.0.js +7 -0
  159. package/dist/project-schema/v3.20.0.d.ts +1336 -0
  160. package/dist/project-schema/v3.20.0.js +7 -0
  161. package/dist/project-schema/v3.21.0.d.ts +1338 -0
  162. package/dist/project-schema/v3.21.0.js +7 -0
  163. package/dist/project-schema/v3.22.0.d.ts +1344 -0
  164. package/dist/project-schema/v3.22.0.js +7 -0
  165. package/dist/project-schema/v3.23.0.d.ts +1376 -0
  166. package/dist/project-schema/v3.23.0.js +7 -0
  167. package/dist/project-schema/v3.24.0.d.ts +1364 -0
  168. package/dist/project-schema/v3.24.0.js +7 -0
  169. package/dist/project-schema/v3.25.0.d.ts +1363 -0
  170. package/dist/project-schema/v3.25.0.js +7 -0
  171. package/dist/project-schema/v3.26.0.d.ts +1388 -0
  172. package/dist/project-schema/v3.26.0.js +7 -0
  173. package/dist/project-schema/v3.27.0.d.ts +1397 -0
  174. package/dist/project-schema/v3.27.0.js +7 -0
  175. package/dist/project-schema/v3.28.0.d.ts +1416 -0
  176. package/dist/project-schema/v3.28.0.js +7 -0
  177. package/dist/project-schema/v3.29.0.d.ts +1423 -0
  178. package/dist/project-schema/v3.29.0.js +7 -0
  179. package/dist/project-schema/v3.3.0.d.ts +632 -0
  180. package/dist/project-schema/v3.3.0.js +7 -0
  181. package/dist/project-schema/v3.30.0.d.ts +1416 -0
  182. package/dist/project-schema/v3.30.0.js +7 -0
  183. package/dist/project-schema/v3.31.0.d.ts +1448 -0
  184. package/dist/project-schema/v3.31.0.js +7 -0
  185. package/dist/project-schema/v3.32.0.d.ts +1439 -0
  186. package/dist/project-schema/v3.32.0.js +7 -0
  187. package/dist/project-schema/v3.33.0.d.ts +1445 -0
  188. package/dist/project-schema/v3.33.0.js +7 -0
  189. package/dist/project-schema/v3.34.0.d.ts +1445 -0
  190. package/dist/project-schema/v3.34.0.js +7 -0
  191. package/dist/project-schema/v3.35.0.d.ts +1464 -0
  192. package/dist/project-schema/v3.35.0.js +7 -0
  193. package/dist/project-schema/v3.36.0.d.ts +1470 -0
  194. package/dist/project-schema/v3.36.0.js +7 -0
  195. package/dist/project-schema/v3.37.0.d.ts +1522 -0
  196. package/dist/project-schema/v3.37.0.js +7 -0
  197. package/dist/project-schema/v3.38.0.d.ts +1522 -0
  198. package/dist/project-schema/v3.38.0.js +7 -0
  199. package/dist/project-schema/v3.39.0.d.ts +1529 -0
  200. package/dist/project-schema/v3.39.0.js +7 -0
  201. package/dist/project-schema/v3.4.0.d.ts +624 -0
  202. package/dist/project-schema/v3.4.0.js +7 -0
  203. package/dist/project-schema/v3.40.0.d.ts +1530 -0
  204. package/dist/project-schema/v3.40.0.js +7 -0
  205. package/dist/project-schema/v3.41.0.d.ts +1530 -0
  206. package/dist/project-schema/v3.41.0.js +7 -0
  207. package/dist/project-schema/v3.42.0.d.ts +1534 -0
  208. package/dist/project-schema/v3.42.0.js +7 -0
  209. package/dist/project-schema/v3.43.0.d.ts +1536 -0
  210. package/dist/project-schema/v3.43.0.js +7 -0
  211. package/dist/project-schema/v3.44.0.d.ts +1621 -0
  212. package/dist/project-schema/v3.44.0.js +7 -0
  213. package/dist/project-schema/v3.45.0.d.ts +1650 -0
  214. package/dist/project-schema/v3.45.0.js +7 -0
  215. package/dist/project-schema/v3.46.0.d.ts +1703 -0
  216. package/dist/project-schema/v3.46.0.js +7 -0
  217. package/dist/project-schema/v3.47.0.d.ts +1736 -0
  218. package/dist/project-schema/v3.47.0.js +7 -0
  219. package/dist/project-schema/v3.48.0.d.ts +2208 -0
  220. package/dist/project-schema/v3.48.0.js +7 -0
  221. package/dist/project-schema/v3.49.0.d.ts +2217 -0
  222. package/dist/project-schema/v3.49.0.js +7 -0
  223. package/dist/project-schema/v3.5.0.d.ts +649 -0
  224. package/dist/project-schema/v3.5.0.js +7 -0
  225. package/dist/project-schema/v3.5.1.d.ts +649 -0
  226. package/dist/project-schema/v3.5.1.js +7 -0
  227. package/dist/project-schema/v3.50.0.d.ts +2269 -0
  228. package/dist/project-schema/v3.50.0.js +7 -0
  229. package/dist/project-schema/v3.51.0.d.ts +2269 -0
  230. package/dist/project-schema/v3.51.0.js +7 -0
  231. package/dist/project-schema/v3.52.0.d.ts +2269 -0
  232. package/dist/project-schema/v3.52.0.js +7 -0
  233. package/dist/project-schema/v3.53.0.d.ts +2350 -0
  234. package/dist/project-schema/v3.53.0.js +7 -0
  235. package/dist/project-schema/v3.54.0.d.ts +2369 -0
  236. package/dist/project-schema/v3.54.0.js +7 -0
  237. package/dist/project-schema/v3.55.0.d.ts +2369 -0
  238. package/dist/project-schema/v3.55.0.js +7 -0
  239. package/dist/project-schema/v3.56.0.d.ts +2405 -0
  240. package/dist/project-schema/v3.56.0.js +7 -0
  241. package/dist/project-schema/v3.57.0.d.ts +2601 -0
  242. package/dist/project-schema/v3.57.0.js +7 -0
  243. package/dist/project-schema/v3.58.0.d.ts +2601 -0
  244. package/dist/project-schema/v3.58.0.js +7 -0
  245. package/dist/project-schema/v3.59.0.d.ts +2650 -0
  246. package/dist/project-schema/v3.59.0.js +7 -0
  247. package/dist/project-schema/v3.6.0.d.ts +658 -0
  248. package/dist/project-schema/v3.6.0.js +7 -0
  249. package/dist/project-schema/v3.60.0.d.ts +2678 -0
  250. package/dist/project-schema/v3.60.0.js +7 -0
  251. package/dist/project-schema/v3.61.0.d.ts +2678 -0
  252. package/dist/project-schema/v3.61.0.js +7 -0
  253. package/dist/project-schema/v3.62.0.d.ts +2693 -0
  254. package/dist/project-schema/v3.62.0.js +7 -0
  255. package/dist/project-schema/v3.63.0.d.ts +2701 -0
  256. package/dist/project-schema/v3.63.0.js +7 -0
  257. package/dist/project-schema/v3.64.0.d.ts +2710 -0
  258. package/dist/project-schema/v3.64.0.js +7 -0
  259. package/dist/project-schema/v3.65.0.d.ts +2762 -0
  260. package/dist/project-schema/v3.65.0.js +7 -0
  261. package/dist/project-schema/v3.7.0.d.ts +961 -0
  262. package/dist/project-schema/v3.7.0.js +7 -0
  263. package/dist/project-schema/v3.8.0.d.ts +979 -0
  264. package/dist/project-schema/v3.8.0.js +7 -0
  265. package/dist/project-schema/v3.9.0.d.ts +1178 -0
  266. package/dist/project-schema/v3.9.0.js +7 -0
  267. package/dist/project-schema/v4.0.0.d.ts +1328 -0
  268. package/dist/project-schema/v4.0.0.js +7 -0
  269. package/dist/refs.d.ts +220 -0
  270. package/dist/refs.js +648 -0
  271. package/dist/relationships.d.ts +40 -0
  272. package/dist/relationships.js +302 -0
  273. package/dist/resolvers/ai/abort-agent-message-args.d.ts +16 -0
  274. package/dist/resolvers/ai/abort-agent-message-args.js +13 -0
  275. package/dist/resolvers/ai/abort-agent-message-response.d.ts +39 -0
  276. package/dist/resolvers/ai/abort-agent-message-response.js +19 -0
  277. package/dist/resolvers/ai/agent-attachment.d.ts +27 -0
  278. package/dist/resolvers/ai/agent-attachment.js +22 -0
  279. package/dist/resolvers/ai/agent-chat-args.d.ts +62 -0
  280. package/dist/resolvers/ai/agent-chat-args.js +30 -0
  281. package/dist/resolvers/ai/agent-chat-payload.d.ts +35 -0
  282. package/dist/resolvers/ai/agent-chat-payload.js +26 -0
  283. package/dist/resolvers/ai/agent-chat-response.d.ts +366 -0
  284. package/dist/resolvers/ai/agent-chat-response.js +21 -0
  285. package/dist/resolvers/ai/agent-generate-args.d.ts +62 -0
  286. package/dist/resolvers/ai/agent-generate-args.js +30 -0
  287. package/dist/resolvers/ai/agent-message-input.d.ts +73 -0
  288. package/dist/resolvers/ai/agent-message-input.js +39 -0
  289. package/dist/resolvers/ai/agent-message-output.d.ts +169 -0
  290. package/dist/resolvers/ai/agent-message-output.js +77 -0
  291. package/dist/resolvers/ai/agent-message-payload.d.ts +849 -0
  292. package/dist/resolvers/ai/agent-message-payload.js +167 -0
  293. package/dist/resolvers/ai/agent-run-mode.d.ts +8 -0
  294. package/dist/resolvers/ai/agent-run-mode.js +9 -0
  295. package/dist/resolvers/ai/agent-session-payload.d.ts +840 -0
  296. package/dist/resolvers/ai/agent-session-payload.js +218 -0
  297. package/dist/resolvers/ai/ai-usage-item.d.ts +70 -0
  298. package/dist/resolvers/ai/ai-usage-item.js +70 -0
  299. package/dist/resolvers/ai/create-agent-session-response.d.ts +276 -0
  300. package/dist/resolvers/ai/create-agent-session-response.js +9 -0
  301. package/dist/resolvers/ai/embedding-search.d.ts +54 -0
  302. package/dist/resolvers/ai/embedding-search.js +46 -0
  303. package/dist/resolvers/ai/get-agent-message-args.d.ts +16 -0
  304. package/dist/resolvers/ai/get-agent-message-args.js +13 -0
  305. package/dist/resolvers/ai/get-agent-message-response.d.ts +1253 -0
  306. package/dist/resolvers/ai/get-agent-message-response.js +79 -0
  307. package/dist/resolvers/ai/inspect-agent-args.d.ts +16 -0
  308. package/dist/resolvers/ai/inspect-agent-args.js +13 -0
  309. package/dist/resolvers/ai/inspect-agent-response.d.ts +631 -0
  310. package/dist/resolvers/ai/inspect-agent-response.js +48 -0
  311. package/dist/resolvers/ai/send-agent-feedback-args.d.ts +52 -0
  312. package/dist/resolvers/ai/send-agent-feedback-args.js +16 -0
  313. package/dist/resolvers/ai/send-agent-message-args.d.ts +48 -0
  314. package/dist/resolvers/ai/send-agent-message-args.js +36 -0
  315. package/dist/resolvers/ai/send-agent-message-response.d.ts +432 -0
  316. package/dist/resolvers/ai/send-agent-message-response.js +51 -0
  317. package/dist/resolvers/ai/types.d.ts +8 -0
  318. package/dist/resolvers/ai/types.js +1 -0
  319. package/dist/resolvers/takeshape/assets/asset-image-meta.d.ts +79 -0
  320. package/dist/resolvers/takeshape/assets/asset-image-meta.js +98 -0
  321. package/dist/resolvers/takeshape/assets/asset-image-params.d.ts +901 -0
  322. package/dist/resolvers/takeshape/assets/asset-image-params.js +726 -0
  323. package/dist/resolvers/takeshape/assets/asset-image.d.ts +17 -0
  324. package/dist/resolvers/takeshape/assets/asset-image.js +15 -0
  325. package/dist/resolvers/takeshape/assets/asset.d.ts +125 -0
  326. package/dist/resolvers/takeshape/assets/asset.js +107 -0
  327. package/dist/resolvers/takeshape/assets/constants.d.ts +11 -0
  328. package/dist/resolvers/takeshape/assets/constants.js +11 -0
  329. package/dist/resolvers/takeshape/builtins/constants.d.ts +1 -0
  330. package/dist/resolvers/takeshape/builtins/constants.js +1 -0
  331. package/dist/runtime-schema.d.ts +6 -0
  332. package/dist/runtime-schema.js +85 -0
  333. package/dist/scalars.d.ts +2 -0
  334. package/dist/scalars.js +4 -0
  335. package/dist/schema-transform.d.ts +19 -0
  336. package/dist/schema-transform.js +74 -0
  337. package/dist/schema-util.d.ts +266 -0
  338. package/dist/schema-util.js +1127 -0
  339. package/dist/schemas/auth-schemas.json +400 -0
  340. package/dist/schemas/index.d.ts +4 -0
  341. package/dist/schemas/index.js +182 -0
  342. package/dist/schemas/project-schema/experimental-2025-07.json +1297 -0
  343. package/dist/schemas/project-schema/latest.d.ts +245 -0
  344. package/dist/schemas/project-schema/latest.js +25 -0
  345. package/dist/schemas/project-schema/latest.json +5109 -0
  346. package/dist/schemas/project-schema/meta-schema-v1.0.0.json +193 -0
  347. package/dist/schemas/project-schema/meta-schema-v3.0.0.json +608 -0
  348. package/dist/schemas/project-schema/meta-schema-v3.1.0.json +608 -0
  349. package/dist/schemas/project-schema/meta-schema-v3.2.0.json +612 -0
  350. package/dist/schemas/project-schema/meta-schema-v3.3.0.json +612 -0
  351. package/dist/schemas/project-schema/meta-schema-v3.4.0.json +637 -0
  352. package/dist/schemas/project-schema/meta-schema-v3.5.0.json +626 -0
  353. package/dist/schemas/project-schema/meta-schema-v3.5.1.json +626 -0
  354. package/dist/schemas/project-schema/meta-schema-v3.6.0.json +629 -0
  355. package/dist/schemas/project-schema/meta-schema-v3.7.0.json +1137 -0
  356. package/dist/schemas/project-schema/meta-schema-v3.8.0.json +1137 -0
  357. package/dist/schemas/project-schema/meta-schema-v3.9.0.json +1477 -0
  358. package/dist/schemas/project-schema/v1.0.0.json +321 -0
  359. package/dist/schemas/project-schema/v3.0.0.json +414 -0
  360. package/dist/schemas/project-schema/v3.1.0.json +572 -0
  361. package/dist/schemas/project-schema/v3.10.0.json +2097 -0
  362. package/dist/schemas/project-schema/v3.11.0.json +2141 -0
  363. package/dist/schemas/project-schema/v3.12.0.json +2144 -0
  364. package/dist/schemas/project-schema/v3.12.1.json +2282 -0
  365. package/dist/schemas/project-schema/v3.12.2.json +2304 -0
  366. package/dist/schemas/project-schema/v3.12.3.json +2357 -0
  367. package/dist/schemas/project-schema/v3.13.0.json +2377 -0
  368. package/dist/schemas/project-schema/v3.14.0.json +2385 -0
  369. package/dist/schemas/project-schema/v3.15.0.json +2365 -0
  370. package/dist/schemas/project-schema/v3.16.0.json +2373 -0
  371. package/dist/schemas/project-schema/v3.17.0.json +2378 -0
  372. package/dist/schemas/project-schema/v3.17.1.json +2380 -0
  373. package/dist/schemas/project-schema/v3.18.0.json +2356 -0
  374. package/dist/schemas/project-schema/v3.18.1.json +2357 -0
  375. package/dist/schemas/project-schema/v3.18.2.json +2357 -0
  376. package/dist/schemas/project-schema/v3.19.0.json +2369 -0
  377. package/dist/schemas/project-schema/v3.2.0.json +580 -0
  378. package/dist/schemas/project-schema/v3.20.0.json +2369 -0
  379. package/dist/schemas/project-schema/v3.21.0.json +2376 -0
  380. package/dist/schemas/project-schema/v3.22.0.json +2381 -0
  381. package/dist/schemas/project-schema/v3.23.0.json +2456 -0
  382. package/dist/schemas/project-schema/v3.24.0.json +2556 -0
  383. package/dist/schemas/project-schema/v3.25.0.json +2552 -0
  384. package/dist/schemas/project-schema/v3.26.0.json +2599 -0
  385. package/dist/schemas/project-schema/v3.27.0.json +2611 -0
  386. package/dist/schemas/project-schema/v3.28.0.json +2656 -0
  387. package/dist/schemas/project-schema/v3.29.0.json +2670 -0
  388. package/dist/schemas/project-schema/v3.3.0.json +581 -0
  389. package/dist/schemas/project-schema/v3.30.0.json +2656 -0
  390. package/dist/schemas/project-schema/v3.31.0.json +2714 -0
  391. package/dist/schemas/project-schema/v3.32.0.json +2708 -0
  392. package/dist/schemas/project-schema/v3.33.0.json +2715 -0
  393. package/dist/schemas/project-schema/v3.34.0.json +2715 -0
  394. package/dist/schemas/project-schema/v3.35.0.json +2748 -0
  395. package/dist/schemas/project-schema/v3.36.0.json +2756 -0
  396. package/dist/schemas/project-schema/v3.37.0.json +2821 -0
  397. package/dist/schemas/project-schema/v3.38.0.json +2819 -0
  398. package/dist/schemas/project-schema/v3.39.0.json +2827 -0
  399. package/dist/schemas/project-schema/v3.4.0.json +571 -0
  400. package/dist/schemas/project-schema/v3.40.0.json +2830 -0
  401. package/dist/schemas/project-schema/v3.41.0.json +2830 -0
  402. package/dist/schemas/project-schema/v3.42.0.json +2835 -0
  403. package/dist/schemas/project-schema/v3.43.0.json +2841 -0
  404. package/dist/schemas/project-schema/v3.44.0.json +3013 -0
  405. package/dist/schemas/project-schema/v3.45.0.json +3064 -0
  406. package/dist/schemas/project-schema/v3.46.0.json +3136 -0
  407. package/dist/schemas/project-schema/v3.47.0.json +3189 -0
  408. package/dist/schemas/project-schema/v3.48.0.json +3196 -0
  409. package/dist/schemas/project-schema/v3.49.0.json +3239 -0
  410. package/dist/schemas/project-schema/v3.5.0.json +571 -0
  411. package/dist/schemas/project-schema/v3.5.1.json +571 -0
  412. package/dist/schemas/project-schema/v3.50.0.json +3320 -0
  413. package/dist/schemas/project-schema/v3.51.0.json +3326 -0
  414. package/dist/schemas/project-schema/v3.52.0.json +3326 -0
  415. package/dist/schemas/project-schema/v3.53.0.json +3476 -0
  416. package/dist/schemas/project-schema/v3.54.0.json +3512 -0
  417. package/dist/schemas/project-schema/v3.55.0.json +3515 -0
  418. package/dist/schemas/project-schema/v3.56.0.json +3530 -0
  419. package/dist/schemas/project-schema/v3.57.0.json +4815 -0
  420. package/dist/schemas/project-schema/v3.58.0.json +4815 -0
  421. package/dist/schemas/project-schema/v3.59.0.json +4912 -0
  422. package/dist/schemas/project-schema/v3.6.0.json +587 -0
  423. package/dist/schemas/project-schema/v3.60.0.json +4974 -0
  424. package/dist/schemas/project-schema/v3.61.0.json +4974 -0
  425. package/dist/schemas/project-schema/v3.62.0.json +5007 -0
  426. package/dist/schemas/project-schema/v3.63.0.json +5020 -0
  427. package/dist/schemas/project-schema/v3.64.0.json +5032 -0
  428. package/dist/schemas/project-schema/v3.65.0.json +5109 -0
  429. package/dist/schemas/project-schema/v3.7.0.json +587 -0
  430. package/dist/schemas/project-schema/v3.8.0.json +604 -0
  431. package/dist/schemas/project-schema/v3.9.0.json +604 -0
  432. package/dist/schemas/project-schema/v4.0.0.json +2316 -0
  433. package/dist/schemas/project-schema.json +232 -0
  434. package/dist/service-dependencies.d.ts +13 -0
  435. package/dist/service-dependencies.js +165 -0
  436. package/dist/services/services.d.ts +31 -0
  437. package/dist/services/services.js +145 -0
  438. package/dist/services/types.d.ts +11 -0
  439. package/dist/services/types.js +1 -0
  440. package/dist/services/util.d.ts +16 -0
  441. package/dist/services/util.js +36 -0
  442. package/dist/shape-paths.d.ts +7 -0
  443. package/dist/shape-paths.js +40 -0
  444. package/dist/taxonomies.d.ts +15 -0
  445. package/dist/taxonomies.js +24 -0
  446. package/dist/template-shapes/index.d.ts +7 -0
  447. package/dist/template-shapes/index.js +33 -0
  448. package/dist/template-shapes/names.d.ts +10 -0
  449. package/dist/template-shapes/names.js +21 -0
  450. package/dist/template-shapes/templates.d.ts +32 -0
  451. package/dist/template-shapes/templates.js +316 -0
  452. package/dist/template-shapes/types.d.ts +15 -0
  453. package/dist/template-shapes/types.js +7 -0
  454. package/dist/template-shapes/where.d.ts +37 -0
  455. package/dist/template-shapes/where.js +415 -0
  456. package/dist/types/index.d.ts +3 -0
  457. package/dist/types/index.js +2 -0
  458. package/dist/types/transforms.d.ts +15 -0
  459. package/dist/types/transforms.js +1 -0
  460. package/dist/types/types.d.ts +206 -0
  461. package/dist/types/types.js +10 -0
  462. package/dist/types/utils.d.ts +112 -0
  463. package/dist/types/utils.js +269 -0
  464. package/dist/unions.d.ts +14 -0
  465. package/dist/unions.js +77 -0
  466. package/dist/util/agent-utils.d.ts +2 -0
  467. package/dist/util/agent-utils.js +7 -0
  468. package/dist/util/api-indexing.d.ts +9 -0
  469. package/dist/util/api-indexing.js +57 -0
  470. package/dist/util/coerce-value.d.ts +9 -0
  471. package/dist/util/coerce-value.js +32 -0
  472. package/dist/util/detect-cycles.d.ts +7 -0
  473. package/dist/util/detect-cycles.js +45 -0
  474. package/dist/util/expressions.d.ts +34 -0
  475. package/dist/util/expressions.js +350 -0
  476. package/dist/util/find-shape-at-path.d.ts +21 -0
  477. package/dist/util/find-shape-at-path.js +53 -0
  478. package/dist/util/form-config.d.ts +11 -0
  479. package/dist/util/form-config.js +62 -0
  480. package/dist/util/get-conflicting-properties.d.ts +6 -0
  481. package/dist/util/get-conflicting-properties.js +55 -0
  482. package/dist/util/get-return-shape.d.ts +4 -0
  483. package/dist/util/get-return-shape.js +30 -0
  484. package/dist/util/graphql-string.d.ts +6 -0
  485. package/dist/util/graphql-string.js +75 -0
  486. package/dist/util/has-arg.d.ts +6 -0
  487. package/dist/util/has-arg.js +25 -0
  488. package/dist/util/is-asset-property.d.ts +3 -0
  489. package/dist/util/is-asset-property.js +11 -0
  490. package/dist/util/merge.d.ts +17 -0
  491. package/dist/util/merge.js +278 -0
  492. package/dist/util/patch-schema.d.ts +13 -0
  493. package/dist/util/patch-schema.js +89 -0
  494. package/dist/util/query-field-path.d.ts +9 -0
  495. package/dist/util/query-field-path.js +23 -0
  496. package/dist/util/shapes.d.ts +5 -0
  497. package/dist/util/shapes.js +22 -0
  498. package/dist/util/tools.d.ts +10 -0
  499. package/dist/util/tools.js +39 -0
  500. package/dist/validate/ai.d.ts +6 -0
  501. package/dist/validate/ai.js +221 -0
  502. package/dist/validate/errors.d.ts +3 -0
  503. package/dist/validate/errors.js +20 -0
  504. package/dist/validate/types.d.ts +43 -0
  505. package/dist/validate/types.js +1 -0
  506. package/dist/validate/util.d.ts +9 -0
  507. package/dist/validate/util.js +62 -0
  508. package/dist/validate/validate.d.ts +41 -0
  509. package/dist/validate/validate.js +1042 -0
  510. package/dist/versions.d.ts +4 -0
  511. package/dist/versions.js +4 -0
  512. package/dist/workflows.d.ts +14 -0
  513. package/dist/workflows.js +66 -0
  514. package/package.json +6 -6
@@ -0,0 +1,302 @@
1
+ import { isDefined } from '@takeshape/util';
2
+ import camelCase from 'lodash/camelCase.js';
3
+ import find from 'lodash/find.js';
4
+ import uniq from 'lodash/uniq.js';
5
+ import { allBuiltInShapes } from "./builtin-schema.js";
6
+ import { followRef, getRefShapeName, getShapeByRef, shapeToRefString } from "./refs.js";
7
+ import { isModelShape, isObjectSchema, isPropertySchemaWithRelationship } from "./types/index.js";
8
+ import { isUnionSchema } from "./unions.js";
9
+ import { getShapeById } from "./util/shapes.js";
10
+ /**
11
+ * Turn a LegacyRelationship into a partial PropertySchemaWithRelationship.
12
+ */
13
+ export function getRelationshipSchema(projectSchema, relationship) {
14
+ const propertySchema = {
15
+ '@args': 'TSRelationshipArgs',
16
+ '@resolver': {
17
+ name: 'shapedb:getRelated',
18
+ service: 'shapedb',
19
+ options: {
20
+ nullable: true
21
+ }
22
+ }
23
+ };
24
+ let isMultiple;
25
+ let shapeRefs;
26
+ if ('shapeIds' in relationship) {
27
+ shapeRefs = relationship.shapeIds
28
+ .map((shapeId) => {
29
+ const shape = getShapeById(projectSchema, shapeId) ?? find(allBuiltInShapes, (shape) => shape.id === shapeId);
30
+ return (shape && {
31
+ '@ref': shapeToRefString(projectSchema, shape)
32
+ });
33
+ })
34
+ .filter(isDefined);
35
+ isMultiple = relationship.type === 'multiple';
36
+ }
37
+ else {
38
+ shapeRefs = relationship.refs.map((refStr) => ({ '@ref': refStr }));
39
+ isMultiple = relationship.isMultiple;
40
+ }
41
+ if (!shapeRefs.length) {
42
+ throw new Error(`Invalid empty relationship ${JSON.stringify(relationship)}`);
43
+ }
44
+ const shapeRefsSchema = shapeRefs.length === 1 ? shapeRefs[0] : { oneOf: shapeRefs };
45
+ if (isMultiple) {
46
+ return {
47
+ ...propertySchema,
48
+ type: 'array',
49
+ items: shapeRefsSchema,
50
+ '@input': {
51
+ type: 'array',
52
+ items: {
53
+ '@ref': 'TSRelationship'
54
+ }
55
+ }
56
+ };
57
+ }
58
+ return {
59
+ ...propertySchema,
60
+ ...shapeRefsSchema,
61
+ '@input': {
62
+ '@ref': 'TSRelationship'
63
+ }
64
+ };
65
+ }
66
+ /**
67
+ * Get a list of refs given a property schema with a relationship resolver.
68
+ */
69
+ export function getRelationshipShapeRefs(propertySchema) {
70
+ let refs = [];
71
+ const schema = propertySchema.items ?? propertySchema;
72
+ if (schema.oneOf) {
73
+ refs = schema.oneOf.map((schema) => schema['@ref']).filter(isDefined);
74
+ }
75
+ else if (schema['@ref']) {
76
+ refs = [schema['@ref']];
77
+ }
78
+ return refs;
79
+ }
80
+ /**
81
+ * Get a list of shapes given a property schema with a relationship resolver.
82
+ */
83
+ export function getRelationshipShapes(shapes, refs) {
84
+ const context = { shapes };
85
+ return refs.map((ref) => getShapeByRef(context, ref)).filter(isDefined);
86
+ }
87
+ /**
88
+ * Get a list of shape ids given a property schema with a relationship resolver.
89
+ */
90
+ export function getRelationshipShapeIds(shapes, refs) {
91
+ const context = { shapes };
92
+ return refs.map((ref) => getShapeByRef(context, ref)?.id).filter(isDefined);
93
+ }
94
+ /**
95
+ * Turn a Relationship into a LegacyRelationship object.
96
+ */
97
+ export function getLegacyRelationship(projectSchema, relationship) {
98
+ return {
99
+ type: relationship.isMultiple ? 'multiple' : 'single',
100
+ shapeIds: getRelationshipShapeIds(projectSchema.shapes, relationship.refs)
101
+ };
102
+ }
103
+ /**
104
+ * Get relationship details from a PropertySchema.
105
+ */
106
+ export function getRelationship(propertySchema) {
107
+ propertySchema = propertySchema['@output'] ?? propertySchema;
108
+ if (!isPropertySchemaWithRelationship(propertySchema)) {
109
+ return;
110
+ }
111
+ const isMultiple = propertySchema.type === 'array';
112
+ const hasBackreference = Boolean(propertySchema['@backreference']?.enabled);
113
+ const backreferenceName = propertySchema['@backreference']?.name;
114
+ const refs = getRelationshipShapeRefs(propertySchema);
115
+ return {
116
+ isMultiple,
117
+ refs,
118
+ hasBackreference,
119
+ backreferenceName
120
+ };
121
+ }
122
+ function addRelationship(relationships, id, env) {
123
+ relationships[id] ||= [];
124
+ relationships[id].push(env);
125
+ }
126
+ export function findExistingRelationships(projectSchema, shapes) {
127
+ const relationships = {};
128
+ const shapeArray = Object.values(shapes);
129
+ const shapesSeen = new Set();
130
+ const shapeIds = new Set(shapeArray.map((shape) => shape.id));
131
+ const findRelationships = (schema, path, parentShapeName) => {
132
+ const relationship = getRelationship(schema);
133
+ if (relationship) {
134
+ const relatedShapeIds = getRelationshipShapeIds(shapes, relationship.refs);
135
+ const relatedName = schema['@backreference']?.name;
136
+ for (const shapeId of relatedShapeIds) {
137
+ if (shapeIds.has(shapeId)) {
138
+ addRelationship(relationships, shapeId, {
139
+ relatedName,
140
+ path: path.slice(1),
141
+ shapeId: path[0],
142
+ hasBackreference: Boolean(schema['@backreference']?.enabled),
143
+ schema,
144
+ shapeName: parentShapeName
145
+ });
146
+ }
147
+ }
148
+ }
149
+ const shapeName = getRefShapeName(projectSchema, schema);
150
+ if (shapeName && !shapes[shapeName]) {
151
+ return;
152
+ }
153
+ const prop = shapeName ? followRef(projectSchema, schema) : schema;
154
+ if (shapeName) {
155
+ // Skip shapes we have already seen to avoid cycles
156
+ if (shapesSeen.has(shapeName)) {
157
+ return;
158
+ }
159
+ shapesSeen.add(shapeName);
160
+ }
161
+ if (!relationship) {
162
+ if (prop.properties) {
163
+ for (const name of Object.keys(prop.properties)) {
164
+ findRelationships(prop.properties[name], path.concat(name), shapeName ?? parentShapeName);
165
+ }
166
+ }
167
+ else if (prop.items) {
168
+ findRelationships(prop.items, path, shapeName ?? parentShapeName);
169
+ }
170
+ else if (isUnionSchema(prop)) {
171
+ for (const child of prop.oneOf) {
172
+ findRelationships(child, path, shapeName ?? parentShapeName);
173
+ }
174
+ }
175
+ }
176
+ };
177
+ for (const shape of shapeArray) {
178
+ if (isModelShape(shape)) {
179
+ const { schema, id, name } = shape;
180
+ findRelationships(schema, [id], name);
181
+ }
182
+ }
183
+ return relationships;
184
+ }
185
+ /**
186
+ * Test whether two PropertySchemas have equal relationships
187
+ */
188
+ export function isEqualRelationship(a, b) {
189
+ const relationshipA = getRelationship(a);
190
+ const relationshipB = getRelationship(b);
191
+ // non-relationships are considered equal in that they are both equal that regard
192
+ if (!relationshipA && !relationshipB) {
193
+ return true;
194
+ }
195
+ const refsA = relationshipA?.refs;
196
+ if (!refsA) {
197
+ return false;
198
+ }
199
+ const refsB = relationshipB?.refs;
200
+ if (!refsB || refsA.length !== refsB.length) {
201
+ return false;
202
+ }
203
+ const refSet = new Set(refsA);
204
+ return refsB.every((ref) => refSet.has(ref));
205
+ }
206
+ /**
207
+ * Test whether an array of PropertySchemas have unequal relationships
208
+ */
209
+ export function hasUnequalRelationships(relationships) {
210
+ return Boolean(relationships.find((propertySchema, index, allRelationships) => {
211
+ const nextPropertySchema = allRelationships[index + 1];
212
+ return nextPropertySchema ? !isEqualRelationship(propertySchema, nextPropertySchema) : false;
213
+ }));
214
+ }
215
+ function getRelatedShapeIds(relationships) {
216
+ return uniq(relationships.map((rel) => (rel.hasBackreference ? rel.shapeId : undefined)).filter(isDefined));
217
+ }
218
+ function getShapes(projectSchema, shapeIds) {
219
+ return shapeIds.map((shapeId) => getShapeById(projectSchema, shapeId)).filter(isDefined);
220
+ }
221
+ /**
222
+ * Adds backreference fields to the schema.
223
+ */
224
+ export function addRelatedFields(projectSchema, allRelationships) {
225
+ for (const [shapeId, shapeRelationships] of Object.entries(allRelationships)) {
226
+ const shape = getShapeById(projectSchema, shapeId);
227
+ if (shape && isObjectSchema(shape.schema)) {
228
+ const relatedShapeIds = getRelatedShapeIds(shapeRelationships);
229
+ const relatedShapeRefs = getShapes(projectSchema, relatedShapeIds).map((shape) => shapeToRefString(projectSchema, shape));
230
+ if (relatedShapeRefs.length) {
231
+ let shapeRef;
232
+ if (relatedShapeRefs.length === 1) {
233
+ // If only one back reference exists, _references is a regular shape
234
+ shapeRef = relatedShapeRefs[0];
235
+ }
236
+ else {
237
+ // If many back references exist, _references will be a union of referring shapes
238
+ const shapeName = `${shape.name}Reference`;
239
+ shapeRef = shapeName;
240
+ projectSchema.shapes[shapeName] = {
241
+ id: shapeName,
242
+ name: shapeName,
243
+ title: shapeName,
244
+ schema: {
245
+ oneOf: relatedShapeRefs.map((name) => ({
246
+ '@ref': name
247
+ }))
248
+ }
249
+ };
250
+ }
251
+ // _references, a list of all backreferences across all fields on this shape.
252
+ // It lists all the items that have references to the current item.
253
+ // It is for convenience.
254
+ if (shapeRelationships.some((rel) => rel.hasBackreference)) {
255
+ shape.schema.properties._references = {
256
+ '@args': `TSListArgs<${shapeRef}>`,
257
+ '@ref': `PaginatedList<${shapeRef}>`,
258
+ '@resolver': {
259
+ name: 'shapedb:list',
260
+ service: 'shapedb',
261
+ args: {
262
+ ops: [
263
+ { path: '$', mapping: '$args' },
264
+ { path: 'baseWhere._references.eq', mapping: '$source._id' },
265
+ { path: 'baseWhere._shapeId.in', value: relatedShapeIds }
266
+ ]
267
+ }
268
+ }
269
+ };
270
+ }
271
+ }
272
+ // Create a schema for the backreference on the referred-to shape
273
+ for (const relationship of shapeRelationships) {
274
+ const relatedShape = getShapeById(projectSchema, relationship.shapeId);
275
+ if (relatedShape && relationship.hasBackreference) {
276
+ const { relatedName } = relationship;
277
+ const relatedFieldName = relatedName ? relatedName : `${camelCase(relatedShape.name)}Set`;
278
+ const filterField = relatedName ? relationship.path.concat('_id').join('.') : '_references';
279
+ shape.schema.properties[relatedFieldName] = {
280
+ '@args': `TSListArgs<${relatedShape.name}>`,
281
+ '@ref': `PaginatedList<${relatedShape.name}>`,
282
+ '@resolver': {
283
+ name: 'shapedb:list',
284
+ service: 'shapedb',
285
+ args: {
286
+ ops: [
287
+ { path: '$', mapping: '$args' },
288
+ {
289
+ path: `baseWhere.${filterField}.eq`,
290
+ mapping: '$source._id'
291
+ },
292
+ { path: 'baseWhere._shapeId.eq', value: relatedShape.id }
293
+ ]
294
+ }
295
+ }
296
+ };
297
+ }
298
+ }
299
+ }
300
+ }
301
+ return projectSchema;
302
+ }
@@ -0,0 +1,16 @@
1
+ import type { FromSchema } from 'json-schema-to-ts';
2
+ export declare const schema: {
3
+ readonly type: "object";
4
+ readonly properties: {
5
+ readonly messageId: {
6
+ readonly type: "string";
7
+ readonly description: "Message ID to send an abort signal for";
8
+ };
9
+ };
10
+ readonly required: ["messageId"];
11
+ readonly additionalProperties: false;
12
+ };
13
+ export type AbortAgentMessageArgs = FromSchema<typeof schema>;
14
+ export declare const validate: import("ajv").ValidateFunction<{
15
+ messageId: string;
16
+ }>;
@@ -0,0 +1,13 @@
1
+ import { createTypedValidator } from '@takeshape/json-schema';
2
+ export const schema = {
3
+ type: 'object',
4
+ properties: {
5
+ messageId: {
6
+ type: 'string',
7
+ description: 'Message ID to send an abort signal for'
8
+ }
9
+ },
10
+ required: ['messageId'],
11
+ additionalProperties: false
12
+ };
13
+ export const validate = createTypedValidator(schema);
@@ -0,0 +1,39 @@
1
+ import type { FromSchema } from 'json-schema-to-ts';
2
+ export declare const shapeName = "TSAbortAgentMessageResponse";
3
+ export declare const schema: {
4
+ readonly type: "object";
5
+ readonly properties: {
6
+ readonly aborted: {
7
+ readonly type: "object";
8
+ readonly properties: {
9
+ readonly messageId: {
10
+ readonly type: "string";
11
+ readonly description: "The ID of the aborted deferred message";
12
+ };
13
+ };
14
+ readonly required: ["messageId"];
15
+ readonly additionalProperties: false;
16
+ };
17
+ };
18
+ readonly required: [];
19
+ readonly additionalProperties: false;
20
+ };
21
+ export type AbortAgentMessageResponse = FromSchema<typeof schema>;
22
+ export declare const shapeSchema: {
23
+ readonly type: "object";
24
+ readonly properties: {
25
+ readonly aborted: {
26
+ readonly type: "object";
27
+ readonly properties: {
28
+ readonly messageId: {
29
+ readonly type: "string";
30
+ readonly description: "The ID of the aborted deferred message";
31
+ };
32
+ };
33
+ readonly required: ["messageId"];
34
+ readonly additionalProperties: false;
35
+ };
36
+ };
37
+ readonly required: [];
38
+ readonly additionalProperties: false;
39
+ };
@@ -0,0 +1,19 @@
1
+ export const shapeName = 'TSAbortAgentMessageResponse';
2
+ export const schema = {
3
+ type: 'object',
4
+ properties: {
5
+ aborted: {
6
+ type: 'object',
7
+ properties: {
8
+ messageId: { type: 'string', description: 'The ID of the aborted deferred message' }
9
+ },
10
+ required: ['messageId'],
11
+ additionalProperties: false
12
+ }
13
+ },
14
+ required: [],
15
+ additionalProperties: false
16
+ };
17
+ export const shapeSchema = {
18
+ ...schema
19
+ };
@@ -0,0 +1,27 @@
1
+ import type { FromSchema } from 'json-schema-to-ts';
2
+ export declare const shapeName = "TSAgentAttachment";
3
+ export declare const schema: {
4
+ readonly type: "object";
5
+ readonly properties: {
6
+ readonly data: {
7
+ readonly type: "string";
8
+ readonly description: "A base64 encoded string of the attachment data.";
9
+ };
10
+ readonly filename: {
11
+ readonly type: "string";
12
+ readonly description: "The optional filename of the attachment.";
13
+ };
14
+ readonly mediaType: {
15
+ readonly type: "string";
16
+ readonly description: "IANA media type of the file.\n\n@see https://www.iana.org/assignments/media-types/media-types.xhtml";
17
+ };
18
+ };
19
+ readonly required: ["data", "mediaType"];
20
+ readonly additionalProperties: false;
21
+ };
22
+ export type AgentAttachment = FromSchema<typeof schema>;
23
+ export declare const validate: import("ajv").ValidateFunction<{
24
+ filename?: string | undefined;
25
+ data: string;
26
+ mediaType: string;
27
+ }>;
@@ -0,0 +1,22 @@
1
+ import { createTypedValidator } from '@takeshape/json-schema';
2
+ export const shapeName = 'TSAgentAttachment';
3
+ export const schema = {
4
+ type: 'object',
5
+ properties: {
6
+ data: {
7
+ type: 'string',
8
+ description: 'A base64 encoded string of the attachment data.'
9
+ },
10
+ filename: {
11
+ type: 'string',
12
+ description: 'The optional filename of the attachment.'
13
+ },
14
+ mediaType: {
15
+ type: 'string',
16
+ description: 'IANA media type of the file.\n\n@see https://www.iana.org/assignments/media-types/media-types.xhtml'
17
+ }
18
+ },
19
+ required: ['data', 'mediaType'],
20
+ additionalProperties: false
21
+ };
22
+ export const validate = createTypedValidator(schema);
@@ -0,0 +1,62 @@
1
+ import type { FromSchema } from 'json-schema-to-ts';
2
+ export declare const shapeName = "TSChatArgs";
3
+ export declare const schema: {
4
+ readonly type: "object";
5
+ readonly properties: {
6
+ readonly input: {
7
+ readonly type: "string";
8
+ readonly description: "The chat message input from the user.";
9
+ };
10
+ readonly attachments: {
11
+ readonly type: "array";
12
+ readonly description: "Optional attachments to send with the chat message. Supported media types depends on LLM";
13
+ readonly items: {
14
+ readonly type: "object";
15
+ readonly properties: {
16
+ readonly data: {
17
+ readonly type: "string";
18
+ readonly description: "A base64 encoded string of the attachment data.";
19
+ };
20
+ readonly filename: {
21
+ readonly type: "string";
22
+ readonly description: "The optional filename of the attachment.";
23
+ };
24
+ readonly mediaType: {
25
+ readonly type: "string";
26
+ readonly description: "IANA media type of the file.\n\n@see https://www.iana.org/assignments/media-types/media-types.xhtml";
27
+ };
28
+ };
29
+ readonly required: ["data", "mediaType"];
30
+ readonly additionalProperties: false;
31
+ };
32
+ };
33
+ };
34
+ readonly required: ["input"];
35
+ readonly additionalProperties: false;
36
+ };
37
+ export declare const shapeSchema: {
38
+ properties: {
39
+ attachments: {
40
+ type: string;
41
+ items: {
42
+ '@ref': string;
43
+ };
44
+ };
45
+ input: {
46
+ readonly type: "string";
47
+ readonly description: "The chat message input from the user.";
48
+ };
49
+ };
50
+ type: "object";
51
+ required: ["input"];
52
+ additionalProperties: false;
53
+ };
54
+ export type AgentChatArgs = FromSchema<typeof schema>;
55
+ export declare const validate: import("ajv").ValidateFunction<{
56
+ attachments?: {
57
+ filename?: string | undefined;
58
+ data: string;
59
+ mediaType: string;
60
+ }[] | undefined;
61
+ input: string;
62
+ }>;
@@ -0,0 +1,30 @@
1
+ import { createTypedValidator } from '@takeshape/json-schema';
2
+ import * as agentAttachment from "./agent-attachment.js";
3
+ export const shapeName = 'TSChatArgs';
4
+ export const schema = {
5
+ type: 'object',
6
+ properties: {
7
+ input: {
8
+ type: 'string',
9
+ description: 'The chat message input from the user.'
10
+ },
11
+ attachments: {
12
+ type: 'array',
13
+ description: 'Optional attachments to send with the chat message. Supported media types depends on LLM',
14
+ items: agentAttachment.schema
15
+ }
16
+ },
17
+ required: ['input'],
18
+ additionalProperties: false
19
+ };
20
+ export const shapeSchema = {
21
+ ...schema,
22
+ properties: {
23
+ ...schema.properties,
24
+ attachments: {
25
+ type: 'array',
26
+ items: { '@ref': agentAttachment.shapeName }
27
+ }
28
+ }
29
+ };
30
+ export const validate = createTypedValidator(schema);
@@ -0,0 +1,35 @@
1
+ import type { FromSchema } from 'json-schema-to-ts';
2
+ export declare const shapeName = "TSChatPayload";
3
+ export declare const schema: {
4
+ readonly type: "object";
5
+ readonly properties: {
6
+ readonly content: {
7
+ readonly type: "string";
8
+ readonly description: "The string content of the chat message.";
9
+ };
10
+ readonly references: {
11
+ readonly type: "array";
12
+ readonly items: {
13
+ readonly type: "object";
14
+ readonly '@ref': "TSReference";
15
+ };
16
+ readonly description: "A list of references associated with the chat message.";
17
+ };
18
+ readonly artifact: {
19
+ readonly type: "object";
20
+ readonly description: "An optional artifact associated with the chat message.";
21
+ };
22
+ };
23
+ readonly required: ["references"];
24
+ readonly additionalProperties: false;
25
+ };
26
+ export type AgentChatPayload = FromSchema<typeof schema>;
27
+ export declare const validate: import("ajv").ValidateFunction<{
28
+ content?: string | undefined;
29
+ artifact?: {
30
+ [x: string]: unknown;
31
+ } | undefined;
32
+ references: {
33
+ [x: string]: unknown;
34
+ }[];
35
+ }>;
@@ -0,0 +1,26 @@
1
+ import { createTypedValidator } from '@takeshape/json-schema';
2
+ export const shapeName = 'TSChatPayload';
3
+ export const schema = {
4
+ type: 'object',
5
+ properties: {
6
+ content: {
7
+ type: 'string',
8
+ description: 'The string content of the chat message.'
9
+ },
10
+ references: {
11
+ type: 'array',
12
+ items: {
13
+ type: 'object',
14
+ '@ref': 'TSReference'
15
+ },
16
+ description: 'A list of references associated with the chat message.'
17
+ },
18
+ artifact: {
19
+ type: 'object',
20
+ description: 'An optional artifact associated with the chat message.'
21
+ }
22
+ },
23
+ required: ['references'],
24
+ additionalProperties: false
25
+ };
26
+ export const validate = createTypedValidator(schema);