@qlever-llc/trellis 0.8.4 → 0.9.0-rc.2

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 (584) hide show
  1. package/README.md +1 -1
  2. package/esm/auth/browser/login.d.ts.map +1 -1
  3. package/esm/auth/browser/login.js +46 -3
  4. package/esm/auth/browser/portal.d.ts.map +1 -1
  5. package/esm/auth/browser/portal.js +5 -1
  6. package/esm/auth/browser/session.d.ts +18 -7
  7. package/esm/auth/browser/session.d.ts.map +1 -1
  8. package/esm/auth/browser/session.js +47 -11
  9. package/esm/auth/browser/storage.d.ts +6 -1
  10. package/esm/auth/browser/storage.d.ts.map +1 -1
  11. package/esm/auth/browser/storage.js +15 -3
  12. package/esm/auth/browser.d.ts +2 -2
  13. package/esm/auth/browser.d.ts.map +1 -1
  14. package/esm/auth/browser.js +1 -1
  15. package/esm/auth/device_activation.d.ts +36 -33
  16. package/esm/auth/device_activation.d.ts.map +1 -1
  17. package/esm/auth/device_activation.js +26 -22
  18. package/esm/auth/mod.d.ts +4 -4
  19. package/esm/auth/mod.d.ts.map +1 -1
  20. package/esm/auth/mod.js +2 -2
  21. package/esm/auth/proof.d.ts +3 -1
  22. package/esm/auth/proof.d.ts.map +1 -1
  23. package/esm/auth/proof.js +21 -15
  24. package/esm/auth/protocol.d.ts +2457 -941
  25. package/esm/auth/protocol.d.ts.map +1 -1
  26. package/esm/auth/protocol.js +747 -375
  27. package/esm/auth/schemas.d.ts +25 -4
  28. package/esm/auth/schemas.d.ts.map +1 -1
  29. package/esm/auth/schemas.js +14 -4
  30. package/esm/auth/session_auth.d.ts +1 -1
  31. package/esm/auth/session_auth.d.ts.map +1 -1
  32. package/esm/auth/session_auth.js +7 -1
  33. package/esm/client_connect.d.ts +2 -0
  34. package/esm/client_connect.d.ts.map +1 -1
  35. package/esm/client_connect.js +76 -15
  36. package/esm/contract.d.ts +3 -0
  37. package/esm/contract.d.ts.map +1 -1
  38. package/esm/contract_support/mod.d.ts +422 -43
  39. package/esm/contract_support/mod.d.ts.map +1 -1
  40. package/esm/contract_support/mod.js +734 -33
  41. package/esm/contract_support/protocol.d.ts +20 -5
  42. package/esm/contract_support/protocol.d.ts.map +1 -1
  43. package/esm/contract_support/protocol.js +18 -10
  44. package/esm/contract_support/runtime.d.ts +11 -0
  45. package/esm/contract_support/runtime.d.ts.map +1 -1
  46. package/esm/contract_support/schema_pointers.d.ts.map +1 -1
  47. package/esm/contract_support/schema_pointers.js +32 -14
  48. package/esm/device.d.ts +2 -0
  49. package/esm/device.d.ts.map +1 -1
  50. package/esm/device.js +3 -0
  51. package/esm/errors/AuthError.d.ts +1 -1
  52. package/esm/errors/AuthError.d.ts.map +1 -1
  53. package/esm/errors/AuthError.js +5 -1
  54. package/esm/errors/index.d.ts +4 -4
  55. package/esm/generated-sdk/auth/api.d.ts +27 -9
  56. package/esm/generated-sdk/auth/api.d.ts.map +1 -1
  57. package/esm/generated-sdk/auth/api.js +16 -590
  58. package/esm/generated-sdk/auth/client.d.ts +91 -85
  59. package/esm/generated-sdk/auth/client.d.ts.map +1 -1
  60. package/esm/generated-sdk/auth/contract.d.ts +1 -1
  61. package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
  62. package/esm/generated-sdk/auth/contract.js +4 -2
  63. package/esm/generated-sdk/auth/mod.d.ts +1 -0
  64. package/esm/generated-sdk/auth/mod.d.ts.map +1 -1
  65. package/esm/generated-sdk/auth/owned_api.d.ts +3 -0
  66. package/esm/generated-sdk/auth/owned_api.d.ts.map +1 -0
  67. package/esm/generated-sdk/auth/owned_api.js +594 -0
  68. package/esm/generated-sdk/auth/schemas.d.ts +9959 -5160
  69. package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
  70. package/esm/generated-sdk/auth/schemas.js +136 -137
  71. package/esm/generated-sdk/auth/types.d.ts +2418 -1557
  72. package/esm/generated-sdk/auth/types.d.ts.map +1 -1
  73. package/esm/generated-sdk/auth/types.js +1 -1
  74. package/esm/generated-sdk/health/api.d.ts +24 -9
  75. package/esm/generated-sdk/health/api.d.ts.map +1 -1
  76. package/esm/generated-sdk/health/api.js +12 -20
  77. package/esm/generated-sdk/health/client.d.ts +2 -1
  78. package/esm/generated-sdk/health/client.d.ts.map +1 -1
  79. package/esm/generated-sdk/health/contract.d.ts.map +1 -1
  80. package/esm/generated-sdk/health/contract.js +2 -0
  81. package/esm/generated-sdk/health/owned_api.d.ts +3 -0
  82. package/esm/generated-sdk/health/owned_api.d.ts.map +1 -0
  83. package/esm/generated-sdk/health/owned_api.js +16 -0
  84. package/esm/generated-sdk/health/types.d.ts +2 -0
  85. package/esm/generated-sdk/health/types.d.ts.map +1 -1
  86. package/esm/generated-sdk/jobs/api.d.ts +33 -9
  87. package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
  88. package/esm/generated-sdk/jobs/api.js +22 -87
  89. package/esm/generated-sdk/jobs/client.d.ts +9 -2
  90. package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
  91. package/esm/generated-sdk/jobs/contract.d.ts +1 -1
  92. package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
  93. package/esm/generated-sdk/jobs/contract.js +4 -2
  94. package/esm/generated-sdk/jobs/owned_api.d.ts +3 -0
  95. package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -0
  96. package/esm/generated-sdk/jobs/owned_api.js +118 -0
  97. package/esm/generated-sdk/jobs/schemas.d.ts +336 -123
  98. package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
  99. package/esm/generated-sdk/jobs/schemas.js +17 -15
  100. package/esm/generated-sdk/jobs/types.d.ts +144 -34
  101. package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
  102. package/esm/generated-sdk/jobs/types.js +36 -1
  103. package/esm/generated-sdk/state/api.d.ts +27 -9
  104. package/esm/generated-sdk/state/api.d.ts.map +1 -1
  105. package/esm/generated-sdk/state/api.js +16 -71
  106. package/esm/generated-sdk/state/client.d.ts +4 -2
  107. package/esm/generated-sdk/state/client.d.ts.map +1 -1
  108. package/esm/generated-sdk/state/contract.d.ts +1 -1
  109. package/esm/generated-sdk/state/contract.d.ts.map +1 -1
  110. package/esm/generated-sdk/state/contract.js +4 -2
  111. package/esm/generated-sdk/state/owned_api.d.ts +3 -0
  112. package/esm/generated-sdk/state/owned_api.d.ts.map +1 -0
  113. package/esm/generated-sdk/state/owned_api.js +66 -0
  114. package/esm/generated-sdk/state/schemas.d.ts +264 -284
  115. package/esm/generated-sdk/state/schemas.d.ts.map +1 -1
  116. package/esm/generated-sdk/state/schemas.js +6 -6
  117. package/esm/generated-sdk/state/types.d.ts +24 -23
  118. package/esm/generated-sdk/state/types.d.ts.map +1 -1
  119. package/esm/generated-sdk/state/types.js +1 -1
  120. package/esm/generated-sdk/trellis-core/api.d.ts +27 -9
  121. package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
  122. package/esm/generated-sdk/trellis-core/api.js +16 -39
  123. package/esm/generated-sdk/trellis-core/client.d.ts +5 -2
  124. package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
  125. package/esm/generated-sdk/trellis-core/contract.d.ts +1 -1
  126. package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  127. package/esm/generated-sdk/trellis-core/contract.js +4 -2
  128. package/esm/generated-sdk/trellis-core/owned_api.d.ts +3 -0
  129. package/esm/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
  130. package/esm/generated-sdk/trellis-core/owned_api.js +42 -0
  131. package/esm/generated-sdk/trellis-core/schemas.d.ts +259 -11
  132. package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  133. package/esm/generated-sdk/trellis-core/schemas.js +5 -3
  134. package/esm/generated-sdk/trellis-core/types.d.ts +56 -1
  135. package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
  136. package/esm/generated-sdk/trellis-core/types.js +1 -1
  137. package/esm/helpers.d.ts.map +1 -1
  138. package/esm/index.d.ts +4 -3
  139. package/esm/index.d.ts.map +1 -1
  140. package/esm/index.js +1 -0
  141. package/esm/jobs.d.ts +10 -1
  142. package/esm/jobs.d.ts.map +1 -1
  143. package/esm/jobs.js +16 -1
  144. package/esm/kv.d.ts.map +1 -1
  145. package/esm/kv.js +10 -4
  146. package/esm/models/auth/rpc/Logout.d.ts +4 -4
  147. package/esm/models/auth/rpc/Logout.d.ts.map +1 -1
  148. package/esm/models/auth/rpc/Logout.js +2 -2
  149. package/esm/models/trellis/Page.d.ts +2 -0
  150. package/esm/models/trellis/Page.d.ts.map +1 -0
  151. package/esm/models/trellis/Page.js +1 -0
  152. package/esm/models/trellis/State.d.ts +1 -0
  153. package/esm/models/trellis/State.d.ts.map +1 -1
  154. package/esm/models/trellis/State.js +1 -0
  155. package/esm/models/trellis/rpc/StateList.d.ts +9 -12
  156. package/esm/models/trellis/rpc/StateList.d.ts.map +1 -1
  157. package/esm/models/trellis/rpc/StateList.js +16 -18
  158. package/esm/npm/src/auth/browser/login.d.ts.map +1 -1
  159. package/esm/npm/src/auth/browser/login.js +46 -3
  160. package/esm/npm/src/auth/browser/portal.d.ts.map +1 -1
  161. package/esm/npm/src/auth/browser/portal.js +5 -1
  162. package/esm/npm/src/auth/browser/session.d.ts +18 -7
  163. package/esm/npm/src/auth/browser/session.d.ts.map +1 -1
  164. package/esm/npm/src/auth/browser/session.js +47 -11
  165. package/esm/npm/src/auth/browser/storage.d.ts +6 -1
  166. package/esm/npm/src/auth/browser/storage.d.ts.map +1 -1
  167. package/esm/npm/src/auth/browser/storage.js +15 -3
  168. package/esm/npm/src/auth/browser.d.ts +2 -2
  169. package/esm/npm/src/auth/browser.d.ts.map +1 -1
  170. package/esm/npm/src/auth/browser.js +1 -1
  171. package/esm/npm/src/auth/device_activation.d.ts +36 -33
  172. package/esm/npm/src/auth/device_activation.d.ts.map +1 -1
  173. package/esm/npm/src/auth/device_activation.js +26 -22
  174. package/esm/npm/src/auth/mod.d.ts +4 -4
  175. package/esm/npm/src/auth/mod.d.ts.map +1 -1
  176. package/esm/npm/src/auth/mod.js +2 -2
  177. package/esm/npm/src/auth/proof.d.ts +3 -1
  178. package/esm/npm/src/auth/proof.d.ts.map +1 -1
  179. package/esm/npm/src/auth/proof.js +21 -15
  180. package/esm/npm/src/auth/protocol.d.ts +2457 -941
  181. package/esm/npm/src/auth/protocol.d.ts.map +1 -1
  182. package/esm/npm/src/auth/protocol.js +747 -375
  183. package/esm/npm/src/auth/schemas.d.ts +25 -4
  184. package/esm/npm/src/auth/schemas.d.ts.map +1 -1
  185. package/esm/npm/src/auth/schemas.js +14 -4
  186. package/esm/npm/src/auth/session_auth.d.ts +1 -1
  187. package/esm/npm/src/auth/session_auth.d.ts.map +1 -1
  188. package/esm/npm/src/auth/session_auth.js +7 -1
  189. package/esm/npm/src/client_connect.d.ts +2 -0
  190. package/esm/npm/src/client_connect.d.ts.map +1 -1
  191. package/esm/npm/src/client_connect.js +76 -15
  192. package/esm/npm/src/contract.d.ts +3 -0
  193. package/esm/npm/src/contract.d.ts.map +1 -1
  194. package/esm/npm/src/contract_support/mod.d.ts +422 -43
  195. package/esm/npm/src/contract_support/mod.d.ts.map +1 -1
  196. package/esm/npm/src/contract_support/mod.js +734 -33
  197. package/esm/npm/src/contract_support/protocol.d.ts +20 -5
  198. package/esm/npm/src/contract_support/protocol.d.ts.map +1 -1
  199. package/esm/npm/src/contract_support/protocol.js +18 -10
  200. package/esm/npm/src/contract_support/runtime.d.ts +11 -0
  201. package/esm/npm/src/contract_support/runtime.d.ts.map +1 -1
  202. package/esm/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
  203. package/esm/npm/src/contract_support/schema_pointers.js +32 -14
  204. package/esm/npm/src/device/deno.d.ts.map +1 -1
  205. package/esm/npm/src/device/deno.js +6 -0
  206. package/esm/npm/src/device.d.ts +2 -0
  207. package/esm/npm/src/device.d.ts.map +1 -1
  208. package/esm/npm/src/device.js +3 -0
  209. package/esm/npm/src/errors/AuthError.d.ts +1 -1
  210. package/esm/npm/src/errors/AuthError.d.ts.map +1 -1
  211. package/esm/npm/src/errors/AuthError.js +5 -1
  212. package/esm/npm/src/errors/index.d.ts +4 -4
  213. package/esm/npm/src/generate.js +2 -19
  214. package/esm/npm/src/helpers.d.ts.map +1 -1
  215. package/esm/npm/src/index.d.ts +4 -3
  216. package/esm/npm/src/index.d.ts.map +1 -1
  217. package/esm/npm/src/index.js +1 -0
  218. package/esm/npm/src/jobs.d.ts +10 -1
  219. package/esm/npm/src/jobs.d.ts.map +1 -1
  220. package/esm/npm/src/jobs.js +16 -1
  221. package/esm/npm/src/kv.d.ts.map +1 -1
  222. package/esm/npm/src/kv.js +10 -4
  223. package/esm/npm/src/models/auth/rpc/Logout.d.ts +4 -4
  224. package/esm/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
  225. package/esm/npm/src/models/auth/rpc/Logout.js +2 -2
  226. package/esm/npm/src/models/trellis/Page.d.ts +2 -0
  227. package/esm/npm/src/models/trellis/Page.d.ts.map +1 -0
  228. package/esm/npm/src/models/trellis/Page.js +1 -0
  229. package/esm/npm/src/models/trellis/State.d.ts +1 -0
  230. package/esm/npm/src/models/trellis/State.d.ts.map +1 -1
  231. package/esm/npm/src/models/trellis/State.js +1 -0
  232. package/esm/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
  233. package/esm/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
  234. package/esm/npm/src/models/trellis/rpc/StateList.js +16 -18
  235. package/esm/npm/src/operations.d.ts +16 -7
  236. package/esm/npm/src/operations.d.ts.map +1 -1
  237. package/esm/npm/src/operations.js +84 -19
  238. package/esm/npm/src/runtime_transport.d.ts +2 -0
  239. package/esm/npm/src/runtime_transport.d.ts.map +1 -1
  240. package/esm/npm/src/runtime_transport.js +1 -0
  241. package/esm/npm/src/server/internal_jobs/active-job.d.ts +2 -1
  242. package/esm/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
  243. package/esm/npm/src/server/internal_jobs/active-job.js +3 -0
  244. package/esm/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
  245. package/esm/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
  246. package/esm/npm/src/server/internal_jobs/job-manager.js +61 -1
  247. package/esm/npm/src/server/internal_jobs/projection.js +1 -0
  248. package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
  249. package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  250. package/esm/npm/src/server/internal_jobs/runtime-worker.js +73 -13
  251. package/esm/npm/src/server/internal_jobs/types.d.ts +19 -0
  252. package/esm/npm/src/server/internal_jobs/types.d.ts.map +1 -1
  253. package/esm/npm/src/server/internal_jobs/types.js +10 -0
  254. package/esm/npm/src/server/runtime.d.ts +1 -0
  255. package/esm/npm/src/server/runtime.d.ts.map +1 -1
  256. package/esm/npm/src/server/service.d.ts +10 -1
  257. package/esm/npm/src/server/service.d.ts.map +1 -1
  258. package/esm/npm/src/server/service.js +190 -64
  259. package/esm/npm/src/server/transfer.d.ts.map +1 -1
  260. package/esm/npm/src/server/transfer.js +4 -0
  261. package/esm/npm/src/server.d.ts.map +1 -1
  262. package/esm/npm/src/server.js +337 -34
  263. package/esm/npm/src/store.d.ts +8 -1
  264. package/esm/npm/src/store.d.ts.map +1 -1
  265. package/esm/npm/src/store.js +46 -8
  266. package/esm/npm/src/transfer.d.ts +3 -0
  267. package/esm/npm/src/transfer.d.ts.map +1 -1
  268. package/esm/npm/src/transfer.js +20 -30
  269. package/esm/npm/src/trellis.d.ts +85 -22
  270. package/esm/npm/src/trellis.d.ts.map +1 -1
  271. package/esm/npm/src/trellis.js +525 -61
  272. package/esm/operations.d.ts +16 -7
  273. package/esm/operations.d.ts.map +1 -1
  274. package/esm/operations.js +84 -19
  275. package/esm/runtime_transport.d.ts +2 -0
  276. package/esm/runtime_transport.d.ts.map +1 -1
  277. package/esm/runtime_transport.js +1 -0
  278. package/esm/store.d.ts +8 -1
  279. package/esm/store.d.ts.map +1 -1
  280. package/esm/store.js +46 -8
  281. package/esm/transfer.d.ts +3 -0
  282. package/esm/transfer.d.ts.map +1 -1
  283. package/esm/transfer.js +20 -30
  284. package/esm/trellis.d.ts +85 -22
  285. package/esm/trellis.d.ts.map +1 -1
  286. package/esm/trellis.js +525 -61
  287. package/package.json +6 -3
  288. package/script/auth/browser/login.d.ts.map +1 -1
  289. package/script/auth/browser/login.js +46 -3
  290. package/script/auth/browser/portal.d.ts.map +1 -1
  291. package/script/auth/browser/portal.js +5 -1
  292. package/script/auth/browser/session.d.ts +18 -7
  293. package/script/auth/browser/session.d.ts.map +1 -1
  294. package/script/auth/browser/session.js +47 -11
  295. package/script/auth/browser/storage.d.ts +6 -1
  296. package/script/auth/browser/storage.d.ts.map +1 -1
  297. package/script/auth/browser/storage.js +15 -3
  298. package/script/auth/browser.d.ts +2 -2
  299. package/script/auth/browser.d.ts.map +1 -1
  300. package/script/auth/browser.js +2 -1
  301. package/script/auth/device_activation.d.ts +36 -33
  302. package/script/auth/device_activation.d.ts.map +1 -1
  303. package/script/auth/device_activation.js +25 -21
  304. package/script/auth/mod.d.ts +4 -4
  305. package/script/auth/mod.d.ts.map +1 -1
  306. package/script/auth/mod.js +132 -137
  307. package/script/auth/proof.d.ts +3 -1
  308. package/script/auth/proof.d.ts.map +1 -1
  309. package/script/auth/proof.js +21 -15
  310. package/script/auth/protocol.d.ts +2457 -941
  311. package/script/auth/protocol.d.ts.map +1 -1
  312. package/script/auth/protocol.js +749 -377
  313. package/script/auth/schemas.d.ts +25 -4
  314. package/script/auth/schemas.d.ts.map +1 -1
  315. package/script/auth/schemas.js +16 -5
  316. package/script/auth/session_auth.d.ts +1 -1
  317. package/script/auth/session_auth.d.ts.map +1 -1
  318. package/script/auth/session_auth.js +7 -1
  319. package/script/client_connect.d.ts +2 -0
  320. package/script/client_connect.d.ts.map +1 -1
  321. package/script/client_connect.js +76 -15
  322. package/script/contract.d.ts +3 -0
  323. package/script/contract.d.ts.map +1 -1
  324. package/script/contract_support/mod.d.ts +422 -43
  325. package/script/contract_support/mod.d.ts.map +1 -1
  326. package/script/contract_support/mod.js +757 -51
  327. package/script/contract_support/protocol.d.ts +20 -5
  328. package/script/contract_support/protocol.d.ts.map +1 -1
  329. package/script/contract_support/protocol.js +20 -11
  330. package/script/contract_support/runtime.d.ts +11 -0
  331. package/script/contract_support/runtime.d.ts.map +1 -1
  332. package/script/contract_support/schema_pointers.d.ts.map +1 -1
  333. package/script/contract_support/schema_pointers.js +32 -14
  334. package/script/device.d.ts +2 -0
  335. package/script/device.d.ts.map +1 -1
  336. package/script/device.js +3 -0
  337. package/script/errors/AuthError.d.ts +1 -1
  338. package/script/errors/AuthError.d.ts.map +1 -1
  339. package/script/errors/AuthError.js +5 -1
  340. package/script/errors/index.d.ts +4 -4
  341. package/script/generated-sdk/auth/api.d.ts +27 -9
  342. package/script/generated-sdk/auth/api.d.ts.map +1 -1
  343. package/script/generated-sdk/auth/api.js +17 -591
  344. package/script/generated-sdk/auth/client.d.ts +91 -85
  345. package/script/generated-sdk/auth/client.d.ts.map +1 -1
  346. package/script/generated-sdk/auth/contract.d.ts +1 -1
  347. package/script/generated-sdk/auth/contract.d.ts.map +1 -1
  348. package/script/generated-sdk/auth/contract.js +4 -2
  349. package/script/generated-sdk/auth/mod.d.ts +1 -0
  350. package/script/generated-sdk/auth/mod.d.ts.map +1 -1
  351. package/script/generated-sdk/auth/owned_api.d.ts +3 -0
  352. package/script/generated-sdk/auth/owned_api.d.ts.map +1 -0
  353. package/script/generated-sdk/auth/owned_api.js +597 -0
  354. package/script/generated-sdk/auth/schemas.d.ts +9959 -5160
  355. package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
  356. package/script/generated-sdk/auth/schemas.js +139 -140
  357. package/script/generated-sdk/auth/types.d.ts +2418 -1557
  358. package/script/generated-sdk/auth/types.d.ts.map +1 -1
  359. package/script/generated-sdk/auth/types.js +1 -1
  360. package/script/generated-sdk/health/api.d.ts +24 -9
  361. package/script/generated-sdk/health/api.d.ts.map +1 -1
  362. package/script/generated-sdk/health/api.js +13 -21
  363. package/script/generated-sdk/health/client.d.ts +2 -1
  364. package/script/generated-sdk/health/client.d.ts.map +1 -1
  365. package/script/generated-sdk/health/contract.d.ts.map +1 -1
  366. package/script/generated-sdk/health/contract.js +2 -0
  367. package/script/generated-sdk/health/owned_api.d.ts +3 -0
  368. package/script/generated-sdk/health/owned_api.d.ts.map +1 -0
  369. package/script/generated-sdk/health/owned_api.js +19 -0
  370. package/script/generated-sdk/health/types.d.ts +2 -0
  371. package/script/generated-sdk/health/types.d.ts.map +1 -1
  372. package/script/generated-sdk/jobs/api.d.ts +33 -9
  373. package/script/generated-sdk/jobs/api.d.ts.map +1 -1
  374. package/script/generated-sdk/jobs/api.js +23 -88
  375. package/script/generated-sdk/jobs/client.d.ts +9 -2
  376. package/script/generated-sdk/jobs/client.d.ts.map +1 -1
  377. package/script/generated-sdk/jobs/contract.d.ts +1 -1
  378. package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
  379. package/script/generated-sdk/jobs/contract.js +4 -2
  380. package/script/generated-sdk/jobs/owned_api.d.ts +3 -0
  381. package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -0
  382. package/script/generated-sdk/jobs/owned_api.js +154 -0
  383. package/script/generated-sdk/jobs/schemas.d.ts +336 -123
  384. package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
  385. package/script/generated-sdk/jobs/schemas.js +18 -16
  386. package/script/generated-sdk/jobs/types.d.ts +144 -34
  387. package/script/generated-sdk/jobs/types.d.ts.map +1 -1
  388. package/script/generated-sdk/jobs/types.js +38 -2
  389. package/script/generated-sdk/state/api.d.ts +27 -9
  390. package/script/generated-sdk/state/api.d.ts.map +1 -1
  391. package/script/generated-sdk/state/api.js +17 -72
  392. package/script/generated-sdk/state/client.d.ts +4 -2
  393. package/script/generated-sdk/state/client.d.ts.map +1 -1
  394. package/script/generated-sdk/state/contract.d.ts +1 -1
  395. package/script/generated-sdk/state/contract.d.ts.map +1 -1
  396. package/script/generated-sdk/state/contract.js +4 -2
  397. package/script/generated-sdk/state/owned_api.d.ts +3 -0
  398. package/script/generated-sdk/state/owned_api.d.ts.map +1 -0
  399. package/script/generated-sdk/state/owned_api.js +69 -0
  400. package/script/generated-sdk/state/schemas.d.ts +264 -284
  401. package/script/generated-sdk/state/schemas.d.ts.map +1 -1
  402. package/script/generated-sdk/state/schemas.js +6 -6
  403. package/script/generated-sdk/state/types.d.ts +24 -23
  404. package/script/generated-sdk/state/types.d.ts.map +1 -1
  405. package/script/generated-sdk/state/types.js +1 -1
  406. package/script/generated-sdk/trellis-core/api.d.ts +27 -9
  407. package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
  408. package/script/generated-sdk/trellis-core/api.js +17 -40
  409. package/script/generated-sdk/trellis-core/client.d.ts +5 -2
  410. package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
  411. package/script/generated-sdk/trellis-core/contract.d.ts +1 -1
  412. package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  413. package/script/generated-sdk/trellis-core/contract.js +4 -2
  414. package/script/generated-sdk/trellis-core/owned_api.d.ts +3 -0
  415. package/script/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
  416. package/script/generated-sdk/trellis-core/owned_api.js +45 -0
  417. package/script/generated-sdk/trellis-core/schemas.d.ts +259 -11
  418. package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  419. package/script/generated-sdk/trellis-core/schemas.js +6 -4
  420. package/script/generated-sdk/trellis-core/types.d.ts +56 -1
  421. package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
  422. package/script/generated-sdk/trellis-core/types.js +1 -1
  423. package/script/helpers.d.ts.map +1 -1
  424. package/script/index.d.ts +4 -3
  425. package/script/index.d.ts.map +1 -1
  426. package/script/index.js +5 -2
  427. package/script/jobs.d.ts +10 -1
  428. package/script/jobs.d.ts.map +1 -1
  429. package/script/jobs.js +17 -2
  430. package/script/kv.d.ts.map +1 -1
  431. package/script/kv.js +10 -4
  432. package/script/models/auth/rpc/Logout.d.ts +4 -4
  433. package/script/models/auth/rpc/Logout.d.ts.map +1 -1
  434. package/script/models/auth/rpc/Logout.js +3 -3
  435. package/script/models/trellis/Page.d.ts +2 -0
  436. package/script/models/trellis/Page.d.ts.map +1 -0
  437. package/script/models/trellis/Page.js +6 -0
  438. package/script/models/trellis/State.d.ts +1 -0
  439. package/script/models/trellis/State.d.ts.map +1 -1
  440. package/script/models/trellis/State.js +1 -0
  441. package/script/models/trellis/rpc/StateList.d.ts +9 -12
  442. package/script/models/trellis/rpc/StateList.d.ts.map +1 -1
  443. package/script/models/trellis/rpc/StateList.js +16 -18
  444. package/script/npm/src/auth/browser/login.d.ts.map +1 -1
  445. package/script/npm/src/auth/browser/login.js +46 -3
  446. package/script/npm/src/auth/browser/portal.d.ts.map +1 -1
  447. package/script/npm/src/auth/browser/portal.js +5 -1
  448. package/script/npm/src/auth/browser/session.d.ts +18 -7
  449. package/script/npm/src/auth/browser/session.d.ts.map +1 -1
  450. package/script/npm/src/auth/browser/session.js +47 -11
  451. package/script/npm/src/auth/browser/storage.d.ts +6 -1
  452. package/script/npm/src/auth/browser/storage.d.ts.map +1 -1
  453. package/script/npm/src/auth/browser/storage.js +15 -3
  454. package/script/npm/src/auth/browser.d.ts +2 -2
  455. package/script/npm/src/auth/browser.d.ts.map +1 -1
  456. package/script/npm/src/auth/browser.js +2 -1
  457. package/script/npm/src/auth/device_activation.d.ts +36 -33
  458. package/script/npm/src/auth/device_activation.d.ts.map +1 -1
  459. package/script/npm/src/auth/device_activation.js +25 -21
  460. package/script/npm/src/auth/mod.d.ts +4 -4
  461. package/script/npm/src/auth/mod.d.ts.map +1 -1
  462. package/script/npm/src/auth/mod.js +132 -137
  463. package/script/npm/src/auth/proof.d.ts +3 -1
  464. package/script/npm/src/auth/proof.d.ts.map +1 -1
  465. package/script/npm/src/auth/proof.js +21 -15
  466. package/script/npm/src/auth/protocol.d.ts +2457 -941
  467. package/script/npm/src/auth/protocol.d.ts.map +1 -1
  468. package/script/npm/src/auth/protocol.js +749 -377
  469. package/script/npm/src/auth/schemas.d.ts +25 -4
  470. package/script/npm/src/auth/schemas.d.ts.map +1 -1
  471. package/script/npm/src/auth/schemas.js +16 -5
  472. package/script/npm/src/auth/session_auth.d.ts +1 -1
  473. package/script/npm/src/auth/session_auth.d.ts.map +1 -1
  474. package/script/npm/src/auth/session_auth.js +7 -1
  475. package/script/npm/src/client_connect.d.ts +2 -0
  476. package/script/npm/src/client_connect.d.ts.map +1 -1
  477. package/script/npm/src/client_connect.js +76 -15
  478. package/script/npm/src/contract.d.ts +3 -0
  479. package/script/npm/src/contract.d.ts.map +1 -1
  480. package/script/npm/src/contract_support/mod.d.ts +422 -43
  481. package/script/npm/src/contract_support/mod.d.ts.map +1 -1
  482. package/script/npm/src/contract_support/mod.js +757 -51
  483. package/script/npm/src/contract_support/protocol.d.ts +20 -5
  484. package/script/npm/src/contract_support/protocol.d.ts.map +1 -1
  485. package/script/npm/src/contract_support/protocol.js +20 -11
  486. package/script/npm/src/contract_support/runtime.d.ts +11 -0
  487. package/script/npm/src/contract_support/runtime.d.ts.map +1 -1
  488. package/script/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
  489. package/script/npm/src/contract_support/schema_pointers.js +32 -14
  490. package/script/npm/src/device/deno.d.ts.map +1 -1
  491. package/script/npm/src/device/deno.js +6 -0
  492. package/script/npm/src/device.d.ts +2 -0
  493. package/script/npm/src/device.d.ts.map +1 -1
  494. package/script/npm/src/device.js +3 -0
  495. package/script/npm/src/errors/AuthError.d.ts +1 -1
  496. package/script/npm/src/errors/AuthError.d.ts.map +1 -1
  497. package/script/npm/src/errors/AuthError.js +5 -1
  498. package/script/npm/src/errors/index.d.ts +4 -4
  499. package/script/npm/src/generate.js +2 -19
  500. package/script/npm/src/helpers.d.ts.map +1 -1
  501. package/script/npm/src/index.d.ts +4 -3
  502. package/script/npm/src/index.d.ts.map +1 -1
  503. package/script/npm/src/index.js +5 -2
  504. package/script/npm/src/jobs.d.ts +10 -1
  505. package/script/npm/src/jobs.d.ts.map +1 -1
  506. package/script/npm/src/jobs.js +17 -2
  507. package/script/npm/src/kv.d.ts.map +1 -1
  508. package/script/npm/src/kv.js +10 -4
  509. package/script/npm/src/models/auth/rpc/Logout.d.ts +4 -4
  510. package/script/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
  511. package/script/npm/src/models/auth/rpc/Logout.js +3 -3
  512. package/script/npm/src/models/trellis/Page.d.ts +2 -0
  513. package/script/npm/src/models/trellis/Page.d.ts.map +1 -0
  514. package/script/npm/src/models/trellis/Page.js +6 -0
  515. package/script/npm/src/models/trellis/State.d.ts +1 -0
  516. package/script/npm/src/models/trellis/State.d.ts.map +1 -1
  517. package/script/npm/src/models/trellis/State.js +1 -0
  518. package/script/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
  519. package/script/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
  520. package/script/npm/src/models/trellis/rpc/StateList.js +16 -18
  521. package/script/npm/src/operations.d.ts +16 -7
  522. package/script/npm/src/operations.d.ts.map +1 -1
  523. package/script/npm/src/operations.js +84 -19
  524. package/script/npm/src/runtime_transport.d.ts +2 -0
  525. package/script/npm/src/runtime_transport.d.ts.map +1 -1
  526. package/script/npm/src/runtime_transport.js +2 -1
  527. package/script/npm/src/server/internal_jobs/active-job.d.ts +2 -1
  528. package/script/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
  529. package/script/npm/src/server/internal_jobs/active-job.js +3 -0
  530. package/script/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
  531. package/script/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
  532. package/script/npm/src/server/internal_jobs/job-manager.js +61 -1
  533. package/script/npm/src/server/internal_jobs/projection.js +1 -0
  534. package/script/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
  535. package/script/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  536. package/script/npm/src/server/internal_jobs/runtime-worker.js +74 -13
  537. package/script/npm/src/server/internal_jobs/types.d.ts +19 -0
  538. package/script/npm/src/server/internal_jobs/types.d.ts.map +1 -1
  539. package/script/npm/src/server/internal_jobs/types.js +11 -1
  540. package/script/npm/src/server/runtime.d.ts +1 -0
  541. package/script/npm/src/server/runtime.d.ts.map +1 -1
  542. package/script/npm/src/server/service.d.ts +10 -1
  543. package/script/npm/src/server/service.d.ts.map +1 -1
  544. package/script/npm/src/server/service.js +188 -62
  545. package/script/npm/src/server/transfer.d.ts.map +1 -1
  546. package/script/npm/src/server/transfer.js +4 -0
  547. package/script/npm/src/server.d.ts.map +1 -1
  548. package/script/npm/src/server.js +336 -33
  549. package/script/npm/src/store.d.ts +8 -1
  550. package/script/npm/src/store.d.ts.map +1 -1
  551. package/script/npm/src/store.js +46 -8
  552. package/script/npm/src/transfer.d.ts +3 -0
  553. package/script/npm/src/transfer.d.ts.map +1 -1
  554. package/script/npm/src/transfer.js +19 -29
  555. package/script/npm/src/trellis.d.ts +85 -22
  556. package/script/npm/src/trellis.d.ts.map +1 -1
  557. package/script/npm/src/trellis.js +525 -61
  558. package/script/operations.d.ts +16 -7
  559. package/script/operations.d.ts.map +1 -1
  560. package/script/operations.js +84 -19
  561. package/script/runtime_transport.d.ts +2 -0
  562. package/script/runtime_transport.d.ts.map +1 -1
  563. package/script/runtime_transport.js +2 -1
  564. package/script/store.d.ts +8 -1
  565. package/script/store.d.ts.map +1 -1
  566. package/script/store.js +46 -8
  567. package/script/transfer.d.ts +3 -0
  568. package/script/transfer.d.ts.map +1 -1
  569. package/script/transfer.js +19 -29
  570. package/script/trellis.d.ts +85 -22
  571. package/script/trellis.d.ts.map +1 -1
  572. package/script/trellis.js +525 -61
  573. package/esm/models/trellis/Paginate.d.ts +0 -7
  574. package/esm/models/trellis/Paginate.d.ts.map +0 -1
  575. package/esm/models/trellis/Paginate.js +0 -5
  576. package/esm/npm/src/models/trellis/Paginate.d.ts +0 -7
  577. package/esm/npm/src/models/trellis/Paginate.d.ts.map +0 -1
  578. package/esm/npm/src/models/trellis/Paginate.js +0 -5
  579. package/script/models/trellis/Paginate.d.ts +0 -7
  580. package/script/models/trellis/Paginate.d.ts.map +0 -1
  581. package/script/models/trellis/Paginate.js +0 -11
  582. package/script/npm/src/models/trellis/Paginate.d.ts +0 -7
  583. package/script/npm/src/models/trellis/Paginate.d.ts.map +0 -1
  584. package/script/npm/src/models/trellis/Paginate.js +0 -11
@@ -1,18 +1,253 @@
1
- import { type Static, type TObject, type TProperties, type TSchema } from "typebox";
1
+ import Type, { type Static, type TObject, type TProperties, type TSchema } from "typebox";
2
2
  import type { BaseError } from "@qlever-llc/result";
3
- import type { AuthMeResponse } from "../auth/protocol.js";
3
+ import type { AuthSessionsMeResponse } from "../auth/protocol.js";
4
4
  import { TrellisError } from "../errors/TrellisError.js";
5
- import type { AuthLogoutInput, AuthLogoutResponse } from "../models/auth/rpc/Logout.js";
5
+ import type { AuthSessionsLogoutInput, AuthSessionsLogoutResponse } from "../models/auth/rpc/Logout.js";
6
6
  import type { StateDeleteInput, StateDeleteResponse } from "../models/trellis/rpc/StateDelete.js";
7
7
  import type { StateGetInput, StateGetResponse } from "../models/trellis/rpc/StateGet.js";
8
8
  import type { StateListInput, StateListResponse } from "../models/trellis/rpc/StateList.js";
9
9
  import type { StatePutInput, StatePutResponse } from "../models/trellis/rpc/StatePut.js";
10
10
  import { canonicalizeJson, digestJson, isJsonValue, type JsonValue } from "./canonical.js";
11
- import { type EventDesc, type InferRuntimeRpcError, type InferSchemaType, type OperationDesc, type RPCDesc, type RpcErrorClass, type RuntimeRpcErrorDesc, type Schema, schema, type SchemaLike, type SerializableErrorData, type TrellisAPI, unwrapSchema } from "./runtime.js";
11
+ import { type EventDesc, type FeedDesc, type InferRuntimeRpcError, type InferSchemaType, type OperationDesc, type RPCDesc, type RpcErrorClass, type RuntimeRpcErrorDesc, type Schema, schema, type SchemaLike, type SerializableErrorData, type TrellisAPI, unwrapSchema } from "./runtime.js";
12
12
  import { type SubjectParam } from "./schema_pointers.js";
13
- export { ContractJobQueueSchema, ContractJobsSchema, ContractKvResourceSchema, ContractResourceBindingsSchema, ContractResourcesSchema, ContractSchemaRefSchema, ContractStateSchema, ContractStateStoreSchema, ContractStoreResourceSchema, type EventHeader, EventHeaderSchema, type InstalledServiceContract, InstalledServiceContractSchema, IsoDateSchema, type JobsQueueBinding, JobsQueueBindingSchema, type JobsResourceBinding, JobsResourceBindingSchema, type KvResourceBinding, KvResourceBindingSchema, type Paginated, PaginatedSchema, type StoreResourceBinding, StoreResourceBindingSchema, } from "./protocol.js";
13
+ export { ContractJobQueueSchema, ContractJobsSchema, ContractKvResourceSchema, ContractResourceBindingsSchema, ContractResourcesSchema, ContractSchemaRefSchema, ContractStateSchema, ContractStateStoreSchema, ContractStoreResourceSchema, type EventHeader, EventHeaderSchema, type InstalledServiceContract, InstalledServiceContractSchema, IsoDateSchema, type JobsQueueBinding, JobsQueueBindingSchema, type JobsResourceBinding, JobsResourceBindingSchema, type KvResourceBinding, KvResourceBindingSchema, type PageRequest, PageRequestSchema, type PageResponse, PageResponseSchema, type StoreResourceBinding, StoreResourceBindingSchema, } from "./protocol.js";
14
14
  export declare const CONTRACT_FORMAT_V1: "trellis.contract.v1";
15
15
  export declare const CATALOG_FORMAT_V1: "trellis.catalog.v1";
16
+ export declare const ContractCapabilityMetadataSchema: Type.TObject<{
17
+ displayName: Type.TString;
18
+ description: Type.TString;
19
+ consequence: Type.TOptional<Type.TString>;
20
+ }>;
21
+ export declare const ContractCapabilitiesSchema: Type.TRecord<"^.*$", Type.TObject<{
22
+ displayName: Type.TString;
23
+ description: Type.TString;
24
+ consequence: Type.TOptional<Type.TString>;
25
+ }>>;
26
+ export declare const ContractExportsSchema: Type.TObject<{
27
+ schemas: Type.TOptional<Type.TArray<Type.TString>>;
28
+ }>;
29
+ export declare const ContractUsesSchema: Type.TObject<{
30
+ required: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
31
+ contract: Type.TString;
32
+ rpc: Type.TOptional<Type.TObject<{
33
+ call: Type.TOptional<Type.TArray<Type.TString>>;
34
+ }>>;
35
+ operations: Type.TOptional<Type.TObject<{
36
+ call: Type.TOptional<Type.TArray<Type.TString>>;
37
+ }>>;
38
+ events: Type.TOptional<Type.TObject<{
39
+ publish: Type.TOptional<Type.TArray<Type.TString>>;
40
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
41
+ }>>;
42
+ feeds: Type.TOptional<Type.TObject<{
43
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
44
+ }>>;
45
+ }>>>;
46
+ optional: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
47
+ contract: Type.TString;
48
+ rpc: Type.TOptional<Type.TObject<{
49
+ call: Type.TOptional<Type.TArray<Type.TString>>;
50
+ }>>;
51
+ operations: Type.TOptional<Type.TObject<{
52
+ call: Type.TOptional<Type.TArray<Type.TString>>;
53
+ }>>;
54
+ events: Type.TOptional<Type.TObject<{
55
+ publish: Type.TOptional<Type.TArray<Type.TString>>;
56
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
57
+ }>>;
58
+ feeds: Type.TOptional<Type.TObject<{
59
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
60
+ }>>;
61
+ }>>>;
62
+ }>;
63
+ export declare const TrellisContractV1Schema: Type.TObject<{
64
+ format: Type.TLiteral<"trellis.contract.v1">;
65
+ id: Type.TString;
66
+ displayName: Type.TString;
67
+ description: Type.TString;
68
+ kind: Type.TUnion<[Type.TLiteral<"service">, Type.TLiteral<"app">, Type.TLiteral<"device">, Type.TLiteral<"agent">]>;
69
+ capabilities: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
70
+ displayName: Type.TString;
71
+ description: Type.TString;
72
+ consequence: Type.TOptional<Type.TString>;
73
+ }>>>;
74
+ schemas: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TObject<{}>, Type.TBoolean]>>>;
75
+ exports: Type.TOptional<Type.TObject<{
76
+ schemas: Type.TOptional<Type.TArray<Type.TString>>;
77
+ }>>;
78
+ uses: Type.TOptional<Type.TObject<{
79
+ required: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
80
+ contract: Type.TString;
81
+ rpc: Type.TOptional<Type.TObject<{
82
+ call: Type.TOptional<Type.TArray<Type.TString>>;
83
+ }>>;
84
+ operations: Type.TOptional<Type.TObject<{
85
+ call: Type.TOptional<Type.TArray<Type.TString>>;
86
+ }>>;
87
+ events: Type.TOptional<Type.TObject<{
88
+ publish: Type.TOptional<Type.TArray<Type.TString>>;
89
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
90
+ }>>;
91
+ feeds: Type.TOptional<Type.TObject<{
92
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
93
+ }>>;
94
+ }>>>;
95
+ optional: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
96
+ contract: Type.TString;
97
+ rpc: Type.TOptional<Type.TObject<{
98
+ call: Type.TOptional<Type.TArray<Type.TString>>;
99
+ }>>;
100
+ operations: Type.TOptional<Type.TObject<{
101
+ call: Type.TOptional<Type.TArray<Type.TString>>;
102
+ }>>;
103
+ events: Type.TOptional<Type.TObject<{
104
+ publish: Type.TOptional<Type.TArray<Type.TString>>;
105
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
106
+ }>>;
107
+ feeds: Type.TOptional<Type.TObject<{
108
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
109
+ }>>;
110
+ }>>>;
111
+ }>>;
112
+ state: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
113
+ kind: Type.TUnion<[Type.TLiteral<"value">, Type.TLiteral<"map">]>;
114
+ schema: Type.TObject<{
115
+ schema: Type.TString;
116
+ }>;
117
+ stateVersion: Type.TOptional<Type.TString>;
118
+ acceptedVersions: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
119
+ schema: Type.TString;
120
+ }>>>;
121
+ }>>>;
122
+ rpc: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
123
+ version: Type.TString;
124
+ subject: Type.TString;
125
+ input: Type.TObject<{
126
+ schema: Type.TString;
127
+ }>;
128
+ output: Type.TObject<{
129
+ schema: Type.TString;
130
+ }>;
131
+ capabilities: Type.TOptional<Type.TObject<{
132
+ call: Type.TOptional<Type.TArray<Type.TString>>;
133
+ }>>;
134
+ errors: Type.TOptional<Type.TArray<Type.TObject<{
135
+ type: Type.TString;
136
+ }>>>;
137
+ transfer: Type.TOptional<Type.TObject<{
138
+ direction: Type.TLiteral<"receive">;
139
+ }>>;
140
+ }>>>;
141
+ operations: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
142
+ version: Type.TString;
143
+ subject: Type.TString;
144
+ input: Type.TObject<{
145
+ schema: Type.TString;
146
+ }>;
147
+ progress: Type.TOptional<Type.TObject<{
148
+ schema: Type.TString;
149
+ }>>;
150
+ output: Type.TObject<{
151
+ schema: Type.TString;
152
+ }>;
153
+ transfer: Type.TOptional<Type.TObject<{
154
+ direction: Type.TLiteral<"send">;
155
+ store: Type.TString;
156
+ key: Type.TString;
157
+ contentType: Type.TOptional<Type.TString>;
158
+ metadata: Type.TOptional<Type.TString>;
159
+ expiresInMs: Type.TOptional<Type.TInteger>;
160
+ maxBytes: Type.TOptional<Type.TInteger>;
161
+ }>>;
162
+ capabilities: Type.TOptional<Type.TObject<{
163
+ call: Type.TOptional<Type.TArray<Type.TString>>;
164
+ read: Type.TOptional<Type.TArray<Type.TString>>;
165
+ cancel: Type.TOptional<Type.TArray<Type.TString>>;
166
+ control: Type.TOptional<Type.TArray<Type.TString>>;
167
+ }>>;
168
+ signals: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
169
+ input: Type.TObject<{
170
+ schema: Type.TString;
171
+ }>;
172
+ }>>>;
173
+ cancel: Type.TOptional<Type.TBoolean>;
174
+ }>>>;
175
+ events: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
176
+ version: Type.TString;
177
+ subject: Type.TString;
178
+ params: Type.TOptional<Type.TArray<Type.TString>>;
179
+ event: Type.TObject<{
180
+ schema: Type.TString;
181
+ }>;
182
+ capabilities: Type.TOptional<Type.TObject<{
183
+ publish: Type.TOptional<Type.TArray<Type.TString>>;
184
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
185
+ }>>;
186
+ }>>>;
187
+ feeds: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
188
+ version: Type.TString;
189
+ subject: Type.TString;
190
+ input: Type.TObject<{
191
+ schema: Type.TString;
192
+ }>;
193
+ event: Type.TObject<{
194
+ schema: Type.TString;
195
+ }>;
196
+ capabilities: Type.TOptional<Type.TObject<{
197
+ subscribe: Type.TOptional<Type.TArray<Type.TString>>;
198
+ }>>;
199
+ }>>>;
200
+ errors: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
201
+ type: Type.TString;
202
+ schema: Type.TOptional<Type.TObject<{
203
+ schema: Type.TString;
204
+ }>>;
205
+ }>>>;
206
+ jobs: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
207
+ payload: Type.TObject<{
208
+ schema: Type.TString;
209
+ }>;
210
+ result: Type.TOptional<Type.TObject<{
211
+ schema: Type.TString;
212
+ }>>;
213
+ maxDeliver: Type.TOptional<Type.TInteger>;
214
+ backoffMs: Type.TOptional<Type.TArray<Type.TInteger>>;
215
+ ackWaitMs: Type.TOptional<Type.TInteger>;
216
+ defaultDeadlineMs: Type.TOptional<Type.TInteger>;
217
+ progress: Type.TOptional<Type.TBoolean>;
218
+ logs: Type.TOptional<Type.TBoolean>;
219
+ dlq: Type.TOptional<Type.TBoolean>;
220
+ concurrency: Type.TOptional<Type.TInteger>;
221
+ }>>>;
222
+ resources: Type.TOptional<Type.TObject<{
223
+ kv: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
224
+ purpose: Type.TString;
225
+ schema: Type.TObject<{
226
+ schema: Type.TString;
227
+ }>;
228
+ required: Type.TOptional<Type.TBoolean>;
229
+ history: Type.TOptional<Type.TInteger>;
230
+ ttlMs: Type.TOptional<Type.TInteger>;
231
+ maxValueBytes: Type.TOptional<Type.TInteger>;
232
+ }>>>;
233
+ store: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
234
+ purpose: Type.TString;
235
+ required: Type.TOptional<Type.TBoolean>;
236
+ ttlMs: Type.TOptional<Type.TInteger>;
237
+ maxObjectBytes: Type.TOptional<Type.TInteger>;
238
+ maxTotalBytes: Type.TOptional<Type.TInteger>;
239
+ }>>>;
240
+ }>>;
241
+ }>;
242
+ export declare const TrellisCatalogV1Schema: Type.TObject<{
243
+ format: Type.TLiteral<"trellis.catalog.v1">;
244
+ contracts: Type.TArray<Type.TObject<{
245
+ id: Type.TString;
246
+ digest: Type.TString;
247
+ displayName: Type.TString;
248
+ description: Type.TString;
249
+ }>>;
250
+ }>;
16
251
  declare const CONTRACT_MODULE_METADATA: unique symbol;
17
252
  export declare const CONTRACT_JOBS_METADATA: unique symbol;
18
253
  export declare const CONTRACT_KV_METADATA: unique symbol;
@@ -30,6 +265,16 @@ export type ContractManifestMetadata = {
30
265
  };
31
266
  export type ContractKind = "service" | "app" | "device" | "agent";
32
267
  export type Capability = string;
268
+ export type PlatformCapability = "admin" | "service";
269
+ export type GlobalCapability = `${string}::${string}`;
270
+ export type ContractCapabilityMetadata = {
271
+ displayName: string;
272
+ description: string;
273
+ consequence?: string;
274
+ };
275
+ export type ContractCapabilities = Record<string, ContractCapabilityMetadata>;
276
+ type DeclaredCapabilityName<TCapabilities> = [TCapabilities] extends [undefined] ? never : Extract<keyof NonNullable<TCapabilities>, string>;
277
+ type CapabilityRef<TCapabilities> = DeclaredCapabilityName<TCapabilities> | GlobalCapability | PlatformCapability;
33
278
  export type JsonSchema = JsonValue | boolean;
34
279
  export type ContractSchemaRef<TSchemaName extends string = string> = {
35
280
  schema: TSchemaName;
@@ -39,6 +284,7 @@ type ErrorNameOf<TErrors> = Extract<keyof NonNullable<TErrors>, string> | Builti
39
284
  export type ContractRefBuilder<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined> = {
40
285
  schema<const TName extends SchemaNameOf<TSchemas>>(schemaName: TName): ContractSchemaRef<TName>;
41
286
  error<const TName extends ErrorNameOf<TErrors>>(errorName: TName): TName;
287
+ capability<const TName extends GlobalCapability | PlatformCapability>(capabilityName: TName): TName;
42
288
  };
43
289
  export type ContractSchemas = Record<string, JsonSchema>;
44
290
  export type ContractExports<TSchemaName extends string = string> = {
@@ -96,7 +342,11 @@ export type ContractOperation = {
96
342
  call?: Capability[];
97
343
  read?: Capability[];
98
344
  cancel?: Capability[];
345
+ control?: Capability[];
99
346
  };
347
+ signals?: Record<string, {
348
+ input: ContractSchemaRef;
349
+ }>;
100
350
  cancel?: boolean;
101
351
  };
102
352
  export type ContractEvent = {
@@ -109,6 +359,15 @@ export type ContractEvent = {
109
359
  subscribe?: Capability[];
110
360
  };
111
361
  };
362
+ export type ContractFeed = {
363
+ version: `v${number}`;
364
+ subject: string;
365
+ input: ContractSchemaRef;
366
+ event: ContractSchemaRef;
367
+ capabilities?: {
368
+ subscribe?: Capability[];
369
+ };
370
+ };
112
371
  export type ContractJobQueueResource = {
113
372
  payload: ContractSchemaRef;
114
373
  result?: ContractSchemaRef;
@@ -154,14 +413,22 @@ export type ContractUse = {
154
413
  rpc?: ContractUsesRpc;
155
414
  operations?: ContractUsesRpc;
156
415
  events?: ContractUsesPubSub;
416
+ feeds?: {
417
+ subscribe?: string[];
418
+ };
419
+ };
420
+ export type ContractUsesGrouped = {
421
+ required?: Record<string, ContractUse>;
422
+ optional?: Record<string, ContractUse>;
157
423
  };
158
- export type ContractUses = Record<string, ContractUse>;
424
+ export type ContractUses = ContractUsesGrouped;
159
425
  export type TrellisContractV1 = {
160
426
  format: typeof CONTRACT_FORMAT_V1;
161
427
  id: string;
162
428
  displayName: string;
163
429
  description: string;
164
430
  kind: ContractKind;
431
+ capabilities?: ContractCapabilities;
165
432
  schemas?: ContractSchemas;
166
433
  exports?: ContractExports;
167
434
  state?: ContractState;
@@ -169,6 +436,7 @@ export type TrellisContractV1 = {
169
436
  rpc?: Record<string, ContractRpcMethod>;
170
437
  operations?: Record<string, ContractOperation>;
171
438
  events?: Record<string, ContractEvent>;
439
+ feeds?: Record<string, ContractFeed>;
172
440
  errors?: Record<string, ContractErrorDecl>;
173
441
  jobs?: ContractJobs;
174
442
  resources?: ContractResources;
@@ -231,12 +499,12 @@ export type ContractSourceStateStore<TSchemaName extends string = string> = {
231
499
  acceptedVersions?: Record<string, ContractSchemaRef<TSchemaName>>;
232
500
  };
233
501
  export type ContractSourceState<TSchemaName extends string = string> = Record<string, ContractSourceStateStore<TSchemaName>>;
234
- export type ContractSourceRpcMethod<TSchemaName extends string = string, TErrorName extends string = string> = {
502
+ export type ContractSourceRpcMethod<TSchemaName extends string = string, TErrorName extends string = string, TCapability extends string = Capability> = {
235
503
  version: `v${number}`;
236
504
  input: ContractSchemaRef<TSchemaName>;
237
505
  output: ContractSchemaRef<TSchemaName>;
238
506
  capabilities?: {
239
- call?: readonly Capability[];
507
+ call?: readonly TCapability[];
240
508
  };
241
509
  transfer?: {
242
510
  direction: "receive";
@@ -245,7 +513,7 @@ export type ContractSourceRpcMethod<TSchemaName extends string = string, TErrorN
245
513
  authRequired?: boolean;
246
514
  subject?: string;
247
515
  };
248
- export type ContractSourceOperation<TSchemaName extends string = string> = {
516
+ export type ContractSourceOperation<TSchemaName extends string = string, TCapability extends string = Capability> = {
249
517
  version: `v${number}`;
250
518
  input: ContractSchemaRef<TSchemaName>;
251
519
  progress?: ContractSchemaRef<TSchemaName>;
@@ -260,20 +528,33 @@ export type ContractSourceOperation<TSchemaName extends string = string> = {
260
528
  maxBytes?: number;
261
529
  };
262
530
  capabilities?: {
263
- call?: readonly Capability[];
264
- read?: readonly Capability[];
265
- cancel?: readonly Capability[];
531
+ call?: readonly TCapability[];
532
+ read?: readonly TCapability[];
533
+ cancel?: readonly TCapability[];
534
+ control?: readonly TCapability[];
266
535
  };
536
+ signals?: Record<string, {
537
+ input: ContractSchemaRef<TSchemaName>;
538
+ }>;
267
539
  cancel?: boolean;
268
540
  subject?: string;
269
541
  };
270
- export type ContractSourceEvent<TSchemaName extends string = string> = {
542
+ export type ContractSourceEvent<TSchemaName extends string = string, TCapability extends string = Capability> = {
271
543
  version: `v${number}`;
272
544
  event: ContractSchemaRef<TSchemaName>;
273
545
  params?: readonly SubjectParam[];
274
546
  capabilities?: {
275
- publish?: readonly Capability[];
276
- subscribe?: readonly Capability[];
547
+ publish?: readonly TCapability[];
548
+ subscribe?: readonly TCapability[];
549
+ };
550
+ subject?: string;
551
+ };
552
+ export type ContractSourceFeed<TSchemaName extends string = string, TCapability extends string = Capability> = {
553
+ version: `v${number}`;
554
+ input: ContractSchemaRef<TSchemaName>;
555
+ event: ContractSchemaRef<TSchemaName>;
556
+ capabilities?: {
557
+ subscribe?: readonly TCapability[];
277
558
  };
278
559
  subject?: string;
279
560
  };
@@ -321,19 +602,29 @@ export type ContractSourceUse = {
321
602
  publish?: readonly string[];
322
603
  subscribe?: readonly string[];
323
604
  };
605
+ feeds?: {
606
+ subscribe?: readonly string[];
607
+ };
324
608
  };
609
+ export type ContractSourceUsesGrouped = {
610
+ required?: Record<string, ContractSourceUse>;
611
+ optional?: Record<string, ContractSourceUse>;
612
+ };
613
+ export type ContractSourceUses = ContractSourceUsesGrouped;
325
614
  export type TrellisContractSource = {
326
615
  id: string;
327
616
  displayName: string;
328
617
  description: string;
329
618
  kind: ContractKind;
619
+ capabilities?: ContractCapabilities;
330
620
  schemas?: ContractSourceSchemas;
331
621
  exports?: ContractSourceExports;
332
622
  state?: ContractSourceState;
333
- uses?: Record<string, ContractSourceUse>;
623
+ uses?: ContractSourceUses;
334
624
  rpc?: Record<string, ContractSourceRpcMethod>;
335
625
  operations?: Record<string, ContractSourceOperation>;
336
626
  events?: Record<string, ContractSourceEvent>;
627
+ feeds?: Record<string, ContractSourceFeed>;
337
628
  errors?: Record<string, ContractSourceErrorDecl>;
338
629
  jobs?: ContractSourceJobs;
339
630
  resources?: ContractSourceResources;
@@ -342,27 +633,31 @@ export type TrellisApiLike = {
342
633
  rpc: Record<string, RPCDesc>;
343
634
  operations: Record<string, OperationDesc>;
344
635
  events: Record<string, EventDesc>;
636
+ feeds?: Record<string, FeedDesc>;
345
637
  subjects: Record<string, unknown>;
346
638
  };
347
639
  type ApiShape = {
348
640
  rpc: Record<string, unknown>;
349
641
  operations: Record<string, unknown>;
350
642
  events: Record<string, unknown>;
643
+ feeds?: Record<string, unknown>;
351
644
  subjects: Record<string, unknown>;
352
645
  };
353
646
  export type EmptyApi = {
354
647
  rpc: {};
355
648
  operations: {};
356
649
  events: {};
650
+ feeds?: {};
357
651
  subjects: {};
358
652
  };
359
653
  type BaselineAuthApi = {
360
654
  rpc: {
361
- "Auth.Me": RPCDesc<Schema<Record<string, never>>, Schema<AuthMeResponse>>;
362
- "Auth.Logout": RPCDesc<Schema<AuthLogoutInput>, Schema<AuthLogoutResponse>>;
655
+ "Auth.Sessions.Me": RPCDesc<Schema<Record<string, never>>, Schema<AuthSessionsMeResponse>>;
656
+ "Auth.Sessions.Logout": RPCDesc<Schema<AuthSessionsLogoutInput>, Schema<AuthSessionsLogoutResponse>>;
363
657
  };
364
658
  operations: {};
365
659
  events: {};
660
+ feeds: {};
366
661
  subjects: {};
367
662
  };
368
663
  type BaselineStateApi = {
@@ -374,6 +669,16 @@ type BaselineStateApi = {
374
669
  };
375
670
  operations: {};
376
671
  events: {};
672
+ feeds: {};
673
+ subjects: {};
674
+ };
675
+ type BaselineHealthApi = {
676
+ rpc: {};
677
+ operations: {};
678
+ events: {
679
+ "Health.Heartbeat": EventDesc<Schema<Record<string, unknown>>>;
680
+ };
681
+ feeds: {};
377
682
  subjects: {};
378
683
  };
379
684
  export type ContractApiViews<TOwnedApi extends ApiShape, TUsedApi extends ApiShape, TTrellisApi extends ApiShape> = {
@@ -392,6 +697,9 @@ export type UseSpec<TApi extends ApiShape> = {
392
697
  publish?: readonly StringKeyOf<TApi["events"]>[];
393
698
  subscribe?: readonly StringKeyOf<TApi["events"]>[];
394
699
  };
700
+ feeds?: {
701
+ subscribe?: readonly StringKeyOf<NonNullable<TApi["feeds"]>>[];
702
+ };
395
703
  };
396
704
  type UseRpcCall<TSpec> = NonNullable<TSpec extends {
397
705
  rpc?: infer TRpc;
@@ -413,6 +721,11 @@ type UseEventsSubscribe<TSpec> = NonNullable<TSpec extends {
413
721
  } ? TEvents : never> extends {
414
722
  subscribe?: infer TSubscribe extends readonly string[] | undefined;
415
723
  } ? TSubscribe : never;
724
+ type UseFeedsSubscribe<TSpec> = NonNullable<TSpec extends {
725
+ feeds?: infer TFeeds;
726
+ } ? TFeeds : never> extends {
727
+ subscribe?: infer TSubscribe extends readonly string[] | undefined;
728
+ } ? TSubscribe : never;
416
729
  export type ContractDependencyUse<TContractId extends string, TApi extends ApiShape, TSpec extends UseSpec<TApi> = UseSpec<TApi>> = {
417
730
  contract: TContractId;
418
731
  readonly [CONTRACT_MODULE_METADATA]?: ContractModule<TContractId, TApi, ApiShape, ApiShape>;
@@ -426,8 +739,17 @@ export type ContractDependencyUse<TContractId extends string, TApi extends ApiSh
426
739
  publish?: UseEventsPublish<TSpec>;
427
740
  subscribe?: UseEventsSubscribe<TSpec>;
428
741
  };
742
+ feeds?: {
743
+ subscribe?: UseFeedsSubscribe<TSpec>;
744
+ };
429
745
  };
430
746
  type AuthorContractDependencyUse = ContractDependencyUse<string, ApiShape, UseSpec<ApiShape>>;
747
+ type AuthorContractUsesFlat = Readonly<Record<string, AuthorContractDependencyUse>>;
748
+ type AuthorContractUsesGrouped = {
749
+ required?: AuthorContractUsesFlat;
750
+ optional?: AuthorContractUsesFlat;
751
+ };
752
+ type AuthorContractUses = AuthorContractUsesGrouped;
431
753
  export type ContractUseFn<TContractId extends string, TApi extends ApiShape> = <const TSpec extends UseSpec<TApi>>(spec: TSpec) => ContractDependencyUse<TContractId, TApi, TSpec>;
432
754
  type MergeRecordUnion<U> = [U] extends [never] ? {} : Simplify<UnionToIntersection<U>>;
433
755
  type SchemaNameOf<TSchemas> = Extract<keyof NonNullable<TSchemas>, string>;
@@ -517,27 +839,32 @@ type ProjectedRpcMethod<TMethod extends ContractSourceRpcMethod, TSchemas, _TErr
517
839
  } ? {
518
840
  transfer: TTransfer;
519
841
  } : {});
520
- type ProjectedRpc<T extends Readonly<Record<string, ContractSourceRpcMethod>> | undefined, TSchemas, TErrors> = T extends Readonly<Record<string, ContractSourceRpcMethod>> ? {
842
+ type ProjectedRpc<T, TSchemas, TErrors> = T extends Readonly<Record<string, ContractSourceRpcMethod>> ? {
521
843
  [K in keyof T]: ProjectedRpcMethod<T[K], TSchemas, TErrors>;
522
844
  } : {};
523
- type ProjectedOperations<T extends Readonly<Record<string, ContractSourceOperation>> | undefined, TSchemas> = T extends Readonly<Record<string, ContractSourceOperation>> ? {
845
+ type ProjectedOperations<T, TSchemas> = T extends Readonly<Record<string, ContractSourceOperation>> ? {
524
846
  [K in keyof T]: OperationDesc<ResolveSchemaFromMap<TSchemas, T[K]["input"]>, ResolveSchemaFromMap<TSchemas, T[K]["progress"]>, ResolveSchemaFromMap<TSchemas, T[K]["output"]>> & (T[K]["transfer"] extends undefined ? {} : {
525
847
  transfer: T[K]["transfer"];
526
848
  });
527
849
  } : {};
528
- type ProjectedEvents<T extends Readonly<Record<string, ContractSourceEvent>> | undefined, TSchemas> = T extends Readonly<Record<string, ContractSourceEvent>> ? {
850
+ type ProjectedEvents<T, TSchemas> = T extends Readonly<Record<string, ContractSourceEvent>> ? {
529
851
  [K in keyof T]: EventDesc<ResolveSchemaFromMap<TSchemas, T[K]["event"]>>;
530
852
  } : {};
853
+ type ProjectedFeeds<T, TSchemas> = T extends Readonly<Record<string, ContractSourceFeed>> ? {
854
+ [K in keyof T]: FeedDesc<ResolveSchemaFromMap<TSchemas, T[K]["input"]>, ResolveSchemaFromMap<TSchemas, T[K]["event"]>>;
855
+ } : {};
531
856
  export type OwnedApiFromSource<T extends {
532
857
  schemas?: Readonly<Record<string, TSchema>>;
533
- errors?: Readonly<Record<string, ErrorClass>>;
534
- rpc?: Readonly<Record<string, ContractSourceRpcMethod>>;
535
- operations?: Readonly<Record<string, ContractSourceOperation>>;
536
- events?: Readonly<Record<string, ContractSourceEvent>>;
858
+ errors?: unknown;
859
+ rpc?: unknown;
860
+ operations?: unknown;
861
+ events?: unknown;
862
+ feeds?: unknown;
537
863
  }> = {
538
864
  rpc: ProjectedRpc<T["rpc"], T["schemas"], T["errors"]>;
539
865
  operations: ProjectedOperations<T["operations"], T["schemas"]>;
540
866
  events: ProjectedEvents<T["events"], T["schemas"]>;
867
+ feeds: ProjectedFeeds<T["feeds"], T["schemas"]>;
541
868
  subjects: {};
542
869
  };
543
870
  type RpcKeysFromSpec<TSpec> = TSpec extends {
@@ -559,23 +886,38 @@ type OperationKeysFromSpec<TSpec> = TSpec extends {
559
886
  call?: infer TCall;
560
887
  };
561
888
  } ? KeysFromList<TCall> : never;
889
+ type FeedKeysFromSpec<TSpec> = TSpec extends {
890
+ feeds?: {
891
+ subscribe?: infer TSubscribe;
892
+ };
893
+ } ? KeysFromList<TSubscribe> : never;
562
894
  type ApiFromDependencyUse<TUse> = TUse extends ContractDependencyUse<string, infer TApi, infer TSpec> ? {
563
895
  rpc: Pick<TApi["rpc"], RpcKeysFromSpec<TSpec>>;
564
896
  operations: Pick<TApi["operations"], OperationKeysFromSpec<TSpec>>;
565
897
  events: Pick<TApi["events"], EventKeysFromSpec<TSpec>>;
898
+ feeds: Pick<NonNullable<TApi["feeds"]>, FeedKeysFromSpec<TSpec>>;
566
899
  subjects: {};
567
900
  } : EmptyApi;
901
+ type DependencyUsesFromUses<TUses> = TUses extends {
902
+ required?: AuthorContractUsesFlat;
903
+ optional?: AuthorContractUsesFlat;
904
+ } ? NonNullable<TUses["required"]>[keyof NonNullable<TUses["required"]>] | NonNullable<TUses["optional"]>[keyof NonNullable<TUses["optional"]>] : never;
568
905
  export type UsedApiFromUses<TUses> = [TUses] extends [undefined] ? EmptyApi : TUses extends Record<string, unknown> ? {
569
- rpc: MergeRecordUnion<ApiFromDependencyUse<TUses[keyof TUses]>["rpc"]>;
570
- operations: MergeRecordUnion<ApiFromDependencyUse<TUses[keyof TUses]>["operations"]>;
571
- events: MergeRecordUnion<ApiFromDependencyUse<TUses[keyof TUses]>["events"]>;
572
- subjects: MergeRecordUnion<ApiFromDependencyUse<TUses[keyof TUses]>["subjects"]>;
906
+ rpc: MergeRecordUnion<ApiFromDependencyUse<DependencyUsesFromUses<TUses>>["rpc"]>;
907
+ operations: MergeRecordUnion<ApiFromDependencyUse<DependencyUsesFromUses<TUses>>["operations"]>;
908
+ events: MergeRecordUnion<ApiFromDependencyUse<DependencyUsesFromUses<TUses>>["events"]>;
909
+ feeds: MergeRecordUnion<ApiFromDependencyUse<DependencyUsesFromUses<TUses>>["feeds"]>;
910
+ subjects: MergeRecordUnion<ApiFromDependencyUse<DependencyUsesFromUses<TUses>>["subjects"]>;
573
911
  } : EmptyApi;
574
912
  type ImplicitAuthApiForKind<TKind> = TKind extends "app" | "agent" | "device" ? BaselineAuthApi : EmptyApi;
575
913
  type ImplicitStateApiForSource<T> = [StateFromSource<T>] extends [undefined] ? EmptyApi : BaselineStateApi;
914
+ type ImplicitHealthApiForSource<T> = T extends {
915
+ kind: infer TKind;
916
+ id: infer TId;
917
+ } ? TId extends "trellis.health@v1" ? EmptyApi : TKind extends "service" | "device" ? BaselineHealthApi : EmptyApi : EmptyApi;
576
918
  type ImplicitTrellisApiFromSource<T> = T extends {
577
919
  kind: infer TKind;
578
- } ? MergeApis<ImplicitAuthApiForKind<TKind>, ImplicitStateApiForSource<T>> : EmptyApi;
920
+ } ? MergeApis<MergeApis<ImplicitAuthApiForKind<TKind>, ImplicitStateApiForSource<T>>, ImplicitHealthApiForSource<T>> : EmptyApi;
579
921
  export type UsedApiFromSource<T extends {
580
922
  uses?: unknown;
581
923
  }> = MergeApis<UsedApiFromUses<T["uses"]>, ImplicitTrellisApiFromSource<T>>;
@@ -583,6 +925,7 @@ export type MergeApis<TOwnedApi extends ApiShape, TUsedApi extends ApiShape> = {
583
925
  rpc: Simplify<TUsedApi["rpc"] & TOwnedApi["rpc"]>;
584
926
  operations: Simplify<TUsedApi["operations"] & TOwnedApi["operations"]>;
585
927
  events: Simplify<TUsedApi["events"] & TOwnedApi["events"]>;
928
+ feeds: Simplify<TUsedApi["feeds"] & TOwnedApi["feeds"]>;
586
929
  subjects: Simplify<TUsedApi["subjects"] & TOwnedApi["subjects"]>;
587
930
  };
588
931
  export type ContractModule<TContractId extends string, TOwnedApi extends ApiShape, TUsedApi extends ApiShape, TTrellisApi extends ApiShape, TJobs extends ContractJobsMetadata = {}, TState extends ContractStateMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata> = {
@@ -599,11 +942,12 @@ export type SdkContractModule<TContractId extends string, TOwnedApi extends ApiS
599
942
  use: ContractUseFn<TContractId, TOwnedApi>;
600
943
  };
601
944
  export type DefinedContract<TOwnedApi extends ApiShape, TUsedApi extends ApiShape, TTrellisApi extends ApiShape, TContractId extends string = string, TJobs extends ContractJobsMetadata = {}, TState extends ContractStateMetadata = {}, TKv extends ContractKvMetadata = ContractKvMetadata> = ContractModule<TContractId, TOwnedApi, TUsedApi, TTrellisApi, TJobs, TState, TKv>;
602
- export type DefineContractInput<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>>>> | undefined = undefined> = {
945
+ export type DefineContractInput<TCapabilities extends ContractCapabilities | undefined = ContractCapabilities | undefined, TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends AuthorContractUses | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined> = {
603
946
  id: string;
604
947
  displayName: string;
605
948
  description: string;
606
949
  kind: ContractKind;
950
+ capabilities?: ContractCapabilities;
607
951
  schemas?: TSchemas;
608
952
  exports?: ContractSourceExports<SchemaNameOf<TSchemas>>;
609
953
  state?: ContractSourceState<SchemaNameOf<TSchemas>>;
@@ -612,6 +956,7 @@ export type DefineContractInput<TSchemas extends Readonly<Record<string, TSchema
612
956
  rpc?: TRpc;
613
957
  operations?: TOperations;
614
958
  events?: TEvents;
959
+ feeds?: Readonly<Record<string, ContractSourceFeed<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>>;
615
960
  jobs?: ContractSourceJobs<SchemaNameOf<TSchemas>>;
616
961
  resources?: ContractSourceResources<SchemaNameOf<TSchemas>>;
617
962
  };
@@ -629,15 +974,16 @@ type RegistrySchemas<TRegistry extends AnyDefineContractRegistry> = TRegistry ex
629
974
  type RegistryErrors<TRegistry extends AnyDefineContractRegistry> = TRegistry extends {
630
975
  errors?: infer TErrors;
631
976
  } ? TErrors extends Readonly<Record<string, unknown>> | undefined ? ExtractErrorClasses<TErrors> : undefined : undefined;
632
- type DefineContractBodyInput<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>>>> | undefined = undefined> = Omit<DefineContractInput<TSchemas, TUses, TErrors, TRpc, TOperations, TEvents>, "schemas" | "errors"> & {
977
+ type DefineContractBodyInput<TCapabilities extends ContractCapabilities | undefined = ContractCapabilities | undefined, TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends AuthorContractUses | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined> = Omit<DefineContractInput<TCapabilities, TSchemas, TUses, TErrors, TRpc, TOperations, TEvents>, "schemas" | "errors"> & {
633
978
  schemas?: never;
634
979
  errors?: never;
635
980
  };
636
- type ServiceContractBodyInput<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>>>> | undefined = undefined> = Omit<DefineContractBodyInput<TSchemas, TUses, TErrors, TRpc, TOperations, TEvents>, "kind"> & {
981
+ type ServiceContractBodyInput<TCapabilities extends ContractCapabilities | undefined = ContractCapabilities | undefined, TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends AuthorContractUses | undefined = undefined, TErrors extends Readonly<Record<string, ErrorClass>> | undefined = undefined, TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<TSchemas>, ErrorNameOf<TErrors>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined, TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<TSchemas>, CapabilityRef<TCapabilities>>>> | undefined = undefined> = Omit<DefineContractBodyInput<TCapabilities, TSchemas, TUses, TErrors, TRpc, TOperations, TEvents>, "kind"> & {
637
982
  kind?: never;
638
983
  subjects?: never;
639
984
  };
640
- type ClientContractBodyInput<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined = undefined> = ContractIdentityFields & {
985
+ type ClientContractBodyInput<TSchemas extends Readonly<Record<string, TSchema>> | undefined = undefined, TUses extends AuthorContractUses | undefined = undefined> = ContractIdentityFields & {
986
+ capabilities?: ContractCapabilities;
641
987
  exports?: ContractSourceExports<SchemaNameOf<TSchemas>>;
642
988
  state?: ContractSourceState<SchemaNameOf<TSchemas>>;
643
989
  uses?: TUses;
@@ -652,12 +998,41 @@ type ClientContractBodyInput<TSchemas extends Readonly<Record<string, TSchema>>
652
998
  };
653
999
  type BuiltContractSource<TRegistry extends AnyDefineContractRegistry, TBody extends {
654
1000
  id: string;
655
- }> = Simplify<Omit<TBody, "schemas" | "errors"> & Pick<TRegistry, Extract<keyof TRegistry, "schemas" | "errors">>>;
1001
+ }> = Simplify<Omit<TBody, "schemas" | "errors"> & (TRegistry extends {
1002
+ schemas?: infer TSchemas;
1003
+ } ? {
1004
+ schemas?: TSchemas;
1005
+ } : {}) & (TRegistry extends {
1006
+ errors?: infer TErrors;
1007
+ } ? {
1008
+ errors?: TErrors;
1009
+ } : {})>;
656
1010
  type WithKind<TBody extends {
657
1011
  id: string;
658
1012
  }, TKind extends ContractKind> = Simplify<Omit<TBody, "kind"> & {
659
1013
  kind: TKind;
660
1014
  }>;
1015
+ /** Return the global capability namespace for a contract id. */
1016
+ export declare function contractCapabilityNamespace(contractId: string): string;
1017
+ /** Return the globally qualified name for a contract-local capability. */
1018
+ export declare function globalCapabilityName(contractId: string, localCapability: string): string;
1019
+ /**
1020
+ * Return the canonical manifest shape used by Trellis runtimes before
1021
+ * validation, persistence, and digesting.
1022
+ *
1023
+ * This is not the digest projection: human-facing fields such as
1024
+ * `displayName` and `description` are preserved here even though they are not
1025
+ * part of contract identity. Unknown extension fields are intentionally omitted
1026
+ * until the runtime explicitly supports them.
1027
+ */
1028
+ export declare function normalizeContractManifest(contract: TrellisContractV1): TrellisContractV1;
1029
+ /**
1030
+ * Parse untrusted contract JSON into the current Trellis v1 manifest shape.
1031
+ *
1032
+ * Unknown extension fields are accepted for forward compatibility but are not
1033
+ * returned. Callers must use the returned value for persistence and digesting.
1034
+ */
1035
+ export declare function parseContractManifest(value: unknown): TrellisContractV1;
661
1036
  /**
662
1037
  * Build the normalized runtime/interface projection used for contract identity.
663
1038
  */
@@ -671,21 +1046,25 @@ export declare function digestContractManifest(contract: TrellisContractV1): str
671
1046
  * and reconstruction logic needed by `defineServiceContract(...)`.
672
1047
  */
673
1048
  export declare function defineError<const TType extends string, const TFields extends TProperties>(options: DefineErrorOptions<TType, TFields>): DefinedErrorClass<TType, TFields>;
674
- export declare function defineServiceContract<const TErrors extends Readonly<Record<string, unknown>> | undefined, const TRegistry extends DefineContractRegistry<Readonly<Record<string, TSchema>> | undefined, TErrors>, const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<RegistrySchemas<TRegistry>>, ErrorNameOf<RegistryErrors<TRegistry>>>>> | undefined, const TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<RegistrySchemas<TRegistry>>>>> | undefined, const TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<RegistrySchemas<TRegistry>>>>> | undefined, const TBody extends ServiceContractBodyInput<RegistrySchemas<TRegistry>, TUses, RegistryErrors<TRegistry>, TRpc, TOperations, TEvents>>(registry: TRegistry & {
1049
+ export declare function defineServiceContract<const TErrors extends Readonly<Record<string, unknown>> | undefined, const TRegistry extends DefineContractRegistry<Readonly<Record<string, TSchema>> | undefined, TErrors>, const TCapabilities extends ContractCapabilities | undefined, const TUses extends AuthorContractUses | undefined, const TRpc extends Readonly<Record<string, ContractSourceRpcMethod<SchemaNameOf<RegistrySchemas<TRegistry>>, ErrorNameOf<RegistryErrors<TRegistry>>, CapabilityRef<TCapabilities>>>> | undefined, const TOperations extends Readonly<Record<string, ContractSourceOperation<SchemaNameOf<RegistrySchemas<TRegistry>>, CapabilityRef<TCapabilities>>>> | undefined, const TEvents extends Readonly<Record<string, ContractSourceEvent<SchemaNameOf<RegistrySchemas<TRegistry>>, CapabilityRef<TCapabilities>>>> | undefined, const TBody extends ServiceContractBodyInput<TCapabilities, RegistrySchemas<TRegistry>, TUses, RegistryErrors<TRegistry>, TRpc, TOperations, TEvents>>(registry: TRegistry & {
1050
+ capabilities?: never;
675
1051
  exports?: never;
676
1052
  }, build: (ref: ContractRefBuilder<RegistrySchemas<TRegistry>, RegistryErrors<TRegistry>>) => TBody): DefinedContract<OwnedApiFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, UsedApiFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, MergeApis<OwnedApiFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, UsedApiFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>>, TBody["id"], ProjectedJobs<JobsFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, SchemasFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>>, ProjectedState<StateFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, SchemasFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>>, ProjectedKvResources<ResourcesFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>, SchemasFromSource<BuiltContractSource<TRegistry, WithKind<TBody, "service">>>>>;
677
- export declare function defineAppContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1053
+ export declare function defineAppContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1054
+ capabilities?: never;
678
1055
  exports?: never;
679
1056
  }, build: (ref: ContractRefBuilder<TSchemas>) => TBody): DefinedContract<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>, MergeApis<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>>, TBody["id"], {}, ProjectedState<StateFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>, SchemasFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "app">>>>>;
680
- export declare function defineAppContract<const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "app">>, UsedApiFromSource<WithKind<TBody, "app">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "app">>, UsedApiFromSource<WithKind<TBody, "app">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "app">>, SchemasFromSource<WithKind<TBody, "app">>>>;
681
- export declare function defineAgentContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1057
+ export declare function defineAppContract<const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "app">>, UsedApiFromSource<WithKind<TBody, "app">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "app">>, UsedApiFromSource<WithKind<TBody, "app">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "app">>, SchemasFromSource<WithKind<TBody, "app">>>>;
1058
+ export declare function defineAgentContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1059
+ capabilities?: never;
682
1060
  exports?: never;
683
1061
  }, build: (ref: ContractRefBuilder<TSchemas>) => TBody): DefinedContract<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>, MergeApis<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>>, TBody["id"], {}, ProjectedState<StateFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>, SchemasFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "agent">>>>>;
684
- export declare function defineAgentContract<const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "agent">>, UsedApiFromSource<WithKind<TBody, "agent">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "agent">>, UsedApiFromSource<WithKind<TBody, "agent">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "agent">>, SchemasFromSource<WithKind<TBody, "agent">>>>;
685
- export declare function defineDeviceContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1062
+ export declare function defineAgentContract<const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "agent">>, UsedApiFromSource<WithKind<TBody, "agent">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "agent">>, UsedApiFromSource<WithKind<TBody, "agent">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "agent">>, SchemasFromSource<WithKind<TBody, "agent">>>>;
1063
+ export declare function defineDeviceContract<const TSchemas extends Readonly<Record<string, TSchema>> | undefined, const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<TSchemas, TUses>>(registry: ClientContractRegistry<TSchemas> & {
1064
+ capabilities?: never;
686
1065
  exports?: never;
687
1066
  }, build: (ref: ContractRefBuilder<TSchemas>) => TBody): DefinedContract<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>, MergeApis<OwnedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>, UsedApiFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>>, TBody["id"], {}, ProjectedState<StateFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>, SchemasFromSource<BuiltContractSource<ClientContractRegistry<TSchemas>, WithKind<TBody, "device">>>>>;
688
- export declare function defineDeviceContract<const TUses extends Readonly<Record<string, AuthorContractDependencyUse>> | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "device">>, UsedApiFromSource<WithKind<TBody, "device">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "device">>, UsedApiFromSource<WithKind<TBody, "device">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "device">>, SchemasFromSource<WithKind<TBody, "device">>>>;
689
- export type { EventDesc, InferRuntimeRpcError, InferSchemaType, JsonValue, RPCDesc, RpcErrorClass, RuntimeRpcErrorDesc, Schema, SchemaLike, SerializableErrorData, TrellisAPI, };
1067
+ export declare function defineDeviceContract<const TUses extends AuthorContractUses | undefined, const TBody extends ClientContractBodyInput<undefined, TUses>>(build: () => TBody): DefinedContract<OwnedApiFromSource<WithKind<TBody, "device">>, UsedApiFromSource<WithKind<TBody, "device">>, MergeApis<OwnedApiFromSource<WithKind<TBody, "device">>, UsedApiFromSource<WithKind<TBody, "device">>>, TBody["id"], {}, ProjectedState<StateFromSource<WithKind<TBody, "device">>, SchemasFromSource<WithKind<TBody, "device">>>>;
1068
+ export type { EventDesc, FeedDesc, InferRuntimeRpcError, InferSchemaType, JsonValue, RPCDesc, RpcErrorClass, RuntimeRpcErrorDesc, Schema, SchemaLike, SerializableErrorData, TrellisAPI, };
690
1069
  export { canonicalizeJson, digestJson, isJsonValue, schema, unwrapSchema };
691
1070
  //# sourceMappingURL=mod.d.ts.map