wire-mesh-core 1.18.0 → 1.19.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 (55) hide show
  1. package/dist/adapters/frame-codec.d.cts +1 -1
  2. package/dist/adapters/frame-codec.d.mts +1 -1
  3. package/dist/adapters/node-identity.d.cts +2 -2
  4. package/dist/adapters/node-identity.d.mts +2 -2
  5. package/dist/adapters/tcp-transport.d.cts +1 -1
  6. package/dist/adapters/tcp-transport.d.mts +1 -1
  7. package/dist/adapters/tls-transport.d.cts +1 -1
  8. package/dist/adapters/tls-transport.d.mts +1 -1
  9. package/dist/domain/capability-grant.cjs +3 -3
  10. package/dist/domain/capability-grant.d.cts +3 -3
  11. package/dist/domain/capability-grant.d.mts +3 -3
  12. package/dist/domain/capability-grant.mjs +1 -1
  13. package/dist/domain/capability-request.cjs +2 -2
  14. package/dist/domain/capability-request.d.cts +2 -2
  15. package/dist/domain/capability-request.d.mts +2 -2
  16. package/dist/domain/capability-request.mjs +1 -1
  17. package/dist/domain/device-id.d.cts +1 -1
  18. package/dist/domain/device-id.d.mts +1 -1
  19. package/dist/domain/handshake.d.cts +1 -1
  20. package/dist/domain/handshake.d.mts +1 -1
  21. package/dist/domain/mesh-session.d.cts +3 -3
  22. package/dist/domain/mesh-session.d.mts +3 -3
  23. package/dist/domain/relay-hub.d.cts +1 -1
  24. package/dist/domain/relay-hub.d.mts +1 -1
  25. package/dist/domain/revocation-view.cjs +2 -2
  26. package/dist/domain/revocation-view.d.cts +2 -2
  27. package/dist/domain/revocation-view.d.mts +2 -2
  28. package/dist/domain/revocation-view.mjs +1 -1
  29. package/dist/domain/room-token-verification.cjs +2 -2
  30. package/dist/domain/room-token-verification.d.cts +2 -2
  31. package/dist/domain/room-token-verification.d.mts +2 -2
  32. package/dist/domain/room-token-verification.mjs +1 -1
  33. package/dist/domain/tokens.cjs +6 -315
  34. package/dist/domain/tokens.d.cts +2 -104
  35. package/dist/domain/tokens.d.mts +2 -104
  36. package/dist/domain/tokens.mjs +2 -310
  37. package/dist/generated/protocol.cjs +2 -1
  38. package/dist/generated/protocol.d.cts +1 -1
  39. package/dist/generated/protocol.d.mts +1 -1
  40. package/dist/generated/protocol.mjs +2 -1
  41. package/dist/{identity-B1hBV3YA.d.mts → identity-B7YMBhMf.d.mts} +1 -1
  42. package/dist/{identity-BldV8xFj.d.cts → identity-COdFfaW8.d.cts} +1 -1
  43. package/dist/ports/identity.d.cts +1 -1
  44. package/dist/ports/identity.d.mts +1 -1
  45. package/dist/ports/transport.d.cts +1 -1
  46. package/dist/ports/transport.d.mts +1 -1
  47. package/dist/{protocol-Dhswk7YD.d.cts → protocol-B3U828E7.d.cts} +1 -0
  48. package/dist/{protocol-Dhswk7YD.d.mts → protocol-B3U828E7.d.mts} +1 -0
  49. package/dist/tokens-BxTxBmXt.cjs +499 -0
  50. package/dist/tokens-D2aFwPcZ.d.cts +122 -0
  51. package/dist/tokens-D9I1Pn14.mjs +464 -0
  52. package/dist/tokens-DSwixfDl.d.mts +122 -0
  53. package/dist/{transport-BNNdUBq-.d.mts → transport-B_diuPHT.d.mts} +1 -1
  54. package/dist/{transport-hEUxrdhT.d.cts → transport-BrAqN6I5.d.cts} +1 -1
  55. package/package.json +2 -1
@@ -1,310 +1,2 @@
1
- import { capabilityTokenSchema, revocationClaimsSchema, tokenClaimsSchema } from "../generated/protocol.mjs";
2
- import { cdeDecodeOptions, cdeEncodeOptions, decode, encode } from "cbor2";
3
- //#region src/domain/tokens.ts
4
- function bytesEqual(a, b) {
5
- if (a.length !== b.length) return false;
6
- for (let i = 0; i < a.length; i += 1) if (a[i] !== b[i]) return false;
7
- return true;
8
- }
9
- /** True when the path contains a "." or ".." segment. Purely lexical prefix comparison would let "/work/../org" pass under "/work" -- a path that normalises outside the parent -- so any relative segment fails the narrowing comparison wholesale: fail-closed rather than reimplementing path normalisation, consistent with how empty, case-different, and non-boundary-prefixed paths already behave. */
10
- function hasRelativeSegment(path) {
11
- return path.split("/").some((segment) => segment === "." || segment === "..");
12
- }
13
- /** True when childPath is parentPath or a descendant of it, compared on "/"-segment boundaries: "/work/sub" narrows "/work", but "/workbook" does NOT narrow "/work" despite the string prefix, because "book" continues the same segment. Paths containing "." or ".." segments never narrow anything (see hasRelativeSegment). */
14
- function pathNarrows(childPath, parentPath) {
15
- if (hasRelativeSegment(childPath) || hasRelativeSegment(parentPath)) return false;
16
- if (childPath === parentPath) return true;
17
- if (!childPath.startsWith(parentPath)) return false;
18
- if (parentPath.endsWith("/")) return true;
19
- return childPath.charAt(parentPath.length) === "/";
20
- }
21
- /**
22
- * True when childScope narrows parentScope per tokens.cddl ("each hop can only narrow authority, never widen it"): the kind must be identical (a different kind is a different kind of authority, not a narrower one), and a parent with a path requires the child to carry an equal-or-descendant path -- an absent child path means the kind's whole-scope root, which is wider than any path-narrowed parent. A parent with no path (whole-scope root) lets any child path under the same kind through. Exported for capability-grant.ts's own obligation 4 (an unsolicited push's embedded token must equal-or-root the enclosing request's own scope), which is exactly this same narrowing relation applied outside a delegation chain.
23
- */
24
- function scopeNarrows(parent, child) {
25
- if (parent.kind !== child.kind) return false;
26
- if (parent.path === void 0) return true;
27
- if (child.path === void 0) return false;
28
- return pathNarrows(child.path, parent.path);
29
- }
30
- /** RFC 9052 §4.4 Sig_structure for a COSE_Sign1 with no external AAD: ["Signature1", protected, external_aad, payload]. */
31
- function sig1ToBeSigned(protectedHeader, payload) {
32
- return encode([
33
- "Signature1",
34
- protectedHeader,
35
- /* @__PURE__ */ new Uint8Array(0),
36
- payload
37
- ], cdeEncodeOptions);
38
- }
39
- /** Normalises cbor2's encode() (and any other Uint8Array<ArrayBufferLike>-typed construction) to a fresh, non-shared, whole-buffer Uint8Array<ArrayBuffer> -- what the generated schemas' concrete-typed fields require. */
40
- function buf(bytes) {
41
- return Uint8Array.from(bytes);
42
- }
43
- function encodeBuf(value) {
44
- return buf(encode(value, cdeEncodeOptions));
45
- }
46
- /** The COSE protected header every capability-token/revocation-entry envelope in this codebase actually signs over: label 1 (alg) and label 4 (kid, the issuer's own device-id) -- matching the frozen conformance vectors, not the empty header a token merely needs to verify against itself. */
47
- function protectedHeaderFor(identity) {
48
- return encodeBuf({
49
- 1: identity.identityKey.alg,
50
- 4: identity.deviceId
51
- });
52
- }
53
- /** Decodes and validates a parent token's own claims from its raw CapabilityToken tuple -- the same decode `verifyTokenChain` performs on `claims.parent`, extracted here so mint can check narrowing against a parent's real claims without duplicating the CBOR/schema plumbing. Returns undefined for anything that doesn't parse; the caller turns that into its own refusal reason since "malformed" means something different at mint time than at verify time. */
54
- function decodeTokenClaims(token) {
55
- const [, , payload] = token;
56
- if (payload === null) return void 0;
57
- let decoded;
58
- try {
59
- decoded = decode(payload, cdeDecodeOptions);
60
- } catch {
61
- return;
62
- }
63
- const result = tokenClaimsSchema.safeParse(decoded);
64
- return result.success ? result.data : void 0;
65
- }
66
- /**
67
- * Verifies one capability token per tokens.cddl's own documented rules: the token is a well-formed COSE_Sign1 whose signature actually verifies against its own embedded issuer-key, that issuer-key is self-certifying (sha256(issuer-key.public-key) equals the claimed issuer device-id -- no shared secret needed to check this), the token is currently valid (not expired, not before not-before, not revoked by its own issuer), and -- recursively -- any parent delegation narrows rather than widens across all three axes of authority: the parent's bearer must be this token's issuer (the delegation chain is unbroken), this token's expiry must not exceed its parent's, and this token's scope must narrow its parent's (same kind; equal-or-descendant path when the parent carries one) with an identical capability verb (the capability-verb grammar has no sub-verb relation, so a different verb is a different authority, not a narrower one). Undecodable payload bytes return "malformed" and undecodable parent bytes return "parent_invalid" -- hostile input produces a verdict, never a throw.
68
- */
69
- async function verifyCapabilityToken(token, options) {
70
- const verdict = await verifyTokenChain(token, {
71
- identity: options.identity,
72
- clock: options.clock,
73
- revocation: options.revocation
74
- });
75
- if (!verdict.ok) return verdict;
76
- if (options.expectedBearer !== void 0 && !bytesEqual(verdict.claims.bearer, options.expectedBearer)) return {
77
- ok: false,
78
- reason: "bearer_mismatch"
79
- };
80
- return verdict;
81
- }
82
- async function verifyTokenChain(token, options) {
83
- const [protectedHeader, , payload, signature] = token;
84
- if (payload === null) return {
85
- ok: false,
86
- reason: "malformed"
87
- };
88
- let decodedClaims;
89
- try {
90
- decodedClaims = decode(payload, cdeDecodeOptions);
91
- } catch {
92
- return {
93
- ok: false,
94
- reason: "malformed"
95
- };
96
- }
97
- const claimsResult = tokenClaimsSchema.safeParse(decodedClaims);
98
- if (!claimsResult.success) return {
99
- ok: false,
100
- reason: "malformed"
101
- };
102
- const claims = claimsResult.data;
103
- if (!await options.identity.verify(claims["issuer-key"], sig1ToBeSigned(protectedHeader, payload), signature)) return {
104
- ok: false,
105
- reason: "bad_signature"
106
- };
107
- if (!bytesEqual(await options.identity.deriveDeviceId(claims["issuer-key"]["public-key"]), claims.issuer)) return {
108
- ok: false,
109
- reason: "wrong_issuer"
110
- };
111
- const now = options.clock.now();
112
- if (claims.expires <= now) return {
113
- ok: false,
114
- reason: "expired"
115
- };
116
- if (claims["not-before"] !== void 0 && claims["not-before"] > now) return {
117
- ok: false,
118
- reason: "not_yet_valid"
119
- };
120
- const validUntil = claims["valid-until"];
121
- if (validUntil !== void 0 && validUntil <= now) return {
122
- ok: false,
123
- reason: "content_expired"
124
- };
125
- if (await options.revocation.isRevoked(claims["token-id"], claims.issuer)) return {
126
- ok: false,
127
- reason: "revoked"
128
- };
129
- if (claims.parent !== void 0) {
130
- let decodedParent;
131
- try {
132
- decodedParent = decode(claims.parent, cdeDecodeOptions);
133
- } catch {
134
- return {
135
- ok: false,
136
- reason: "parent_invalid"
137
- };
138
- }
139
- const parentResult = capabilityTokenSchema.safeParse(decodedParent);
140
- if (!parentResult.success) return {
141
- ok: false,
142
- reason: "parent_invalid"
143
- };
144
- const parentVerdict = await verifyTokenChain(parentResult.data, options);
145
- if (!parentVerdict.ok) return {
146
- ok: false,
147
- reason: "parent_invalid"
148
- };
149
- if (!bytesEqual(parentVerdict.claims.bearer, claims.issuer)) return {
150
- ok: false,
151
- reason: "delegation_exceeds_parent"
152
- };
153
- if (claims.expires > parentVerdict.claims.expires) return {
154
- ok: false,
155
- reason: "delegation_exceeds_parent"
156
- };
157
- if (!scopeNarrows(parentVerdict.claims.scope, claims.scope)) return {
158
- ok: false,
159
- reason: "delegation_exceeds_parent"
160
- };
161
- if (parentVerdict.claims.capability !== claims.capability) return {
162
- ok: false,
163
- reason: "delegation_exceeds_parent"
164
- };
165
- const parentRemaining = parentVerdict.claims["delegations-remaining"];
166
- if (parentRemaining !== void 0 && (claims["delegations-remaining"] === void 0 || claims["delegations-remaining"] >= parentRemaining)) return {
167
- ok: false,
168
- reason: "delegation_exceeds_parent"
169
- };
170
- return {
171
- ok: true,
172
- claims,
173
- rootIssuer: parentVerdict.rootIssuer,
174
- depth: parentVerdict.depth + 1
175
- };
176
- }
177
- return {
178
- ok: true,
179
- claims,
180
- rootIssuer: claims.issuer,
181
- depth: 0
182
- };
183
- }
184
- /**
185
- * Verifies one gossiped revocation-entry (management.cddl): a well-formed COSE_Sign1 whose signature verifies against its own embedded issuer-key, where that issuer-key is self-certifying (sha256(issuer-key.public-key) equals the claimed issuer device-id). A verifier that ingests a revocation-announce frame runs each entry through this before recording it in its revocation view; entries failing here are dropped, not stored. The issuer-match against a specific token's own issuer (only a token's own issuer may revoke it) is deliberately NOT checked here -- it happens at lookup time in RevocationCheck, against whichever token is being verified.
186
- */
187
- async function verifyRevocationEntry(entry, options) {
188
- const [protectedHeader, , payload, signature] = entry;
189
- if (payload === null) return {
190
- ok: false,
191
- reason: "malformed"
192
- };
193
- let decodedClaims;
194
- try {
195
- decodedClaims = decode(payload, cdeDecodeOptions);
196
- } catch {
197
- return {
198
- ok: false,
199
- reason: "malformed"
200
- };
201
- }
202
- const claimsResult = revocationClaimsSchema.safeParse(decodedClaims);
203
- if (!claimsResult.success) return {
204
- ok: false,
205
- reason: "malformed"
206
- };
207
- const claims = claimsResult.data;
208
- if (!await options.identity.verify(claims["issuer-key"], sig1ToBeSigned(protectedHeader, payload), signature)) return {
209
- ok: false,
210
- reason: "bad_signature"
211
- };
212
- if (!bytesEqual(await options.identity.deriveDeviceId(claims["issuer-key"]["public-key"]), claims.issuer)) return {
213
- ok: false,
214
- reason: "wrong_issuer"
215
- };
216
- return {
217
- ok: true,
218
- claims
219
- };
220
- }
221
- /** The narrowing arithmetic tokens.cddl's own delegation obligations require (bearer match, expiry within the parent's, scope narrows, same capability, delegations-remaining strictly less than the parent's) -- shared between mintCapabilityToken (which additionally builds and signs the resulting token) and canGrant (a pure query with no minting side effect at all), so the two can never silently drift into two different ideas of what "narrows" means. Returns the specific refusal reason, or undefined when every rule is satisfied. */
222
- function checkNarrowing(parentClaims, granterDeviceId, candidate) {
223
- if (!bytesEqual(parentClaims.bearer, granterDeviceId)) return "parent_bearer_mismatch";
224
- if (candidate.expires > parentClaims.expires) return "expires_exceeds_parent";
225
- if (!scopeNarrows(parentClaims.scope, candidate.scope)) return "scope_does_not_narrow";
226
- if (parentClaims.capability !== candidate.capability) return "capability_mismatch";
227
- const parentRemaining = parentClaims["delegations-remaining"];
228
- if (parentRemaining !== void 0 && (candidate.delegationsRemaining === void 0 || candidate.delegationsRemaining >= parentRemaining)) return "delegation_exceeds_parent";
229
- }
230
- /**
231
- * A pure query: could deviceId, presenting heldToken as its own delegation authority, successfully mint a delegation matching candidate right now -- without attempting (and potentially failing) a real mint just to find out. Reuses mintCapabilityToken's own narrowing arithmetic via checkNarrowing, so the two can never silently drift into different ideas of what "narrows" means.
232
- *
233
- * Deliberately narrower than a full mint attempt in one respect: this checks only the narrowing rules tokens.cddl's own delegation obligations require (bearer match, expiry, scope, capability, delegations-remaining), the same scope mintCapabilityToken itself checks a *parent* against -- it does not verify heldToken's own signature or revocation status, exactly as mintCapabilityToken never re-verifies its own parent's signature either. A caller that also needs heldToken's cryptographic validity confirmed calls verifyCapabilityToken separately.
234
- */
235
- function canGrant(heldToken, deviceId, candidate, now) {
236
- if (candidate.expires <= now) return false;
237
- const heldClaims = decodeTokenClaims(heldToken);
238
- if (heldClaims === void 0) return false;
239
- return checkNarrowing(heldClaims, deviceId, candidate) === void 0;
240
- }
241
- /**
242
- * Mints one capability token: builds token-claims from the given fields, signs it as a COSE_Sign1 under `identity`'s own key, with a protected header matching what the frozen conformance vectors actually encode (`{1: alg, 4: issuer device-id}`, not the empty header a token merely needs to verify against itself).
243
- *
244
- * When `parent` is given, every one of `tokens.cddl`'s own narrowing obligations is enforced here, at issuance, rather than left for the far end to discover minutes or hours later as a bare `delegation_exceeds_parent` from `verifyCapabilityToken` -- the same "fail loudly, fail early" reasoning that governs every other boundary in this codebase. An issuer minting an invalid delegation is a bug in the caller; this function refuses rather than producing a token indistinguishable from a valid one until someone else verifies it.
245
- */
246
- async function mintCapabilityToken(options) {
247
- if (options.expires <= options.clock.now()) return {
248
- ok: false,
249
- reason: "already_expired"
250
- };
251
- let parentBytes;
252
- if (options.parent !== void 0) {
253
- const parentClaims = decodeTokenClaims(options.parent);
254
- if (parentClaims === void 0) return {
255
- ok: false,
256
- reason: "parent_malformed"
257
- };
258
- const refusal = checkNarrowing(parentClaims, options.identity.deviceId, {
259
- capability: options.capability,
260
- scope: options.scope,
261
- expires: options.expires,
262
- ...options.delegationsRemaining !== void 0 ? { delegationsRemaining: options.delegationsRemaining } : {}
263
- });
264
- if (refusal !== void 0) return {
265
- ok: false,
266
- reason: refusal
267
- };
268
- parentBytes = encodeBuf(options.parent);
269
- }
270
- const payload = encodeBuf({
271
- "token-id": options.tokenId,
272
- issuer: options.identity.deviceId,
273
- "issuer-key": options.identity.identityKey,
274
- bearer: options.bearer,
275
- capability: options.capability,
276
- scope: options.scope,
277
- expires: options.expires,
278
- ...options.notBefore !== void 0 ? { "not-before": options.notBefore } : {},
279
- ...parentBytes !== void 0 ? { parent: parentBytes } : {},
280
- ...options.delegationsRemaining !== void 0 ? { "delegations-remaining": options.delegationsRemaining } : {}
281
- });
282
- const protectedHeader = protectedHeaderFor(options.identity);
283
- return {
284
- ok: true,
285
- token: [
286
- protectedHeader,
287
- {},
288
- payload,
289
- await options.identity.sign(sig1ToBeSigned(protectedHeader, payload))
290
- ]
291
- };
292
- }
293
- /** Mints one revocation-entry (management.cddl): a COSE_Sign1 over revocation-claims, signed the same way mintCapabilityToken signs a token. No narrowing chain to check -- a revocation entry has no parent and cannot fail to be issuable the way a delegated token can, so this returns the entry directly rather than a verdict. */
294
- async function mintRevocationEntry(options) {
295
- const payload = encodeBuf({
296
- "token-id": options.tokenId,
297
- issuer: options.identity.deviceId,
298
- "issuer-key": options.identity.identityKey,
299
- "revoked-at": options.revokedAt
300
- });
301
- const protectedHeader = protectedHeaderFor(options.identity);
302
- return [
303
- protectedHeader,
304
- {},
305
- payload,
306
- await options.identity.sign(sig1ToBeSigned(protectedHeader, payload))
307
- ];
308
- }
309
- //#endregion
310
- export { canGrant, mintCapabilityToken, mintRevocationEntry, scopeNarrows, verifyCapabilityToken, verifyRevocationEntry };
1
+ import { a as verifyRevocationEntry, i as verifyCapabilityToken, n as mintCapabilityToken, r as mintRevocationEntry, t as canGrant } from "../tokens-D9I1Pn14.mjs";
2
+ export { canGrant, mintCapabilityToken, mintRevocationEntry, verifyCapabilityToken, verifyRevocationEntry };
@@ -312,7 +312,8 @@ const tokenClaimsSchema = zod.z.lazy(() => zod.z.object({
312
312
  "not-before": zod.z.number().int().nonnegative().optional(),
313
313
  "parent": zod.z.instanceof(Uint8Array).optional(),
314
314
  "delegations-remaining": zod.z.number().int().nonnegative().optional(),
315
- "valid-until": zod.z.number().int().nonnegative().optional()
315
+ "valid-until": zod.z.number().int().nonnegative().optional(),
316
+ "conditions": zod.z.instanceof(Uint8Array).optional()
316
317
  }).catchall(zod.z.unknown()));
317
318
  const pingFrameSchema = zod.z.lazy(() => zod.z.object({ "type": zod.z.literal("ping") }));
318
319
  const closeFrameSchema = zod.z.lazy(() => zod.z.object({
@@ -1,2 +1,2 @@
1
- import { $ as ProcSpawn, $n as roomNoticeSchema, $t as dataRequestFrameSchema, A as HandleClaims, An as procKillSchema, At as WebrtcAnswer, B as ManageResponseFrame, Bn as relayInboundFrameSchema, Bt as capabilityTokenSchema, C as DmRoomPath, Cn as observedAddressFrameSchema, Ct as RoomSend, D as Frame, Dn as pingFrameSchema, Dt as StreamSession, E as ExecSessionInfo, En as peerIdentitySchema, Et as StreamEndFrame, F as ManageCommand, Fn as ptyResizeSchema, Ft as candidatesFrameSchema, G as OwnerNamedRoomPath, Gn as roomInviteSchema, Gt as coreDomainNameSchema, H as NamespacedCapability, Hn as revocationAnnounceFrameSchema, Ht as closeFrameSchema, I as ManageCommandParams, In as ptySpawnSchema, It as capabilityGrantOkSchema, J as PingFrame, Jn as roomLeaveSchema, Jt as coseHeaderLabelSchema, K as PeerAdvert, Kn as roomJoinOkSchema, Kt as coseHeaderAlgSchema, L as ManageError, Ln as ptyWriteSchema, Lt as capabilityGrantSchema, M as HandshakeFrame, Mn as procSpawnSchema, Mt as WebrtcOffer, N as IceCandidateInit, Nn as protocolVersionSchema, Nt as WireCandidate, O as FrameVariant, On as privateUseCapabilitySchema, Ot as SyncPunchFrame, P as IdentityKey, Pn as ptyKillSchema, Pt as candidateKindSchema, Q as ProcSignal, Qn as roomNoticeClaimsSchema, Qt as dataHaveFrameSchema, R as ManageOk, Rn as relayConnectFrameSchema, Rt as capabilityRequestSchema, S as DeviceIdHex, Sn as namespacedDomainIdSchema, St as RoomRead, T as ExecList, Tn as peerAdvertSchema, Tt as StreamDataFrame, U as NamespacedDomainId, Un as revocationClaimsSchema, Ut as coordinatorFrameSchema, V as MessageRef, Vn as relayOfferFrameSchema, Vt as capabilityVerbSchema, W as ObservedAddressFrame, Wn as revocationEntrySchema, Wt as coreCapabilitySchema, X as PrivateUseDomainId, Xn as roomMembersOkSchema, Xt as coseTokenHeadersSchema, Y as PrivateUseCapability, Yn as roomMemberSchema, Yt as coseSign1Schema, Z as ProcKill, Zn as roomMembersSchema, Zt as dataEntriesFrameSchema, _ as CoseTokenHeaders, _n as manageOkSchema, _t as RoomMembers, a as CapabilityRequest, an as execSessionInfoSchema, ar as streamEndFrameSchema, at as RelayConnectFrame, b as DataRequestFrame, bn as messageRefSchema, bt as RoomNoticeClaims, c as CapabilityVerb, cn as gossipFrameSchema, cr as tokenClaimsSchema, ct as RelayOfferFrame, d as CoreCapability, dn as handshakeFrameSchema, dr as webrtcOfferSchema, dt as RevocationEntry, en as deviceIdHexSchema, er as roomPathSchema, et as ProtocolVersion, f as CoreDomainName, fn as iceCandidateInitSchema, fr as wireCandidateSchema, ft as RoomInvite, g as CoseSign1, gn as manageErrorSchema, gt as RoomMember, h as CoseHeaderLabel, hn as manageCommandSchema, ht as RoomLeave, i as CapabilityGrantOk, in as execListSchema, ir as streamDataFrameSchema, it as PtyWrite, j as HandleRecord, jn as procSignalSchema, jt as WebrtcIceCandidate, k as GossipFrame, kn as privateUseDomainIdSchema, kt as TokenClaims, l as CloseFrame, ln as handleClaimsSchema, lr as webrtcAnswerSchema, lt as RevocationAnnounceFrame, m as CoseHeaderKid, mn as manageCommandParamsSchema, mt as RoomJoinOk, n as CandidatesFrame, nn as dmRoomPathSchema, nr as roomSendSchema, nt as PtyResize, o as CapabilityScope, on as frameSchema, or as streamSessionSchema, ot as RelayDataFrame, p as CoseHeaderAlg, pn as identityKeySchema, pt as RoomJoin, q as PeerIdentity, qn as roomJoinSchema, qt as coseHeaderKidSchema, r as CapabilityGrant, rn as domainIdSchema, rr as streamAckFrameSchema, rt as PtySpawn, s as CapabilityToken, sn as frameVariantSchema, sr as syncPunchFrameSchema, st as RelayInboundFrame, t as CandidateKind, tn as deviceIdSchema, tr as roomReadSchema, tt as PtyKill, u as CoordinatorFrame, un as handleRecordSchema, ur as webrtcIceCandidateSchema, ut as RevocationClaims, v as DataEntriesFrame, vn as manageRequestFrameSchema, vt as RoomMembersOk, w as DomainId, wn as ownerNamedRoomPathSchema, wt as StreamAckFrame, x as DeviceId, xn as namespacedCapabilitySchema, xt as RoomPath, y as DataHaveFrame, yn as manageResponseFrameSchema, yt as RoomNotice, z as ManageRequestFrame, zn as relayDataFrameSchema, zt as capabilityScopeSchema } from "../protocol-Dhswk7YD.cjs";
1
+ import { $ as ProcSpawn, $n as roomNoticeSchema, $t as dataRequestFrameSchema, A as HandleClaims, An as procKillSchema, At as WebrtcAnswer, B as ManageResponseFrame, Bn as relayInboundFrameSchema, Bt as capabilityTokenSchema, C as DmRoomPath, Cn as observedAddressFrameSchema, Ct as RoomSend, D as Frame, Dn as pingFrameSchema, Dt as StreamSession, E as ExecSessionInfo, En as peerIdentitySchema, Et as StreamEndFrame, F as ManageCommand, Fn as ptyResizeSchema, Ft as candidatesFrameSchema, G as OwnerNamedRoomPath, Gn as roomInviteSchema, Gt as coreDomainNameSchema, H as NamespacedCapability, Hn as revocationAnnounceFrameSchema, Ht as closeFrameSchema, I as ManageCommandParams, In as ptySpawnSchema, It as capabilityGrantOkSchema, J as PingFrame, Jn as roomLeaveSchema, Jt as coseHeaderLabelSchema, K as PeerAdvert, Kn as roomJoinOkSchema, Kt as coseHeaderAlgSchema, L as ManageError, Ln as ptyWriteSchema, Lt as capabilityGrantSchema, M as HandshakeFrame, Mn as procSpawnSchema, Mt as WebrtcOffer, N as IceCandidateInit, Nn as protocolVersionSchema, Nt as WireCandidate, O as FrameVariant, On as privateUseCapabilitySchema, Ot as SyncPunchFrame, P as IdentityKey, Pn as ptyKillSchema, Pt as candidateKindSchema, Q as ProcSignal, Qn as roomNoticeClaimsSchema, Qt as dataHaveFrameSchema, R as ManageOk, Rn as relayConnectFrameSchema, Rt as capabilityRequestSchema, S as DeviceIdHex, Sn as namespacedDomainIdSchema, St as RoomRead, T as ExecList, Tn as peerAdvertSchema, Tt as StreamDataFrame, U as NamespacedDomainId, Un as revocationClaimsSchema, Ut as coordinatorFrameSchema, V as MessageRef, Vn as relayOfferFrameSchema, Vt as capabilityVerbSchema, W as ObservedAddressFrame, Wn as revocationEntrySchema, Wt as coreCapabilitySchema, X as PrivateUseDomainId, Xn as roomMembersOkSchema, Xt as coseTokenHeadersSchema, Y as PrivateUseCapability, Yn as roomMemberSchema, Yt as coseSign1Schema, Z as ProcKill, Zn as roomMembersSchema, Zt as dataEntriesFrameSchema, _ as CoseTokenHeaders, _n as manageOkSchema, _t as RoomMembers, a as CapabilityRequest, an as execSessionInfoSchema, ar as streamEndFrameSchema, at as RelayConnectFrame, b as DataRequestFrame, bn as messageRefSchema, bt as RoomNoticeClaims, c as CapabilityVerb, cn as gossipFrameSchema, cr as tokenClaimsSchema, ct as RelayOfferFrame, d as CoreCapability, dn as handshakeFrameSchema, dr as webrtcOfferSchema, dt as RevocationEntry, en as deviceIdHexSchema, er as roomPathSchema, et as ProtocolVersion, f as CoreDomainName, fn as iceCandidateInitSchema, fr as wireCandidateSchema, ft as RoomInvite, g as CoseSign1, gn as manageErrorSchema, gt as RoomMember, h as CoseHeaderLabel, hn as manageCommandSchema, ht as RoomLeave, i as CapabilityGrantOk, in as execListSchema, ir as streamDataFrameSchema, it as PtyWrite, j as HandleRecord, jn as procSignalSchema, jt as WebrtcIceCandidate, k as GossipFrame, kn as privateUseDomainIdSchema, kt as TokenClaims, l as CloseFrame, ln as handleClaimsSchema, lr as webrtcAnswerSchema, lt as RevocationAnnounceFrame, m as CoseHeaderKid, mn as manageCommandParamsSchema, mt as RoomJoinOk, n as CandidatesFrame, nn as dmRoomPathSchema, nr as roomSendSchema, nt as PtyResize, o as CapabilityScope, on as frameSchema, or as streamSessionSchema, ot as RelayDataFrame, p as CoseHeaderAlg, pn as identityKeySchema, pt as RoomJoin, q as PeerIdentity, qn as roomJoinSchema, qt as coseHeaderKidSchema, r as CapabilityGrant, rn as domainIdSchema, rr as streamAckFrameSchema, rt as PtySpawn, s as CapabilityToken, sn as frameVariantSchema, sr as syncPunchFrameSchema, st as RelayInboundFrame, t as CandidateKind, tn as deviceIdSchema, tr as roomReadSchema, tt as PtyKill, u as CoordinatorFrame, un as handleRecordSchema, ur as webrtcIceCandidateSchema, ut as RevocationClaims, v as DataEntriesFrame, vn as manageRequestFrameSchema, vt as RoomMembersOk, w as DomainId, wn as ownerNamedRoomPathSchema, wt as StreamAckFrame, x as DeviceId, xn as namespacedCapabilitySchema, xt as RoomPath, y as DataHaveFrame, yn as manageResponseFrameSchema, yt as RoomNotice, z as ManageRequestFrame, zn as relayDataFrameSchema, zt as capabilityScopeSchema } from "../protocol-B3U828E7.cjs";
2
2
  export { CandidateKind, CandidatesFrame, CapabilityGrant, CapabilityGrantOk, CapabilityRequest, CapabilityScope, CapabilityToken, CapabilityVerb, CloseFrame, CoordinatorFrame, CoreCapability, CoreDomainName, CoseHeaderAlg, CoseHeaderKid, CoseHeaderLabel, CoseSign1, CoseTokenHeaders, DataEntriesFrame, DataHaveFrame, DataRequestFrame, DeviceId, DeviceIdHex, DmRoomPath, DomainId, ExecList, ExecSessionInfo, Frame, FrameVariant, GossipFrame, HandleClaims, HandleRecord, HandshakeFrame, IceCandidateInit, IdentityKey, ManageCommand, ManageCommandParams, ManageError, ManageOk, ManageRequestFrame, ManageResponseFrame, MessageRef, NamespacedCapability, NamespacedDomainId, ObservedAddressFrame, OwnerNamedRoomPath, PeerAdvert, PeerIdentity, PingFrame, PrivateUseCapability, PrivateUseDomainId, ProcKill, ProcSignal, ProcSpawn, ProtocolVersion, PtyKill, PtyResize, PtySpawn, PtyWrite, RelayConnectFrame, RelayDataFrame, RelayInboundFrame, RelayOfferFrame, RevocationAnnounceFrame, RevocationClaims, RevocationEntry, RoomInvite, RoomJoin, RoomJoinOk, RoomLeave, RoomMember, RoomMembers, RoomMembersOk, RoomNotice, RoomNoticeClaims, RoomPath, RoomRead, RoomSend, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, capabilityGrantOkSchema, capabilityGrantSchema, capabilityRequestSchema, capabilityScopeSchema, capabilityTokenSchema, capabilityVerbSchema, closeFrameSchema, coordinatorFrameSchema, coreCapabilitySchema, coreDomainNameSchema, coseHeaderAlgSchema, coseHeaderKidSchema, coseHeaderLabelSchema, coseSign1Schema, coseTokenHeadersSchema, dataEntriesFrameSchema, dataHaveFrameSchema, dataRequestFrameSchema, deviceIdHexSchema, deviceIdSchema, dmRoomPathSchema, domainIdSchema, execListSchema, execSessionInfoSchema, frameSchema, frameVariantSchema, gossipFrameSchema, handleClaimsSchema, handleRecordSchema, handshakeFrameSchema, iceCandidateInitSchema, identityKeySchema, manageCommandParamsSchema, manageCommandSchema, manageErrorSchema, manageOkSchema, manageRequestFrameSchema, manageResponseFrameSchema, messageRefSchema, namespacedCapabilitySchema, namespacedDomainIdSchema, observedAddressFrameSchema, ownerNamedRoomPathSchema, peerAdvertSchema, peerIdentitySchema, pingFrameSchema, privateUseCapabilitySchema, privateUseDomainIdSchema, procKillSchema, procSignalSchema, procSpawnSchema, protocolVersionSchema, ptyKillSchema, ptyResizeSchema, ptySpawnSchema, ptyWriteSchema, relayConnectFrameSchema, relayDataFrameSchema, relayInboundFrameSchema, relayOfferFrameSchema, revocationAnnounceFrameSchema, revocationClaimsSchema, revocationEntrySchema, roomInviteSchema, roomJoinOkSchema, roomJoinSchema, roomLeaveSchema, roomMemberSchema, roomMembersOkSchema, roomMembersSchema, roomNoticeClaimsSchema, roomNoticeSchema, roomPathSchema, roomReadSchema, roomSendSchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema };
@@ -1,2 +1,2 @@
1
- import { $ as ProcSpawn, $n as roomNoticeSchema, $t as dataRequestFrameSchema, A as HandleClaims, An as procKillSchema, At as WebrtcAnswer, B as ManageResponseFrame, Bn as relayInboundFrameSchema, Bt as capabilityTokenSchema, C as DmRoomPath, Cn as observedAddressFrameSchema, Ct as RoomSend, D as Frame, Dn as pingFrameSchema, Dt as StreamSession, E as ExecSessionInfo, En as peerIdentitySchema, Et as StreamEndFrame, F as ManageCommand, Fn as ptyResizeSchema, Ft as candidatesFrameSchema, G as OwnerNamedRoomPath, Gn as roomInviteSchema, Gt as coreDomainNameSchema, H as NamespacedCapability, Hn as revocationAnnounceFrameSchema, Ht as closeFrameSchema, I as ManageCommandParams, In as ptySpawnSchema, It as capabilityGrantOkSchema, J as PingFrame, Jn as roomLeaveSchema, Jt as coseHeaderLabelSchema, K as PeerAdvert, Kn as roomJoinOkSchema, Kt as coseHeaderAlgSchema, L as ManageError, Ln as ptyWriteSchema, Lt as capabilityGrantSchema, M as HandshakeFrame, Mn as procSpawnSchema, Mt as WebrtcOffer, N as IceCandidateInit, Nn as protocolVersionSchema, Nt as WireCandidate, O as FrameVariant, On as privateUseCapabilitySchema, Ot as SyncPunchFrame, P as IdentityKey, Pn as ptyKillSchema, Pt as candidateKindSchema, Q as ProcSignal, Qn as roomNoticeClaimsSchema, Qt as dataHaveFrameSchema, R as ManageOk, Rn as relayConnectFrameSchema, Rt as capabilityRequestSchema, S as DeviceIdHex, Sn as namespacedDomainIdSchema, St as RoomRead, T as ExecList, Tn as peerAdvertSchema, Tt as StreamDataFrame, U as NamespacedDomainId, Un as revocationClaimsSchema, Ut as coordinatorFrameSchema, V as MessageRef, Vn as relayOfferFrameSchema, Vt as capabilityVerbSchema, W as ObservedAddressFrame, Wn as revocationEntrySchema, Wt as coreCapabilitySchema, X as PrivateUseDomainId, Xn as roomMembersOkSchema, Xt as coseTokenHeadersSchema, Y as PrivateUseCapability, Yn as roomMemberSchema, Yt as coseSign1Schema, Z as ProcKill, Zn as roomMembersSchema, Zt as dataEntriesFrameSchema, _ as CoseTokenHeaders, _n as manageOkSchema, _t as RoomMembers, a as CapabilityRequest, an as execSessionInfoSchema, ar as streamEndFrameSchema, at as RelayConnectFrame, b as DataRequestFrame, bn as messageRefSchema, bt as RoomNoticeClaims, c as CapabilityVerb, cn as gossipFrameSchema, cr as tokenClaimsSchema, ct as RelayOfferFrame, d as CoreCapability, dn as handshakeFrameSchema, dr as webrtcOfferSchema, dt as RevocationEntry, en as deviceIdHexSchema, er as roomPathSchema, et as ProtocolVersion, f as CoreDomainName, fn as iceCandidateInitSchema, fr as wireCandidateSchema, ft as RoomInvite, g as CoseSign1, gn as manageErrorSchema, gt as RoomMember, h as CoseHeaderLabel, hn as manageCommandSchema, ht as RoomLeave, i as CapabilityGrantOk, in as execListSchema, ir as streamDataFrameSchema, it as PtyWrite, j as HandleRecord, jn as procSignalSchema, jt as WebrtcIceCandidate, k as GossipFrame, kn as privateUseDomainIdSchema, kt as TokenClaims, l as CloseFrame, ln as handleClaimsSchema, lr as webrtcAnswerSchema, lt as RevocationAnnounceFrame, m as CoseHeaderKid, mn as manageCommandParamsSchema, mt as RoomJoinOk, n as CandidatesFrame, nn as dmRoomPathSchema, nr as roomSendSchema, nt as PtyResize, o as CapabilityScope, on as frameSchema, or as streamSessionSchema, ot as RelayDataFrame, p as CoseHeaderAlg, pn as identityKeySchema, pt as RoomJoin, q as PeerIdentity, qn as roomJoinSchema, qt as coseHeaderKidSchema, r as CapabilityGrant, rn as domainIdSchema, rr as streamAckFrameSchema, rt as PtySpawn, s as CapabilityToken, sn as frameVariantSchema, sr as syncPunchFrameSchema, st as RelayInboundFrame, t as CandidateKind, tn as deviceIdSchema, tr as roomReadSchema, tt as PtyKill, u as CoordinatorFrame, un as handleRecordSchema, ur as webrtcIceCandidateSchema, ut as RevocationClaims, v as DataEntriesFrame, vn as manageRequestFrameSchema, vt as RoomMembersOk, w as DomainId, wn as ownerNamedRoomPathSchema, wt as StreamAckFrame, x as DeviceId, xn as namespacedCapabilitySchema, xt as RoomPath, y as DataHaveFrame, yn as manageResponseFrameSchema, yt as RoomNotice, z as ManageRequestFrame, zn as relayDataFrameSchema, zt as capabilityScopeSchema } from "../protocol-Dhswk7YD.mjs";
1
+ import { $ as ProcSpawn, $n as roomNoticeSchema, $t as dataRequestFrameSchema, A as HandleClaims, An as procKillSchema, At as WebrtcAnswer, B as ManageResponseFrame, Bn as relayInboundFrameSchema, Bt as capabilityTokenSchema, C as DmRoomPath, Cn as observedAddressFrameSchema, Ct as RoomSend, D as Frame, Dn as pingFrameSchema, Dt as StreamSession, E as ExecSessionInfo, En as peerIdentitySchema, Et as StreamEndFrame, F as ManageCommand, Fn as ptyResizeSchema, Ft as candidatesFrameSchema, G as OwnerNamedRoomPath, Gn as roomInviteSchema, Gt as coreDomainNameSchema, H as NamespacedCapability, Hn as revocationAnnounceFrameSchema, Ht as closeFrameSchema, I as ManageCommandParams, In as ptySpawnSchema, It as capabilityGrantOkSchema, J as PingFrame, Jn as roomLeaveSchema, Jt as coseHeaderLabelSchema, K as PeerAdvert, Kn as roomJoinOkSchema, Kt as coseHeaderAlgSchema, L as ManageError, Ln as ptyWriteSchema, Lt as capabilityGrantSchema, M as HandshakeFrame, Mn as procSpawnSchema, Mt as WebrtcOffer, N as IceCandidateInit, Nn as protocolVersionSchema, Nt as WireCandidate, O as FrameVariant, On as privateUseCapabilitySchema, Ot as SyncPunchFrame, P as IdentityKey, Pn as ptyKillSchema, Pt as candidateKindSchema, Q as ProcSignal, Qn as roomNoticeClaimsSchema, Qt as dataHaveFrameSchema, R as ManageOk, Rn as relayConnectFrameSchema, Rt as capabilityRequestSchema, S as DeviceIdHex, Sn as namespacedDomainIdSchema, St as RoomRead, T as ExecList, Tn as peerAdvertSchema, Tt as StreamDataFrame, U as NamespacedDomainId, Un as revocationClaimsSchema, Ut as coordinatorFrameSchema, V as MessageRef, Vn as relayOfferFrameSchema, Vt as capabilityVerbSchema, W as ObservedAddressFrame, Wn as revocationEntrySchema, Wt as coreCapabilitySchema, X as PrivateUseDomainId, Xn as roomMembersOkSchema, Xt as coseTokenHeadersSchema, Y as PrivateUseCapability, Yn as roomMemberSchema, Yt as coseSign1Schema, Z as ProcKill, Zn as roomMembersSchema, Zt as dataEntriesFrameSchema, _ as CoseTokenHeaders, _n as manageOkSchema, _t as RoomMembers, a as CapabilityRequest, an as execSessionInfoSchema, ar as streamEndFrameSchema, at as RelayConnectFrame, b as DataRequestFrame, bn as messageRefSchema, bt as RoomNoticeClaims, c as CapabilityVerb, cn as gossipFrameSchema, cr as tokenClaimsSchema, ct as RelayOfferFrame, d as CoreCapability, dn as handshakeFrameSchema, dr as webrtcOfferSchema, dt as RevocationEntry, en as deviceIdHexSchema, er as roomPathSchema, et as ProtocolVersion, f as CoreDomainName, fn as iceCandidateInitSchema, fr as wireCandidateSchema, ft as RoomInvite, g as CoseSign1, gn as manageErrorSchema, gt as RoomMember, h as CoseHeaderLabel, hn as manageCommandSchema, ht as RoomLeave, i as CapabilityGrantOk, in as execListSchema, ir as streamDataFrameSchema, it as PtyWrite, j as HandleRecord, jn as procSignalSchema, jt as WebrtcIceCandidate, k as GossipFrame, kn as privateUseDomainIdSchema, kt as TokenClaims, l as CloseFrame, ln as handleClaimsSchema, lr as webrtcAnswerSchema, lt as RevocationAnnounceFrame, m as CoseHeaderKid, mn as manageCommandParamsSchema, mt as RoomJoinOk, n as CandidatesFrame, nn as dmRoomPathSchema, nr as roomSendSchema, nt as PtyResize, o as CapabilityScope, on as frameSchema, or as streamSessionSchema, ot as RelayDataFrame, p as CoseHeaderAlg, pn as identityKeySchema, pt as RoomJoin, q as PeerIdentity, qn as roomJoinSchema, qt as coseHeaderKidSchema, r as CapabilityGrant, rn as domainIdSchema, rr as streamAckFrameSchema, rt as PtySpawn, s as CapabilityToken, sn as frameVariantSchema, sr as syncPunchFrameSchema, st as RelayInboundFrame, t as CandidateKind, tn as deviceIdSchema, tr as roomReadSchema, tt as PtyKill, u as CoordinatorFrame, un as handleRecordSchema, ur as webrtcIceCandidateSchema, ut as RevocationClaims, v as DataEntriesFrame, vn as manageRequestFrameSchema, vt as RoomMembersOk, w as DomainId, wn as ownerNamedRoomPathSchema, wt as StreamAckFrame, x as DeviceId, xn as namespacedCapabilitySchema, xt as RoomPath, y as DataHaveFrame, yn as manageResponseFrameSchema, yt as RoomNotice, z as ManageRequestFrame, zn as relayDataFrameSchema, zt as capabilityScopeSchema } from "../protocol-B3U828E7.mjs";
2
2
  export { CandidateKind, CandidatesFrame, CapabilityGrant, CapabilityGrantOk, CapabilityRequest, CapabilityScope, CapabilityToken, CapabilityVerb, CloseFrame, CoordinatorFrame, CoreCapability, CoreDomainName, CoseHeaderAlg, CoseHeaderKid, CoseHeaderLabel, CoseSign1, CoseTokenHeaders, DataEntriesFrame, DataHaveFrame, DataRequestFrame, DeviceId, DeviceIdHex, DmRoomPath, DomainId, ExecList, ExecSessionInfo, Frame, FrameVariant, GossipFrame, HandleClaims, HandleRecord, HandshakeFrame, IceCandidateInit, IdentityKey, ManageCommand, ManageCommandParams, ManageError, ManageOk, ManageRequestFrame, ManageResponseFrame, MessageRef, NamespacedCapability, NamespacedDomainId, ObservedAddressFrame, OwnerNamedRoomPath, PeerAdvert, PeerIdentity, PingFrame, PrivateUseCapability, PrivateUseDomainId, ProcKill, ProcSignal, ProcSpawn, ProtocolVersion, PtyKill, PtyResize, PtySpawn, PtyWrite, RelayConnectFrame, RelayDataFrame, RelayInboundFrame, RelayOfferFrame, RevocationAnnounceFrame, RevocationClaims, RevocationEntry, RoomInvite, RoomJoin, RoomJoinOk, RoomLeave, RoomMember, RoomMembers, RoomMembersOk, RoomNotice, RoomNoticeClaims, RoomPath, RoomRead, RoomSend, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, capabilityGrantOkSchema, capabilityGrantSchema, capabilityRequestSchema, capabilityScopeSchema, capabilityTokenSchema, capabilityVerbSchema, closeFrameSchema, coordinatorFrameSchema, coreCapabilitySchema, coreDomainNameSchema, coseHeaderAlgSchema, coseHeaderKidSchema, coseHeaderLabelSchema, coseSign1Schema, coseTokenHeadersSchema, dataEntriesFrameSchema, dataHaveFrameSchema, dataRequestFrameSchema, deviceIdHexSchema, deviceIdSchema, dmRoomPathSchema, domainIdSchema, execListSchema, execSessionInfoSchema, frameSchema, frameVariantSchema, gossipFrameSchema, handleClaimsSchema, handleRecordSchema, handshakeFrameSchema, iceCandidateInitSchema, identityKeySchema, manageCommandParamsSchema, manageCommandSchema, manageErrorSchema, manageOkSchema, manageRequestFrameSchema, manageResponseFrameSchema, messageRefSchema, namespacedCapabilitySchema, namespacedDomainIdSchema, observedAddressFrameSchema, ownerNamedRoomPathSchema, peerAdvertSchema, peerIdentitySchema, pingFrameSchema, privateUseCapabilitySchema, privateUseDomainIdSchema, procKillSchema, procSignalSchema, procSpawnSchema, protocolVersionSchema, ptyKillSchema, ptyResizeSchema, ptySpawnSchema, ptyWriteSchema, relayConnectFrameSchema, relayDataFrameSchema, relayInboundFrameSchema, relayOfferFrameSchema, revocationAnnounceFrameSchema, revocationClaimsSchema, revocationEntrySchema, roomInviteSchema, roomJoinOkSchema, roomJoinSchema, roomLeaveSchema, roomMemberSchema, roomMembersOkSchema, roomMembersSchema, roomNoticeClaimsSchema, roomNoticeSchema, roomPathSchema, roomReadSchema, roomSendSchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema };
@@ -311,7 +311,8 @@ const tokenClaimsSchema = z.lazy(() => z.object({
311
311
  "not-before": z.number().int().nonnegative().optional(),
312
312
  "parent": z.instanceof(Uint8Array).optional(),
313
313
  "delegations-remaining": z.number().int().nonnegative().optional(),
314
- "valid-until": z.number().int().nonnegative().optional()
314
+ "valid-until": z.number().int().nonnegative().optional(),
315
+ "conditions": z.instanceof(Uint8Array).optional()
315
316
  }).catchall(z.unknown()));
316
317
  const pingFrameSchema = z.lazy(() => z.object({ "type": z.literal("ping") }));
317
318
  const closeFrameSchema = z.lazy(() => z.object({
@@ -1,4 +1,4 @@
1
- import { P as IdentityKey, x as DeviceId } from "./protocol-Dhswk7YD.mjs";
1
+ import { P as IdentityKey, x as DeviceId } from "./protocol-B3U828E7.mjs";
2
2
  //#region src/ports/identity.d.ts
3
3
  /**
4
4
  * Wraps the local node's own identity plus the signing/verification primitives capability-token handling needs -- never hardcoded to one crypto library's own API shape (Node's webcrypto, a WASM implementation, a hardware key, etc. can all satisfy this same contract).
@@ -1,4 +1,4 @@
1
- import { P as IdentityKey, x as DeviceId } from "./protocol-Dhswk7YD.cjs";
1
+ import { P as IdentityKey, x as DeviceId } from "./protocol-B3U828E7.cjs";
2
2
  //#region src/ports/identity.d.ts
3
3
  /**
4
4
  * Wraps the local node's own identity plus the signing/verification primitives capability-token handling needs -- never hardcoded to one crypto library's own API shape (Node's webcrypto, a WASM implementation, a hardware key, etc. can all satisfy this same contract).
@@ -1,2 +1,2 @@
1
- import { t as IdentityPort } from "../identity-BldV8xFj.cjs";
1
+ import { t as IdentityPort } from "../identity-COdFfaW8.cjs";
2
2
  export { IdentityPort };
@@ -1,2 +1,2 @@
1
- import { t as IdentityPort } from "../identity-B1hBV3YA.mjs";
1
+ import { t as IdentityPort } from "../identity-B7YMBhMf.mjs";
2
2
  export { IdentityPort };
@@ -1,2 +1,2 @@
1
- import { n as Listener, r as Transport, t as Connection } from "../transport-hEUxrdhT.cjs";
1
+ import { n as Listener, r as Transport, t as Connection } from "../transport-BrAqN6I5.cjs";
2
2
  export { Connection, Listener, Transport };
@@ -1,2 +1,2 @@
1
- import { n as Listener, r as Transport, t as Connection } from "../transport-BNNdUBq-.mjs";
1
+ import { n as Listener, r as Transport, t as Connection } from "../transport-B_diuPHT.mjs";
2
2
  export { Connection, Listener, Transport };
@@ -1001,6 +1001,7 @@ declare const tokenClaimsSchema: z.ZodLazy<z.ZodObject<{
1001
1001
  parent: z.ZodOptional<z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
1002
1002
  "delegations-remaining": z.ZodOptional<z.ZodNumber>;
1003
1003
  "valid-until": z.ZodOptional<z.ZodNumber>;
1004
+ conditions: z.ZodOptional<z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
1004
1005
  }, z.core.$catchall<z.ZodUnknown>>>;
1005
1006
  declare const pingFrameSchema: z.ZodLazy<z.ZodObject<{
1006
1007
  type: z.ZodLiteral<"ping">;
@@ -1001,6 +1001,7 @@ declare const tokenClaimsSchema: z.ZodLazy<z.ZodObject<{
1001
1001
  parent: z.ZodOptional<z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
1002
1002
  "delegations-remaining": z.ZodOptional<z.ZodNumber>;
1003
1003
  "valid-until": z.ZodOptional<z.ZodNumber>;
1004
+ conditions: z.ZodOptional<z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
1004
1005
  }, z.core.$catchall<z.ZodUnknown>>>;
1005
1006
  declare const pingFrameSchema: z.ZodLazy<z.ZodObject<{
1006
1007
  type: z.ZodLiteral<"ping">;