@joe-broadhead/messaging 0.0.0-stage → 0.7.1

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 (273) hide show
  1. package/CHANGELOG.md +220 -0
  2. package/LICENSE +21 -0
  3. package/NOTICE +12 -0
  4. package/README.md +36 -2
  5. package/dist/bin/messaging-mcp.js +26524 -0
  6. package/dist/bin/messaging-relay.js +19768 -0
  7. package/dist/bin/messaging.js +15465 -0
  8. package/dist/bin/messagingd.js +29449 -0
  9. package/dist/lib/core-testing.js +1 -0
  10. package/dist/lib/core.js +1 -0
  11. package/dist/lib/ipc-testing.js +1 -0
  12. package/dist/lib/ipc.js +1 -0
  13. package/dist/lib/modules/core/address.js +42 -0
  14. package/dist/lib/modules/core/agent/operations.js +595 -0
  15. package/dist/lib/modules/core/agent/present.js +244 -0
  16. package/dist/lib/modules/core/agent/text.js +79 -0
  17. package/dist/lib/modules/core/agent-tools.js +477 -0
  18. package/dist/lib/modules/core/b64u.js +20 -0
  19. package/dist/lib/modules/core/cards.js +55 -0
  20. package/dist/lib/modules/core/check.js +20 -0
  21. package/dist/lib/modules/core/consent.js +199 -0
  22. package/dist/lib/modules/core/contact-card.js +74 -0
  23. package/dist/lib/modules/core/conversation/context.js +80 -0
  24. package/dist/lib/modules/core/conversation/event.js +100 -0
  25. package/dist/lib/modules/core/conversation/ids.js +38 -0
  26. package/dist/lib/modules/core/conversation/link.js +35 -0
  27. package/dist/lib/modules/core/conversation/log.js +766 -0
  28. package/dist/lib/modules/core/conversation/ratchet.js +243 -0
  29. package/dist/lib/modules/core/conversation/seal.js +198 -0
  30. package/dist/lib/modules/core/delegation.js +174 -0
  31. package/dist/lib/modules/core/directory/device-log.js +258 -0
  32. package/dist/lib/modules/core/directory/epoch.js +103 -0
  33. package/dist/lib/modules/core/directory/handle.js +29 -0
  34. package/dist/lib/modules/core/directory/jelly-device.js +204 -0
  35. package/dist/lib/modules/core/directory/jelly-issuer.js +12 -0
  36. package/dist/lib/modules/core/directory/jelly-token.js +305 -0
  37. package/dist/lib/modules/core/directory/keys-statement.js +43 -0
  38. package/dist/lib/modules/core/directory/link.js +81 -0
  39. package/dist/lib/modules/core/directory/merkle-log.js +250 -0
  40. package/dist/lib/modules/core/directory/person-view.js +197 -0
  41. package/dist/lib/modules/core/directory/person.js +40 -0
  42. package/dist/lib/modules/core/directory/realm.js +59 -0
  43. package/dist/lib/modules/core/directory/smt.js +266 -0
  44. package/dist/lib/modules/core/envelope.js +320 -0
  45. package/dist/lib/modules/core/hash.js +5 -0
  46. package/dist/lib/modules/core/head.js +27 -0
  47. package/dist/lib/modules/core/identity.js +71 -0
  48. package/dist/lib/modules/core/index.js +53 -0
  49. package/dist/lib/modules/core/jcs.js +96 -0
  50. package/dist/lib/modules/core/jelly-host-double.js +35 -0
  51. package/dist/lib/modules/core/jelly-host.js +211 -0
  52. package/dist/lib/modules/core/keys.js +79 -0
  53. package/dist/lib/modules/core/peer-text.js +563 -0
  54. package/dist/lib/modules/core/realm.js +1 -0
  55. package/dist/lib/modules/core/roster.js +454 -0
  56. package/dist/lib/modules/core/schema/a2a.js +85 -0
  57. package/dist/lib/modules/core/schema/common.js +310 -0
  58. package/dist/lib/modules/core/schema/consent.js +120 -0
  59. package/dist/lib/modules/core/schema/conversation.js +292 -0
  60. package/dist/lib/modules/core/schema/delegation.js +58 -0
  61. package/dist/lib/modules/core/schema/directory-frames.js +270 -0
  62. package/dist/lib/modules/core/schema/directory.js +169 -0
  63. package/dist/lib/modules/core/schema/envelope.js +211 -0
  64. package/dist/lib/modules/core/schema/errors.js +104 -0
  65. package/dist/lib/modules/core/schema/index.js +16 -0
  66. package/dist/lib/modules/core/schema/ipc/consent.js +181 -0
  67. package/dist/lib/modules/core/schema/ipc/device.js +276 -0
  68. package/dist/lib/modules/core/schema/ipc/jelly.js +189 -0
  69. package/dist/lib/modules/core/schema/ipc/shapes.js +185 -0
  70. package/dist/lib/modules/core/schema/ipc/surfaces.js +223 -0
  71. package/dist/lib/modules/core/schema/ipc.js +451 -0
  72. package/dist/lib/modules/core/schema/jelly.js +122 -0
  73. package/dist/lib/modules/core/schema/realm.js +27 -0
  74. package/dist/lib/modules/core/schema/relay.js +112 -0
  75. package/dist/lib/modules/core/schema/roster.js +126 -0
  76. package/dist/lib/modules/core/sign.js +43 -0
  77. package/dist/lib/modules/core/task.js +37 -0
  78. package/dist/lib/modules/core/testing.js +21 -0
  79. package/dist/lib/modules/core/ulid.js +36 -0
  80. package/dist/lib/modules/core/version.js +6 -0
  81. package/dist/lib/modules/core/wire.js +255 -0
  82. package/dist/lib/modules/ipc/client.js +289 -0
  83. package/dist/lib/modules/ipc/framing.js +33 -0
  84. package/dist/lib/modules/ipc/index.js +6 -0
  85. package/dist/lib/modules/ipc/paths.js +102 -0
  86. package/dist/lib/modules/ipc/pipes.js +65 -0
  87. package/dist/lib/modules/ipc/rpc.js +8 -0
  88. package/dist/lib/modules/ipc/server.js +317 -0
  89. package/dist/lib/modules/ipc/testing.js +145 -0
  90. package/dist/lib/modules/ipc/trust.js +166 -0
  91. package/dist/lib/modules/ipc/windows-acl.js +275 -0
  92. package/dist/lib/modules/vendor/zod/index.js +7 -0
  93. package/dist/lib/modules/vendor/zod/v4/classic/checks.js +1 -0
  94. package/dist/lib/modules/vendor/zod/v4/classic/coerce.js +17 -0
  95. package/dist/lib/modules/vendor/zod/v4/classic/compat.js +31 -0
  96. package/dist/lib/modules/vendor/zod/v4/classic/deep-partial.js +13 -0
  97. package/dist/lib/modules/vendor/zod/v4/classic/errors.js +57 -0
  98. package/dist/lib/modules/vendor/zod/v4/classic/external.js +17 -0
  99. package/dist/lib/modules/vendor/zod/v4/classic/from-json-schema.js +881 -0
  100. package/dist/lib/modules/vendor/zod/v4/classic/in-out.js +36 -0
  101. package/dist/lib/modules/vendor/zod/v4/classic/iso.js +15 -0
  102. package/dist/lib/modules/vendor/zod/v4/classic/parse.js +16 -0
  103. package/dist/lib/modules/vendor/zod/v4/classic/schemas.js +1535 -0
  104. package/dist/lib/modules/vendor/zod/v4/core/api.js +1107 -0
  105. package/dist/lib/modules/vendor/zod/v4/core/checks.js +516 -0
  106. package/dist/lib/modules/vendor/zod/v4/core/compile.js +1866 -0
  107. package/dist/lib/modules/vendor/zod/v4/core/core.js +141 -0
  108. package/dist/lib/modules/vendor/zod/v4/core/doc.js +38 -0
  109. package/dist/lib/modules/vendor/zod/v4/core/errors.js +267 -0
  110. package/dist/lib/modules/vendor/zod/v4/core/index.js +19 -0
  111. package/dist/lib/modules/vendor/zod/v4/core/json-schema-generator.js +99 -0
  112. package/dist/lib/modules/vendor/zod/v4/core/json-schema-processors.js +843 -0
  113. package/dist/lib/modules/vendor/zod/v4/core/json-schema.js +1 -0
  114. package/dist/lib/modules/vendor/zod/v4/core/memoizer.js +311 -0
  115. package/dist/lib/modules/vendor/zod/v4/core/parse.js +175 -0
  116. package/dist/lib/modules/vendor/zod/v4/core/regexes.js +156 -0
  117. package/dist/lib/modules/vendor/zod/v4/core/registries.js +51 -0
  118. package/dist/lib/modules/vendor/zod/v4/core/schemas.js +2636 -0
  119. package/dist/lib/modules/vendor/zod/v4/core/to-json-schema.js +651 -0
  120. package/dist/lib/modules/vendor/zod/v4/core/util.js +873 -0
  121. package/dist/lib/modules/vendor/zod/v4/core/versions.js +5 -0
  122. package/dist/lib/modules/vendor/zod/v4/core/visit.js +169 -0
  123. package/dist/lib/modules/vendor/zod/v4/locales/ar.js +111 -0
  124. package/dist/lib/modules/vendor/zod/v4/locales/az.js +110 -0
  125. package/dist/lib/modules/vendor/zod/v4/locales/be.js +168 -0
  126. package/dist/lib/modules/vendor/zod/v4/locales/bg.js +125 -0
  127. package/dist/lib/modules/vendor/zod/v4/locales/bn.js +113 -0
  128. package/dist/lib/modules/vendor/zod/v4/locales/ca.js +112 -0
  129. package/dist/lib/modules/vendor/zod/v4/locales/ckb.js +133 -0
  130. package/dist/lib/modules/vendor/zod/v4/locales/cs.js +116 -0
  131. package/dist/lib/modules/vendor/zod/v4/locales/da.js +120 -0
  132. package/dist/lib/modules/vendor/zod/v4/locales/de.js +113 -0
  133. package/dist/lib/modules/vendor/zod/v4/locales/el.js +112 -0
  134. package/dist/lib/modules/vendor/zod/v4/locales/en.js +125 -0
  135. package/dist/lib/modules/vendor/zod/v4/locales/eo.js +114 -0
  136. package/dist/lib/modules/vendor/zod/v4/locales/es.js +136 -0
  137. package/dist/lib/modules/vendor/zod/v4/locales/fa.js +119 -0
  138. package/dist/lib/modules/vendor/zod/v4/locales/fi.js +117 -0
  139. package/dist/lib/modules/vendor/zod/v4/locales/fr-CA.js +112 -0
  140. package/dist/lib/modules/vendor/zod/v4/locales/fr.js +129 -0
  141. package/dist/lib/modules/vendor/zod/v4/locales/gu.js +113 -0
  142. package/dist/lib/modules/vendor/zod/v4/locales/he.js +221 -0
  143. package/dist/lib/modules/vendor/zod/v4/locales/hi.js +111 -0
  144. package/dist/lib/modules/vendor/zod/v4/locales/hr.js +126 -0
  145. package/dist/lib/modules/vendor/zod/v4/locales/hu.js +113 -0
  146. package/dist/lib/modules/vendor/zod/v4/locales/hy.js +158 -0
  147. package/dist/lib/modules/vendor/zod/v4/locales/id.js +111 -0
  148. package/dist/lib/modules/vendor/zod/v4/locales/index.js +63 -0
  149. package/dist/lib/modules/vendor/zod/v4/locales/is.js +114 -0
  150. package/dist/lib/modules/vendor/zod/v4/locales/it.js +113 -0
  151. package/dist/lib/modules/vendor/zod/v4/locales/ja.js +112 -0
  152. package/dist/lib/modules/vendor/zod/v4/locales/ka.js +117 -0
  153. package/dist/lib/modules/vendor/zod/v4/locales/kh.js +5 -0
  154. package/dist/lib/modules/vendor/zod/v4/locales/km.js +115 -0
  155. package/dist/lib/modules/vendor/zod/v4/locales/kn.js +116 -0
  156. package/dist/lib/modules/vendor/zod/v4/locales/ko.js +116 -0
  157. package/dist/lib/modules/vendor/zod/v4/locales/lt.js +207 -0
  158. package/dist/lib/modules/vendor/zod/v4/locales/mk.js +114 -0
  159. package/dist/lib/modules/vendor/zod/v4/locales/ms.js +112 -0
  160. package/dist/lib/modules/vendor/zod/v4/locales/ne.js +111 -0
  161. package/dist/lib/modules/vendor/zod/v4/locales/nl.js +115 -0
  162. package/dist/lib/modules/vendor/zod/v4/locales/nn.js +113 -0
  163. package/dist/lib/modules/vendor/zod/v4/locales/no.js +113 -0
  164. package/dist/lib/modules/vendor/zod/v4/locales/ota.js +114 -0
  165. package/dist/lib/modules/vendor/zod/v4/locales/pl.js +114 -0
  166. package/dist/lib/modules/vendor/zod/v4/locales/ps.js +119 -0
  167. package/dist/lib/modules/vendor/zod/v4/locales/pt-BR.js +143 -0
  168. package/dist/lib/modules/vendor/zod/v4/locales/pt.js +142 -0
  169. package/dist/lib/modules/vendor/zod/v4/locales/ro.js +122 -0
  170. package/dist/lib/modules/vendor/zod/v4/locales/ru.js +168 -0
  171. package/dist/lib/modules/vendor/zod/v4/locales/sk.js +116 -0
  172. package/dist/lib/modules/vendor/zod/v4/locales/sl.js +114 -0
  173. package/dist/lib/modules/vendor/zod/v4/locales/sv.js +115 -0
  174. package/dist/lib/modules/vendor/zod/v4/locales/ta.js +115 -0
  175. package/dist/lib/modules/vendor/zod/v4/locales/tg.js +117 -0
  176. package/dist/lib/modules/vendor/zod/v4/locales/th.js +115 -0
  177. package/dist/lib/modules/vendor/zod/v4/locales/tk.js +107 -0
  178. package/dist/lib/modules/vendor/zod/v4/locales/tr.js +110 -0
  179. package/dist/lib/modules/vendor/zod/v4/locales/ua.js +5 -0
  180. package/dist/lib/modules/vendor/zod/v4/locales/uk.js +113 -0
  181. package/dist/lib/modules/vendor/zod/v4/locales/ur.js +115 -0
  182. package/dist/lib/modules/vendor/zod/v4/locales/uz.js +113 -0
  183. package/dist/lib/modules/vendor/zod/v4/locales/vi.js +113 -0
  184. package/dist/lib/modules/vendor/zod/v4/locales/yo.js +112 -0
  185. package/dist/lib/modules/vendor/zod/v4/locales/zh-CN.js +114 -0
  186. package/dist/lib/modules/vendor/zod/v4/locales/zh-TW.js +112 -0
  187. package/dist/lib/testing-jelly-id.js +1219 -0
  188. package/dist/lib/zod.js +1 -0
  189. package/dist/spec/messaging-v1.md +3744 -0
  190. package/dist/third-party-notices.md +239 -0
  191. package/dist/third-party.json +88 -0
  192. package/dist/types/core/address.d.ts +16 -0
  193. package/dist/types/core/agent/operations.d.ts +129 -0
  194. package/dist/types/core/agent/present.d.ts +57 -0
  195. package/dist/types/core/agent/text.d.ts +62 -0
  196. package/dist/types/core/agent-tools.d.ts +966 -0
  197. package/dist/types/core/b64u.d.ts +6 -0
  198. package/dist/types/core/cards.d.ts +21 -0
  199. package/dist/types/core/check.d.ts +10 -0
  200. package/dist/types/core/consent.d.ts +132 -0
  201. package/dist/types/core/contact-card.d.ts +34 -0
  202. package/dist/types/core/conversation/context.d.ts +56 -0
  203. package/dist/types/core/conversation/event.d.ts +36 -0
  204. package/dist/types/core/conversation/ids.d.ts +18 -0
  205. package/dist/types/core/conversation/link.d.ts +16 -0
  206. package/dist/types/core/conversation/log.d.ts +142 -0
  207. package/dist/types/core/conversation/ratchet.d.ts +95 -0
  208. package/dist/types/core/conversation/seal.d.ts +47 -0
  209. package/dist/types/core/delegation.d.ts +71 -0
  210. package/dist/types/core/directory/device-log.d.ts +119 -0
  211. package/dist/types/core/directory/epoch.d.ts +53 -0
  212. package/dist/types/core/directory/handle.d.ts +11 -0
  213. package/dist/types/core/directory/jelly-device.d.ts +88 -0
  214. package/dist/types/core/directory/jelly-issuer.d.ts +8 -0
  215. package/dist/types/core/directory/jelly-token.d.ts +116 -0
  216. package/dist/types/core/directory/keys-statement.d.ts +22 -0
  217. package/dist/types/core/directory/link.d.ts +36 -0
  218. package/dist/types/core/directory/merkle-log.d.ts +40 -0
  219. package/dist/types/core/directory/person-view.d.ts +90 -0
  220. package/dist/types/core/directory/person.d.ts +8 -0
  221. package/dist/types/core/directory/realm.d.ts +23 -0
  222. package/dist/types/core/directory/smt.d.ts +52 -0
  223. package/dist/types/core/envelope.d.ts +68 -0
  224. package/dist/types/core/hash.d.ts +2 -0
  225. package/dist/types/core/head.d.ts +34 -0
  226. package/dist/types/core/identity.d.ts +35 -0
  227. package/dist/types/core/index.d.ts +45 -0
  228. package/dist/types/core/jcs.d.ts +12 -0
  229. package/dist/types/core/jelly-host-double.d.ts +21 -0
  230. package/dist/types/core/jelly-host.d.ts +86 -0
  231. package/dist/types/core/keys.d.ts +16 -0
  232. package/dist/types/core/peer-text.d.ts +87 -0
  233. package/dist/types/core/realm.d.ts +36 -0
  234. package/dist/types/core/roster.d.ts +146 -0
  235. package/dist/types/core/schema/a2a.d.ts +251 -0
  236. package/dist/types/core/schema/common.d.ts +328 -0
  237. package/dist/types/core/schema/consent.d.ts +140 -0
  238. package/dist/types/core/schema/conversation.d.ts +1657 -0
  239. package/dist/types/core/schema/delegation.d.ts +58 -0
  240. package/dist/types/core/schema/directory-frames.d.ts +1301 -0
  241. package/dist/types/core/schema/directory.d.ts +375 -0
  242. package/dist/types/core/schema/envelope.d.ts +756 -0
  243. package/dist/types/core/schema/errors.d.ts +142 -0
  244. package/dist/types/core/schema/index.d.ts +16 -0
  245. package/dist/types/core/schema/ipc/consent.d.ts +555 -0
  246. package/dist/types/core/schema/ipc/device.d.ts +735 -0
  247. package/dist/types/core/schema/ipc/jelly.d.ts +501 -0
  248. package/dist/types/core/schema/ipc/shapes.d.ts +414 -0
  249. package/dist/types/core/schema/ipc/surfaces.d.ts +680 -0
  250. package/dist/types/core/schema/ipc.d.ts +3146 -0
  251. package/dist/types/core/schema/jelly.d.ts +160 -0
  252. package/dist/types/core/schema/realm.d.ts +38 -0
  253. package/dist/types/core/schema/relay.d.ts +1134 -0
  254. package/dist/types/core/schema/roster.d.ts +347 -0
  255. package/dist/types/core/sign.d.ts +13 -0
  256. package/dist/types/core/task.d.ts +6 -0
  257. package/dist/types/core/testing.d.ts +19 -0
  258. package/dist/types/core/ulid.d.ts +5 -0
  259. package/dist/types/core/version.d.ts +6 -0
  260. package/dist/types/core/wire.d.ts +14 -0
  261. package/dist/types/ipc/client.d.ts +85 -0
  262. package/dist/types/ipc/framing.d.ts +12 -0
  263. package/dist/types/ipc/index.d.ts +6 -0
  264. package/dist/types/ipc/paths.d.ts +39 -0
  265. package/dist/types/ipc/pipes.d.ts +16 -0
  266. package/dist/types/ipc/rpc.d.ts +13 -0
  267. package/dist/types/ipc/server.d.ts +94 -0
  268. package/dist/types/ipc/testing.d.ts +89 -0
  269. package/dist/types/ipc/trust.d.ts +49 -0
  270. package/dist/types/ipc/windows-acl.d.ts +56 -0
  271. package/dist/types/testing/jelly-id.d.ts +518 -0
  272. package/dist/types/zod.d.ts +1 -0
  273. package/package.json +77 -4
@@ -0,0 +1,1134 @@
1
+ /**
2
+ * Relay binding (urn:messaging:binding:relay:v1): JSON text frames over one WebSocket per machine.
3
+ * Each frame is one JSON object of at most LIMITS.frameBytes, discriminated by `t`.
4
+ * Receivers ignore frames with an unknown `t` (forward compatibility); they never drop the link for it.
5
+ *
6
+ * Connection:
7
+ * relay → challenge {nonce}
8
+ * client → [pre-auth, optional] join {team, inviteId, proof} → relay: roster {entries} (only for an open invite)
9
+ * proof = Ed25519(invite seed, DOMAIN.inviteJoin + JCS({relay, team, inviteId, nonce})), verified under invitePub
10
+ * client → [pre-auth, optional] roster.append {entry} (genesis to create a team, or invite.redeem to join)
11
+ * client → hello {team, machine, ts, sig} sig = Ed25519(DOMAIN.relayAuth + JCS({proto, relay, team, machine, nonce, ts}))
12
+ * relay → welcome {head, online}, then the latest presence envelope of every member, then queued deliveries
13
+ *
14
+ * After welcome:
15
+ * send {env} relay checks header + signature + membership, stores, forwards; replies ack|nack by env.id
16
+ * deliver {env} relay → recipient. Recipient replies recv.ack {id} after storing durably; the relay then drops it
17
+ * presence {env} relay keeps the latest per machine and fans it out to online team members as deliver
18
+ * roster.append admin entries; relay validates against its head, appends, replies roster.ok, broadcasts roster
19
+ * roster.sync {after} relay replies roster {entries with seq > after}
20
+ * peer {machine, online} relay → members on connect/disconnect
21
+ * When a member is removed, the relay closes its connection with code 4003.
22
+ */
23
+ import { z } from "zod";
24
+ export declare const ChallengeFrame: z.ZodObject<{
25
+ t: z.ZodLiteral<"challenge">;
26
+ proto: z.ZodLiteral<"messaging-relay/1">;
27
+ relay: z.ZodString;
28
+ nonce: z.ZodString;
29
+ }, z.core.$strip>;
30
+ export declare const WelcomeFrame: z.ZodObject<{
31
+ t: z.ZodLiteral<"welcome">;
32
+ head: z.ZodObject<{
33
+ seq: z.ZodNumber;
34
+ hash: z.ZodString;
35
+ }, z.core.$strip>;
36
+ online: z.ZodArray<z.ZodString>;
37
+ }, z.core.$strip>;
38
+ /**
39
+ * Deliveries are parsed loosely so a v1 client can still ack (and answer with a rejected receipt) an
40
+ * envelope type added later and forwarded by a newer relay. The daemon verifies the raw envelope itself.
41
+ */
42
+ export declare const DeliverFrame: z.ZodObject<{
43
+ t: z.ZodLiteral<"deliver">;
44
+ env: z.ZodObject<{
45
+ v: z.ZodString;
46
+ id: z.ZodString;
47
+ type: z.ZodString;
48
+ }, z.core.$loose>;
49
+ }, z.core.$strip>;
50
+ export declare const AckFrame: z.ZodObject<{
51
+ t: z.ZodLiteral<"ack">;
52
+ id: z.ZodString;
53
+ stage: z.ZodLiteral<"relayed">;
54
+ }, z.core.$strip>;
55
+ /** `retryAfterMs`: with `rate_limited` from a directory frame (spec §7, "Directory frames"), when to ask again. */
56
+ export declare const NackFrame: z.ZodObject<{
57
+ t: z.ZodLiteral<"nack">;
58
+ id: z.ZodString;
59
+ code: z.ZodEnum<{
60
+ expired: "expired";
61
+ invalid_request: "invalid_request";
62
+ not_member: "not_member";
63
+ bad_signature: "bad_signature";
64
+ unknown_session: "unknown_session";
65
+ ambiguous_address: "ambiguous_address";
66
+ no_recipients: "no_recipients";
67
+ unknown_address: "unknown_address";
68
+ refused: "refused";
69
+ declined: "declined";
70
+ request_required: "request_required";
71
+ rate_limited: "rate_limited";
72
+ loop_guard: "loop_guard";
73
+ too_large: "too_large";
74
+ secret_refused: "secret_refused";
75
+ duplicate: "duplicate";
76
+ relay_unavailable: "relay_unavailable";
77
+ not_found: "not_found";
78
+ invalid_state: "invalid_state";
79
+ forbidden: "forbidden";
80
+ guarded_turn: "guarded_turn";
81
+ roster_conflict: "roster_conflict";
82
+ invite_invalid: "invite_invalid";
83
+ no_identity: "no_identity";
84
+ binding_invalid: "binding_invalid";
85
+ jelly_unavailable: "jelly_unavailable";
86
+ log_conflict: "log_conflict";
87
+ conv_conflict: "conv_conflict";
88
+ stale_epoch: "stale_epoch";
89
+ device_limit: "device_limit";
90
+ admission_required: "admission_required";
91
+ admission_invalid: "admission_invalid";
92
+ directory_inconsistent: "directory_inconsistent";
93
+ unknown_device: "unknown_device";
94
+ directory_unavailable: "directory_unavailable";
95
+ login_unsupported: "login_unsupported";
96
+ login_denied: "login_denied";
97
+ grant_required: "grant_required";
98
+ grant_invalid: "grant_invalid";
99
+ ticket_required: "ticket_required";
100
+ ticket_invalid: "ticket_invalid";
101
+ daemon_unavailable: "daemon_unavailable";
102
+ daemon_mismatch: "daemon_mismatch";
103
+ store_refused: "store_refused";
104
+ internal: "internal";
105
+ }>;
106
+ message: z.ZodString;
107
+ retryAfterMs: z.ZodOptional<z.ZodNumber>;
108
+ }, z.core.$strip>;
109
+ /** `more`: the reply was paged; ask again with `after` = the last entry's seq. */
110
+ export declare const RosterFrame: z.ZodObject<{
111
+ t: z.ZodLiteral<"roster">;
112
+ req: z.ZodOptional<z.ZodString>;
113
+ entries: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
114
+ prev: z.ZodNull;
115
+ kind: z.ZodLiteral<"genesis">;
116
+ body: z.ZodObject<{
117
+ name: z.ZodString;
118
+ founder: z.ZodObject<{
119
+ machine: z.ZodString;
120
+ enc: z.ZodString;
121
+ person: z.ZodString;
122
+ role: z.ZodEnum<{
123
+ admin: "admin";
124
+ member: "member";
125
+ }>;
126
+ label: z.ZodString;
127
+ }, z.core.$strip>;
128
+ }, z.core.$strip>;
129
+ v: z.ZodLiteral<"messaging/1">;
130
+ seq: z.ZodNumber;
131
+ ts: z.ZodNumber;
132
+ by: z.ZodString;
133
+ sig: z.ZodString;
134
+ }, z.core.$strip>, z.ZodObject<{
135
+ kind: z.ZodLiteral<"member.add">;
136
+ body: z.ZodObject<{
137
+ machine: z.ZodString;
138
+ enc: z.ZodString;
139
+ person: z.ZodString;
140
+ role: z.ZodEnum<{
141
+ admin: "admin";
142
+ member: "member";
143
+ }>;
144
+ label: z.ZodString;
145
+ }, z.core.$strip>;
146
+ team: z.ZodString;
147
+ prev: z.ZodString;
148
+ v: z.ZodLiteral<"messaging/1">;
149
+ seq: z.ZodNumber;
150
+ ts: z.ZodNumber;
151
+ by: z.ZodString;
152
+ sig: z.ZodString;
153
+ }, z.core.$strip>, z.ZodObject<{
154
+ kind: z.ZodLiteral<"member.remove">;
155
+ body: z.ZodObject<{
156
+ machine: z.ZodString;
157
+ reason: z.ZodOptional<z.ZodString>;
158
+ }, z.core.$strip>;
159
+ team: z.ZodString;
160
+ prev: z.ZodString;
161
+ v: z.ZodLiteral<"messaging/1">;
162
+ seq: z.ZodNumber;
163
+ ts: z.ZodNumber;
164
+ by: z.ZodString;
165
+ sig: z.ZodString;
166
+ }, z.core.$strip>, z.ZodObject<{
167
+ kind: z.ZodLiteral<"member.role">;
168
+ body: z.ZodObject<{
169
+ machine: z.ZodString;
170
+ role: z.ZodEnum<{
171
+ admin: "admin";
172
+ member: "member";
173
+ }>;
174
+ }, z.core.$strip>;
175
+ team: z.ZodString;
176
+ prev: z.ZodString;
177
+ v: z.ZodLiteral<"messaging/1">;
178
+ seq: z.ZodNumber;
179
+ ts: z.ZodNumber;
180
+ by: z.ZodString;
181
+ sig: z.ZodString;
182
+ }, z.core.$strip>, z.ZodObject<{
183
+ kind: z.ZodLiteral<"member.rekey">;
184
+ body: z.ZodObject<{
185
+ machine: z.ZodString;
186
+ enc: z.ZodString;
187
+ }, z.core.$strip>;
188
+ team: z.ZodString;
189
+ prev: z.ZodString;
190
+ v: z.ZodLiteral<"messaging/1">;
191
+ seq: z.ZodNumber;
192
+ ts: z.ZodNumber;
193
+ by: z.ZodString;
194
+ sig: z.ZodString;
195
+ }, z.core.$strip>, z.ZodObject<{
196
+ kind: z.ZodLiteral<"invite.create">;
197
+ body: z.ZodObject<{
198
+ inviteId: z.ZodString;
199
+ invitePub: z.ZodString;
200
+ person: z.ZodString;
201
+ expires: z.ZodNumber;
202
+ }, z.core.$strip>;
203
+ team: z.ZodString;
204
+ prev: z.ZodString;
205
+ v: z.ZodLiteral<"messaging/1">;
206
+ seq: z.ZodNumber;
207
+ ts: z.ZodNumber;
208
+ by: z.ZodString;
209
+ sig: z.ZodString;
210
+ }, z.core.$strip>, z.ZodObject<{
211
+ kind: z.ZodLiteral<"invite.redeem">;
212
+ body: z.ZodObject<{
213
+ inviteId: z.ZodString;
214
+ proof: z.ZodString;
215
+ member: z.ZodObject<{
216
+ machine: z.ZodString;
217
+ enc: z.ZodString;
218
+ person: z.ZodString;
219
+ role: z.ZodEnum<{
220
+ admin: "admin";
221
+ member: "member";
222
+ }>;
223
+ label: z.ZodString;
224
+ }, z.core.$strip>;
225
+ }, z.core.$strip>;
226
+ team: z.ZodString;
227
+ prev: z.ZodString;
228
+ v: z.ZodLiteral<"messaging/1">;
229
+ seq: z.ZodNumber;
230
+ ts: z.ZodNumber;
231
+ by: z.ZodString;
232
+ sig: z.ZodString;
233
+ }, z.core.$strip>, z.ZodObject<{
234
+ kind: z.ZodLiteral<"invite.revoke">;
235
+ body: z.ZodObject<{
236
+ inviteId: z.ZodString;
237
+ }, z.core.$strip>;
238
+ team: z.ZodString;
239
+ prev: z.ZodString;
240
+ v: z.ZodLiteral<"messaging/1">;
241
+ seq: z.ZodNumber;
242
+ ts: z.ZodNumber;
243
+ by: z.ZodString;
244
+ sig: z.ZodString;
245
+ }, z.core.$strip>], "kind">>;
246
+ more: z.ZodOptional<z.ZodBoolean>;
247
+ }, z.core.$strip>;
248
+ export declare const RosterOkFrame: z.ZodObject<{
249
+ t: z.ZodLiteral<"roster.ok">;
250
+ req: z.ZodString;
251
+ head: z.ZodObject<{
252
+ seq: z.ZodNumber;
253
+ hash: z.ZodString;
254
+ }, z.core.$strip>;
255
+ }, z.core.$strip>;
256
+ export declare const PeerFrame: z.ZodObject<{
257
+ t: z.ZodLiteral<"peer">;
258
+ machine: z.ZodString;
259
+ online: z.ZodBoolean;
260
+ }, z.core.$strip>;
261
+ export declare const ErrorFrame: z.ZodObject<{
262
+ t: z.ZodLiteral<"error">;
263
+ code: z.ZodEnum<{
264
+ expired: "expired";
265
+ invalid_request: "invalid_request";
266
+ not_member: "not_member";
267
+ bad_signature: "bad_signature";
268
+ unknown_session: "unknown_session";
269
+ ambiguous_address: "ambiguous_address";
270
+ no_recipients: "no_recipients";
271
+ unknown_address: "unknown_address";
272
+ refused: "refused";
273
+ declined: "declined";
274
+ request_required: "request_required";
275
+ rate_limited: "rate_limited";
276
+ loop_guard: "loop_guard";
277
+ too_large: "too_large";
278
+ secret_refused: "secret_refused";
279
+ duplicate: "duplicate";
280
+ relay_unavailable: "relay_unavailable";
281
+ not_found: "not_found";
282
+ invalid_state: "invalid_state";
283
+ forbidden: "forbidden";
284
+ guarded_turn: "guarded_turn";
285
+ roster_conflict: "roster_conflict";
286
+ invite_invalid: "invite_invalid";
287
+ no_identity: "no_identity";
288
+ binding_invalid: "binding_invalid";
289
+ jelly_unavailable: "jelly_unavailable";
290
+ log_conflict: "log_conflict";
291
+ conv_conflict: "conv_conflict";
292
+ stale_epoch: "stale_epoch";
293
+ device_limit: "device_limit";
294
+ admission_required: "admission_required";
295
+ admission_invalid: "admission_invalid";
296
+ directory_inconsistent: "directory_inconsistent";
297
+ unknown_device: "unknown_device";
298
+ directory_unavailable: "directory_unavailable";
299
+ login_unsupported: "login_unsupported";
300
+ login_denied: "login_denied";
301
+ grant_required: "grant_required";
302
+ grant_invalid: "grant_invalid";
303
+ ticket_required: "ticket_required";
304
+ ticket_invalid: "ticket_invalid";
305
+ daemon_unavailable: "daemon_unavailable";
306
+ daemon_mismatch: "daemon_mismatch";
307
+ store_refused: "store_refused";
308
+ internal: "internal";
309
+ }>;
310
+ message: z.ZodString;
311
+ }, z.core.$strip>;
312
+ export declare const PongFrame: z.ZodObject<{
313
+ t: z.ZodLiteral<"pong">;
314
+ }, z.core.$strip>;
315
+ export declare const RelayToClient: z.ZodDiscriminatedUnion<[z.ZodObject<{
316
+ t: z.ZodLiteral<"challenge">;
317
+ proto: z.ZodLiteral<"messaging-relay/1">;
318
+ relay: z.ZodString;
319
+ nonce: z.ZodString;
320
+ }, z.core.$strip>, z.ZodObject<{
321
+ t: z.ZodLiteral<"welcome">;
322
+ head: z.ZodObject<{
323
+ seq: z.ZodNumber;
324
+ hash: z.ZodString;
325
+ }, z.core.$strip>;
326
+ online: z.ZodArray<z.ZodString>;
327
+ }, z.core.$strip>, z.ZodObject<{
328
+ t: z.ZodLiteral<"deliver">;
329
+ env: z.ZodObject<{
330
+ v: z.ZodString;
331
+ id: z.ZodString;
332
+ type: z.ZodString;
333
+ }, z.core.$loose>;
334
+ }, z.core.$strip>, z.ZodObject<{
335
+ t: z.ZodLiteral<"ack">;
336
+ id: z.ZodString;
337
+ stage: z.ZodLiteral<"relayed">;
338
+ }, z.core.$strip>, z.ZodObject<{
339
+ t: z.ZodLiteral<"nack">;
340
+ id: z.ZodString;
341
+ code: z.ZodEnum<{
342
+ expired: "expired";
343
+ invalid_request: "invalid_request";
344
+ not_member: "not_member";
345
+ bad_signature: "bad_signature";
346
+ unknown_session: "unknown_session";
347
+ ambiguous_address: "ambiguous_address";
348
+ no_recipients: "no_recipients";
349
+ unknown_address: "unknown_address";
350
+ refused: "refused";
351
+ declined: "declined";
352
+ request_required: "request_required";
353
+ rate_limited: "rate_limited";
354
+ loop_guard: "loop_guard";
355
+ too_large: "too_large";
356
+ secret_refused: "secret_refused";
357
+ duplicate: "duplicate";
358
+ relay_unavailable: "relay_unavailable";
359
+ not_found: "not_found";
360
+ invalid_state: "invalid_state";
361
+ forbidden: "forbidden";
362
+ guarded_turn: "guarded_turn";
363
+ roster_conflict: "roster_conflict";
364
+ invite_invalid: "invite_invalid";
365
+ no_identity: "no_identity";
366
+ binding_invalid: "binding_invalid";
367
+ jelly_unavailable: "jelly_unavailable";
368
+ log_conflict: "log_conflict";
369
+ conv_conflict: "conv_conflict";
370
+ stale_epoch: "stale_epoch";
371
+ device_limit: "device_limit";
372
+ admission_required: "admission_required";
373
+ admission_invalid: "admission_invalid";
374
+ directory_inconsistent: "directory_inconsistent";
375
+ unknown_device: "unknown_device";
376
+ directory_unavailable: "directory_unavailable";
377
+ login_unsupported: "login_unsupported";
378
+ login_denied: "login_denied";
379
+ grant_required: "grant_required";
380
+ grant_invalid: "grant_invalid";
381
+ ticket_required: "ticket_required";
382
+ ticket_invalid: "ticket_invalid";
383
+ daemon_unavailable: "daemon_unavailable";
384
+ daemon_mismatch: "daemon_mismatch";
385
+ store_refused: "store_refused";
386
+ internal: "internal";
387
+ }>;
388
+ message: z.ZodString;
389
+ retryAfterMs: z.ZodOptional<z.ZodNumber>;
390
+ }, z.core.$strip>, z.ZodObject<{
391
+ t: z.ZodLiteral<"roster">;
392
+ req: z.ZodOptional<z.ZodString>;
393
+ entries: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
394
+ prev: z.ZodNull;
395
+ kind: z.ZodLiteral<"genesis">;
396
+ body: z.ZodObject<{
397
+ name: z.ZodString;
398
+ founder: z.ZodObject<{
399
+ machine: z.ZodString;
400
+ enc: z.ZodString;
401
+ person: z.ZodString;
402
+ role: z.ZodEnum<{
403
+ admin: "admin";
404
+ member: "member";
405
+ }>;
406
+ label: z.ZodString;
407
+ }, z.core.$strip>;
408
+ }, z.core.$strip>;
409
+ v: z.ZodLiteral<"messaging/1">;
410
+ seq: z.ZodNumber;
411
+ ts: z.ZodNumber;
412
+ by: z.ZodString;
413
+ sig: z.ZodString;
414
+ }, z.core.$strip>, z.ZodObject<{
415
+ kind: z.ZodLiteral<"member.add">;
416
+ body: z.ZodObject<{
417
+ machine: z.ZodString;
418
+ enc: z.ZodString;
419
+ person: z.ZodString;
420
+ role: z.ZodEnum<{
421
+ admin: "admin";
422
+ member: "member";
423
+ }>;
424
+ label: z.ZodString;
425
+ }, z.core.$strip>;
426
+ team: z.ZodString;
427
+ prev: z.ZodString;
428
+ v: z.ZodLiteral<"messaging/1">;
429
+ seq: z.ZodNumber;
430
+ ts: z.ZodNumber;
431
+ by: z.ZodString;
432
+ sig: z.ZodString;
433
+ }, z.core.$strip>, z.ZodObject<{
434
+ kind: z.ZodLiteral<"member.remove">;
435
+ body: z.ZodObject<{
436
+ machine: z.ZodString;
437
+ reason: z.ZodOptional<z.ZodString>;
438
+ }, z.core.$strip>;
439
+ team: z.ZodString;
440
+ prev: z.ZodString;
441
+ v: z.ZodLiteral<"messaging/1">;
442
+ seq: z.ZodNumber;
443
+ ts: z.ZodNumber;
444
+ by: z.ZodString;
445
+ sig: z.ZodString;
446
+ }, z.core.$strip>, z.ZodObject<{
447
+ kind: z.ZodLiteral<"member.role">;
448
+ body: z.ZodObject<{
449
+ machine: z.ZodString;
450
+ role: z.ZodEnum<{
451
+ admin: "admin";
452
+ member: "member";
453
+ }>;
454
+ }, z.core.$strip>;
455
+ team: z.ZodString;
456
+ prev: z.ZodString;
457
+ v: z.ZodLiteral<"messaging/1">;
458
+ seq: z.ZodNumber;
459
+ ts: z.ZodNumber;
460
+ by: z.ZodString;
461
+ sig: z.ZodString;
462
+ }, z.core.$strip>, z.ZodObject<{
463
+ kind: z.ZodLiteral<"member.rekey">;
464
+ body: z.ZodObject<{
465
+ machine: z.ZodString;
466
+ enc: z.ZodString;
467
+ }, z.core.$strip>;
468
+ team: z.ZodString;
469
+ prev: z.ZodString;
470
+ v: z.ZodLiteral<"messaging/1">;
471
+ seq: z.ZodNumber;
472
+ ts: z.ZodNumber;
473
+ by: z.ZodString;
474
+ sig: z.ZodString;
475
+ }, z.core.$strip>, z.ZodObject<{
476
+ kind: z.ZodLiteral<"invite.create">;
477
+ body: z.ZodObject<{
478
+ inviteId: z.ZodString;
479
+ invitePub: z.ZodString;
480
+ person: z.ZodString;
481
+ expires: z.ZodNumber;
482
+ }, z.core.$strip>;
483
+ team: z.ZodString;
484
+ prev: z.ZodString;
485
+ v: z.ZodLiteral<"messaging/1">;
486
+ seq: z.ZodNumber;
487
+ ts: z.ZodNumber;
488
+ by: z.ZodString;
489
+ sig: z.ZodString;
490
+ }, z.core.$strip>, z.ZodObject<{
491
+ kind: z.ZodLiteral<"invite.redeem">;
492
+ body: z.ZodObject<{
493
+ inviteId: z.ZodString;
494
+ proof: z.ZodString;
495
+ member: z.ZodObject<{
496
+ machine: z.ZodString;
497
+ enc: z.ZodString;
498
+ person: z.ZodString;
499
+ role: z.ZodEnum<{
500
+ admin: "admin";
501
+ member: "member";
502
+ }>;
503
+ label: z.ZodString;
504
+ }, z.core.$strip>;
505
+ }, z.core.$strip>;
506
+ team: z.ZodString;
507
+ prev: z.ZodString;
508
+ v: z.ZodLiteral<"messaging/1">;
509
+ seq: z.ZodNumber;
510
+ ts: z.ZodNumber;
511
+ by: z.ZodString;
512
+ sig: z.ZodString;
513
+ }, z.core.$strip>, z.ZodObject<{
514
+ kind: z.ZodLiteral<"invite.revoke">;
515
+ body: z.ZodObject<{
516
+ inviteId: z.ZodString;
517
+ }, z.core.$strip>;
518
+ team: z.ZodString;
519
+ prev: z.ZodString;
520
+ v: z.ZodLiteral<"messaging/1">;
521
+ seq: z.ZodNumber;
522
+ ts: z.ZodNumber;
523
+ by: z.ZodString;
524
+ sig: z.ZodString;
525
+ }, z.core.$strip>], "kind">>;
526
+ more: z.ZodOptional<z.ZodBoolean>;
527
+ }, z.core.$strip>, z.ZodObject<{
528
+ t: z.ZodLiteral<"roster.ok">;
529
+ req: z.ZodString;
530
+ head: z.ZodObject<{
531
+ seq: z.ZodNumber;
532
+ hash: z.ZodString;
533
+ }, z.core.$strip>;
534
+ }, z.core.$strip>, z.ZodObject<{
535
+ t: z.ZodLiteral<"peer">;
536
+ machine: z.ZodString;
537
+ online: z.ZodBoolean;
538
+ }, z.core.$strip>, z.ZodObject<{
539
+ t: z.ZodLiteral<"error">;
540
+ code: z.ZodEnum<{
541
+ expired: "expired";
542
+ invalid_request: "invalid_request";
543
+ not_member: "not_member";
544
+ bad_signature: "bad_signature";
545
+ unknown_session: "unknown_session";
546
+ ambiguous_address: "ambiguous_address";
547
+ no_recipients: "no_recipients";
548
+ unknown_address: "unknown_address";
549
+ refused: "refused";
550
+ declined: "declined";
551
+ request_required: "request_required";
552
+ rate_limited: "rate_limited";
553
+ loop_guard: "loop_guard";
554
+ too_large: "too_large";
555
+ secret_refused: "secret_refused";
556
+ duplicate: "duplicate";
557
+ relay_unavailable: "relay_unavailable";
558
+ not_found: "not_found";
559
+ invalid_state: "invalid_state";
560
+ forbidden: "forbidden";
561
+ guarded_turn: "guarded_turn";
562
+ roster_conflict: "roster_conflict";
563
+ invite_invalid: "invite_invalid";
564
+ no_identity: "no_identity";
565
+ binding_invalid: "binding_invalid";
566
+ jelly_unavailable: "jelly_unavailable";
567
+ log_conflict: "log_conflict";
568
+ conv_conflict: "conv_conflict";
569
+ stale_epoch: "stale_epoch";
570
+ device_limit: "device_limit";
571
+ admission_required: "admission_required";
572
+ admission_invalid: "admission_invalid";
573
+ directory_inconsistent: "directory_inconsistent";
574
+ unknown_device: "unknown_device";
575
+ directory_unavailable: "directory_unavailable";
576
+ login_unsupported: "login_unsupported";
577
+ login_denied: "login_denied";
578
+ grant_required: "grant_required";
579
+ grant_invalid: "grant_invalid";
580
+ ticket_required: "ticket_required";
581
+ ticket_invalid: "ticket_invalid";
582
+ daemon_unavailable: "daemon_unavailable";
583
+ daemon_mismatch: "daemon_mismatch";
584
+ store_refused: "store_refused";
585
+ internal: "internal";
586
+ }>;
587
+ message: z.ZodString;
588
+ }, z.core.$strip>, z.ZodObject<{
589
+ t: z.ZodLiteral<"pong">;
590
+ }, z.core.$strip>], "t">;
591
+ export type RelayToClient = z.infer<typeof RelayToClient>;
592
+ export declare const JoinFrame: z.ZodObject<{
593
+ t: z.ZodLiteral<"join">;
594
+ req: z.ZodString;
595
+ team: z.ZodString;
596
+ inviteId: z.ZodString;
597
+ proof: z.ZodString;
598
+ after: z.ZodOptional<z.ZodNumber>;
599
+ }, z.core.$strip>;
600
+ export declare const RosterAppendFrame: z.ZodObject<{
601
+ t: z.ZodLiteral<"roster.append">;
602
+ req: z.ZodString;
603
+ entry: z.ZodDiscriminatedUnion<[z.ZodObject<{
604
+ prev: z.ZodNull;
605
+ kind: z.ZodLiteral<"genesis">;
606
+ body: z.ZodObject<{
607
+ name: z.ZodString;
608
+ founder: z.ZodObject<{
609
+ machine: z.ZodString;
610
+ enc: z.ZodString;
611
+ person: z.ZodString;
612
+ role: z.ZodEnum<{
613
+ admin: "admin";
614
+ member: "member";
615
+ }>;
616
+ label: z.ZodString;
617
+ }, z.core.$strip>;
618
+ }, z.core.$strip>;
619
+ v: z.ZodLiteral<"messaging/1">;
620
+ seq: z.ZodNumber;
621
+ ts: z.ZodNumber;
622
+ by: z.ZodString;
623
+ sig: z.ZodString;
624
+ }, z.core.$strip>, z.ZodObject<{
625
+ kind: z.ZodLiteral<"member.add">;
626
+ body: z.ZodObject<{
627
+ machine: z.ZodString;
628
+ enc: z.ZodString;
629
+ person: z.ZodString;
630
+ role: z.ZodEnum<{
631
+ admin: "admin";
632
+ member: "member";
633
+ }>;
634
+ label: z.ZodString;
635
+ }, z.core.$strip>;
636
+ team: z.ZodString;
637
+ prev: z.ZodString;
638
+ v: z.ZodLiteral<"messaging/1">;
639
+ seq: z.ZodNumber;
640
+ ts: z.ZodNumber;
641
+ by: z.ZodString;
642
+ sig: z.ZodString;
643
+ }, z.core.$strip>, z.ZodObject<{
644
+ kind: z.ZodLiteral<"member.remove">;
645
+ body: z.ZodObject<{
646
+ machine: z.ZodString;
647
+ reason: z.ZodOptional<z.ZodString>;
648
+ }, z.core.$strip>;
649
+ team: z.ZodString;
650
+ prev: z.ZodString;
651
+ v: z.ZodLiteral<"messaging/1">;
652
+ seq: z.ZodNumber;
653
+ ts: z.ZodNumber;
654
+ by: z.ZodString;
655
+ sig: z.ZodString;
656
+ }, z.core.$strip>, z.ZodObject<{
657
+ kind: z.ZodLiteral<"member.role">;
658
+ body: z.ZodObject<{
659
+ machine: z.ZodString;
660
+ role: z.ZodEnum<{
661
+ admin: "admin";
662
+ member: "member";
663
+ }>;
664
+ }, z.core.$strip>;
665
+ team: z.ZodString;
666
+ prev: z.ZodString;
667
+ v: z.ZodLiteral<"messaging/1">;
668
+ seq: z.ZodNumber;
669
+ ts: z.ZodNumber;
670
+ by: z.ZodString;
671
+ sig: z.ZodString;
672
+ }, z.core.$strip>, z.ZodObject<{
673
+ kind: z.ZodLiteral<"member.rekey">;
674
+ body: z.ZodObject<{
675
+ machine: z.ZodString;
676
+ enc: z.ZodString;
677
+ }, z.core.$strip>;
678
+ team: z.ZodString;
679
+ prev: z.ZodString;
680
+ v: z.ZodLiteral<"messaging/1">;
681
+ seq: z.ZodNumber;
682
+ ts: z.ZodNumber;
683
+ by: z.ZodString;
684
+ sig: z.ZodString;
685
+ }, z.core.$strip>, z.ZodObject<{
686
+ kind: z.ZodLiteral<"invite.create">;
687
+ body: z.ZodObject<{
688
+ inviteId: z.ZodString;
689
+ invitePub: z.ZodString;
690
+ person: z.ZodString;
691
+ expires: z.ZodNumber;
692
+ }, z.core.$strip>;
693
+ team: z.ZodString;
694
+ prev: z.ZodString;
695
+ v: z.ZodLiteral<"messaging/1">;
696
+ seq: z.ZodNumber;
697
+ ts: z.ZodNumber;
698
+ by: z.ZodString;
699
+ sig: z.ZodString;
700
+ }, z.core.$strip>, z.ZodObject<{
701
+ kind: z.ZodLiteral<"invite.redeem">;
702
+ body: z.ZodObject<{
703
+ inviteId: z.ZodString;
704
+ proof: z.ZodString;
705
+ member: z.ZodObject<{
706
+ machine: z.ZodString;
707
+ enc: z.ZodString;
708
+ person: z.ZodString;
709
+ role: z.ZodEnum<{
710
+ admin: "admin";
711
+ member: "member";
712
+ }>;
713
+ label: z.ZodString;
714
+ }, z.core.$strip>;
715
+ }, z.core.$strip>;
716
+ team: z.ZodString;
717
+ prev: z.ZodString;
718
+ v: z.ZodLiteral<"messaging/1">;
719
+ seq: z.ZodNumber;
720
+ ts: z.ZodNumber;
721
+ by: z.ZodString;
722
+ sig: z.ZodString;
723
+ }, z.core.$strip>, z.ZodObject<{
724
+ kind: z.ZodLiteral<"invite.revoke">;
725
+ body: z.ZodObject<{
726
+ inviteId: z.ZodString;
727
+ }, z.core.$strip>;
728
+ team: z.ZodString;
729
+ prev: z.ZodString;
730
+ v: z.ZodLiteral<"messaging/1">;
731
+ seq: z.ZodNumber;
732
+ ts: z.ZodNumber;
733
+ by: z.ZodString;
734
+ sig: z.ZodString;
735
+ }, z.core.$strip>], "kind">;
736
+ }, z.core.$strip>;
737
+ export declare const HelloFrame: z.ZodObject<{
738
+ t: z.ZodLiteral<"hello">;
739
+ team: z.ZodString;
740
+ machine: z.ZodString;
741
+ ts: z.ZodNumber;
742
+ sig: z.ZodString;
743
+ }, z.core.$strip>;
744
+ export declare const SendFrame: z.ZodObject<{
745
+ t: z.ZodLiteral<"send">;
746
+ env: z.ZodObject<{
747
+ v: z.ZodLiteral<"messaging/1">;
748
+ id: z.ZodString;
749
+ realm: z.ZodString;
750
+ type: z.ZodEnum<{
751
+ message: "message";
752
+ "task.cancel": "task.cancel";
753
+ receipt: "receipt";
754
+ presence: "presence";
755
+ "task.status": "task.status";
756
+ "task.artifact": "task.artifact";
757
+ }>;
758
+ from: z.ZodObject<{
759
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
760
+ device: z.ZodString;
761
+ agent: z.ZodOptional<z.ZodString>;
762
+ }, z.core.$strip>;
763
+ to: z.ZodUnion<readonly [z.ZodObject<{
764
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
765
+ device: z.ZodString;
766
+ agent: z.ZodOptional<z.ZodString>;
767
+ }, z.core.$strip>, z.ZodObject<{
768
+ team: z.ZodLiteral<true>;
769
+ }, z.core.$strip>]>;
770
+ ts: z.ZodNumber;
771
+ exp: z.ZodNumber;
772
+ anchor: z.ZodDiscriminatedUnion<[z.ZodObject<{
773
+ kind: z.ZodLiteral<"roster">;
774
+ seq: z.ZodNumber;
775
+ hash: z.ZodString;
776
+ }, z.core.$strip>, z.ZodObject<{
777
+ kind: z.ZodLiteral<"epoch">;
778
+ size: z.ZodNumber;
779
+ root: z.ZodString;
780
+ }, z.core.$strip>], "kind">;
781
+ class: z.ZodOptional<z.ZodEnum<{
782
+ self: "self";
783
+ request: "request";
784
+ contact: "contact";
785
+ }>>;
786
+ replyTo: z.ZodOptional<z.ZodString>;
787
+ enc: z.ZodEnum<{
788
+ none: "none";
789
+ "x25519-hkdf-sha256-a256gcm": "x25519-hkdf-sha256-a256gcm";
790
+ }>;
791
+ epk: z.ZodOptional<z.ZodString>;
792
+ nonce: z.ZodOptional<z.ZodString>;
793
+ body: z.ZodUnknown;
794
+ sig: z.ZodString;
795
+ }, z.core.$strip>;
796
+ }, z.core.$strip>;
797
+ export declare const RecvAckFrame: z.ZodObject<{
798
+ t: z.ZodLiteral<"recv.ack">;
799
+ id: z.ZodString;
800
+ }, z.core.$strip>;
801
+ export declare const PresenceFrame: z.ZodObject<{
802
+ t: z.ZodLiteral<"presence">;
803
+ env: z.ZodObject<{
804
+ v: z.ZodLiteral<"messaging/1">;
805
+ id: z.ZodString;
806
+ realm: z.ZodString;
807
+ type: z.ZodEnum<{
808
+ message: "message";
809
+ "task.cancel": "task.cancel";
810
+ receipt: "receipt";
811
+ presence: "presence";
812
+ "task.status": "task.status";
813
+ "task.artifact": "task.artifact";
814
+ }>;
815
+ from: z.ZodObject<{
816
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
817
+ device: z.ZodString;
818
+ agent: z.ZodOptional<z.ZodString>;
819
+ }, z.core.$strip>;
820
+ to: z.ZodUnion<readonly [z.ZodObject<{
821
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
822
+ device: z.ZodString;
823
+ agent: z.ZodOptional<z.ZodString>;
824
+ }, z.core.$strip>, z.ZodObject<{
825
+ team: z.ZodLiteral<true>;
826
+ }, z.core.$strip>]>;
827
+ ts: z.ZodNumber;
828
+ exp: z.ZodNumber;
829
+ anchor: z.ZodDiscriminatedUnion<[z.ZodObject<{
830
+ kind: z.ZodLiteral<"roster">;
831
+ seq: z.ZodNumber;
832
+ hash: z.ZodString;
833
+ }, z.core.$strip>, z.ZodObject<{
834
+ kind: z.ZodLiteral<"epoch">;
835
+ size: z.ZodNumber;
836
+ root: z.ZodString;
837
+ }, z.core.$strip>], "kind">;
838
+ class: z.ZodOptional<z.ZodEnum<{
839
+ self: "self";
840
+ request: "request";
841
+ contact: "contact";
842
+ }>>;
843
+ replyTo: z.ZodOptional<z.ZodString>;
844
+ enc: z.ZodEnum<{
845
+ none: "none";
846
+ "x25519-hkdf-sha256-a256gcm": "x25519-hkdf-sha256-a256gcm";
847
+ }>;
848
+ epk: z.ZodOptional<z.ZodString>;
849
+ nonce: z.ZodOptional<z.ZodString>;
850
+ body: z.ZodUnknown;
851
+ sig: z.ZodString;
852
+ }, z.core.$strip>;
853
+ }, z.core.$strip>;
854
+ export declare const RosterSyncFrame: z.ZodObject<{
855
+ t: z.ZodLiteral<"roster.sync">;
856
+ req: z.ZodString;
857
+ after: z.ZodNumber;
858
+ }, z.core.$strip>;
859
+ export declare const PingFrame: z.ZodObject<{
860
+ t: z.ZodLiteral<"ping">;
861
+ }, z.core.$strip>;
862
+ export declare const ClientToRelay: z.ZodDiscriminatedUnion<[z.ZodObject<{
863
+ t: z.ZodLiteral<"join">;
864
+ req: z.ZodString;
865
+ team: z.ZodString;
866
+ inviteId: z.ZodString;
867
+ proof: z.ZodString;
868
+ after: z.ZodOptional<z.ZodNumber>;
869
+ }, z.core.$strip>, z.ZodObject<{
870
+ t: z.ZodLiteral<"roster.append">;
871
+ req: z.ZodString;
872
+ entry: z.ZodDiscriminatedUnion<[z.ZodObject<{
873
+ prev: z.ZodNull;
874
+ kind: z.ZodLiteral<"genesis">;
875
+ body: z.ZodObject<{
876
+ name: z.ZodString;
877
+ founder: z.ZodObject<{
878
+ machine: z.ZodString;
879
+ enc: z.ZodString;
880
+ person: z.ZodString;
881
+ role: z.ZodEnum<{
882
+ admin: "admin";
883
+ member: "member";
884
+ }>;
885
+ label: z.ZodString;
886
+ }, z.core.$strip>;
887
+ }, z.core.$strip>;
888
+ v: z.ZodLiteral<"messaging/1">;
889
+ seq: z.ZodNumber;
890
+ ts: z.ZodNumber;
891
+ by: z.ZodString;
892
+ sig: z.ZodString;
893
+ }, z.core.$strip>, z.ZodObject<{
894
+ kind: z.ZodLiteral<"member.add">;
895
+ body: z.ZodObject<{
896
+ machine: z.ZodString;
897
+ enc: z.ZodString;
898
+ person: z.ZodString;
899
+ role: z.ZodEnum<{
900
+ admin: "admin";
901
+ member: "member";
902
+ }>;
903
+ label: z.ZodString;
904
+ }, z.core.$strip>;
905
+ team: z.ZodString;
906
+ prev: z.ZodString;
907
+ v: z.ZodLiteral<"messaging/1">;
908
+ seq: z.ZodNumber;
909
+ ts: z.ZodNumber;
910
+ by: z.ZodString;
911
+ sig: z.ZodString;
912
+ }, z.core.$strip>, z.ZodObject<{
913
+ kind: z.ZodLiteral<"member.remove">;
914
+ body: z.ZodObject<{
915
+ machine: z.ZodString;
916
+ reason: z.ZodOptional<z.ZodString>;
917
+ }, z.core.$strip>;
918
+ team: z.ZodString;
919
+ prev: z.ZodString;
920
+ v: z.ZodLiteral<"messaging/1">;
921
+ seq: z.ZodNumber;
922
+ ts: z.ZodNumber;
923
+ by: z.ZodString;
924
+ sig: z.ZodString;
925
+ }, z.core.$strip>, z.ZodObject<{
926
+ kind: z.ZodLiteral<"member.role">;
927
+ body: z.ZodObject<{
928
+ machine: z.ZodString;
929
+ role: z.ZodEnum<{
930
+ admin: "admin";
931
+ member: "member";
932
+ }>;
933
+ }, z.core.$strip>;
934
+ team: z.ZodString;
935
+ prev: z.ZodString;
936
+ v: z.ZodLiteral<"messaging/1">;
937
+ seq: z.ZodNumber;
938
+ ts: z.ZodNumber;
939
+ by: z.ZodString;
940
+ sig: z.ZodString;
941
+ }, z.core.$strip>, z.ZodObject<{
942
+ kind: z.ZodLiteral<"member.rekey">;
943
+ body: z.ZodObject<{
944
+ machine: z.ZodString;
945
+ enc: z.ZodString;
946
+ }, z.core.$strip>;
947
+ team: z.ZodString;
948
+ prev: z.ZodString;
949
+ v: z.ZodLiteral<"messaging/1">;
950
+ seq: z.ZodNumber;
951
+ ts: z.ZodNumber;
952
+ by: z.ZodString;
953
+ sig: z.ZodString;
954
+ }, z.core.$strip>, z.ZodObject<{
955
+ kind: z.ZodLiteral<"invite.create">;
956
+ body: z.ZodObject<{
957
+ inviteId: z.ZodString;
958
+ invitePub: z.ZodString;
959
+ person: z.ZodString;
960
+ expires: z.ZodNumber;
961
+ }, z.core.$strip>;
962
+ team: z.ZodString;
963
+ prev: z.ZodString;
964
+ v: z.ZodLiteral<"messaging/1">;
965
+ seq: z.ZodNumber;
966
+ ts: z.ZodNumber;
967
+ by: z.ZodString;
968
+ sig: z.ZodString;
969
+ }, z.core.$strip>, z.ZodObject<{
970
+ kind: z.ZodLiteral<"invite.redeem">;
971
+ body: z.ZodObject<{
972
+ inviteId: z.ZodString;
973
+ proof: z.ZodString;
974
+ member: z.ZodObject<{
975
+ machine: z.ZodString;
976
+ enc: z.ZodString;
977
+ person: z.ZodString;
978
+ role: z.ZodEnum<{
979
+ admin: "admin";
980
+ member: "member";
981
+ }>;
982
+ label: z.ZodString;
983
+ }, z.core.$strip>;
984
+ }, z.core.$strip>;
985
+ team: z.ZodString;
986
+ prev: z.ZodString;
987
+ v: z.ZodLiteral<"messaging/1">;
988
+ seq: z.ZodNumber;
989
+ ts: z.ZodNumber;
990
+ by: z.ZodString;
991
+ sig: z.ZodString;
992
+ }, z.core.$strip>, z.ZodObject<{
993
+ kind: z.ZodLiteral<"invite.revoke">;
994
+ body: z.ZodObject<{
995
+ inviteId: z.ZodString;
996
+ }, z.core.$strip>;
997
+ team: z.ZodString;
998
+ prev: z.ZodString;
999
+ v: z.ZodLiteral<"messaging/1">;
1000
+ seq: z.ZodNumber;
1001
+ ts: z.ZodNumber;
1002
+ by: z.ZodString;
1003
+ sig: z.ZodString;
1004
+ }, z.core.$strip>], "kind">;
1005
+ }, z.core.$strip>, z.ZodObject<{
1006
+ t: z.ZodLiteral<"hello">;
1007
+ team: z.ZodString;
1008
+ machine: z.ZodString;
1009
+ ts: z.ZodNumber;
1010
+ sig: z.ZodString;
1011
+ }, z.core.$strip>, z.ZodObject<{
1012
+ t: z.ZodLiteral<"send">;
1013
+ env: z.ZodObject<{
1014
+ v: z.ZodLiteral<"messaging/1">;
1015
+ id: z.ZodString;
1016
+ realm: z.ZodString;
1017
+ type: z.ZodEnum<{
1018
+ message: "message";
1019
+ "task.cancel": "task.cancel";
1020
+ receipt: "receipt";
1021
+ presence: "presence";
1022
+ "task.status": "task.status";
1023
+ "task.artifact": "task.artifact";
1024
+ }>;
1025
+ from: z.ZodObject<{
1026
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
1027
+ device: z.ZodString;
1028
+ agent: z.ZodOptional<z.ZodString>;
1029
+ }, z.core.$strip>;
1030
+ to: z.ZodUnion<readonly [z.ZodObject<{
1031
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
1032
+ device: z.ZodString;
1033
+ agent: z.ZodOptional<z.ZodString>;
1034
+ }, z.core.$strip>, z.ZodObject<{
1035
+ team: z.ZodLiteral<true>;
1036
+ }, z.core.$strip>]>;
1037
+ ts: z.ZodNumber;
1038
+ exp: z.ZodNumber;
1039
+ anchor: z.ZodDiscriminatedUnion<[z.ZodObject<{
1040
+ kind: z.ZodLiteral<"roster">;
1041
+ seq: z.ZodNumber;
1042
+ hash: z.ZodString;
1043
+ }, z.core.$strip>, z.ZodObject<{
1044
+ kind: z.ZodLiteral<"epoch">;
1045
+ size: z.ZodNumber;
1046
+ root: z.ZodString;
1047
+ }, z.core.$strip>], "kind">;
1048
+ class: z.ZodOptional<z.ZodEnum<{
1049
+ self: "self";
1050
+ request: "request";
1051
+ contact: "contact";
1052
+ }>>;
1053
+ replyTo: z.ZodOptional<z.ZodString>;
1054
+ enc: z.ZodEnum<{
1055
+ none: "none";
1056
+ "x25519-hkdf-sha256-a256gcm": "x25519-hkdf-sha256-a256gcm";
1057
+ }>;
1058
+ epk: z.ZodOptional<z.ZodString>;
1059
+ nonce: z.ZodOptional<z.ZodString>;
1060
+ body: z.ZodUnknown;
1061
+ sig: z.ZodString;
1062
+ }, z.core.$strip>;
1063
+ }, z.core.$strip>, z.ZodObject<{
1064
+ t: z.ZodLiteral<"recv.ack">;
1065
+ id: z.ZodString;
1066
+ }, z.core.$strip>, z.ZodObject<{
1067
+ t: z.ZodLiteral<"presence">;
1068
+ env: z.ZodObject<{
1069
+ v: z.ZodLiteral<"messaging/1">;
1070
+ id: z.ZodString;
1071
+ realm: z.ZodString;
1072
+ type: z.ZodEnum<{
1073
+ message: "message";
1074
+ "task.cancel": "task.cancel";
1075
+ receipt: "receipt";
1076
+ presence: "presence";
1077
+ "task.status": "task.status";
1078
+ "task.artifact": "task.artifact";
1079
+ }>;
1080
+ from: z.ZodObject<{
1081
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
1082
+ device: z.ZodString;
1083
+ agent: z.ZodOptional<z.ZodString>;
1084
+ }, z.core.$strip>;
1085
+ to: z.ZodUnion<readonly [z.ZodObject<{
1086
+ person: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
1087
+ device: z.ZodString;
1088
+ agent: z.ZodOptional<z.ZodString>;
1089
+ }, z.core.$strip>, z.ZodObject<{
1090
+ team: z.ZodLiteral<true>;
1091
+ }, z.core.$strip>]>;
1092
+ ts: z.ZodNumber;
1093
+ exp: z.ZodNumber;
1094
+ anchor: z.ZodDiscriminatedUnion<[z.ZodObject<{
1095
+ kind: z.ZodLiteral<"roster">;
1096
+ seq: z.ZodNumber;
1097
+ hash: z.ZodString;
1098
+ }, z.core.$strip>, z.ZodObject<{
1099
+ kind: z.ZodLiteral<"epoch">;
1100
+ size: z.ZodNumber;
1101
+ root: z.ZodString;
1102
+ }, z.core.$strip>], "kind">;
1103
+ class: z.ZodOptional<z.ZodEnum<{
1104
+ self: "self";
1105
+ request: "request";
1106
+ contact: "contact";
1107
+ }>>;
1108
+ replyTo: z.ZodOptional<z.ZodString>;
1109
+ enc: z.ZodEnum<{
1110
+ none: "none";
1111
+ "x25519-hkdf-sha256-a256gcm": "x25519-hkdf-sha256-a256gcm";
1112
+ }>;
1113
+ epk: z.ZodOptional<z.ZodString>;
1114
+ nonce: z.ZodOptional<z.ZodString>;
1115
+ body: z.ZodUnknown;
1116
+ sig: z.ZodString;
1117
+ }, z.core.$strip>;
1118
+ }, z.core.$strip>, z.ZodObject<{
1119
+ t: z.ZodLiteral<"roster.sync">;
1120
+ req: z.ZodString;
1121
+ after: z.ZodNumber;
1122
+ }, z.core.$strip>, z.ZodObject<{
1123
+ t: z.ZodLiteral<"ping">;
1124
+ }, z.core.$strip>], "t">;
1125
+ export type ClientToRelay = z.infer<typeof ClientToRelay>;
1126
+ /** WebSocket close codes used by the relay. */
1127
+ export declare const RELAY_CLOSE: {
1128
+ readonly authFailed: 4001;
1129
+ readonly protocolError: 4002;
1130
+ readonly removed: 4003;
1131
+ readonly replaced: 4004;
1132
+ readonly full: 1013;
1133
+ readonly tooLarge: 1009;
1134
+ };