@joe-broadhead/messaging 0.0.0-stage → 0.7.0

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