@dxos/protocols 0.8.4-main.c1de068 → 0.8.4-main.c85a9c8dae

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 (377) hide show
  1. package/README.md +1 -1
  2. package/dist/src/FeedProtocol.d.ts +528 -0
  3. package/dist/src/FeedProtocol.d.ts.map +1 -0
  4. package/dist/src/FeedProtocol.js +237 -0
  5. package/dist/src/FeedProtocol.js.map +1 -0
  6. package/dist/src/FunctionProtocol.d.ts +82 -0
  7. package/dist/src/FunctionProtocol.d.ts.map +1 -0
  8. package/dist/src/FunctionProtocol.js +4 -0
  9. package/dist/src/FunctionProtocol.js.map +1 -0
  10. package/dist/src/automerge.d.ts +8 -0
  11. package/dist/src/automerge.d.ts.map +1 -1
  12. package/dist/src/automerge.js.map +1 -1
  13. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.d.ts +1 -1
  14. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.js +1 -1
  15. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.d.ts +1 -1
  16. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.js +1 -1
  17. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.d.ts +1 -1
  18. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.js +1 -1
  19. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.d.ts +1 -1
  20. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.js +1 -1
  21. package/dist/src/buf/proto/gen/dxos/bot_pb.d.ts +1 -1
  22. package/dist/src/buf/proto/gen/dxos/bot_pb.js +1 -1
  23. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.d.ts +1 -1
  24. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.js +1 -1
  25. package/dist/src/buf/proto/gen/dxos/client/logging_pb.d.ts +1 -1
  26. package/dist/src/buf/proto/gen/dxos/client/logging_pb.js +1 -1
  27. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts +231 -0
  28. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts.map +1 -0
  29. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js +44 -0
  30. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js.map +1 -0
  31. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +70 -20
  32. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  33. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +32 -23
  34. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  35. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts +36 -7
  36. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts.map +1 -1
  37. package/dist/src/buf/proto/gen/dxos/config_pb.js +7 -2
  38. package/dist/src/buf/proto/gen/dxos/config_pb.js.map +1 -1
  39. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.d.ts +1 -1
  40. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.js +1 -1
  41. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.d.ts +1 -1
  42. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.js +1 -1
  43. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.d.ts +1 -1
  44. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.js +1 -1
  45. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.d.ts +1 -1
  46. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.js +1 -1
  47. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.d.ts +1 -1
  48. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.js +1 -1
  49. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.d.ts +1 -1
  50. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.js +1 -1
  51. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.d.ts +1 -1
  52. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.js +1 -1
  53. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts +1 -1
  54. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js +1 -1
  55. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.d.ts +1 -1
  56. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.js +1 -1
  57. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.d.ts +1 -1
  58. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.js +1 -1
  59. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.d.ts +1 -1
  60. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.js +1 -1
  61. package/dist/src/buf/proto/gen/dxos/echo/object_pb.d.ts +1 -1
  62. package/dist/src/buf/proto/gen/dxos/echo/object_pb.js +1 -1
  63. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts +13 -3
  64. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts.map +1 -1
  65. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js +2 -2
  66. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js.map +1 -1
  67. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts +71 -10
  68. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts.map +1 -1
  69. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js +16 -6
  70. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js.map +1 -1
  71. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.d.ts +1 -1
  72. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.js +1 -1
  73. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.d.ts +1 -1
  74. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.js +1 -1
  75. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +1 -1
  76. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.js +1 -1
  77. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +1 -1
  78. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js +1 -1
  79. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.d.ts +1 -1
  80. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.js +1 -1
  81. package/dist/src/buf/proto/gen/dxos/error_pb.d.ts +1 -1
  82. package/dist/src/buf/proto/gen/dxos/error_pb.js +1 -1
  83. package/dist/src/buf/proto/gen/dxos/field_options_pb.d.ts +1 -1
  84. package/dist/src/buf/proto/gen/dxos/field_options_pb.js +1 -1
  85. package/dist/src/buf/proto/gen/dxos/google_pb.d.ts +1 -1
  86. package/dist/src/buf/proto/gen/dxos/google_pb.js +2 -2
  87. package/dist/src/buf/proto/gen/dxos/google_pb.js.map +1 -1
  88. package/dist/src/buf/proto/gen/dxos/gravity_pb.d.ts +1 -1
  89. package/dist/src/buf/proto/gen/dxos/gravity_pb.js +1 -1
  90. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.d.ts +1 -1
  91. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.js +1 -1
  92. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.d.ts +1 -1
  93. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.js +1 -1
  94. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.d.ts +1 -1
  95. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.js +1 -1
  96. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +1 -1
  97. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  98. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.d.ts +1 -1
  99. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.js +1 -1
  100. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.d.ts +1 -1
  101. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.js +1 -1
  102. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.d.ts +1 -1
  103. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.js +1 -1
  104. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.d.ts +1 -1
  105. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.js +1 -1
  106. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +2 -1
  107. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts.map +1 -1
  108. package/dist/src/buf/proto/gen/dxos/iframe_pb.js +1 -1
  109. package/dist/src/buf/proto/gen/dxos/iframe_pb.js.map +1 -1
  110. package/dist/src/buf/proto/gen/dxos/keys_pb.d.ts +1 -1
  111. package/dist/src/buf/proto/gen/dxos/keys_pb.js +1 -1
  112. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.d.ts +1 -1
  113. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.js +1 -1
  114. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.d.ts +1 -1
  115. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.js +1 -1
  116. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.d.ts +1 -1
  117. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.js +1 -1
  118. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.d.ts +1 -1
  119. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.js +1 -1
  120. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.d.ts +1 -1
  121. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.js +1 -1
  122. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.d.ts +1 -1
  123. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.js +1 -1
  124. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.d.ts +1 -1
  125. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.js +1 -1
  126. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.d.ts +1 -1
  127. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.js +1 -1
  128. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.d.ts +1 -1
  129. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.js +1 -1
  130. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.d.ts +1 -1
  131. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.js +1 -1
  132. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.d.ts +1 -1
  133. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.js +1 -1
  134. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.d.ts +1 -1
  135. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.js +1 -1
  136. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.d.ts +1 -1
  137. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.js +1 -1
  138. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.d.ts +1 -1
  139. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.js +1 -1
  140. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.d.ts +1 -1
  141. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.js +1 -1
  142. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.d.ts +1 -1
  143. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.js +1 -1
  144. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.d.ts +1 -1
  145. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.js +1 -1
  146. package/dist/src/buf/proto/gen/dxos/registry_pb.d.ts +1 -1
  147. package/dist/src/buf/proto/gen/dxos/registry_pb.js +1 -1
  148. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts +1 -1
  149. package/dist/src/buf/proto/gen/dxos/rpc_pb.js +1 -1
  150. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.d.ts +1 -1
  151. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.js +1 -1
  152. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.d.ts +1 -1
  153. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.js +1 -1
  154. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.d.ts +1 -1
  155. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.js +1 -1
  156. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.d.ts +1 -1
  157. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.js +1 -1
  158. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts +1 -1
  159. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +2 -2
  160. package/dist/src/buf/proto/gen/dxos/tracing_pb.js.map +1 -1
  161. package/dist/src/buf/proto/gen/dxos/type_pb.d.ts +1 -1
  162. package/dist/src/buf/proto/gen/dxos/type_pb.js +1 -1
  163. package/dist/src/buf/proto/gen/dxos/value_pb.d.ts +1 -1
  164. package/dist/src/buf/proto/gen/dxos/value_pb.js +1 -1
  165. package/dist/src/buf/proto/gen/example/testing/data_pb.d.ts +1 -1
  166. package/dist/src/buf/proto/gen/example/testing/data_pb.js +1 -1
  167. package/dist/src/buf/proto/gen/example/testing/rpc_pb.d.ts +1 -1
  168. package/dist/src/buf/proto/gen/example/testing/rpc_pb.js +1 -1
  169. package/dist/src/codec.test.js +1 -1
  170. package/dist/src/edge/EdgeFunctionEnv.d.ts +121 -0
  171. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -0
  172. package/dist/src/edge/EdgeFunctionEnv.js +4 -0
  173. package/dist/src/edge/EdgeFunctionEnv.js.map +1 -0
  174. package/dist/src/edge/edge.d.ts +353 -0
  175. package/dist/src/edge/edge.d.ts.map +1 -0
  176. package/dist/src/edge/edge.js +169 -0
  177. package/dist/src/edge/edge.js.map +1 -0
  178. package/dist/src/edge/errors.d.ts +29 -0
  179. package/dist/src/edge/errors.d.ts.map +1 -0
  180. package/dist/src/edge/errors.js +69 -0
  181. package/dist/src/edge/errors.js.map +1 -0
  182. package/dist/src/edge/index.d.ts +4 -0
  183. package/dist/src/edge/index.d.ts.map +1 -0
  184. package/dist/src/edge/index.js +7 -0
  185. package/dist/src/edge/index.js.map +1 -0
  186. package/dist/src/errors/base-errors.d.ts +86 -8
  187. package/dist/src/errors/base-errors.d.ts.map +1 -1
  188. package/dist/src/errors/base-errors.js +4 -19
  189. package/dist/src/errors/base-errors.js.map +1 -1
  190. package/dist/src/errors/encoding.d.ts +2 -2
  191. package/dist/src/errors/encoding.d.ts.map +1 -1
  192. package/dist/src/errors/encoding.js +1 -1
  193. package/dist/src/errors/encoding.js.map +1 -1
  194. package/dist/src/errors/errors.d.ts +619 -42
  195. package/dist/src/errors/errors.d.ts.map +1 -1
  196. package/dist/src/errors/errors.js +50 -104
  197. package/dist/src/errors/errors.js.map +1 -1
  198. package/dist/src/errors/errors.test.js +2 -2
  199. package/dist/src/errors/errors.test.js.map +1 -1
  200. package/dist/src/errors/helpers.d.ts +9 -5
  201. package/dist/src/errors/helpers.d.ts.map +1 -1
  202. package/dist/src/errors/helpers.js +3 -3
  203. package/dist/src/errors/helpers.js.map +1 -1
  204. package/dist/src/errors/index.d.ts +5 -5
  205. package/dist/src/errors/index.js +5 -5
  206. package/dist/src/feed-replication.d.ts.map +1 -1
  207. package/dist/src/index.d.ts +12 -12
  208. package/dist/src/index.d.ts.map +1 -1
  209. package/dist/src/index.js +11 -10
  210. package/dist/src/index.js.map +1 -1
  211. package/dist/src/indexing.d.ts +1 -1
  212. package/dist/src/indexing.d.ts.map +1 -1
  213. package/dist/src/indexing.js +1 -1
  214. package/dist/src/indexing.js.map +1 -1
  215. package/dist/src/indexing.test.js +1 -1
  216. package/dist/src/invitation.d.ts +1 -1
  217. package/dist/src/invitation.d.ts.map +1 -1
  218. package/dist/src/invitation.js +1 -1
  219. package/dist/src/invitation.js.map +1 -1
  220. package/dist/src/messenger.d.ts +16 -0
  221. package/dist/src/messenger.d.ts.map +1 -0
  222. package/dist/src/messenger.js +4 -0
  223. package/dist/src/messenger.js.map +1 -0
  224. package/dist/src/proto/gen/dxos/client/services.d.ts +300 -145
  225. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  226. package/dist/src/proto/gen/dxos/client/services.js +37 -33
  227. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  228. package/dist/src/proto/gen/dxos/config.d.ts +28 -2
  229. package/dist/src/proto/gen/dxos/config.d.ts.map +1 -1
  230. package/dist/src/proto/gen/dxos/config.js.map +1 -1
  231. package/dist/src/proto/gen/dxos/devtools/host.d.ts +31 -31
  232. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  233. package/dist/src/proto/gen/dxos/echo/query.d.ts +17 -1
  234. package/dist/src/proto/gen/dxos/echo/query.d.ts.map +1 -1
  235. package/dist/src/proto/gen/dxos/echo/query.js.map +1 -1
  236. package/dist/src/proto/gen/dxos/echo/service.d.ts +43 -8
  237. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  238. package/dist/src/proto/gen/google/protobuf.d.ts +31 -31
  239. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  240. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  241. package/dist/src/proto/gen/index.d.ts +11 -0
  242. package/dist/src/proto/gen/index.d.ts.map +1 -1
  243. package/dist/src/proto/gen/index.js +1 -1
  244. package/dist/src/proto/gen/index.js.map +1 -1
  245. package/dist/src/proto/index.d.ts +2 -2
  246. package/dist/src/proto/index.js +1 -1
  247. package/dist/src/proto/types.d.ts +1 -1
  248. package/dist/src/types.d.ts +2 -2
  249. package/dist/tsconfig.tsbuildinfo +1 -1
  250. package/package.json +19 -17
  251. package/src/FeedProtocol.ts +320 -0
  252. package/src/FunctionProtocol.ts +102 -0
  253. package/src/automerge.ts +8 -0
  254. package/src/buf/proto/gen/dxos/agent/dashboard_pb.ts +3 -3
  255. package/src/buf/proto/gen/dxos/agent/echo-proxy_pb.ts +3 -3
  256. package/src/buf/proto/gen/dxos/agent/epoch_pb.ts +3 -3
  257. package/src/buf/proto/gen/dxos/agent/functions_pb.ts +3 -3
  258. package/src/buf/proto/gen/dxos/bot_pb.ts +3 -3
  259. package/src/buf/proto/gen/dxos/client/invitation_pb.ts +3 -3
  260. package/src/buf/proto/gen/dxos/client/logging_pb.ts +3 -3
  261. package/src/buf/proto/gen/dxos/client/queue_pb.ts +280 -0
  262. package/src/buf/proto/gen/dxos/client/services_pb.ts +89 -29
  263. package/src/buf/proto/gen/dxos/config_pb.ts +43 -10
  264. package/src/buf/proto/gen/dxos/devtools/diagnostics_pb.ts +3 -3
  265. package/src/buf/proto/gen/dxos/devtools/host_pb.ts +3 -3
  266. package/src/buf/proto/gen/dxos/devtools/swarm_pb.ts +3 -3
  267. package/src/buf/proto/gen/dxos/echo/blob_pb.ts +3 -3
  268. package/src/buf/proto/gen/dxos/echo/feed_pb.ts +3 -3
  269. package/src/buf/proto/gen/dxos/echo/filter_pb.ts +3 -3
  270. package/src/buf/proto/gen/dxos/echo/indexing_pb.ts +3 -3
  271. package/src/buf/proto/gen/dxos/echo/metadata_pb.ts +3 -3
  272. package/src/buf/proto/gen/dxos/echo/model/document_pb.ts +3 -3
  273. package/src/buf/proto/gen/dxos/echo/model/messenger_pb.ts +3 -3
  274. package/src/buf/proto/gen/dxos/echo/model/text_pb.ts +3 -3
  275. package/src/buf/proto/gen/dxos/echo/object_pb.ts +3 -3
  276. package/src/buf/proto/gen/dxos/echo/query_pb.ts +18 -6
  277. package/src/buf/proto/gen/dxos/echo/service_pb.ts +87 -18
  278. package/src/buf/proto/gen/dxos/echo/snapshot_pb.ts +3 -3
  279. package/src/buf/proto/gen/dxos/echo/timeframe_pb.ts +3 -3
  280. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +3 -3
  281. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +3 -3
  282. package/src/buf/proto/gen/dxos/edge/signal_pb.ts +3 -3
  283. package/src/buf/proto/gen/dxos/error_pb.ts +3 -3
  284. package/src/buf/proto/gen/dxos/field_options_pb.ts +3 -3
  285. package/src/buf/proto/gen/dxos/google_pb.ts +3 -3
  286. package/src/buf/proto/gen/dxos/gravity_pb.ts +3 -3
  287. package/src/buf/proto/gen/dxos/halo/credentials/auth_pb.ts +3 -3
  288. package/src/buf/proto/gen/dxos/halo/credentials/greet_pb.ts +3 -3
  289. package/src/buf/proto/gen/dxos/halo/credentials/identity_pb.ts +3 -3
  290. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +3 -3
  291. package/src/buf/proto/gen/dxos/halo/invitations_pb.ts +3 -3
  292. package/src/buf/proto/gen/dxos/halo/keyring_pb.ts +3 -3
  293. package/src/buf/proto/gen/dxos/halo/keys_pb.ts +3 -3
  294. package/src/buf/proto/gen/dxos/halo/signed_pb.ts +3 -3
  295. package/src/buf/proto/gen/dxos/iframe_pb.ts +4 -3
  296. package/src/buf/proto/gen/dxos/keys_pb.ts +3 -3
  297. package/src/buf/proto/gen/dxos/mesh/bridge_pb.ts +3 -3
  298. package/src/buf/proto/gen/dxos/mesh/broadcast_pb.ts +3 -3
  299. package/src/buf/proto/gen/dxos/mesh/messaging_pb.ts +3 -3
  300. package/src/buf/proto/gen/dxos/mesh/muxer_pb.ts +3 -3
  301. package/src/buf/proto/gen/dxos/mesh/presence_pb.ts +3 -3
  302. package/src/buf/proto/gen/dxos/mesh/protocol_pb.ts +3 -3
  303. package/src/buf/proto/gen/dxos/mesh/replicator_pb.ts +3 -3
  304. package/src/buf/proto/gen/dxos/mesh/signal_pb.ts +3 -3
  305. package/src/buf/proto/gen/dxos/mesh/swarm_pb.ts +3 -3
  306. package/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.ts +3 -3
  307. package/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.ts +3 -3
  308. package/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.ts +3 -3
  309. package/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.ts +3 -3
  310. package/src/buf/proto/gen/dxos/mesh/teleport/control_pb.ts +3 -3
  311. package/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.ts +3 -3
  312. package/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.ts +3 -3
  313. package/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.ts +3 -3
  314. package/src/buf/proto/gen/dxos/registry_pb.ts +3 -3
  315. package/src/buf/proto/gen/dxos/rpc_pb.ts +3 -3
  316. package/src/buf/proto/gen/dxos/service/agentmanager_pb.ts +3 -3
  317. package/src/buf/proto/gen/dxos/service/publisher_pb.ts +3 -3
  318. package/src/buf/proto/gen/dxos/service/supervisor_pb.ts +3 -3
  319. package/src/buf/proto/gen/dxos/service/tunnel_pb.ts +3 -3
  320. package/src/buf/proto/gen/dxos/tracing_pb.ts +3 -3
  321. package/src/buf/proto/gen/dxos/type_pb.ts +3 -3
  322. package/src/buf/proto/gen/dxos/value_pb.ts +3 -3
  323. package/src/buf/proto/gen/example/testing/data_pb.ts +3 -3
  324. package/src/buf/proto/gen/example/testing/rpc_pb.ts +3 -3
  325. package/src/codec.test.ts +1 -1
  326. package/src/edge/EdgeFunctionEnv.ts +203 -0
  327. package/src/edge/edge.ts +493 -0
  328. package/src/edge/errors.ts +85 -0
  329. package/src/edge/index.ts +7 -0
  330. package/src/errors/base-errors.ts +4 -20
  331. package/src/errors/encoding.ts +3 -2
  332. package/src/errors/errors.test.ts +2 -2
  333. package/src/errors/errors.ts +58 -123
  334. package/src/errors/helpers.ts +6 -6
  335. package/src/errors/index.ts +5 -5
  336. package/src/feed-replication.ts +1 -0
  337. package/src/index.ts +12 -12
  338. package/src/indexing.test.ts +1 -1
  339. package/src/indexing.ts +1 -1
  340. package/src/invitation.ts +1 -1
  341. package/src/messenger.ts +22 -0
  342. package/src/proto/dxos/client/queue.proto +78 -0
  343. package/src/proto/dxos/client/services.proto +21 -3
  344. package/src/proto/dxos/config.proto +36 -40
  345. package/src/proto/dxos/echo/query.proto +4 -1
  346. package/src/proto/dxos/echo/service.proto +38 -6
  347. package/src/proto/dxos/iframe.proto +1 -0
  348. package/src/proto/gen/dxos/client/services.ts +300 -145
  349. package/src/proto/gen/dxos/config.ts +28 -2
  350. package/src/proto/gen/dxos/devtools/host.ts +31 -31
  351. package/src/proto/gen/dxos/echo/query.ts +17 -1
  352. package/src/proto/gen/dxos/echo/service.ts +42 -8
  353. package/src/proto/gen/google/protobuf.ts +31 -31
  354. package/src/proto/gen/index.ts +12 -1
  355. package/src/proto/index.ts +2 -2
  356. package/src/proto/types.ts +1 -1
  357. package/src/types.ts +2 -2
  358. package/dist/src/edge-error.d.ts +0 -26
  359. package/dist/src/edge-error.d.ts.map +0 -1
  360. package/dist/src/edge-error.js +0 -62
  361. package/dist/src/edge-error.js.map +0 -1
  362. package/dist/src/edge.d.ts +0 -198
  363. package/dist/src/edge.d.ts.map +0 -1
  364. package/dist/src/edge.js +0 -43
  365. package/dist/src/edge.js.map +0 -1
  366. package/dist/src/query.d.ts +0 -5
  367. package/dist/src/query.d.ts.map +0 -1
  368. package/dist/src/query.js +0 -8
  369. package/dist/src/query.js.map +0 -1
  370. package/dist/src/queue.d.ts +0 -24
  371. package/dist/src/queue.d.ts.map +0 -1
  372. package/dist/src/queue.js +0 -4
  373. package/dist/src/queue.js.map +0 -1
  374. package/src/edge-error.ts +0 -79
  375. package/src/edge.ts +0 -222
  376. package/src/query.ts +0 -8
  377. package/src/queue.ts +0 -33
@@ -2,12 +2,12 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/mesh/teleport/replicator.proto (package dxos.mesh.teleport.replicator, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
12
12
  import { file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
13
13
  import type { PublicKey } from "../../keys_pb.js";
@@ -2,14 +2,14 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/registry.proto (package dxos.registry, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
9
  // TODO(burdon): Rename `dxos.registry.record`.
10
10
 
11
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
12
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
11
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
12
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
13
13
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
14
14
  import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
15
15
  import type { JsonObject, Message } from "@bufbuild/protobuf";
@@ -2,14 +2,14 @@
2
2
  // Copyright 2020 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/rpc.proto (package dxos.rpc, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
9
  // TODO(burdon): Move to `dxos.mesh.rpc` (reconcile with @dxos/kube repo).
10
10
 
11
- import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
12
- import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
11
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
12
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
13
13
  import type { Any } from "@bufbuild/protobuf/wkt";
14
14
  import { file_google_protobuf_any } from "@bufbuild/protobuf/wkt";
15
15
  import type { Error } from "./error_pb.js";
@@ -2,12 +2,12 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/service/agentmanager.proto (package dxos.service.agentmanager, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import { file_google_protobuf_any, file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
12
12
  import { file_dxos_config } from "../config_pb.js";
13
13
  import type { Credential, Presentation } from "../halo/credentials_pb.js";
@@ -2,12 +2,12 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/service/publisher.proto (package dxos.service.publisher, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
12
12
  import { file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
13
13
  import type { Module, Package } from "../config_pb.js";
@@ -2,12 +2,12 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/service/supervisor.proto (package dxos.service.supervisor, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
12
12
  import { file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
13
13
  import type { Config } from "../config_pb.js";
@@ -2,12 +2,12 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/service/tunnel.proto (package dxos.service.tunnel, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
12
12
  import { file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
13
13
  import type { Message } from "@bufbuild/protobuf";
@@ -1,9 +1,9 @@
1
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
1
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
2
2
  // @generated from file dxos/tracing.proto (package dxos.tracing, syntax proto3)
3
3
  /* eslint-disable */
4
4
 
5
- import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
6
- import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
5
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
+ import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
7
7
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
8
8
  import { file_google_protobuf_empty, file_google_protobuf_struct } from "@bufbuild/protobuf/wkt";
9
9
  import type { Error } from "./error_pb.js";
@@ -2,14 +2,14 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/type.proto (package dxos.type, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
9
  // TODO(burdon): Rename `dxos.registry.type`.
10
10
 
11
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
12
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
11
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
12
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
13
13
  import { file_google_protobuf_struct } from "@bufbuild/protobuf/wkt";
14
14
  import type { Record_Extension } from "./registry_pb.js";
15
15
  import { file_dxos_registry } from "./registry_pb.js";
@@ -2,12 +2,12 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file dxos/value.proto (package dxos.value, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { Message } from "@bufbuild/protobuf";
12
12
 
13
13
  /**
@@ -2,12 +2,12 @@
2
2
  // Copyright 2020 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file example/testing/data.proto (package example.testing.data, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { Message } from "@bufbuild/protobuf";
12
12
 
13
13
  /**
@@ -2,12 +2,12 @@
2
2
  // Copyright 2020 DXOS.org
3
3
  //
4
4
 
5
- // @generated by protoc-gen-es v2.1.0 with parameter "target=ts,import_extension=js"
5
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
6
6
  // @generated from file example/testing/rpc.proto (package example.testing.rpc, syntax proto3)
7
7
  /* eslint-disable */
8
8
 
9
- import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
10
- import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
9
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
10
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
11
11
  import type { Any, EmptySchema } from "@bufbuild/protobuf/wkt";
12
12
  import { file_google_protobuf_any, file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
13
13
  import type { Message } from "@bufbuild/protobuf";
package/src/codec.test.ts CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { describe, expect, test } from 'vitest';
6
6
 
7
- import { schema } from './proto/index.js';
7
+ import { schema } from './proto/index.ts';
8
8
 
9
9
  describe('Codec', () => {
10
10
  test('encodes and decodes messages', async () => {
@@ -0,0 +1,203 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { type SpaceId } from '@dxos/keys';
6
+
7
+ import type * as FeedProtocol from '../FeedProtocol';
8
+ import { type CreateDocumentRequest, type CreateDocumentResponse } from '../proto/gen/dxos/echo/service';
9
+
10
+ /*
11
+
12
+ API for the edge functions service.
13
+ A function module should be a valid cloudflare worker module.
14
+
15
+ # Fetching metadata (done on deploy)
16
+
17
+ GET http://functions.dxos.internal/
18
+ X-DXOS-Function-Route: meta
19
+
20
+ Expected to return `FunctionMetadata` in JSON:
21
+
22
+ {
23
+ key: string;
24
+ name?: string;
25
+ description?: string;
26
+ inputSchema?: JsonSchemaType;
27
+ outputSchema?: JsonSchemaType;
28
+ }
29
+
30
+ # Invoking the function
31
+
32
+ POST http://functions.dxos.internal/
33
+ Content-Type: application/json
34
+ X-Trace-Queue-Dxn: dxn:queue:trace:AAAAAA:BBBBBB
35
+ X-Invocation-Id: XXXXXXX
36
+ X-Edge-Env: production
37
+
38
+ {input_data}
39
+
40
+ Expected to return `EdgeEnvelope` with the output data:
41
+
42
+ {
43
+ success: true,
44
+ data: unknown
45
+ }
46
+
47
+ On Error returns `EdgeEnvelope` with error:
48
+
49
+ {
50
+ success: false,
51
+ message: string
52
+ error: EncodedError
53
+ }
54
+
55
+ */
56
+
57
+ /**
58
+ * Environment available to the function running on Cloudflare.
59
+ */
60
+ export interface Env {
61
+ QUEUE_SERVICE: QueueService;
62
+ DATA_SERVICE: DataService;
63
+ FUNCTIONS_AI_SERVICE: FunctionsAiService;
64
+ }
65
+
66
+ /**
67
+ * Use to trace the execution across multiple services.
68
+ *
69
+ * NOTE: Currently unused in functions.
70
+ */
71
+ export interface ExecutionContext {}
72
+
73
+ /**
74
+ * Database API for other CF services like functions.
75
+ */
76
+ export interface DataService {
77
+ getSpaceMeta(ctx: ExecutionContext, spaceId: SpaceId): Promise<RpcResult<SpaceMeta | undefined>>;
78
+ getDocument(ctx: ExecutionContext, spaceId: SpaceId, documentId: string): Promise<RpcResult<RawDocument | undefined>>;
79
+
80
+ query(ctx: ExecutionContext, request: QueryRequest): Promise<RpcResult<QueryResponse>>;
81
+ queryDocuments(ctx: ExecutionContext, request: QueryRequest): Promise<RpcResult<QueryDocumentsResponse>>;
82
+ queryReferences(ctx: ExecutionContext, request: QueryReferencesRequest): Promise<RpcResult<QueryReferencesResponse>>;
83
+
84
+ createDocument(ctx: ExecutionContext, request: CreateDocumentRequest): Promise<RpcResult<CreateDocumentResponse>>;
85
+
86
+ // TODO(burdon): Update? Return DocumentEntry?
87
+ changeDocument(ctx: ExecutionContext, spaceId: SpaceId, documentId: string, changes: Uint8Array): Promise<void>;
88
+ }
89
+
90
+ export interface QueueService {
91
+ queryQueue: (
92
+ ctx: ExecutionContext,
93
+ request: FeedProtocol.QueryQueueRequest,
94
+ ) => Promise<RpcResult<FeedProtocol.QueryResult>>;
95
+ insertIntoQueue: (
96
+ ctx: ExecutionContext,
97
+ request: FeedProtocol.InsertIntoQueueRequest,
98
+ ) => Promise<RpcResult<RpcDisposable>>;
99
+ deleteFromQueue: (
100
+ ctx: ExecutionContext,
101
+ request: FeedProtocol.DeleteFromQueueRequest,
102
+ ) => Promise<RpcResult<RpcDisposable>>;
103
+ }
104
+
105
+ /**
106
+ * FunctionsAiService API for other CF services like functions.
107
+ */
108
+ export interface FunctionsAiService {
109
+ /**
110
+ * Enables proxying HTTP requests to the AI service from other workers.
111
+ */
112
+ fetch(request: Request): Promise<RpcResult<Response>>;
113
+ }
114
+
115
+ export type ObjectDocumentJson = {
116
+ type?: string;
117
+ objectId: string;
118
+ documentId: string;
119
+ /** Base64 encoding of a document. */
120
+ document: string;
121
+ };
122
+
123
+ export type SpaceMeta = {
124
+ spaceKey: string;
125
+ rootDocumentId: string;
126
+ };
127
+
128
+ export type QueryRequest = {
129
+ spaceId: string;
130
+ type?: string;
131
+ where?: Record<string, any>;
132
+ objectIds?: string[];
133
+ cursor?: string;
134
+ limit?: number;
135
+ };
136
+
137
+ export type QueryResponse = {
138
+ results: ObjectSnapshot[];
139
+ cursor?: string;
140
+ };
141
+
142
+ /**
143
+ * TODO(yaroslav): make Indexer return EchoObject after create() can properly reconstruct an object
144
+ * from this structure (meta, id and type aren't handled properly)
145
+ */
146
+ export type ObjectSnapshot = {
147
+ type?: string;
148
+ documentId: string;
149
+ objectId: string;
150
+ // TODO(mykola): Use ObjectStructure from @dxos/echo-protocol.
151
+ object: unknown;
152
+ };
153
+
154
+ export type ObjectReference = {
155
+ fromId: string;
156
+ toId: string;
157
+ fieldName: string;
158
+ };
159
+
160
+ export type QueryDocumentsResponse = {
161
+ results: RawObject[];
162
+ cursor?: string;
163
+ };
164
+
165
+ export type RawDocument = {
166
+ documentId: string;
167
+ data: Uint8Array;
168
+ };
169
+
170
+ export type RawObject = {
171
+ type?: string;
172
+ objectId: string;
173
+ document: RawDocument;
174
+ };
175
+
176
+ export type QueryReferencesRequest = {
177
+ spaceId: string;
178
+ objectId: string;
179
+ referenceType: 'from' | 'to';
180
+ };
181
+
182
+ export type QueryReferencesResponse = {
183
+ references: ObjectReference[];
184
+ };
185
+
186
+ /**
187
+ * Cloudflare Workers RPC returns objects/arrays/stubs that may need to be explicitly disposed.
188
+ *
189
+ * See: https://developers.cloudflare.com/workers/runtime-apis/rpc/lifecycle/
190
+ */
191
+ export interface RpcDisposable {
192
+ /**
193
+ * Disposes the RPC stub / returned value and releases any server-side resources it references.
194
+ */
195
+ [Symbol.dispose](): void;
196
+ }
197
+
198
+ /**
199
+ * Wraps a return type so that any non-primitive value is marked as disposable.
200
+ *
201
+ * This models Workers RPC behavior where any returned object (including arrays) gets a disposer added.
202
+ */
203
+ export type RpcResult<T> = T extends object ? T & RpcDisposable : T;