From 5bbb2ea762a86cc2c8fe8854423037f36c0d305b Mon Sep 17 00:00:00 2001 From: Joseph Mearman Date: Fri, 11 Sep 2026 15:27:44 +0100 Subject: [PATCH 1/4] feat(spec): add the core/room domain, unifying rooms and DMs room-path names the device-id(s) whose signature makes a room:member membership token valid, rooted differently by shape: an owner-named room (/) roots trust at the owner in the path; a DM (the sorted pair of exactly the two participants' hex device-ids) roots trust at the verifier itself, since either named party being an acceptable root would let a sender self-issue a token and message a stranger unsolicited. room.send/room.read/room.leave/room.members share one capability, room:member, mirroring exec:pty's existing one-resource-many-verbs pattern. room.join/room.invite are deliberately ungated -- no token field at all -- since a room with no prior relationship has no token to gate first contact on; approval mints a token on the spot, carried back as an extension field on the existing manage-ok response rather than a new frame shape. message-ref gives room.send's optional refs array one open, typed relation ("reply", "forward", and any future kind) instead of a separate ad-hoc field per relation, the same "open on purpose" pattern capability-scope.kind already uses. --- spec/handshake.cddl | 2 +- spec/protocol.cddl | 159 ++++++++++++++++++++++++++++- spec/registry/core-capabilities.md | 3 + spec/registry/core-domains.md | 1 + spec/room.cddl | 139 +++++++++++++++++++++++++ spec/tokens.cddl | 18 ++++ 6 files changed, 320 insertions(+), 2 deletions(-) create mode 100644 spec/room.cddl diff --git a/spec/handshake.cddl b/spec/handshake.cddl index 9e7f5fe..1585992 100644 --- a/spec/handshake.cddl +++ b/spec/handshake.cddl @@ -19,7 +19,7 @@ domain-id = core-domain-name / namespaced-domain-id / private-use-domain-id ; "core/federation" is retired: no frames are defined for it (see ; federation.cddl) and a peer must never advertise or negotiate it; the ; string itself stays reserved rather than becoming available for reuse. -core-domain-name = "core/management" / "core/exec" / "core/data" / "core/federation" / "core/webrtc" +core-domain-name = "core/management" / "core/exec" / "core/data" / "core/federation" / "core/webrtc" / "core/room" ; "/", where uniqueness comes from the registrant ; segment being a DNS name the registrant already owns — the same trick URNs diff --git a/spec/protocol.cddl b/spec/protocol.cddl index 8e3cbe1..eb28ff6 100644 --- a/spec/protocol.cddl +++ b/spec/protocol.cddl @@ -299,7 +299,7 @@ domain-id = core-domain-name / namespaced-domain-id / private-use-domain-id ; "core/federation" is retired: no frames are defined for it (see ; federation.cddl) and a peer must never advertise or negotiate it; the ; string itself stays reserved rather than becoming available for reuse. -core-domain-name = "core/management" / "core/exec" / "core/data" / "core/federation" / "core/webrtc" +core-domain-name = "core/management" / "core/exec" / "core/data" / "core/federation" / "core/webrtc" / "core/room" ; "/", where uniqueness comes from the registrant ; segment being a DNS name the registrant already owns — the same trick URNs @@ -407,6 +407,145 @@ revocation-claims = { } revocation-entry = cose-sign1 ; payload = bstr .cbor revocation-claims revocation-announce-frame = { type: "revocation-announce", entries: [* revocation-entry] } +; core/room — communication membership: a set of devices, regardless of who +; owns them, that may send and receive messages together. Unifies what would +; otherwise be two primitives (a named, multi-member room and a two-party +; direct message) into one: a DM is simply a room whose membership happens +; to be exactly two participants, addressed by a deterministic path derived +; from the pair rather than requiring an explicit room-creation step. +; +; Like core/exec and core/webrtc, control travels as manage-command, never as +; a dedicated frame kind. No new frame shape is needed: `room.send` and +; `room.read` ride the existing manage-request-frame/manage-response-frame +; pair, and `room.join`/`room.invite`'s grant rides manage-ok's own +; `* tstr => any` extension tail. +; +; `room` is deliberately a different scope kind from `group` (tokens.cddl): +; both use the identical capability-token mechanism, but they encode +; different relationships. `group` is ownership — full administrative +; control, delegated the ordinary way. `room` is participation — a room +; owner can revoke someone's membership, but never act as their device. +; Collapsing the two would lose exactly the distinction a verifier needs: +; whether holding a grant means "you control this" or merely "you may be +; here". + +; Membership proof is rooted in the scope's own path, mirroring how a +; device-id is the hash of its own key: `room-path` names the device-id(s) +; whose signature makes a membership token valid, so a verifier recovers the +; root authority by parsing the scope it was handed, with no member list, no +; prior contact with the room's owner, and no gossip required. +; +; Two shapes, two different trust roots, for a real security reason: +; +; - `/` (a named, persistent room): the acceptable +; root is the owner named in the path. A member honours another member's +; token because that token's own chain terminates at the owner, and the +; verifying member already accepted that owner's authority the moment it +; accepted its own membership token. +; - `+` (a DM — the sorted pair of exactly the two +; participants, lower device-id hex first): the only acceptable root is +; THE VERIFIER ITSELF. If either named party were an acceptable root, a +; sender could self-issue a token for a path it appears in and message a +; stranger unsolicited — the entire point of gating room:member at all. +; Requiring the verifier's own key as root makes the token mean "I +; consented to hear from this bearer", which self-issuance cannot forge. +; A consequence worth stating plainly: a DM path is verifiable only by the +; two members it names — nothing else needs it to be. +; +; Six verifier obligations, the same register as tokens.cddl's own narrowing +; and delegations-remaining rules: +; +; 1. A `room:member` token's delegation chain MUST terminate at the correct +; root for the path's own shape (owner for a named room, either verifier +; for a DM — see above). +; 2. `bearer` MUST equal the peer identity actually authenticated on the +; arriving connection — for a relay-routed request, the identity +; authenticated by the end-to-end session tunnelled inside `relay-data`, +; NEVER `relay-inbound-frame.source-device`, which the relay merely +; asserts and is therefore untrusted. +; 3. `scope.kind` MUST be `"room"` and `scope.path` MUST equal the room path +; the request claims to act on — a token scoped to one room authorises +; nothing in another, however similar the paths look. +; 4. Ordinary token-claims obligations apply unchanged: signature, expiry +; (and `not-before` if present), and revocation, walking the full +; `parent` chain, not just the leaf. +; 5. `delegations-remaining` (tokens.cddl), if present anywhere in the +; chain, bounds further re-delegation the same way it does for any other +; capability — an owner wanting controlled admission sets `0` on every +; grant it issues directly. +; 6. A verifier that does not recognise an entry's `content-type` (or, for a +; threshold-signed subject elsewhere in this spec, an unrecognised +; `kind`) MUST refuse to act on it rather than proceed blindly — the +; general "don't trust what you can't understand" obligation this spec +; applies everywhere an open discriminator appears. + +room-path = owner-named-room-path / dm-room-path + +; 64 lowercase hex characters = the 32-byte device-id, hex-encoded. +device-id-hex = tstr .regexp "[0-9a-f]{64}" + +owner-named-room-path = tstr .regexp "[0-9a-f]{64}/[A-Za-z0-9_-]+" + +; The verifier obligation the regex cannot express: the two hex components +; MUST be the bytewise-ascending sorted pair of the two participants' +; device-ids, lower first. A path constructed with the pair in the wrong +; order, or naming a device twice, is not a valid DM path at all -- there is +; exactly one canonical path per unordered pair. +dm-room-path = tstr .regexp "[0-9a-f]{64}\\+[0-9a-f]{64}" + +; One capability authorises all four ordinary-membership verbs, the same +; "one resource, not several" pattern `exec:pty` already uses for its own +; four inner verbs — the resource being authorised is "participation in this +; room", not each action independently. +$manage-command-params /= room-send / room-read / room-leave / room-members + +room-send = { verb: "room.send", "message-id": bstr, text: tstr, ? refs: [* message-ref] } +room-read = { verb: "room.read", "message-id": bstr } +room-leave = { verb: "room.leave" } +room-members = { verb: "room.members" } + +; A reference to another message -- reply, forwarding, or any future +; relation -- expressed as one typed edge rather than a separate ad-hoc field +; per relation, mirroring capability-scope.kind's own "open on purpose" +; precedent so a new relation never needs a schema change. "reply" and +; "forward" are the two relations needed today; a message may carry more +; than one (replying to, or synthesising, more than one prior message). +; Forwarding needs no separate verification mechanism beyond this structural +; hint: the actual proof of what was forwarded is nesting the original, +; still-independently-verifiable content (see room-notice-claims' +; content-type in the noticeboard extension of this domain), never +; re-attributed by the act of forwarding it, since the original's own +; signature travels with it. +message-ref = { id: bstr, relation: tstr } + +; Ungated by design -- deliberately relies on manage-request-frame's `token` +; field being optional rather than requiring one, the first verb in this +; spec to do so. Access control is a human's explicit approval in the +; receiving UI, a different but no lesser control than a pre-shared token: +; a room (or DM pair) with no prior relationship has no token to gate on in +; the first place, so gating this would make the very first contact +; impossible to establish at all. Approving mints a `room:member` token on +; the spot and returns it as an extension field on the SAME manage-response +; rather than a separate grant frame -- manage-ok's own `* tstr => any` +; already permits this, so no new response shape is needed. +$manage-command-params /= room-join / room-invite +room-join = { verb: "room.join" } +room-invite = { verb: "room.invite", invitee: device-id } + +; The response to an approved room.join/room.invite: manage-ok extended with +; the freshly minted token. A denial is an ordinary manage-error (a `code` +; such as "denied" is an application convention, not a wire requirement). +; +; granted-token: capability-token ; documented here, not a separate rule -- +; ; manage-ok's own schema already allows +; ; this key with no change. + +; Kick rides the existing revocation-announce-frame unchanged: only a +; token's own issuer may revoke it (management.cddl), so an owner revoking +; its own direct grant to a member removes exactly that member (and, +; correctly, everyone that member had gone on to invite -- the same +; ancestor-walking obligation tokens.cddl already states), with no new +; mechanism required here. ; The generic streaming/backpressure pattern — reusable by any capability ; domain that carries a live byte stream (core/exec's stdio today; a future ; audio stream, or a different agent-comms transport, tomorrow), so @@ -507,6 +646,23 @@ capability-token = cose-sign1 ; issuer device-id, and that the signature verifies against that same ; embedded key — no shared secret or prior contact with the issuer is needed ; to verify a token, only the token itself. +; `delegations-remaining` bounds how many further hops a chain may narrow +; through, closing a real gap the narrowing rule alone leaves open: narrowing +; preserves the capability verb, so without a separate bound, any bearer can +; mint a child token carrying the identical verb, and every member of an +; invite-only room could transitively admit anyone, to any depth, with +; nothing in the delegation model able to stop it -- the same latent problem +; applies to any capability re-grantable by its own bearer, exec:pty +; included, not just room membership. +; +; A verifier obligation, the same register as the narrowing rule itself: a +; child's own value MUST be strictly less than its parent's. Absent means +; unbounded, so every token minted before this claim existed keeps its exact +; current meaning -- no migration, no shim. `0` means the bearer may not +; delegate further at all; an owner wanting a controlled-admission room sets +; `0` on every grant it issues directly, so every member's token was issued +; by the owner and is therefore directly revocable with zero collateral, +; rather than only revocable by tearing down an entire invited subtree. token-claims = { token-id: bstr, issuer: device-id, @@ -517,6 +673,7 @@ token-claims = { expires: uint, ; Unix ms ? not-before: uint, ? parent: bstr, ; bstr .cbor capability-token — a fully self-contained, nested COSE_Sign1 of the parent token; the recursive delegation chain. A verifier walking this chain MUST also check every ancestor's own token-id against the revocation view (management.cddl's revocation-entry) -- revoking one ancestor revokes everything delegated beneath it, not just a leaf's own token-id. + ? "delegations-remaining": uint, * tstr => any, ; forward-compatible extension claims } diff --git a/spec/registry/core-capabilities.md b/spec/registry/core-capabilities.md index 50a53d3..29f38e1 100644 --- a/spec/registry/core-capabilities.md +++ b/spec/registry/core-capabilities.md @@ -8,5 +8,8 @@ Append-only. A bare `subsystem:action` capability verb is spec-owned and matched | `exec:pty` | `folder` | `core/exec` | active | | `exec:proc` | `folder` | `core/exec` | active | | `webrtc:signal` | `node` | `core/webrtc` | active | +| `room:member` | `room` | `core/room` | active | +| `room:join` | `room` | `core/room` | active | +| `room:invite` | `room` | `core/room` | active | Third parties do not add entries here — see `namespaced-capability` in `tokens.cddl` for the registrant-owned namespace anyone else uses instead. diff --git a/spec/registry/core-domains.md b/spec/registry/core-domains.md index 907d51a..483bf05 100644 --- a/spec/registry/core-domains.md +++ b/spec/registry/core-domains.md @@ -9,5 +9,6 @@ Append-only. A `core/*` domain name is spec-owned and defined in `handshake.cddl | `core/data` | `data-domain.cddl` | active | | `core/federation` | `federation.cddl` | retired — no frames defined; cross-scope sharing now uses ordinary capability tokens (`tokens.cddl`) and discovery (`discovery.cddl`) instead | | `core/webrtc` | `webrtc.cddl` | active | +| `core/room` | `room.cddl` | active | Third parties do not add entries here — see `namespaced-domain-id` in `handshake.cddl` for the registrant-owned namespace anyone else uses instead. diff --git a/spec/room.cddl b/spec/room.cddl new file mode 100644 index 0000000..6e5bc22 --- /dev/null +++ b/spec/room.cddl @@ -0,0 +1,139 @@ +; core/room — communication membership: a set of devices, regardless of who +; owns them, that may send and receive messages together. Unifies what would +; otherwise be two primitives (a named, multi-member room and a two-party +; direct message) into one: a DM is simply a room whose membership happens +; to be exactly two participants, addressed by a deterministic path derived +; from the pair rather than requiring an explicit room-creation step. +; +; Like core/exec and core/webrtc, control travels as manage-command, never as +; a dedicated frame kind. No new frame shape is needed: `room.send` and +; `room.read` ride the existing manage-request-frame/manage-response-frame +; pair, and `room.join`/`room.invite`'s grant rides manage-ok's own +; `* tstr => any` extension tail. +; +; `room` is deliberately a different scope kind from `group` (tokens.cddl): +; both use the identical capability-token mechanism, but they encode +; different relationships. `group` is ownership — full administrative +; control, delegated the ordinary way. `room` is participation — a room +; owner can revoke someone's membership, but never act as their device. +; Collapsing the two would lose exactly the distinction a verifier needs: +; whether holding a grant means "you control this" or merely "you may be +; here". + +; Membership proof is rooted in the scope's own path, mirroring how a +; device-id is the hash of its own key: `room-path` names the device-id(s) +; whose signature makes a membership token valid, so a verifier recovers the +; root authority by parsing the scope it was handed, with no member list, no +; prior contact with the room's owner, and no gossip required. +; +; Two shapes, two different trust roots, for a real security reason: +; +; - `/` (a named, persistent room): the acceptable +; root is the owner named in the path. A member honours another member's +; token because that token's own chain terminates at the owner, and the +; verifying member already accepted that owner's authority the moment it +; accepted its own membership token. +; - `+` (a DM — the sorted pair of exactly the two +; participants, lower device-id hex first): the only acceptable root is +; THE VERIFIER ITSELF. If either named party were an acceptable root, a +; sender could self-issue a token for a path it appears in and message a +; stranger unsolicited — the entire point of gating room:member at all. +; Requiring the verifier's own key as root makes the token mean "I +; consented to hear from this bearer", which self-issuance cannot forge. +; A consequence worth stating plainly: a DM path is verifiable only by the +; two members it names — nothing else needs it to be. +; +; Six verifier obligations, the same register as tokens.cddl's own narrowing +; and delegations-remaining rules: +; +; 1. A `room:member` token's delegation chain MUST terminate at the correct +; root for the path's own shape (owner for a named room, either verifier +; for a DM — see above). +; 2. `bearer` MUST equal the peer identity actually authenticated on the +; arriving connection — for a relay-routed request, the identity +; authenticated by the end-to-end session tunnelled inside `relay-data`, +; NEVER `relay-inbound-frame.source-device`, which the relay merely +; asserts and is therefore untrusted. +; 3. `scope.kind` MUST be `"room"` and `scope.path` MUST equal the room path +; the request claims to act on — a token scoped to one room authorises +; nothing in another, however similar the paths look. +; 4. Ordinary token-claims obligations apply unchanged: signature, expiry +; (and `not-before` if present), and revocation, walking the full +; `parent` chain, not just the leaf. +; 5. `delegations-remaining` (tokens.cddl), if present anywhere in the +; chain, bounds further re-delegation the same way it does for any other +; capability — an owner wanting controlled admission sets `0` on every +; grant it issues directly. +; 6. A verifier that does not recognise an entry's `content-type` (or, for a +; threshold-signed subject elsewhere in this spec, an unrecognised +; `kind`) MUST refuse to act on it rather than proceed blindly — the +; general "don't trust what you can't understand" obligation this spec +; applies everywhere an open discriminator appears. + +room-path = owner-named-room-path / dm-room-path + +; 64 lowercase hex characters = the 32-byte device-id, hex-encoded. +device-id-hex = tstr .regexp "[0-9a-f]{64}" + +owner-named-room-path = tstr .regexp "[0-9a-f]{64}/[A-Za-z0-9_-]+" + +; The verifier obligation the regex cannot express: the two hex components +; MUST be the bytewise-ascending sorted pair of the two participants' +; device-ids, lower first. A path constructed with the pair in the wrong +; order, or naming a device twice, is not a valid DM path at all -- there is +; exactly one canonical path per unordered pair. +dm-room-path = tstr .regexp "[0-9a-f]{64}\\+[0-9a-f]{64}" + +; One capability authorises all four ordinary-membership verbs, the same +; "one resource, not several" pattern `exec:pty` already uses for its own +; four inner verbs — the resource being authorised is "participation in this +; room", not each action independently. +$manage-command-params /= room-send / room-read / room-leave / room-members + +room-send = { verb: "room.send", "message-id": bstr, text: tstr, ? refs: [* message-ref] } +room-read = { verb: "room.read", "message-id": bstr } +room-leave = { verb: "room.leave" } +room-members = { verb: "room.members" } + +; A reference to another message -- reply, forwarding, or any future +; relation -- expressed as one typed edge rather than a separate ad-hoc field +; per relation, mirroring capability-scope.kind's own "open on purpose" +; precedent so a new relation never needs a schema change. "reply" and +; "forward" are the two relations needed today; a message may carry more +; than one (replying to, or synthesising, more than one prior message). +; Forwarding needs no separate verification mechanism beyond this structural +; hint: the actual proof of what was forwarded is nesting the original, +; still-independently-verifiable content (see room-notice-claims' +; content-type in the noticeboard extension of this domain), never +; re-attributed by the act of forwarding it, since the original's own +; signature travels with it. +message-ref = { id: bstr, relation: tstr } + +; Ungated by design -- deliberately relies on manage-request-frame's `token` +; field being optional rather than requiring one, the first verb in this +; spec to do so. Access control is a human's explicit approval in the +; receiving UI, a different but no lesser control than a pre-shared token: +; a room (or DM pair) with no prior relationship has no token to gate on in +; the first place, so gating this would make the very first contact +; impossible to establish at all. Approving mints a `room:member` token on +; the spot and returns it as an extension field on the SAME manage-response +; rather than a separate grant frame -- manage-ok's own `* tstr => any` +; already permits this, so no new response shape is needed. +$manage-command-params /= room-join / room-invite +room-join = { verb: "room.join" } +room-invite = { verb: "room.invite", invitee: device-id } + +; The response to an approved room.join/room.invite: manage-ok extended with +; the freshly minted token. A denial is an ordinary manage-error (a `code` +; such as "denied" is an application convention, not a wire requirement). +; +; granted-token: capability-token ; documented here, not a separate rule -- +; ; manage-ok's own schema already allows +; ; this key with no change. + +; Kick rides the existing revocation-announce-frame unchanged: only a +; token's own issuer may revoke it (management.cddl), so an owner revoking +; its own direct grant to a member removes exactly that member (and, +; correctly, everyone that member had gone on to invite -- the same +; ancestor-walking obligation tokens.cddl already states), with no new +; mechanism required here. diff --git a/spec/tokens.cddl b/spec/tokens.cddl index 96bcfae..2bf17d5 100644 --- a/spec/tokens.cddl +++ b/spec/tokens.cddl @@ -64,6 +64,23 @@ capability-token = cose-sign1 ; issuer device-id, and that the signature verifies against that same ; embedded key — no shared secret or prior contact with the issuer is needed ; to verify a token, only the token itself. +; `delegations-remaining` bounds how many further hops a chain may narrow +; through, closing a real gap the narrowing rule alone leaves open: narrowing +; preserves the capability verb, so without a separate bound, any bearer can +; mint a child token carrying the identical verb, and every member of an +; invite-only room could transitively admit anyone, to any depth, with +; nothing in the delegation model able to stop it -- the same latent problem +; applies to any capability re-grantable by its own bearer, exec:pty +; included, not just room membership. +; +; A verifier obligation, the same register as the narrowing rule itself: a +; child's own value MUST be strictly less than its parent's. Absent means +; unbounded, so every token minted before this claim existed keeps its exact +; current meaning -- no migration, no shim. `0` means the bearer may not +; delegate further at all; an owner wanting a controlled-admission room sets +; `0` on every grant it issues directly, so every member's token was issued +; by the owner and is therefore directly revocable with zero collateral, +; rather than only revocable by tearing down an entire invited subtree. token-claims = { token-id: bstr, issuer: device-id, @@ -74,6 +91,7 @@ token-claims = { expires: uint, ; Unix ms ? not-before: uint, ? parent: bstr, ; bstr .cbor capability-token — a fully self-contained, nested COSE_Sign1 of the parent token; the recursive delegation chain. A verifier walking this chain MUST also check every ancestor's own token-id against the revocation view (management.cddl's revocation-entry) -- revoking one ancestor revokes everything delegated beneath it, not just a leaf's own token-id. + ? "delegations-remaining": uint, * tstr => any, ; forward-compatible extension claims } From b5424a6f511d50a5582795399106a06c33bd5b1a Mon Sep 17 00:00:00 2001 From: Joseph Mearman Date: Fri, 11 Sep 2026 15:27:50 +0100 Subject: [PATCH 2/4] fix(deps): bump cddl.js to 1.0.1 for the .regexp escape fix 1.0.1 fixes a lexer bug where a backslash-escaped character inside a CDDL text-string literal kept its backslash instead of being resolved to the literal character it escapes. Without this, core/room's own dm-room-path rule (and the already-shipped namespaced-domain-id rule) generate a Zod regex that silently matches the wrong thing. --- ts/packages/core/package.json | 2 +- ts/pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ts/packages/core/package.json b/ts/packages/core/package.json index e36d3f0..d695902 100644 --- a/ts/packages/core/package.json +++ b/ts/packages/core/package.json @@ -23,7 +23,7 @@ }, "dependencies": { "cbor2": "2.3.0", - "cddl.js": "1.0.0", + "cddl.js": "1.0.1", "zod": "4.5.4" }, "devDependencies": { diff --git a/ts/pnpm-lock.yaml b/ts/pnpm-lock.yaml index 0200775..ebc2e93 100644 --- a/ts/pnpm-lock.yaml +++ b/ts/pnpm-lock.yaml @@ -67,8 +67,8 @@ importers: specifier: 2.3.0 version: 2.3.0 cddl.js: - specifier: 1.0.0 - version: 1.0.0 + specifier: 1.0.1 + version: 1.0.1 zod: specifier: 4.5.4 version: 4.5.4 @@ -1143,8 +1143,8 @@ packages: resolution: {integrity: sha512-76WB3hq8BoaGkMkBVJ27fW5LJU+qqDLEpgRNCG/SYKhODWXpVPOTD4UcUto3IEzYLA52nsvbhb0wabhHDn3qXg==} engines: {node: '>=20'} - cddl.js@1.0.0: - resolution: {integrity: sha512-0hGzT6XXpmAGCSZ7v4ctFKpcyXUYL9VOeL61dyZAvARqaloX/kqOwYZX8Y0IjTPZyhlWcC4pUa+EtXPVbp7/bQ==} + cddl.js@1.0.1: + resolution: {integrity: sha512-UTQZM1rCob6FFOxmYJh+csg9AaKyrFjFnp6Lar/1QicpHW77UxBZsuE2r4NOMaKuvZypIXyCSU+dhGOfhAJLVA==} chai@6.2.2: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} @@ -2765,7 +2765,7 @@ snapshots: dependencies: '@cto.af/wtf8': 0.0.5 - cddl.js@1.0.0: + cddl.js@1.0.1: dependencies: camelcase: 9.0.0 cbor2: 2.3.0 From 56fb8f1b518e4c18db5d6143c49defd77512d43e Mon Sep 17 00:00:00 2001 From: Joseph Mearman Date: Fri, 11 Sep 2026 15:27:58 +0100 Subject: [PATCH 3/4] feat(core): regenerate protocol.ts for the core/room domain Adds the room-path/room-send/room-read/room-leave/room-members/ message-ref/room-join/room-invite schemas and the delegations-remaining claim, generated against cddl.js 1.0.1 so dm-room-path's escaped-plus regex is correct rather than double-escaped. --- ts/packages/core/dist/generated/protocol.cjs | 51 +- ts/packages/core/dist/generated/protocol.mjs | 42 +- ts/packages/core/dist/protocol-DZyNTfIN.d.cts | 876 ------------------ ts/packages/core/dist/protocol-DZyNTfIN.d.mts | 876 ------------------ ts/packages/core/src/generated/protocol.ts | 49 +- 5 files changed, 132 insertions(+), 1762 deletions(-) delete mode 100644 ts/packages/core/dist/protocol-DZyNTfIN.d.cts delete mode 100644 ts/packages/core/dist/protocol-DZyNTfIN.d.mts diff --git a/ts/packages/core/dist/generated/protocol.cjs b/ts/packages/core/dist/generated/protocol.cjs index c84ca31..0acf599 100644 --- a/ts/packages/core/dist/generated/protocol.cjs +++ b/ts/packages/core/dist/generated/protocol.cjs @@ -39,6 +39,13 @@ const manageCommandParamsSchema = zod.z.lazy(() => zod.z.union([ zod.z.lazy(() => execListSchema) ]), zod.z.object({}).catchall(zod.z.unknown()), + zod.z.union([ + zod.z.lazy(() => roomSendSchema), + zod.z.lazy(() => roomReadSchema), + zod.z.lazy(() => roomLeaveSchema), + zod.z.lazy(() => roomMembersSchema) + ]), + zod.z.union([zod.z.lazy(() => roomJoinSchema), zod.z.lazy(() => roomInviteSchema)]), zod.z.union([ zod.z.lazy(() => webrtcOfferSchema), zod.z.lazy(() => webrtcAnswerSchema), @@ -127,9 +134,10 @@ const coreDomainNameSchema = zod.z.lazy(() => zod.z.union([ zod.z.literal("core/exec"), zod.z.literal("core/data"), zod.z.literal("core/federation"), - zod.z.literal("core/webrtc") + zod.z.literal("core/webrtc"), + zod.z.literal("core/room") ])); -const namespacedDomainIdSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); +const namespacedDomainIdSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); const privateUseDomainIdSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("x-[A-Za-z0-9_.-]+"))); const handshakeFrameSchema = zod.z.lazy(() => zod.z.object({ "type": zod.z.literal("handshake"), @@ -180,6 +188,31 @@ const revocationAnnounceFrameSchema = zod.z.lazy(() => zod.z.object({ "type": zod.z.literal("revocation-announce"), "entries": zod.z.array(zod.z.lazy(() => revocationEntrySchema)) })); +const roomPathSchema = zod.z.lazy(() => zod.z.union([zod.z.lazy(() => ownerNamedRoomPathSchema), zod.z.lazy(() => dmRoomPathSchema)])); +const deviceIdHexSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}"))); +const ownerNamedRoomPathSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}/[A-Za-z0-9_-]+"))); +const dmRoomPathSchema = zod.z.lazy(() => zod.z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}\\+[0-9a-f]{64}"))); +const roomSendSchema = zod.z.lazy(() => zod.z.object({ + "verb": zod.z.literal("room.send"), + "message-id": zod.z.instanceof(Uint8Array), + "text": zod.z.string(), + "refs": zod.z.array(zod.z.lazy(() => messageRefSchema)).optional() +})); +const roomReadSchema = zod.z.lazy(() => zod.z.object({ + "verb": zod.z.literal("room.read"), + "message-id": zod.z.instanceof(Uint8Array) +})); +const roomLeaveSchema = zod.z.lazy(() => zod.z.object({ "verb": zod.z.literal("room.leave") })); +const roomMembersSchema = zod.z.lazy(() => zod.z.object({ "verb": zod.z.literal("room.members") })); +const messageRefSchema = zod.z.lazy(() => zod.z.object({ + "id": zod.z.instanceof(Uint8Array), + "relation": zod.z.string() +})); +const roomJoinSchema = zod.z.lazy(() => zod.z.object({ "verb": zod.z.literal("room.join") })); +const roomInviteSchema = zod.z.lazy(() => zod.z.object({ + "verb": zod.z.literal("room.invite"), + "invitee": zod.z.lazy(() => deviceIdSchema) +})); const streamSessionSchema = zod.z.lazy(() => zod.z.number().int().nonnegative()); const streamDataFrameSchema = zod.z.lazy(() => zod.z.object({ "type": zod.z.literal("stream-data"), @@ -235,7 +268,8 @@ const tokenClaimsSchema = zod.z.lazy(() => zod.z.object({ "scope": zod.z.lazy(() => capabilityScopeSchema), "expires": zod.z.number().int().nonnegative(), "not-before": zod.z.number().int().nonnegative().optional(), - "parent": zod.z.instanceof(Uint8Array).optional() + "parent": zod.z.instanceof(Uint8Array).optional(), + "delegations-remaining": zod.z.number().int().nonnegative().optional() }).catchall(zod.z.unknown())); const pingFrameSchema = zod.z.lazy(() => zod.z.object({ "type": zod.z.literal("ping") })); const closeFrameSchema = zod.z.lazy(() => zod.z.object({ @@ -337,7 +371,9 @@ exports.coseTokenHeadersSchema = coseTokenHeadersSchema; exports.dataEntriesFrameSchema = dataEntriesFrameSchema; exports.dataHaveFrameSchema = dataHaveFrameSchema; exports.dataRequestFrameSchema = dataRequestFrameSchema; +exports.deviceIdHexSchema = deviceIdHexSchema; exports.deviceIdSchema = deviceIdSchema; +exports.dmRoomPathSchema = dmRoomPathSchema; exports.domainIdSchema = domainIdSchema; exports.execListSchema = execListSchema; exports.execSessionInfoSchema = execSessionInfoSchema; @@ -355,9 +391,11 @@ exports.manageErrorSchema = manageErrorSchema; exports.manageOkSchema = manageOkSchema; exports.manageRequestFrameSchema = manageRequestFrameSchema; exports.manageResponseFrameSchema = manageResponseFrameSchema; +exports.messageRefSchema = messageRefSchema; exports.namespacedCapabilitySchema = namespacedCapabilitySchema; exports.namespacedDomainIdSchema = namespacedDomainIdSchema; exports.observedAddressFrameSchema = observedAddressFrameSchema; +exports.ownerNamedRoomPathSchema = ownerNamedRoomPathSchema; exports.peerAdvertSchema = peerAdvertSchema; exports.peerIdentitySchema = peerIdentitySchema; exports.pingFrameSchema = pingFrameSchema; @@ -378,6 +416,13 @@ exports.relayOfferFrameSchema = relayOfferFrameSchema; exports.revocationAnnounceFrameSchema = revocationAnnounceFrameSchema; exports.revocationClaimsSchema = revocationClaimsSchema; exports.revocationEntrySchema = revocationEntrySchema; +exports.roomInviteSchema = roomInviteSchema; +exports.roomJoinSchema = roomJoinSchema; +exports.roomLeaveSchema = roomLeaveSchema; +exports.roomMembersSchema = roomMembersSchema; +exports.roomPathSchema = roomPathSchema; +exports.roomReadSchema = roomReadSchema; +exports.roomSendSchema = roomSendSchema; exports.streamAckFrameSchema = streamAckFrameSchema; exports.streamDataFrameSchema = streamDataFrameSchema; exports.streamEndFrameSchema = streamEndFrameSchema; diff --git a/ts/packages/core/dist/generated/protocol.mjs b/ts/packages/core/dist/generated/protocol.mjs index 55456f8..17df333 100644 --- a/ts/packages/core/dist/generated/protocol.mjs +++ b/ts/packages/core/dist/generated/protocol.mjs @@ -38,6 +38,13 @@ const manageCommandParamsSchema = z.lazy(() => z.union([ z.lazy(() => execListSchema) ]), z.object({}).catchall(z.unknown()), + z.union([ + z.lazy(() => roomSendSchema), + z.lazy(() => roomReadSchema), + z.lazy(() => roomLeaveSchema), + z.lazy(() => roomMembersSchema) + ]), + z.union([z.lazy(() => roomJoinSchema), z.lazy(() => roomInviteSchema)]), z.union([ z.lazy(() => webrtcOfferSchema), z.lazy(() => webrtcAnswerSchema), @@ -126,9 +133,10 @@ const coreDomainNameSchema = z.lazy(() => z.union([ z.literal("core/exec"), z.literal("core/data"), z.literal("core/federation"), - z.literal("core/webrtc") + z.literal("core/webrtc"), + z.literal("core/room") ])); -const namespacedDomainIdSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); +const namespacedDomainIdSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); const privateUseDomainIdSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("x-[A-Za-z0-9_.-]+"))); const handshakeFrameSchema = z.lazy(() => z.object({ "type": z.literal("handshake"), @@ -179,6 +187,31 @@ const revocationAnnounceFrameSchema = z.lazy(() => z.object({ "type": z.literal("revocation-announce"), "entries": z.array(z.lazy(() => revocationEntrySchema)) })); +const roomPathSchema = z.lazy(() => z.union([z.lazy(() => ownerNamedRoomPathSchema), z.lazy(() => dmRoomPathSchema)])); +const deviceIdHexSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}"))); +const ownerNamedRoomPathSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}/[A-Za-z0-9_-]+"))); +const dmRoomPathSchema = z.lazy(() => z.string().regex(/* @__PURE__ */ new RegExp("[0-9a-f]{64}\\+[0-9a-f]{64}"))); +const roomSendSchema = z.lazy(() => z.object({ + "verb": z.literal("room.send"), + "message-id": z.instanceof(Uint8Array), + "text": z.string(), + "refs": z.array(z.lazy(() => messageRefSchema)).optional() +})); +const roomReadSchema = z.lazy(() => z.object({ + "verb": z.literal("room.read"), + "message-id": z.instanceof(Uint8Array) +})); +const roomLeaveSchema = z.lazy(() => z.object({ "verb": z.literal("room.leave") })); +const roomMembersSchema = z.lazy(() => z.object({ "verb": z.literal("room.members") })); +const messageRefSchema = z.lazy(() => z.object({ + "id": z.instanceof(Uint8Array), + "relation": z.string() +})); +const roomJoinSchema = z.lazy(() => z.object({ "verb": z.literal("room.join") })); +const roomInviteSchema = z.lazy(() => z.object({ + "verb": z.literal("room.invite"), + "invitee": z.lazy(() => deviceIdSchema) +})); const streamSessionSchema = z.lazy(() => z.number().int().nonnegative()); const streamDataFrameSchema = z.lazy(() => z.object({ "type": z.literal("stream-data"), @@ -234,7 +267,8 @@ const tokenClaimsSchema = z.lazy(() => z.object({ "scope": z.lazy(() => capabilityScopeSchema), "expires": z.number().int().nonnegative(), "not-before": z.number().int().nonnegative().optional(), - "parent": z.instanceof(Uint8Array).optional() + "parent": z.instanceof(Uint8Array).optional(), + "delegations-remaining": z.number().int().nonnegative().optional() }).catchall(z.unknown())); const pingFrameSchema = z.lazy(() => z.object({ "type": z.literal("ping") })); const closeFrameSchema = z.lazy(() => z.object({ @@ -319,4 +353,4 @@ const iceCandidateInitSchema = z.lazy(() => z.object({ "username-fragment": z.string().optional() })); //#endregion -export { candidateKindSchema, candidatesFrameSchema, capabilityScopeSchema, capabilityTokenSchema, capabilityVerbSchema, closeFrameSchema, coordinatorFrameSchema, coreCapabilitySchema, coreDomainNameSchema, coseHeaderAlgSchema, coseHeaderKidSchema, coseHeaderLabelSchema, coseSign1Schema, coseTokenHeadersSchema, dataEntriesFrameSchema, dataHaveFrameSchema, dataRequestFrameSchema, deviceIdSchema, domainIdSchema, execListSchema, execSessionInfoSchema, frameSchema, frameVariantSchema, gossipFrameSchema, handleClaimsSchema, handleRecordSchema, handshakeFrameSchema, iceCandidateInitSchema, identityKeySchema, manageCommandParamsSchema, manageCommandSchema, manageErrorSchema, manageOkSchema, manageRequestFrameSchema, manageResponseFrameSchema, namespacedCapabilitySchema, namespacedDomainIdSchema, observedAddressFrameSchema, peerAdvertSchema, peerIdentitySchema, pingFrameSchema, privateUseCapabilitySchema, privateUseDomainIdSchema, procKillSchema, procSignalSchema, procSpawnSchema, protocolVersionSchema, ptyKillSchema, ptyResizeSchema, ptySpawnSchema, ptyWriteSchema, relayConnectFrameSchema, relayDataFrameSchema, relayInboundFrameSchema, relayOfferFrameSchema, revocationAnnounceFrameSchema, revocationClaimsSchema, revocationEntrySchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; +export { candidateKindSchema, candidatesFrameSchema, 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, roomJoinSchema, roomLeaveSchema, roomMembersSchema, roomPathSchema, roomReadSchema, roomSendSchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; diff --git a/ts/packages/core/dist/protocol-DZyNTfIN.d.cts b/ts/packages/core/dist/protocol-DZyNTfIN.d.cts deleted file mode 100644 index 911aa54..0000000 --- a/ts/packages/core/dist/protocol-DZyNTfIN.d.cts +++ /dev/null @@ -1,876 +0,0 @@ -import { z } from "zod"; -//#region src/generated/protocol.d.ts -declare const dataHaveFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>; -declare const dataRequestFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>; -declare const dataEntriesFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>; -declare const handleClaimsSchema: z.ZodLazy, Uint8Array>>>; - "identity-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - candidates: z.ZodOptional, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>>; - mailboxes: z.ZodOptional, Uint8Array>>>>>; - issued: z.ZodNumber; - expires: z.ZodNumber; -}, z.core.$strip>>; -declare const handleRecordSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const manageCommandParamsSchema: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; -}, z.core.$strip>>>]>]>>; -declare const ptySpawnSchema: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>; -declare const ptyWriteSchema: z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>; -declare const ptyResizeSchema: z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>; -declare const ptyKillSchema: z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>; -declare const procSpawnSchema: z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; -}, z.core.$strip>>; -declare const procSignalSchema: z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>; -declare const procKillSchema: z.ZodLazy; - session: z.ZodLazy>; -}, z.core.$strip>>; -declare const execListSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const execSessionInfoSchema: z.ZodLazy>; - kind: z.ZodUnion, z.ZodLiteral<"proc">]>; - argv: z.ZodOptional>; - cwd: z.ZodOptional; -}, z.core.$strip>>; -declare const frameVariantSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>, z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>>, z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>>, z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>>]>>; -declare const frameSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>, z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>>, z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>>, z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>>]>>>>; -declare const protocolVersionSchema: z.ZodLazy; -declare const domainIdSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>; -declare const coreDomainNameSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>; -declare const namespacedDomainIdSchema: z.ZodLazy; -declare const privateUseDomainIdSchema: z.ZodLazy; -declare const handshakeFrameSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>; -declare const identityKeySchema: z.ZodLazy, Uint8Array>; -}, z.core.$strip>>; -declare const deviceIdSchema: z.ZodLazy, Uint8Array>>; -declare const peerIdentitySchema: z.ZodLazy, Uint8Array>>>; - "identity-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - certificate: z.ZodOptional, Uint8Array>>; -}, z.core.$strip>>; -declare const manageCommandSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; -}, z.core.$strip>>; -declare const manageRequestFrameSchema: z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>; -declare const manageOkSchema: z.ZodLazy; -}, z.core.$catchall>>; -declare const manageErrorSchema: z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; -}, z.core.$strip>>; -declare const manageResponseFrameSchema: z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>; -declare const revocationClaimsSchema: z.ZodLazy, Uint8Array>; - issuer: z.ZodLazy, Uint8Array>>>; - "issuer-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - "revoked-at": z.ZodNumber; -}, z.core.$strip>>; -declare const revocationEntrySchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const revocationAnnounceFrameSchema: z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>; -declare const streamSessionSchema: z.ZodLazy; -declare const streamDataFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>; -declare const streamAckFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>; -declare const streamEndFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>; -declare const capabilityVerbSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>; -declare const coreCapabilitySchema: z.ZodLazy; -declare const namespacedCapabilitySchema: z.ZodLazy; -declare const privateUseCapabilitySchema: z.ZodLazy; -declare const capabilityScopeSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const coseHeaderAlgSchema: z.ZodLazy>; -declare const coseHeaderKidSchema: z.ZodLazy>; -declare const coseHeaderLabelSchema: z.ZodLazy>; -declare const coseTokenHeadersSchema: z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>; -declare const coseSign1Schema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>; -declare const capabilityTokenSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const tokenClaimsSchema: z.ZodLazy, Uint8Array>; - issuer: z.ZodLazy, Uint8Array>>>; - "issuer-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - bearer: z.ZodLazy, Uint8Array>>>; - capability: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - expires: z.ZodNumber; - "not-before": z.ZodOptional; - parent: z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>; -declare const pingFrameSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const closeFrameSchema: z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>; -declare const peerAdvertSchema: z.ZodLazy, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; -}, z.core.$strip>>; -declare const gossipFrameSchema: z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const candidateKindSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>; -declare const wireCandidateSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; -}, z.core.$strip>>; -declare const candidatesFrameSchema: z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const syncPunchFrameSchema: z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>; -declare const observedAddressFrameSchema: z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>; -declare const relayOfferFrameSchema: z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>; -declare const relayConnectFrameSchema: z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>; -declare const relayDataFrameSchema: z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>; -declare const relayInboundFrameSchema: z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>; -declare const coordinatorFrameSchema: z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>; -declare const webrtcOfferSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>; -declare const webrtcAnswerSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>; -declare const webrtcIceCandidateSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const iceCandidateInitSchema: z.ZodLazy; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; -}, z.core.$strip>>; -type DataHaveFrame = z.infer; -type DataRequestFrame = z.infer; -type DataEntriesFrame = z.infer; -type HandleClaims = z.infer; -type HandleRecord = z.infer; -type ManageCommandParams = z.infer; -type PtySpawn = z.infer; -type PtyWrite = z.infer; -type PtyResize = z.infer; -type PtyKill = z.infer; -type ProcSpawn = z.infer; -type ProcSignal = z.infer; -type ProcKill = z.infer; -type ExecList = z.infer; -type ExecSessionInfo = z.infer; -type FrameVariant = z.infer; -type Frame = z.infer; -type ProtocolVersion = z.infer; -type DomainId = z.infer; -type CoreDomainName = z.infer; -type NamespacedDomainId = z.infer; -type PrivateUseDomainId = z.infer; -type HandshakeFrame = z.infer; -type IdentityKey = z.infer; -type DeviceId = z.infer; -type PeerIdentity = z.infer; -type ManageCommand = z.infer; -type ManageRequestFrame = z.infer; -type ManageOk = z.infer; -type ManageError = z.infer; -type ManageResponseFrame = z.infer; -type RevocationClaims = z.infer; -type RevocationEntry = z.infer; -type RevocationAnnounceFrame = z.infer; -type StreamSession = z.infer; -type StreamDataFrame = z.infer; -type StreamAckFrame = z.infer; -type StreamEndFrame = z.infer; -type CapabilityVerb = z.infer; -type CoreCapability = z.infer; -type NamespacedCapability = z.infer; -type PrivateUseCapability = z.infer; -type CapabilityScope = z.infer; -type CoseHeaderAlg = z.infer; -type CoseHeaderKid = z.infer; -type CoseHeaderLabel = z.infer; -type CoseTokenHeaders = z.infer; -type CoseSign1 = z.infer; -type CapabilityToken = z.infer; -type TokenClaims = z.infer; -type PingFrame = z.infer; -type CloseFrame = z.infer; -type PeerAdvert = z.infer; -type GossipFrame = z.infer; -type CandidateKind = z.infer; -type WireCandidate = z.infer; -type CandidatesFrame = z.infer; -type SyncPunchFrame = z.infer; -type ObservedAddressFrame = z.infer; -type RelayOfferFrame = z.infer; -type RelayConnectFrame = z.infer; -type RelayDataFrame = z.infer; -type RelayInboundFrame = z.infer; -type CoordinatorFrame = z.infer; -type WebrtcOffer = z.infer; -type WebrtcAnswer = z.infer; -type WebrtcIceCandidate = z.infer; -type IceCandidateInit = z.infer; -//#endregion -export { RelayDataFrame as $, peerAdvertSchema as $t, ManageCommand as A, dataHaveFrameSchema as At, PeerIdentity as B, handleRecordSchema as Bt, FrameVariant as C, syncPunchFrameSchema as Cn, coreDomainNameSchema as Ct, HandshakeFrame as D, webrtcOfferSchema as Dn, coseSign1Schema as Dt, HandleRecord as E, webrtcIceCandidateSchema as En, coseHeaderLabelSchema as Et, ManageResponseFrame as F, execSessionInfoSchema as Ft, ProcSignal as G, manageCommandSchema as Gt, PrivateUseCapability as H, iceCandidateInitSchema as Ht, NamespacedCapability as I, frameSchema as It, PtyKill as J, manageRequestFrameSchema as Jt, ProcSpawn as K, manageErrorSchema as Kt, NamespacedDomainId as L, frameVariantSchema as Lt, ManageError as M, deviceIdSchema as Mt, ManageOk as N, domainIdSchema as Nt, IceCandidateInit as O, wireCandidateSchema as On, coseTokenHeadersSchema as Ot, ManageRequestFrame as P, execListSchema as Pt, RelayConnectFrame as Q, observedAddressFrameSchema as Qt, ObservedAddressFrame as R, gossipFrameSchema as Rt, Frame as S, streamSessionSchema as Sn, coreCapabilitySchema as St, HandleClaims as T, webrtcAnswerSchema as Tn, coseHeaderKidSchema as Tt, PrivateUseDomainId as U, identityKeySchema as Ut, PingFrame as V, handshakeFrameSchema as Vt, ProcKill as W, manageCommandParamsSchema as Wt, PtySpawn as X, namespacedCapabilitySchema as Xt, PtyResize as Y, manageResponseFrameSchema as Yt, PtyWrite as Z, namespacedDomainIdSchema as Zt, DataRequestFrame as _, revocationClaimsSchema as _n, capabilityScopeSchema as _t, CapabilityVerb as a, procSignalSchema as an, StreamAckFrame as at, ExecList as b, streamDataFrameSchema as bn, closeFrameSchema as bt, CoreCapability as c, ptyKillSchema as cn, StreamSession as ct, CoseHeaderKid as d, ptyWriteSchema as dn, WebrtcAnswer as dt, peerIdentitySchema as en, RelayInboundFrame as et, CoseHeaderLabel as f, relayConnectFrameSchema as fn, WebrtcIceCandidate as ft, DataHaveFrame as g, revocationAnnounceFrameSchema as gn, candidatesFrameSchema as gt, DataEntriesFrame as h, relayOfferFrameSchema as hn, candidateKindSchema as ht, CapabilityToken as i, procKillSchema as in, RevocationEntry as it, ManageCommandParams as j, dataRequestFrameSchema as jt, IdentityKey as k, dataEntriesFrameSchema as kt, CoreDomainName as l, ptyResizeSchema as ln, SyncPunchFrame as lt, CoseTokenHeaders as m, relayInboundFrameSchema as mn, WireCandidate as mt, CandidatesFrame as n, privateUseCapabilitySchema as nn, RevocationAnnounceFrame as nt, CloseFrame as o, procSpawnSchema as on, StreamDataFrame as ot, CoseSign1 as p, relayDataFrameSchema as pn, WebrtcOffer as pt, ProtocolVersion as q, manageOkSchema as qt, CapabilityScope as r, privateUseDomainIdSchema as rn, RevocationClaims as rt, CoordinatorFrame as s, protocolVersionSchema as sn, StreamEndFrame as st, CandidateKind as t, pingFrameSchema as tn, RelayOfferFrame as tt, CoseHeaderAlg as u, ptySpawnSchema as un, TokenClaims as ut, DeviceId as v, revocationEntrySchema as vn, capabilityTokenSchema as vt, GossipFrame as w, tokenClaimsSchema as wn, coseHeaderAlgSchema as wt, ExecSessionInfo as x, streamEndFrameSchema as xn, coordinatorFrameSchema as xt, DomainId as y, streamAckFrameSchema as yn, capabilityVerbSchema as yt, PeerAdvert as z, handleClaimsSchema as zt }; \ No newline at end of file diff --git a/ts/packages/core/dist/protocol-DZyNTfIN.d.mts b/ts/packages/core/dist/protocol-DZyNTfIN.d.mts deleted file mode 100644 index 911aa54..0000000 --- a/ts/packages/core/dist/protocol-DZyNTfIN.d.mts +++ /dev/null @@ -1,876 +0,0 @@ -import { z } from "zod"; -//#region src/generated/protocol.d.ts -declare const dataHaveFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>; -declare const dataRequestFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>; -declare const dataEntriesFrameSchema: z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>; -declare const handleClaimsSchema: z.ZodLazy, Uint8Array>>>; - "identity-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - candidates: z.ZodOptional, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>>; - mailboxes: z.ZodOptional, Uint8Array>>>>>; - issued: z.ZodNumber; - expires: z.ZodNumber; -}, z.core.$strip>>; -declare const handleRecordSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const manageCommandParamsSchema: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; -}, z.core.$strip>>>]>]>>; -declare const ptySpawnSchema: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>; -declare const ptyWriteSchema: z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>; -declare const ptyResizeSchema: z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; -}, z.core.$strip>>; -declare const ptyKillSchema: z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>; -declare const procSpawnSchema: z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; -}, z.core.$strip>>; -declare const procSignalSchema: z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; -}, z.core.$strip>>; -declare const procKillSchema: z.ZodLazy; - session: z.ZodLazy>; -}, z.core.$strip>>; -declare const execListSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const execSessionInfoSchema: z.ZodLazy>; - kind: z.ZodUnion, z.ZodLiteral<"proc">]>; - argv: z.ZodOptional>; - cwd: z.ZodOptional; -}, z.core.$strip>>; -declare const frameVariantSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>, z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>>, z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>>, z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>>]>>; -declare const frameSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>>, z.ZodLazy; -}, z.core.$strip>>>, z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>>, z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>>, z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>>, z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>>, z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>>, z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "head-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; -}, z.core.$strip>>>, z.ZodLazy; - peer: z.ZodLazy, Uint8Array>>>; - "from-seq": z.ZodNumber; - entries: z.ZodArray, Uint8Array>>; -}, z.core.$strip>>>]>>>>; -declare const protocolVersionSchema: z.ZodLazy; -declare const domainIdSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>; -declare const coreDomainNameSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>; -declare const namespacedDomainIdSchema: z.ZodLazy; -declare const privateUseDomainIdSchema: z.ZodLazy; -declare const handshakeFrameSchema: z.ZodLazy; - version: z.ZodLazy>; - domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; - params: z.ZodOptional>>; -}, z.core.$strip>>; -declare const identityKeySchema: z.ZodLazy, Uint8Array>; -}, z.core.$strip>>; -declare const deviceIdSchema: z.ZodLazy, Uint8Array>>; -declare const peerIdentitySchema: z.ZodLazy, Uint8Array>>>; - "identity-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - certificate: z.ZodOptional, Uint8Array>>; -}, z.core.$strip>>; -declare const manageCommandSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; -}, z.core.$strip>>; -declare const manageRequestFrameSchema: z.ZodLazy; - "request-id": z.ZodNumber; - command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - params: z.ZodLazy; - shell: z.ZodOptional; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - bytes: z.ZodCustom, Uint8Array>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - cols: z.ZodNumber; - rows: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - argv: z.ZodArray; - cwd: z.ZodOptional; - env: z.ZodObject<{}, z.core.$catchall>; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - signal: z.ZodNumber; - }, z.core.$strip>>>, z.ZodLazy; - session: z.ZodLazy>; - }, z.core.$strip>>>, z.ZodLazy; - }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; - }, z.core.$strip>>>, z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; - }, z.core.$strip>>>]>]>>>; - }, z.core.$strip>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - token: z.ZodOptional, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>; -declare const manageOkSchema: z.ZodLazy; -}, z.core.$catchall>>; -declare const manageErrorSchema: z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; -}, z.core.$strip>>; -declare const manageResponseFrameSchema: z.ZodLazy; - "request-id": z.ZodNumber; - outcome: z.ZodUnion; - }, z.core.$catchall>>>, z.ZodLazy; - code: z.ZodString; - message: z.ZodOptional; - }, z.core.$strip>>>]>; -}, z.core.$strip>>; -declare const revocationClaimsSchema: z.ZodLazy, Uint8Array>; - issuer: z.ZodLazy, Uint8Array>>>; - "issuer-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - "revoked-at": z.ZodNumber; -}, z.core.$strip>>; -declare const revocationEntrySchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const revocationAnnounceFrameSchema: z.ZodLazy; - entries: z.ZodArray, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; - }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; -}, z.core.$strip>>; -declare const streamSessionSchema: z.ZodLazy; -declare const streamDataFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - seq: z.ZodNumber; - channel: z.ZodString; - bytes: z.ZodCustom, Uint8Array>; -}, z.core.$strip>>; -declare const streamAckFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - "ack-seq": z.ZodNumber; - window: z.ZodNumber; -}, z.core.$strip>>; -declare const streamEndFrameSchema: z.ZodLazy; - session: z.ZodLazy>; - "exit-code": z.ZodOptional; - "exit-signal": z.ZodOptional; -}, z.core.$strip>>; -declare const capabilityVerbSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>; -declare const coreCapabilitySchema: z.ZodLazy; -declare const namespacedCapabilitySchema: z.ZodLazy; -declare const privateUseCapabilitySchema: z.ZodLazy; -declare const capabilityScopeSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const coseHeaderAlgSchema: z.ZodLazy>; -declare const coseHeaderKidSchema: z.ZodLazy>; -declare const coseHeaderLabelSchema: z.ZodLazy>; -declare const coseTokenHeadersSchema: z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>; -declare const coseSign1Schema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>; -declare const capabilityTokenSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; - "4": z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; -declare const tokenClaimsSchema: z.ZodLazy, Uint8Array>; - issuer: z.ZodLazy, Uint8Array>>>; - "issuer-key": z.ZodLazy, Uint8Array>; - }, z.core.$strip>>>; - bearer: z.ZodLazy, Uint8Array>>>; - capability: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; - scope: z.ZodLazy; - }, z.core.$strip>>>; - expires: z.ZodNumber; - "not-before": z.ZodOptional; - parent: z.ZodOptional, Uint8Array>>; -}, z.core.$catchall>>; -declare const pingFrameSchema: z.ZodLazy; -}, z.core.$strip>>; -declare const closeFrameSchema: z.ZodLazy; - reason: z.ZodOptional; -}, z.core.$strip>>; -declare const peerAdvertSchema: z.ZodLazy, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; -}, z.core.$strip>>; -declare const gossipFrameSchema: z.ZodLazy; - peers: z.ZodArray, Uint8Array>>>; - addresses: z.ZodArray; - "snapshot-seconds": z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const candidateKindSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>; -declare const wireCandidateSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; -}, z.core.$strip>>; -declare const candidatesFrameSchema: z.ZodLazy; - candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; - priority: z.ZodNumber; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const syncPunchFrameSchema: z.ZodLazy; - nonce: z.ZodNumber; - "deadline-unix-ms": z.ZodNumber; -}, z.core.$strip>>; -declare const observedAddressFrameSchema: z.ZodLazy; - address: z.ZodString; -}, z.core.$strip>>; -declare const relayOfferFrameSchema: z.ZodLazy; - addresses: z.ZodArray; -}, z.core.$strip>>; -declare const relayConnectFrameSchema: z.ZodLazy; - "target-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>; -declare const relayDataFrameSchema: z.ZodLazy; - payload: z.ZodCustom, Uint8Array>; - "to-device": z.ZodOptional, Uint8Array>>>>; - "from-device": z.ZodOptional, Uint8Array>>>>; -}, z.core.$strip>>; -declare const relayInboundFrameSchema: z.ZodLazy; - "source-device": z.ZodLazy, Uint8Array>>>; -}, z.core.$strip>>; -declare const coordinatorFrameSchema: z.ZodLazy; - term: z.ZodNumber; - coordinator: z.ZodLazy, Uint8Array>>>; - "capacity-hint": z.ZodOptional; -}, z.core.$strip>>; -declare const webrtcOfferSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>; -declare const webrtcAnswerSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - sdp: z.ZodString; -}, z.core.$strip>>; -declare const webrtcIceCandidateSchema: z.ZodLazy; - "negotiation-id": z.ZodNumber; - candidate: z.ZodOptional; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; - }, z.core.$strip>>>>; -}, z.core.$strip>>; -declare const iceCandidateInitSchema: z.ZodLazy; - "sdp-m-line-index": z.ZodOptional; - "username-fragment": z.ZodOptional; -}, z.core.$strip>>; -type DataHaveFrame = z.infer; -type DataRequestFrame = z.infer; -type DataEntriesFrame = z.infer; -type HandleClaims = z.infer; -type HandleRecord = z.infer; -type ManageCommandParams = z.infer; -type PtySpawn = z.infer; -type PtyWrite = z.infer; -type PtyResize = z.infer; -type PtyKill = z.infer; -type ProcSpawn = z.infer; -type ProcSignal = z.infer; -type ProcKill = z.infer; -type ExecList = z.infer; -type ExecSessionInfo = z.infer; -type FrameVariant = z.infer; -type Frame = z.infer; -type ProtocolVersion = z.infer; -type DomainId = z.infer; -type CoreDomainName = z.infer; -type NamespacedDomainId = z.infer; -type PrivateUseDomainId = z.infer; -type HandshakeFrame = z.infer; -type IdentityKey = z.infer; -type DeviceId = z.infer; -type PeerIdentity = z.infer; -type ManageCommand = z.infer; -type ManageRequestFrame = z.infer; -type ManageOk = z.infer; -type ManageError = z.infer; -type ManageResponseFrame = z.infer; -type RevocationClaims = z.infer; -type RevocationEntry = z.infer; -type RevocationAnnounceFrame = z.infer; -type StreamSession = z.infer; -type StreamDataFrame = z.infer; -type StreamAckFrame = z.infer; -type StreamEndFrame = z.infer; -type CapabilityVerb = z.infer; -type CoreCapability = z.infer; -type NamespacedCapability = z.infer; -type PrivateUseCapability = z.infer; -type CapabilityScope = z.infer; -type CoseHeaderAlg = z.infer; -type CoseHeaderKid = z.infer; -type CoseHeaderLabel = z.infer; -type CoseTokenHeaders = z.infer; -type CoseSign1 = z.infer; -type CapabilityToken = z.infer; -type TokenClaims = z.infer; -type PingFrame = z.infer; -type CloseFrame = z.infer; -type PeerAdvert = z.infer; -type GossipFrame = z.infer; -type CandidateKind = z.infer; -type WireCandidate = z.infer; -type CandidatesFrame = z.infer; -type SyncPunchFrame = z.infer; -type ObservedAddressFrame = z.infer; -type RelayOfferFrame = z.infer; -type RelayConnectFrame = z.infer; -type RelayDataFrame = z.infer; -type RelayInboundFrame = z.infer; -type CoordinatorFrame = z.infer; -type WebrtcOffer = z.infer; -type WebrtcAnswer = z.infer; -type WebrtcIceCandidate = z.infer; -type IceCandidateInit = z.infer; -//#endregion -export { RelayDataFrame as $, peerAdvertSchema as $t, ManageCommand as A, dataHaveFrameSchema as At, PeerIdentity as B, handleRecordSchema as Bt, FrameVariant as C, syncPunchFrameSchema as Cn, coreDomainNameSchema as Ct, HandshakeFrame as D, webrtcOfferSchema as Dn, coseSign1Schema as Dt, HandleRecord as E, webrtcIceCandidateSchema as En, coseHeaderLabelSchema as Et, ManageResponseFrame as F, execSessionInfoSchema as Ft, ProcSignal as G, manageCommandSchema as Gt, PrivateUseCapability as H, iceCandidateInitSchema as Ht, NamespacedCapability as I, frameSchema as It, PtyKill as J, manageRequestFrameSchema as Jt, ProcSpawn as K, manageErrorSchema as Kt, NamespacedDomainId as L, frameVariantSchema as Lt, ManageError as M, deviceIdSchema as Mt, ManageOk as N, domainIdSchema as Nt, IceCandidateInit as O, wireCandidateSchema as On, coseTokenHeadersSchema as Ot, ManageRequestFrame as P, execListSchema as Pt, RelayConnectFrame as Q, observedAddressFrameSchema as Qt, ObservedAddressFrame as R, gossipFrameSchema as Rt, Frame as S, streamSessionSchema as Sn, coreCapabilitySchema as St, HandleClaims as T, webrtcAnswerSchema as Tn, coseHeaderKidSchema as Tt, PrivateUseDomainId as U, identityKeySchema as Ut, PingFrame as V, handshakeFrameSchema as Vt, ProcKill as W, manageCommandParamsSchema as Wt, PtySpawn as X, namespacedCapabilitySchema as Xt, PtyResize as Y, manageResponseFrameSchema as Yt, PtyWrite as Z, namespacedDomainIdSchema as Zt, DataRequestFrame as _, revocationClaimsSchema as _n, capabilityScopeSchema as _t, CapabilityVerb as a, procSignalSchema as an, StreamAckFrame as at, ExecList as b, streamDataFrameSchema as bn, closeFrameSchema as bt, CoreCapability as c, ptyKillSchema as cn, StreamSession as ct, CoseHeaderKid as d, ptyWriteSchema as dn, WebrtcAnswer as dt, peerIdentitySchema as en, RelayInboundFrame as et, CoseHeaderLabel as f, relayConnectFrameSchema as fn, WebrtcIceCandidate as ft, DataHaveFrame as g, revocationAnnounceFrameSchema as gn, candidatesFrameSchema as gt, DataEntriesFrame as h, relayOfferFrameSchema as hn, candidateKindSchema as ht, CapabilityToken as i, procKillSchema as in, RevocationEntry as it, ManageCommandParams as j, dataRequestFrameSchema as jt, IdentityKey as k, dataEntriesFrameSchema as kt, CoreDomainName as l, ptyResizeSchema as ln, SyncPunchFrame as lt, CoseTokenHeaders as m, relayInboundFrameSchema as mn, WireCandidate as mt, CandidatesFrame as n, privateUseCapabilitySchema as nn, RevocationAnnounceFrame as nt, CloseFrame as o, procSpawnSchema as on, StreamDataFrame as ot, CoseSign1 as p, relayDataFrameSchema as pn, WebrtcOffer as pt, ProtocolVersion as q, manageOkSchema as qt, CapabilityScope as r, privateUseDomainIdSchema as rn, RevocationClaims as rt, CoordinatorFrame as s, protocolVersionSchema as sn, StreamEndFrame as st, CandidateKind as t, pingFrameSchema as tn, RelayOfferFrame as tt, CoseHeaderAlg as u, ptySpawnSchema as un, TokenClaims as ut, DeviceId as v, revocationEntrySchema as vn, capabilityTokenSchema as vt, GossipFrame as w, tokenClaimsSchema as wn, coseHeaderAlgSchema as wt, ExecSessionInfo as x, streamEndFrameSchema as xn, coordinatorFrameSchema as xt, DomainId as y, streamAckFrameSchema as yn, capabilityVerbSchema as yt, PeerAdvert as z, handleClaimsSchema as zt }; \ No newline at end of file diff --git a/ts/packages/core/src/generated/protocol.ts b/ts/packages/core/src/generated/protocol.ts index 6384f86..88d86f0 100644 --- a/ts/packages/core/src/generated/protocol.ts +++ b/ts/packages/core/src/generated/protocol.ts @@ -30,7 +30,7 @@ export const handleClaimsSchema = z.lazy(() => z.object({ export const handleRecordSchema = z.lazy(() => z.lazy(() => coseSign1Schema)); export const manageCommandParamsSchema = z.lazy(() => z.union([z.union([z.lazy(() => ptySpawnSchema), z.lazy(() => ptyWriteSchema), z.lazy(() => ptyResizeSchema), z.lazy(() => ptyKillSchema), z.lazy(() => procSpawnSchema), z.lazy(() => procSignalSchema), z.lazy(() => procKillSchema), z.lazy(() => execListSchema)]), z.object({ -}).catchall(z.unknown()), z.union([z.lazy(() => webrtcOfferSchema), z.lazy(() => webrtcAnswerSchema), z.lazy(() => webrtcIceCandidateSchema)])])); +}).catchall(z.unknown()), z.union([z.lazy(() => roomSendSchema), z.lazy(() => roomReadSchema), z.lazy(() => roomLeaveSchema), z.lazy(() => roomMembersSchema)]), z.union([z.lazy(() => roomJoinSchema), z.lazy(() => roomInviteSchema)]), z.union([z.lazy(() => webrtcOfferSchema), z.lazy(() => webrtcAnswerSchema), z.lazy(() => webrtcIceCandidateSchema)])])); export const ptySpawnSchema = z.lazy(() => z.object({ "verb": z.literal("pty.spawn"), "shell": z.string().optional(), @@ -88,8 +88,8 @@ export const frameVariantSchema = z.lazy(() => z.union([z.lazy(() => handshakeFr export const frameSchema = z.lazy(() => z.lazy(() => frameVariantSchema)); export const protocolVersionSchema = z.lazy(() => z.number().int().nonnegative()); export const domainIdSchema = z.lazy(() => z.union([z.lazy(() => coreDomainNameSchema), z.lazy(() => namespacedDomainIdSchema), z.lazy(() => privateUseDomainIdSchema)])); -export const coreDomainNameSchema = z.lazy(() => z.union([z.literal("core/management"), z.literal("core/exec"), z.literal("core/data"), z.literal("core/federation"), z.literal("core/webrtc")])); -export const namespacedDomainIdSchema = z.lazy(() => z.string().regex(new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); +export const coreDomainNameSchema = z.lazy(() => z.union([z.literal("core/management"), z.literal("core/exec"), z.literal("core/data"), z.literal("core/federation"), z.literal("core/webrtc"), z.literal("core/room")])); +export const namespacedDomainIdSchema = z.lazy(() => z.string().regex(new RegExp("[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+/[A-Za-z0-9_.-]+"))); export const privateUseDomainIdSchema = z.lazy(() => z.string().regex(new RegExp("x-[A-Za-z0-9_.-]+"))); export const handshakeFrameSchema = z.lazy(() => z.object({ "type": z.literal("handshake"), @@ -144,6 +144,37 @@ export const revocationAnnounceFrameSchema = z.lazy(() => z.object({ "type": z.literal("revocation-announce"), "entries": z.array(z.lazy(() => revocationEntrySchema)), })); +export const roomPathSchema = z.lazy(() => z.union([z.lazy(() => ownerNamedRoomPathSchema), z.lazy(() => dmRoomPathSchema)])); +export const deviceIdHexSchema = z.lazy(() => z.string().regex(new RegExp("[0-9a-f]{64}"))); +export const ownerNamedRoomPathSchema = z.lazy(() => z.string().regex(new RegExp("[0-9a-f]{64}/[A-Za-z0-9_-]+"))); +export const dmRoomPathSchema = z.lazy(() => z.string().regex(new RegExp("[0-9a-f]{64}\\+[0-9a-f]{64}"))); +export const roomSendSchema = z.lazy(() => z.object({ + "verb": z.literal("room.send"), + "message-id": z.instanceof(Uint8Array), + "text": z.string(), + "refs": z.array(z.lazy(() => messageRefSchema)).optional(), +})); +export const roomReadSchema = z.lazy(() => z.object({ + "verb": z.literal("room.read"), + "message-id": z.instanceof(Uint8Array), +})); +export const roomLeaveSchema = z.lazy(() => z.object({ + "verb": z.literal("room.leave"), +})); +export const roomMembersSchema = z.lazy(() => z.object({ + "verb": z.literal("room.members"), +})); +export const messageRefSchema = z.lazy(() => z.object({ + "id": z.instanceof(Uint8Array), + "relation": z.string(), +})); +export const roomJoinSchema = z.lazy(() => z.object({ + "verb": z.literal("room.join"), +})); +export const roomInviteSchema = z.lazy(() => z.object({ + "verb": z.literal("room.invite"), + "invitee": z.lazy(() => deviceIdSchema), +})); export const streamSessionSchema = z.lazy(() => z.number().int().nonnegative()); export const streamDataFrameSchema = z.lazy(() => z.object({ "type": z.literal("stream-data"), @@ -191,6 +222,7 @@ export const tokenClaimsSchema = z.lazy(() => z.object({ "expires": z.number().int().nonnegative(), "not-before": z.number().int().nonnegative().optional(), "parent": z.instanceof(Uint8Array).optional(), + "delegations-remaining": z.number().int().nonnegative().optional(), }).catchall(z.unknown())); export const pingFrameSchema = z.lazy(() => z.object({ "type": z.literal("ping"), @@ -307,6 +339,17 @@ export type ManageResponseFrame = z.infer; export type RevocationClaims = z.infer; export type RevocationEntry = z.infer; export type RevocationAnnounceFrame = z.infer; +export type RoomPath = z.infer; +export type DeviceIdHex = z.infer; +export type OwnerNamedRoomPath = z.infer; +export type DmRoomPath = z.infer; +export type RoomSend = z.infer; +export type RoomRead = z.infer; +export type RoomLeave = z.infer; +export type RoomMembers = z.infer; +export type MessageRef = z.infer; +export type RoomJoin = z.infer; +export type RoomInvite = z.infer; export type StreamSession = z.infer; export type StreamDataFrame = z.infer; export type StreamAckFrame = z.infer; From bbe321c7c1e3f7c2223abe5b9fa0d13ceeb7aeff Mon Sep 17 00:00:00 2001 From: Joseph Mearman Date: Fri, 11 Sep 2026 15:28:02 +0100 Subject: [PATCH 4/4] test(conformance): add core/room vectors Covers room.send (with a reply message-ref), room.read, room.leave, room.members under a room:member token, the ungated room.join/ room.invite pair with no token field at all, and the manage-ok grant response riding manage-ok's own extension tail. Two new token vectors exercise the delegations-remaining fix directly: an owner's root grant capped at one further re-delegation, and a delegated child narrowed to zero -- the exact chain that closes the unbounded-admission bug. All nine round-trip through both the TS conformance test and Rust's conformance-check binary with zero Rust source changes, confirming the manage-command-params Json catch-all and capability-scope's open kind field already cover a brand new domain without any typed Rust arm. --- conformance/frames.v1.json | 199 +++- conformance/generate.ts | 128 ++- conformance/tokens.v1.json | 32 + .../core/dist/adapters/node-identity.d.cts | 2 +- .../core/dist/adapters/node-identity.d.mts | 2 +- ts/packages/core/dist/domain/handshake.d.cts | 2 +- ts/packages/core/dist/domain/handshake.d.mts | 2 +- ts/packages/core/dist/domain/tokens.d.cts | 2 +- ts/packages/core/dist/domain/tokens.d.mts | 2 +- .../core/dist/generated/protocol.d.cts | 4 +- .../core/dist/generated/protocol.d.mts | 4 +- ts/packages/core/dist/ports/identity.d.cts | 2 +- ts/packages/core/dist/ports/identity.d.mts | 2 +- ts/packages/core/dist/ports/transport.d.cts | 2 +- ts/packages/core/dist/ports/transport.d.mts | 2 +- ts/packages/core/dist/protocol-DKGCdPBm.d.cts | 1022 +++++++++++++++++ ts/packages/core/dist/protocol-DKGCdPBm.d.mts | 1022 +++++++++++++++++ 17 files changed, 2415 insertions(+), 16 deletions(-) create mode 100644 ts/packages/core/dist/protocol-DKGCdPBm.d.cts create mode 100644 ts/packages/core/dist/protocol-DKGCdPBm.d.mts diff --git a/conformance/frames.v1.json b/conformance/frames.v1.json index 1f7f170..c7961cb 100644 --- a/conformance/frames.v1.json +++ b/conformance/frames.v1.json @@ -1,6 +1,6 @@ { "protocol_version": 1, - "description": "Frame conformance vectors for protocol version 1, covering every $frame-variant in spec/frame.cddl except handshake-frame (see handshake.v1.json). manage-response-frame gets two vectors, one per branch of its manage-ok / manage-error outcome union. The four core/webrtc vectors (offer, answer, ice-candidate, end-of-candidates) exercise manage-request-frame's params socket with new content, not a new frame kind; the offer vector is also the first in this file to exercise manage-request-frame's optional token field.", + "description": "Frame conformance vectors for protocol version 1, covering every $frame-variant in spec/frame.cddl except handshake-frame (see handshake.v1.json). manage-response-frame gets two vectors, one per branch of its manage-ok / manage-error outcome union. The four core/webrtc vectors (offer, answer, ice-candidate, end-of-candidates) exercise manage-request-frame's params socket with new content, not a new frame kind; the offer vector is also the first in this file to exercise manage-request-frame's optional token field. The core/room vectors (send with a reply ref, read, leave, members, invite) carry the room:member token from tokens.v1.json's own root grant; the join vector and its manage-ok grant response are the first in this file to exercise an ungated manage-request (no token field at all) and manage-ok's own `* tstr => any` extension tail respectively.", "vectors": [ { "name": "ping_v1", @@ -273,6 +273,203 @@ }, "wire_hex": "a464747970656e6d616e6167652d726571756573746573636f7065a1646b696e64646e6f646567636f6d6d616e64a264766572626d7765627274633a7369676e616c66706172616d73a26476657262747765627274632e6963652d63616e6469646174656e6e65676f74696174696f6e2d6964016a726571756573742d696406" }, + { + "name": "manage_request_v1_room_send_with_reply_ref", + "message": { + "type": "manage-request", + "request-id": 7, + "command": { + "verb": "room:member", + "params": { + "verb": "room.send", + "message-id": { + "hex": "aa01" + }, + "text": "sounds good, see you then", + "refs": [ + { + "id": { + "hex": "aa00" + }, + "relation": "reply" + } + ] + } + }, + "scope": { + "kind": "room", + "path": "1111111111111111111111111111111111111111111111111111111111111111/general" + }, + "token": [ + { + "hex": "a2613126613458201111111111111111111111111111111111111111111111111111111111111111" + }, + {}, + { + "hex": "a86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e6701" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ] + }, + "wire_hex": "a564747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c65746f6b656e845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a4647265667381a262696442aa006872656c6174696f6e657265706c7964746578747819736f756e647320676f6f642c2073656520796f75207468656e647665726269726f6f6d2e73656e646a6d6573736167652d696442aa016a726571756573742d696407" + }, + { + "name": "manage_request_v1_room_read", + "message": { + "type": "manage-request", + "request-id": 8, + "command": { + "verb": "room:member", + "params": { + "verb": "room.read", + "message-id": { + "hex": "aa01" + } + } + }, + "scope": { + "kind": "room", + "path": "1111111111111111111111111111111111111111111111111111111111111111/general" + }, + "token": [ + { + "hex": "a2613126613458201111111111111111111111111111111111111111111111111111111111111111" + }, + {}, + { + "hex": "a86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e6701" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ] + }, + "wire_hex": "a564747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c65746f6b656e845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a2647665726269726f6f6d2e726561646a6d6573736167652d696442aa016a726571756573742d696408" + }, + { + "name": "manage_request_v1_room_leave", + "message": { + "type": "manage-request", + "request-id": 9, + "command": { + "verb": "room:member", + "params": { + "verb": "room.leave" + } + }, + "scope": { + "kind": "room", + "path": "1111111111111111111111111111111111111111111111111111111111111111/general" + }, + "token": [ + { + "hex": "a2613126613458201111111111111111111111111111111111111111111111111111111111111111" + }, + {}, + { + "hex": "a86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e6701" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ] + }, + "wire_hex": "a564747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c65746f6b656e845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a164766572626a726f6f6d2e6c656176656a726571756573742d696409" + }, + { + "name": "manage_request_v1_room_members", + "message": { + "type": "manage-request", + "request-id": 10, + "command": { + "verb": "room:member", + "params": { + "verb": "room.members" + } + }, + "scope": { + "kind": "room", + "path": "1111111111111111111111111111111111111111111111111111111111111111/general" + }, + "token": [ + { + "hex": "a2613126613458201111111111111111111111111111111111111111111111111111111111111111" + }, + {}, + { + "hex": "a86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e6701" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ] + }, + "wire_hex": "a564747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c65746f6b656e845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a164766572626c726f6f6d2e6d656d626572736a726571756573742d69640a" + }, + { + "name": "manage_request_v1_room_join_dm", + "message": { + "type": "manage-request", + "request-id": 11, + "command": { + "verb": "room:member", + "params": { + "verb": "room.join" + } + }, + "scope": { + "kind": "room", + "path": "2222222222222222222222222222222222222222222222222222222222222222+3333333333333333333333333333333333333333333333333333333333333333" + } + }, + "wire_hex": "a464747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687881323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232322b3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333367636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a1647665726269726f6f6d2e6a6f696e6a726571756573742d69640b" + }, + { + "name": "manage_request_v1_room_invite", + "message": { + "type": "manage-request", + "request-id": 12, + "command": { + "verb": "room:member", + "params": { + "verb": "room.invite", + "invitee": { + "hex": "3333333333333333333333333333333333333333333333333333333333333333" + } + } + }, + "scope": { + "kind": "room", + "path": "1111111111111111111111111111111111111111111111111111111111111111/general" + } + }, + "wire_hex": "a464747970656e6d616e6167652d726571756573746573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c67636f6d6d616e64a264766572626b726f6f6d3a6d656d62657266706172616d73a264766572626b726f6f6d2e696e7669746567696e7669746565582033333333333333333333333333333333333333333333333333333333333333336a726571756573742d69640c" + }, + { + "name": "manage_response_v1_room_join_granted", + "message": { + "type": "manage-response", + "request-id": 11, + "outcome": { + "result": "ok", + "granted-token": [ + { + "hex": "a2613126613458202222222222222222222222222222222222222222222222222222222222222222" + }, + {}, + { + "hex": "a96573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258203333333333333333333333333333333333333333333333333333333333333333666973737565725820222222222222222222222222222222222222222222222222222222222222222266706172656e745901dc845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67657870697265731b000001b18314880068746f6b656e2d696450040404040404040404040404040404046a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd7564656c65676174696f6e732d72656d61696e696e6700" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ] + } + }, + "wire_hex": "a364747970656f6d616e6167652d726573706f6e7365676f7574636f6d65a266726573756c74626f6b6d6772616e7465642d746f6b656e845828a2613126613458202222222222222222222222222222222222222222222222222222222222222222a0590351a96573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258203333333333333333333333333333333333333333333333333333333333333333666973737565725820222222222222222222222222222222222222222222222222222222222222222266706172656e745901dc845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67657870697265731b000001b18314880068746f6b656e2d696450040404040404040404040404040404046a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd7564656c65676174696f6e732d72656d61696e696e67005840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a726571756573742d69640b" + }, { "name": "revocation_announce_v1_two_entries", "message": { diff --git a/conformance/generate.ts b/conformance/generate.ts index 326a6c6..2361101 100644 --- a/conformance/generate.ts +++ b/conformance/generate.ts @@ -114,6 +114,59 @@ const delegatedTokenVector = vector( delegatedToken, ); +// core/room's own device-id-hex path components -- the tstr hex-string encoding room-path regexes match against, distinct from deviceA/deviceB/deviceC's bstr wire encoding used everywhere else. Reuses the same synthetic byte pattern so a reader can see it's the same device in both forms. +const deviceAHex = "11".repeat(SHA256_BYTE_LENGTH); +const deviceBHex = "22".repeat(SHA256_BYTE_LENGTH); +const deviceCHex = "33".repeat(SHA256_BYTE_LENGTH); + +// A room:member grant chain demonstrating this session's own delegations-remaining fix: the owner (deviceA) issues a root grant to deviceB capped at one further re-delegation, and deviceB narrows it (a strictly lower value, 0) when re-delegating to deviceC -- deviceC's own token therefore bears no further-delegation authority at all, closing the unbounded-admission gap the claim exists to fix. +const roomMemberRootTokenClaims: JsonWire = { + "token-id": hex("03".repeat(TOKEN_ID_BYTE_LENGTH)), + issuer: deviceA, + "issuer-key": { alg: -7, "public-key": publicKeyEs256A }, + bearer: deviceB, + capability: "room:member", + scope: { kind: "room", path: `${deviceAHex}/general` }, + expires: 1893456000000, + "delegations-remaining": 1, +}; + +const roomMemberRootToken: JsonWire = [ + hex(wireHex({ 1: -7, 4: deviceA })), + {}, + hex(wireHex(roomMemberRootTokenClaims)), + signatureFiller, +]; + +const roomMemberRootTokenVector = vector( + "capability_token_v1_room_member_root_grant", + roomMemberRootToken, +); + +const roomMemberDelegatedTokenClaims: JsonWire = { + "token-id": hex("04".repeat(TOKEN_ID_BYTE_LENGTH)), + issuer: deviceB, + "issuer-key": { alg: -7, "public-key": publicKeyEs256B }, + bearer: deviceC, + capability: "room:member", + scope: { kind: "room", path: `${deviceAHex}/general` }, + expires: 1861920000000, + parent: hex(roomMemberRootTokenVector.wire_hex), + "delegations-remaining": 0, +}; + +const roomMemberDelegatedToken: JsonWire = [ + hex(wireHex({ 1: -7, 4: deviceB })), + {}, + hex(wireHex(roomMemberDelegatedTokenClaims)), + signatureFiller, +]; + +const roomMemberDelegatedTokenVector = vector( + "capability_token_v1_room_member_delegated_no_further_delegation", + roomMemberDelegatedToken, +); + const handleClaims: JsonWire = { handle: "alice@example.com", "device-id": deviceD, @@ -134,6 +187,8 @@ const handleRecordVector = vector("handle_record_v1_dns_anchored", [ const tokenVectors: Vector[] = [ rootTokenVector, delegatedTokenVector, + roomMemberRootTokenVector, + roomMemberDelegatedTokenVector, handleRecordVector, ]; @@ -282,6 +337,77 @@ const frameVectors: Vector[] = [ }, scope: { kind: "node" }, }), + // core/room -- room.send carries an optional refs array (message-ref's own open relation string), exercising the reply/forward reference mechanism alongside the gated room:member token. + vector("manage_request_v1_room_send_with_reply_ref", { + type: "manage-request", + "request-id": 7, + command: { + verb: "room:member", + params: { + verb: "room.send", + "message-id": hex("aa01"), + text: "sounds good, see you then", + refs: [{ id: hex("aa00"), relation: "reply" }], + }, + }, + scope: { kind: "room", path: `${deviceAHex}/general` }, + token: roomMemberRootToken, + }), + vector("manage_request_v1_room_read", { + type: "manage-request", + "request-id": 8, + command: { + verb: "room:member", + params: { verb: "room.read", "message-id": hex("aa01") }, + }, + scope: { kind: "room", path: `${deviceAHex}/general` }, + token: roomMemberRootToken, + }), + vector("manage_request_v1_room_leave", { + type: "manage-request", + "request-id": 9, + command: { + verb: "room:member", + params: { verb: "room.leave" }, + }, + scope: { kind: "room", path: `${deviceAHex}/general` }, + token: roomMemberRootToken, + }), + vector("manage_request_v1_room_members", { + type: "manage-request", + "request-id": 10, + command: { + verb: "room:member", + params: { verb: "room.members" }, + }, + scope: { kind: "room", path: `${deviceAHex}/general` }, + token: roomMemberRootToken, + }), + // room.join and room.invite are deliberately ungated (no token field) -- access control is a human's explicit approval in the receiving UI, not a pre-shared token, the first verbs in this spec to work that way. This join vector uses a DM room path (the sorted device-id pair), the shape a first, tokenless contact actually needs. + vector("manage_request_v1_room_join_dm", { + type: "manage-request", + "request-id": 11, + command: { + verb: "room:member", + params: { verb: "room.join" }, + }, + scope: { kind: "room", path: `${deviceBHex}+${deviceCHex}` }, + }), + vector("manage_request_v1_room_invite", { + type: "manage-request", + "request-id": 12, + command: { + verb: "room:member", + params: { verb: "room.invite", invitee: deviceC }, + }, + scope: { kind: "room", path: `${deviceAHex}/general` }, + }), + // The approval response to room.join/room.invite: manage-ok extended with the freshly minted grant, riding the existing `* tstr => any` tail rather than a new response shape. + vector("manage_response_v1_room_join_granted", { + type: "manage-response", + "request-id": 11, + outcome: { result: "ok", "granted-token": roomMemberDelegatedToken }, + }), vector("revocation_announce_v1_two_entries", { type: "revocation-announce", // Each entry is its own cose-sign1 (same shape as capability-token), so a revocation carries the same self-certifying attribution as the token it revokes: a verifier checks revocation-claims.issuer against the token's own issuer field, not merely that some signature verifies -- only a token's own issuer may revoke it. @@ -377,6 +503,6 @@ write( write( "frames.v1.json", - "Frame conformance vectors for protocol version 1, covering every $frame-variant in spec/frame.cddl except handshake-frame (see handshake.v1.json). manage-response-frame gets two vectors, one per branch of its manage-ok / manage-error outcome union. The four core/webrtc vectors (offer, answer, ice-candidate, end-of-candidates) exercise manage-request-frame's params socket with new content, not a new frame kind; the offer vector is also the first in this file to exercise manage-request-frame's optional token field.", + "Frame conformance vectors for protocol version 1, covering every $frame-variant in spec/frame.cddl except handshake-frame (see handshake.v1.json). manage-response-frame gets two vectors, one per branch of its manage-ok / manage-error outcome union. The four core/webrtc vectors (offer, answer, ice-candidate, end-of-candidates) exercise manage-request-frame's params socket with new content, not a new frame kind; the offer vector is also the first in this file to exercise manage-request-frame's optional token field. The core/room vectors (send with a reply ref, read, leave, members, invite) carry the room:member token from tokens.v1.json's own root grant; the join vector and its manage-ok grant response are the first in this file to exercise an ungated manage-request (no token field at all) and manage-ok's own `* tstr => any` extension tail respectively.", frameVectors, ); diff --git a/conformance/tokens.v1.json b/conformance/tokens.v1.json index 2201fbb..67622c1 100644 --- a/conformance/tokens.v1.json +++ b/conformance/tokens.v1.json @@ -34,6 +34,38 @@ ], "wire_hex": "845828a2613126613458202222222222222222222222222222222222222222222222222222222222222222a05902a0a86573636f7065a2646b696e6466666f6c64657264706174686c2f776f726b2f7375626469726662656172657258203333333333333333333333333333333333333333333333333333333333333333666973737565725820222222222222222222222222222222222222222222222222222222222222222266706172656e74590180845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059010fa76573636f7065a2646b696e6466666f6c6465726470617468652f776f726b6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450010101010101010101010101010101016a6361706162696c69747968657865633a7074796a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb5840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67657870697265731b000001b18314880068746f6b656e2d696450020202020202020202020202020202026a6361706162696c69747968657865633a7074796a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd5840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, + { + "name": "capability_token_v1_room_member_root_grant", + "message": [ + { + "hex": "a2613126613458201111111111111111111111111111111111111111111111111111111111111111" + }, + {}, + { + "hex": "a86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e6701" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "wire_hex": "845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "capability_token_v1_room_member_delegated_no_further_delegation", + "message": [ + { + "hex": "a2613126613458202222222222222222222222222222222222222222222222222222222222222222" + }, + {}, + { + "hex": "a96573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258203333333333333333333333333333333333333333333333333333333333333333666973737565725820222222222222222222222222222222222222222222222222222222222222222266706172656e745901dc845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67657870697265731b000001b18314880068746f6b656e2d696450040404040404040404040404040404046a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd7564656c65676174696f6e732d72656d61696e696e6700" + }, + { + "hex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "wire_hex": "845828a2613126613458202222222222222222222222222222222222222222222222222222222222222222a0590351a96573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258203333333333333333333333333333333333333333333333333333333333333333666973737565725820222222222222222222222222222222222222222222222222222222222222222266706172656e745901dc845828a2613126613458201111111111111111111111111111111111111111111111111111111111111111a059016ba86573636f7065a2646b696e6464726f6f6d64706174687848313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312f67656e6572616c6662656172657258202222222222222222222222222222222222222222222222222222222222222222666973737565725820111111111111111111111111111111111111111111111111111111111111111167657870697265731b000001b8dac5b40068746f6b656e2d696450030303030303030303030303030303036a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb7564656c65676174696f6e732d72656d61696e696e67015840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff67657870697265731b000001b18314880068746f6b656e2d696450040404040404040404040404040404046a6361706162696c6974796b726f6f6d3a6d656d6265726a6973737565722d6b6579a263616c67266a7075626c69632d6b6579584104ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd7564656c65676174696f6e732d72656d61696e696e67005840ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, { "name": "handle_record_v1_dns_anchored", "message": [ diff --git a/ts/packages/core/dist/adapters/node-identity.d.cts b/ts/packages/core/dist/adapters/node-identity.d.cts index 0e27062..bc8fb35 100644 --- a/ts/packages/core/dist/adapters/node-identity.d.cts +++ b/ts/packages/core/dist/adapters/node-identity.d.cts @@ -1,4 +1,4 @@ -import { k as IdentityKey, v as DeviceId } from "../protocol-DZyNTfIN.cjs"; +import { j as IdentityKey, v as DeviceId } from "../protocol-DKGCdPBm.cjs"; import { IdentityPort } from "../ports/identity.cjs"; import { webcrypto } from "node:crypto"; //#region src/adapters/node-identity.d.ts diff --git a/ts/packages/core/dist/adapters/node-identity.d.mts b/ts/packages/core/dist/adapters/node-identity.d.mts index f306be8..db8fc58 100644 --- a/ts/packages/core/dist/adapters/node-identity.d.mts +++ b/ts/packages/core/dist/adapters/node-identity.d.mts @@ -1,4 +1,4 @@ -import { k as IdentityKey, v as DeviceId } from "../protocol-DZyNTfIN.mjs"; +import { j as IdentityKey, v as DeviceId } from "../protocol-DKGCdPBm.mjs"; import { IdentityPort } from "../ports/identity.mjs"; import { webcrypto } from "node:crypto"; //#region src/adapters/node-identity.d.ts diff --git a/ts/packages/core/dist/domain/handshake.d.cts b/ts/packages/core/dist/domain/handshake.d.cts index 0aa60f6..753c326 100644 --- a/ts/packages/core/dist/domain/handshake.d.cts +++ b/ts/packages/core/dist/domain/handshake.d.cts @@ -1,4 +1,4 @@ -import { D as HandshakeFrame, q as ProtocolVersion, y as DomainId } from "../protocol-DZyNTfIN.cjs"; +import { Z as ProtocolVersion, k as HandshakeFrame, x as DomainId } from "../protocol-DKGCdPBm.cjs"; //#region src/domain/handshake.d.ts /** The highest protocol version this build of core understands. */ export declare const SUPPORTED_PROTOCOL_VERSION: ProtocolVersion; diff --git a/ts/packages/core/dist/domain/handshake.d.mts b/ts/packages/core/dist/domain/handshake.d.mts index ec4edd5..40471f2 100644 --- a/ts/packages/core/dist/domain/handshake.d.mts +++ b/ts/packages/core/dist/domain/handshake.d.mts @@ -1,4 +1,4 @@ -import { D as HandshakeFrame, q as ProtocolVersion, y as DomainId } from "../protocol-DZyNTfIN.mjs"; +import { Z as ProtocolVersion, k as HandshakeFrame, x as DomainId } from "../protocol-DKGCdPBm.mjs"; //#region src/domain/handshake.d.ts /** The highest protocol version this build of core understands. */ export declare const SUPPORTED_PROTOCOL_VERSION: ProtocolVersion; diff --git a/ts/packages/core/dist/domain/tokens.d.cts b/ts/packages/core/dist/domain/tokens.d.cts index 5b31da3..dbdfd14 100644 --- a/ts/packages/core/dist/domain/tokens.d.cts +++ b/ts/packages/core/dist/domain/tokens.d.cts @@ -1,4 +1,4 @@ -import { i as CapabilityToken, it as RevocationEntry, rt as RevocationClaims, ut as TokenClaims, v as DeviceId } from "../protocol-DZyNTfIN.cjs"; +import { ct as RevocationEntry, i as CapabilityToken, st as RevocationClaims, v as DeviceId, xt as TokenClaims } from "../protocol-DKGCdPBm.cjs"; import { IdentityPort } from "../ports/identity.cjs"; import { Clock } from "../ports/clock.cjs"; //#region src/domain/tokens.d.ts diff --git a/ts/packages/core/dist/domain/tokens.d.mts b/ts/packages/core/dist/domain/tokens.d.mts index 5a21754..f0c176c 100644 --- a/ts/packages/core/dist/domain/tokens.d.mts +++ b/ts/packages/core/dist/domain/tokens.d.mts @@ -1,4 +1,4 @@ -import { i as CapabilityToken, it as RevocationEntry, rt as RevocationClaims, ut as TokenClaims, v as DeviceId } from "../protocol-DZyNTfIN.mjs"; +import { ct as RevocationEntry, i as CapabilityToken, st as RevocationClaims, v as DeviceId, xt as TokenClaims } from "../protocol-DKGCdPBm.mjs"; import { IdentityPort } from "../ports/identity.mjs"; import { Clock } from "../ports/clock.mjs"; //#region src/domain/tokens.d.ts diff --git a/ts/packages/core/dist/generated/protocol.d.cts b/ts/packages/core/dist/generated/protocol.d.cts index ba49751..c0f3823 100644 --- a/ts/packages/core/dist/generated/protocol.d.cts +++ b/ts/packages/core/dist/generated/protocol.d.cts @@ -1,2 +1,2 @@ -import { $ as RelayDataFrame, $t as peerAdvertSchema, A as ManageCommand, At as dataHaveFrameSchema, B as PeerIdentity, Bt as handleRecordSchema, C as FrameVariant, Cn as syncPunchFrameSchema, Ct as coreDomainNameSchema, D as HandshakeFrame, Dn as webrtcOfferSchema, Dt as coseSign1Schema, E as HandleRecord, En as webrtcIceCandidateSchema, Et as coseHeaderLabelSchema, F as ManageResponseFrame, Ft as execSessionInfoSchema, G as ProcSignal, Gt as manageCommandSchema, H as PrivateUseCapability, Ht as iceCandidateInitSchema, I as NamespacedCapability, It as frameSchema, J as PtyKill, Jt as manageRequestFrameSchema, K as ProcSpawn, Kt as manageErrorSchema, L as NamespacedDomainId, Lt as frameVariantSchema, M as ManageError, Mt as deviceIdSchema, N as ManageOk, Nt as domainIdSchema, O as IceCandidateInit, On as wireCandidateSchema, Ot as coseTokenHeadersSchema, P as ManageRequestFrame, Pt as execListSchema, Q as RelayConnectFrame, Qt as observedAddressFrameSchema, R as ObservedAddressFrame, Rt as gossipFrameSchema, S as Frame, Sn as streamSessionSchema, St as coreCapabilitySchema, T as HandleClaims, Tn as webrtcAnswerSchema, Tt as coseHeaderKidSchema, U as PrivateUseDomainId, Ut as identityKeySchema, V as PingFrame, Vt as handshakeFrameSchema, W as ProcKill, Wt as manageCommandParamsSchema, X as PtySpawn, Xt as namespacedCapabilitySchema, Y as PtyResize, Yt as manageResponseFrameSchema, Z as PtyWrite, Zt as namespacedDomainIdSchema, _ as DataRequestFrame, _n as revocationClaimsSchema, _t as capabilityScopeSchema, a as CapabilityVerb, an as procSignalSchema, at as StreamAckFrame, b as ExecList, bn as streamDataFrameSchema, bt as closeFrameSchema, c as CoreCapability, cn as ptyKillSchema, ct as StreamSession, d as CoseHeaderKid, dn as ptyWriteSchema, dt as WebrtcAnswer, en as peerIdentitySchema, et as RelayInboundFrame, f as CoseHeaderLabel, fn as relayConnectFrameSchema, ft as WebrtcIceCandidate, g as DataHaveFrame, gn as revocationAnnounceFrameSchema, gt as candidatesFrameSchema, h as DataEntriesFrame, hn as relayOfferFrameSchema, ht as candidateKindSchema, i as CapabilityToken, in as procKillSchema, it as RevocationEntry, j as ManageCommandParams, jt as dataRequestFrameSchema, k as IdentityKey, kt as dataEntriesFrameSchema, l as CoreDomainName, ln as ptyResizeSchema, lt as SyncPunchFrame, m as CoseTokenHeaders, mn as relayInboundFrameSchema, mt as WireCandidate, n as CandidatesFrame, nn as privateUseCapabilitySchema, nt as RevocationAnnounceFrame, o as CloseFrame, on as procSpawnSchema, ot as StreamDataFrame, p as CoseSign1, pn as relayDataFrameSchema, pt as WebrtcOffer, q as ProtocolVersion, qt as manageOkSchema, r as CapabilityScope, rn as privateUseDomainIdSchema, rt as RevocationClaims, s as CoordinatorFrame, sn as protocolVersionSchema, st as StreamEndFrame, t as CandidateKind, tn as pingFrameSchema, tt as RelayOfferFrame, u as CoseHeaderAlg, un as ptySpawnSchema, ut as TokenClaims, v as DeviceId, vn as revocationEntrySchema, vt as capabilityTokenSchema, w as GossipFrame, wn as tokenClaimsSchema, wt as coseHeaderAlgSchema, x as ExecSessionInfo, xn as streamEndFrameSchema, xt as coordinatorFrameSchema, y as DomainId, yn as streamAckFrameSchema, yt as capabilityVerbSchema, z as PeerAdvert, zt as handleClaimsSchema } from "../protocol-DZyNTfIN.cjs"; -export { CandidateKind, CandidatesFrame, CapabilityScope, CapabilityToken, CapabilityVerb, CloseFrame, CoordinatorFrame, CoreCapability, CoreDomainName, CoseHeaderAlg, CoseHeaderKid, CoseHeaderLabel, CoseSign1, CoseTokenHeaders, DataEntriesFrame, DataHaveFrame, DataRequestFrame, DeviceId, DomainId, ExecList, ExecSessionInfo, Frame, FrameVariant, GossipFrame, HandleClaims, HandleRecord, HandshakeFrame, IceCandidateInit, IdentityKey, ManageCommand, ManageCommandParams, ManageError, ManageOk, ManageRequestFrame, ManageResponseFrame, NamespacedCapability, NamespacedDomainId, ObservedAddressFrame, PeerAdvert, PeerIdentity, PingFrame, PrivateUseCapability, PrivateUseDomainId, ProcKill, ProcSignal, ProcSpawn, ProtocolVersion, PtyKill, PtyResize, PtySpawn, PtyWrite, RelayConnectFrame, RelayDataFrame, RelayInboundFrame, RelayOfferFrame, RevocationAnnounceFrame, RevocationClaims, RevocationEntry, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, capabilityScopeSchema, capabilityTokenSchema, capabilityVerbSchema, closeFrameSchema, coordinatorFrameSchema, coreCapabilitySchema, coreDomainNameSchema, coseHeaderAlgSchema, coseHeaderKidSchema, coseHeaderLabelSchema, coseSign1Schema, coseTokenHeadersSchema, dataEntriesFrameSchema, dataHaveFrameSchema, dataRequestFrameSchema, deviceIdSchema, domainIdSchema, execListSchema, execSessionInfoSchema, frameSchema, frameVariantSchema, gossipFrameSchema, handleClaimsSchema, handleRecordSchema, handshakeFrameSchema, iceCandidateInitSchema, identityKeySchema, manageCommandParamsSchema, manageCommandSchema, manageErrorSchema, manageOkSchema, manageRequestFrameSchema, manageResponseFrameSchema, namespacedCapabilitySchema, namespacedDomainIdSchema, observedAddressFrameSchema, peerAdvertSchema, peerIdentitySchema, pingFrameSchema, privateUseCapabilitySchema, privateUseDomainIdSchema, procKillSchema, procSignalSchema, procSpawnSchema, protocolVersionSchema, ptyKillSchema, ptyResizeSchema, ptySpawnSchema, ptyWriteSchema, relayConnectFrameSchema, relayDataFrameSchema, relayInboundFrameSchema, relayOfferFrameSchema, revocationAnnounceFrameSchema, revocationClaimsSchema, revocationEntrySchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; \ No newline at end of file +import { $ as PtyResize, $t as handleRecordSchema, A as IceCandidateInit, An as relayOfferFrameSchema, At as capabilityVerbSchema, B as NamespacedDomainId, Bn as roomSendSchema, Bt as dataEntriesFrameSchema, C as ExecSessionInfo, Cn as ptyKillSchema, Ct as WebrtcIceCandidate, D as HandleClaims, Dn as relayConnectFrameSchema, Dt as candidatesFrameSchema, E as GossipFrame, En as ptyWriteSchema, Et as candidateKindSchema, F as ManageOk, Fn as roomJoinSchema, Ft as coseHeaderAlgSchema, G as PingFrame, Gn as syncPunchFrameSchema, Gt as dmRoomPathSchema, H as OwnerNamedRoomPath, Hn as streamDataFrameSchema, Ht as dataRequestFrameSchema, I as ManageRequestFrame, In as roomLeaveSchema, It as coseHeaderKidSchema, J as ProcKill, Jn as webrtcIceCandidateSchema, Jt as execSessionInfoSchema, K as PrivateUseCapability, Kn as tokenClaimsSchema, Kt as domainIdSchema, L as ManageResponseFrame, Ln as roomMembersSchema, Lt as coseHeaderLabelSchema, M as ManageCommand, Mn as revocationClaimsSchema, Mt as coordinatorFrameSchema, N as ManageCommandParams, Nn as revocationEntrySchema, Nt as coreCapabilitySchema, O as HandleRecord, On as relayDataFrameSchema, Ot as capabilityScopeSchema, P as ManageError, Pn as roomInviteSchema, Pt as coreDomainNameSchema, Q as PtyKill, Qt as handleClaimsSchema, R as MessageRef, Rn as roomPathSchema, Rt as coseSign1Schema, S as ExecList, Sn as protocolVersionSchema, St as WebrtcAnswer, T as FrameVariant, Tn as ptySpawnSchema, Tt as WireCandidate, U as PeerAdvert, Un as streamEndFrameSchema, Ut as deviceIdHexSchema, V as ObservedAddressFrame, Vn as streamAckFrameSchema, Vt as dataHaveFrameSchema, W as PeerIdentity, Wn as streamSessionSchema, Wt as deviceIdSchema, X as ProcSpawn, Xn as wireCandidateSchema, Xt as frameVariantSchema, Y as ProcSignal, Yn as webrtcOfferSchema, Yt as frameSchema, Z as ProtocolVersion, Zt as gossipFrameSchema, _ as DataRequestFrame, _n as privateUseCapabilitySchema, _t as StreamDataFrame, a as CapabilityVerb, an as manageErrorSchema, at as RelayOfferFrame, b as DmRoomPath, bn as procSignalSchema, bt as SyncPunchFrame, c as CoreCapability, cn as manageResponseFrameSchema, ct as RevocationEntry, d as CoseHeaderKid, dn as namespacedDomainIdSchema, dt as RoomLeave, en as handshakeFrameSchema, et as PtySpawn, f as CoseHeaderLabel, fn as observedAddressFrameSchema, ft as RoomMembers, g as DataHaveFrame, gn as pingFrameSchema, gt as StreamAckFrame, h as DataEntriesFrame, hn as peerIdentitySchema, ht as RoomSend, i as CapabilityToken, in as manageCommandSchema, it as RelayInboundFrame, j as IdentityKey, jn as revocationAnnounceFrameSchema, jt as closeFrameSchema, k as HandshakeFrame, kn as relayInboundFrameSchema, kt as capabilityTokenSchema, l as CoreDomainName, ln as messageRefSchema, lt as RoomInvite, m as CoseTokenHeaders, mn as peerAdvertSchema, mt as RoomRead, n as CandidatesFrame, nn as identityKeySchema, nt as RelayConnectFrame, o as CloseFrame, on as manageOkSchema, ot as RevocationAnnounceFrame, p as CoseSign1, pn as ownerNamedRoomPathSchema, pt as RoomPath, q as PrivateUseDomainId, qn as webrtcAnswerSchema, qt as execListSchema, r as CapabilityScope, rn as manageCommandParamsSchema, rt as RelayDataFrame, s as CoordinatorFrame, sn as manageRequestFrameSchema, st as RevocationClaims, t as CandidateKind, tn as iceCandidateInitSchema, tt as PtyWrite, u as CoseHeaderAlg, un as namespacedCapabilitySchema, ut as RoomJoin, v as DeviceId, vn as privateUseDomainIdSchema, vt as StreamEndFrame, w as Frame, wn as ptyResizeSchema, wt as WebrtcOffer, x as DomainId, xn as procSpawnSchema, xt as TokenClaims, y as DeviceIdHex, yn as procKillSchema, yt as StreamSession, z as NamespacedCapability, zn as roomReadSchema, zt as coseTokenHeadersSchema } from "../protocol-DKGCdPBm.cjs"; +export { CandidateKind, CandidatesFrame, 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, RoomLeave, RoomMembers, RoomPath, RoomRead, RoomSend, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, 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, roomJoinSchema, roomLeaveSchema, roomMembersSchema, roomPathSchema, roomReadSchema, roomSendSchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; \ No newline at end of file diff --git a/ts/packages/core/dist/generated/protocol.d.mts b/ts/packages/core/dist/generated/protocol.d.mts index f58e6dd..4f34f31 100644 --- a/ts/packages/core/dist/generated/protocol.d.mts +++ b/ts/packages/core/dist/generated/protocol.d.mts @@ -1,2 +1,2 @@ -import { $ as RelayDataFrame, $t as peerAdvertSchema, A as ManageCommand, At as dataHaveFrameSchema, B as PeerIdentity, Bt as handleRecordSchema, C as FrameVariant, Cn as syncPunchFrameSchema, Ct as coreDomainNameSchema, D as HandshakeFrame, Dn as webrtcOfferSchema, Dt as coseSign1Schema, E as HandleRecord, En as webrtcIceCandidateSchema, Et as coseHeaderLabelSchema, F as ManageResponseFrame, Ft as execSessionInfoSchema, G as ProcSignal, Gt as manageCommandSchema, H as PrivateUseCapability, Ht as iceCandidateInitSchema, I as NamespacedCapability, It as frameSchema, J as PtyKill, Jt as manageRequestFrameSchema, K as ProcSpawn, Kt as manageErrorSchema, L as NamespacedDomainId, Lt as frameVariantSchema, M as ManageError, Mt as deviceIdSchema, N as ManageOk, Nt as domainIdSchema, O as IceCandidateInit, On as wireCandidateSchema, Ot as coseTokenHeadersSchema, P as ManageRequestFrame, Pt as execListSchema, Q as RelayConnectFrame, Qt as observedAddressFrameSchema, R as ObservedAddressFrame, Rt as gossipFrameSchema, S as Frame, Sn as streamSessionSchema, St as coreCapabilitySchema, T as HandleClaims, Tn as webrtcAnswerSchema, Tt as coseHeaderKidSchema, U as PrivateUseDomainId, Ut as identityKeySchema, V as PingFrame, Vt as handshakeFrameSchema, W as ProcKill, Wt as manageCommandParamsSchema, X as PtySpawn, Xt as namespacedCapabilitySchema, Y as PtyResize, Yt as manageResponseFrameSchema, Z as PtyWrite, Zt as namespacedDomainIdSchema, _ as DataRequestFrame, _n as revocationClaimsSchema, _t as capabilityScopeSchema, a as CapabilityVerb, an as procSignalSchema, at as StreamAckFrame, b as ExecList, bn as streamDataFrameSchema, bt as closeFrameSchema, c as CoreCapability, cn as ptyKillSchema, ct as StreamSession, d as CoseHeaderKid, dn as ptyWriteSchema, dt as WebrtcAnswer, en as peerIdentitySchema, et as RelayInboundFrame, f as CoseHeaderLabel, fn as relayConnectFrameSchema, ft as WebrtcIceCandidate, g as DataHaveFrame, gn as revocationAnnounceFrameSchema, gt as candidatesFrameSchema, h as DataEntriesFrame, hn as relayOfferFrameSchema, ht as candidateKindSchema, i as CapabilityToken, in as procKillSchema, it as RevocationEntry, j as ManageCommandParams, jt as dataRequestFrameSchema, k as IdentityKey, kt as dataEntriesFrameSchema, l as CoreDomainName, ln as ptyResizeSchema, lt as SyncPunchFrame, m as CoseTokenHeaders, mn as relayInboundFrameSchema, mt as WireCandidate, n as CandidatesFrame, nn as privateUseCapabilitySchema, nt as RevocationAnnounceFrame, o as CloseFrame, on as procSpawnSchema, ot as StreamDataFrame, p as CoseSign1, pn as relayDataFrameSchema, pt as WebrtcOffer, q as ProtocolVersion, qt as manageOkSchema, r as CapabilityScope, rn as privateUseDomainIdSchema, rt as RevocationClaims, s as CoordinatorFrame, sn as protocolVersionSchema, st as StreamEndFrame, t as CandidateKind, tn as pingFrameSchema, tt as RelayOfferFrame, u as CoseHeaderAlg, un as ptySpawnSchema, ut as TokenClaims, v as DeviceId, vn as revocationEntrySchema, vt as capabilityTokenSchema, w as GossipFrame, wn as tokenClaimsSchema, wt as coseHeaderAlgSchema, x as ExecSessionInfo, xn as streamEndFrameSchema, xt as coordinatorFrameSchema, y as DomainId, yn as streamAckFrameSchema, yt as capabilityVerbSchema, z as PeerAdvert, zt as handleClaimsSchema } from "../protocol-DZyNTfIN.mjs"; -export { CandidateKind, CandidatesFrame, CapabilityScope, CapabilityToken, CapabilityVerb, CloseFrame, CoordinatorFrame, CoreCapability, CoreDomainName, CoseHeaderAlg, CoseHeaderKid, CoseHeaderLabel, CoseSign1, CoseTokenHeaders, DataEntriesFrame, DataHaveFrame, DataRequestFrame, DeviceId, DomainId, ExecList, ExecSessionInfo, Frame, FrameVariant, GossipFrame, HandleClaims, HandleRecord, HandshakeFrame, IceCandidateInit, IdentityKey, ManageCommand, ManageCommandParams, ManageError, ManageOk, ManageRequestFrame, ManageResponseFrame, NamespacedCapability, NamespacedDomainId, ObservedAddressFrame, PeerAdvert, PeerIdentity, PingFrame, PrivateUseCapability, PrivateUseDomainId, ProcKill, ProcSignal, ProcSpawn, ProtocolVersion, PtyKill, PtyResize, PtySpawn, PtyWrite, RelayConnectFrame, RelayDataFrame, RelayInboundFrame, RelayOfferFrame, RevocationAnnounceFrame, RevocationClaims, RevocationEntry, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, capabilityScopeSchema, capabilityTokenSchema, capabilityVerbSchema, closeFrameSchema, coordinatorFrameSchema, coreCapabilitySchema, coreDomainNameSchema, coseHeaderAlgSchema, coseHeaderKidSchema, coseHeaderLabelSchema, coseSign1Schema, coseTokenHeadersSchema, dataEntriesFrameSchema, dataHaveFrameSchema, dataRequestFrameSchema, deviceIdSchema, domainIdSchema, execListSchema, execSessionInfoSchema, frameSchema, frameVariantSchema, gossipFrameSchema, handleClaimsSchema, handleRecordSchema, handshakeFrameSchema, iceCandidateInitSchema, identityKeySchema, manageCommandParamsSchema, manageCommandSchema, manageErrorSchema, manageOkSchema, manageRequestFrameSchema, manageResponseFrameSchema, namespacedCapabilitySchema, namespacedDomainIdSchema, observedAddressFrameSchema, peerAdvertSchema, peerIdentitySchema, pingFrameSchema, privateUseCapabilitySchema, privateUseDomainIdSchema, procKillSchema, procSignalSchema, procSpawnSchema, protocolVersionSchema, ptyKillSchema, ptyResizeSchema, ptySpawnSchema, ptyWriteSchema, relayConnectFrameSchema, relayDataFrameSchema, relayInboundFrameSchema, relayOfferFrameSchema, revocationAnnounceFrameSchema, revocationClaimsSchema, revocationEntrySchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; \ No newline at end of file +import { $ as PtyResize, $t as handleRecordSchema, A as IceCandidateInit, An as relayOfferFrameSchema, At as capabilityVerbSchema, B as NamespacedDomainId, Bn as roomSendSchema, Bt as dataEntriesFrameSchema, C as ExecSessionInfo, Cn as ptyKillSchema, Ct as WebrtcIceCandidate, D as HandleClaims, Dn as relayConnectFrameSchema, Dt as candidatesFrameSchema, E as GossipFrame, En as ptyWriteSchema, Et as candidateKindSchema, F as ManageOk, Fn as roomJoinSchema, Ft as coseHeaderAlgSchema, G as PingFrame, Gn as syncPunchFrameSchema, Gt as dmRoomPathSchema, H as OwnerNamedRoomPath, Hn as streamDataFrameSchema, Ht as dataRequestFrameSchema, I as ManageRequestFrame, In as roomLeaveSchema, It as coseHeaderKidSchema, J as ProcKill, Jn as webrtcIceCandidateSchema, Jt as execSessionInfoSchema, K as PrivateUseCapability, Kn as tokenClaimsSchema, Kt as domainIdSchema, L as ManageResponseFrame, Ln as roomMembersSchema, Lt as coseHeaderLabelSchema, M as ManageCommand, Mn as revocationClaimsSchema, Mt as coordinatorFrameSchema, N as ManageCommandParams, Nn as revocationEntrySchema, Nt as coreCapabilitySchema, O as HandleRecord, On as relayDataFrameSchema, Ot as capabilityScopeSchema, P as ManageError, Pn as roomInviteSchema, Pt as coreDomainNameSchema, Q as PtyKill, Qt as handleClaimsSchema, R as MessageRef, Rn as roomPathSchema, Rt as coseSign1Schema, S as ExecList, Sn as protocolVersionSchema, St as WebrtcAnswer, T as FrameVariant, Tn as ptySpawnSchema, Tt as WireCandidate, U as PeerAdvert, Un as streamEndFrameSchema, Ut as deviceIdHexSchema, V as ObservedAddressFrame, Vn as streamAckFrameSchema, Vt as dataHaveFrameSchema, W as PeerIdentity, Wn as streamSessionSchema, Wt as deviceIdSchema, X as ProcSpawn, Xn as wireCandidateSchema, Xt as frameVariantSchema, Y as ProcSignal, Yn as webrtcOfferSchema, Yt as frameSchema, Z as ProtocolVersion, Zt as gossipFrameSchema, _ as DataRequestFrame, _n as privateUseCapabilitySchema, _t as StreamDataFrame, a as CapabilityVerb, an as manageErrorSchema, at as RelayOfferFrame, b as DmRoomPath, bn as procSignalSchema, bt as SyncPunchFrame, c as CoreCapability, cn as manageResponseFrameSchema, ct as RevocationEntry, d as CoseHeaderKid, dn as namespacedDomainIdSchema, dt as RoomLeave, en as handshakeFrameSchema, et as PtySpawn, f as CoseHeaderLabel, fn as observedAddressFrameSchema, ft as RoomMembers, g as DataHaveFrame, gn as pingFrameSchema, gt as StreamAckFrame, h as DataEntriesFrame, hn as peerIdentitySchema, ht as RoomSend, i as CapabilityToken, in as manageCommandSchema, it as RelayInboundFrame, j as IdentityKey, jn as revocationAnnounceFrameSchema, jt as closeFrameSchema, k as HandshakeFrame, kn as relayInboundFrameSchema, kt as capabilityTokenSchema, l as CoreDomainName, ln as messageRefSchema, lt as RoomInvite, m as CoseTokenHeaders, mn as peerAdvertSchema, mt as RoomRead, n as CandidatesFrame, nn as identityKeySchema, nt as RelayConnectFrame, o as CloseFrame, on as manageOkSchema, ot as RevocationAnnounceFrame, p as CoseSign1, pn as ownerNamedRoomPathSchema, pt as RoomPath, q as PrivateUseDomainId, qn as webrtcAnswerSchema, qt as execListSchema, r as CapabilityScope, rn as manageCommandParamsSchema, rt as RelayDataFrame, s as CoordinatorFrame, sn as manageRequestFrameSchema, st as RevocationClaims, t as CandidateKind, tn as iceCandidateInitSchema, tt as PtyWrite, u as CoseHeaderAlg, un as namespacedCapabilitySchema, ut as RoomJoin, v as DeviceId, vn as privateUseDomainIdSchema, vt as StreamEndFrame, w as Frame, wn as ptyResizeSchema, wt as WebrtcOffer, x as DomainId, xn as procSpawnSchema, xt as TokenClaims, y as DeviceIdHex, yn as procKillSchema, yt as StreamSession, z as NamespacedCapability, zn as roomReadSchema, zt as coseTokenHeadersSchema } from "../protocol-DKGCdPBm.mjs"; +export { CandidateKind, CandidatesFrame, 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, RoomLeave, RoomMembers, RoomPath, RoomRead, RoomSend, StreamAckFrame, StreamDataFrame, StreamEndFrame, StreamSession, SyncPunchFrame, TokenClaims, WebrtcAnswer, WebrtcIceCandidate, WebrtcOffer, WireCandidate, candidateKindSchema, candidatesFrameSchema, 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, roomJoinSchema, roomLeaveSchema, roomMembersSchema, roomPathSchema, roomReadSchema, roomSendSchema, streamAckFrameSchema, streamDataFrameSchema, streamEndFrameSchema, streamSessionSchema, syncPunchFrameSchema, tokenClaimsSchema, webrtcAnswerSchema, webrtcIceCandidateSchema, webrtcOfferSchema, wireCandidateSchema }; \ No newline at end of file diff --git a/ts/packages/core/dist/ports/identity.d.cts b/ts/packages/core/dist/ports/identity.d.cts index 99e0100..996d8b1 100644 --- a/ts/packages/core/dist/ports/identity.d.cts +++ b/ts/packages/core/dist/ports/identity.d.cts @@ -1,4 +1,4 @@ -import { k as IdentityKey, v as DeviceId } from "../protocol-DZyNTfIN.cjs"; +import { j as IdentityKey, v as DeviceId } from "../protocol-DKGCdPBm.cjs"; //#region src/ports/identity.d.ts /** * 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). diff --git a/ts/packages/core/dist/ports/identity.d.mts b/ts/packages/core/dist/ports/identity.d.mts index dcf0f82..5b00685 100644 --- a/ts/packages/core/dist/ports/identity.d.mts +++ b/ts/packages/core/dist/ports/identity.d.mts @@ -1,4 +1,4 @@ -import { k as IdentityKey, v as DeviceId } from "../protocol-DZyNTfIN.mjs"; +import { j as IdentityKey, v as DeviceId } from "../protocol-DKGCdPBm.mjs"; //#region src/ports/identity.d.ts /** * 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). diff --git a/ts/packages/core/dist/ports/transport.d.cts b/ts/packages/core/dist/ports/transport.d.cts index 3c7ab1a..8a864be 100644 --- a/ts/packages/core/dist/ports/transport.d.cts +++ b/ts/packages/core/dist/ports/transport.d.cts @@ -1,4 +1,4 @@ -import { S as Frame } from "../protocol-DZyNTfIN.cjs"; +import { w as Frame } from "../protocol-DKGCdPBm.cjs"; //#region src/ports/transport.d.ts /** * An async, serialisable-data contract for exchanging frame values over some connection -- deliberately without baking in any specific transport's own primitives (no raw socket types, no WebSocket-specific options), so a TCP adapter, a WebSocket adapter, or an in-memory adapter for tests can all satisfy it. diff --git a/ts/packages/core/dist/ports/transport.d.mts b/ts/packages/core/dist/ports/transport.d.mts index 4fd6c36..21726c2 100644 --- a/ts/packages/core/dist/ports/transport.d.mts +++ b/ts/packages/core/dist/ports/transport.d.mts @@ -1,4 +1,4 @@ -import { S as Frame } from "../protocol-DZyNTfIN.mjs"; +import { w as Frame } from "../protocol-DKGCdPBm.mjs"; //#region src/ports/transport.d.ts /** * An async, serialisable-data contract for exchanging frame values over some connection -- deliberately without baking in any specific transport's own primitives (no raw socket types, no WebSocket-specific options), so a TCP adapter, a WebSocket adapter, or an in-memory adapter for tests can all satisfy it. diff --git a/ts/packages/core/dist/protocol-DKGCdPBm.d.cts b/ts/packages/core/dist/protocol-DKGCdPBm.d.cts new file mode 100644 index 0000000..1bdbbc9 --- /dev/null +++ b/ts/packages/core/dist/protocol-DKGCdPBm.d.cts @@ -0,0 +1,1022 @@ +import { z } from "zod"; +//#region src/generated/protocol.d.ts +declare const dataHaveFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>; +declare const dataRequestFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>; +declare const dataEntriesFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>; +declare const handleClaimsSchema: z.ZodLazy, Uint8Array>>>; + "identity-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + candidates: z.ZodOptional, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>>; + mailboxes: z.ZodOptional, Uint8Array>>>>>; + issued: z.ZodNumber; + expires: z.ZodNumber; +}, z.core.$strip>>; +declare const handleRecordSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const manageCommandParamsSchema: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>]>, z.ZodUnion; +}, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; +}, z.core.$strip>>>]>]>>; +declare const ptySpawnSchema: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>; +declare const ptyWriteSchema: z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const ptyResizeSchema: z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>; +declare const ptyKillSchema: z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>; +declare const procSpawnSchema: z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; +}, z.core.$strip>>; +declare const procSignalSchema: z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>; +declare const procKillSchema: z.ZodLazy; + session: z.ZodLazy>; +}, z.core.$strip>>; +declare const execListSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const execSessionInfoSchema: z.ZodLazy>; + kind: z.ZodUnion, z.ZodLiteral<"proc">]>; + argv: z.ZodOptional>; + cwd: z.ZodOptional; +}, z.core.$strip>>; +declare const frameVariantSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>>, z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>>, z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>>]>>; +declare const frameSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>>, z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>>, z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>>]>>>>; +declare const protocolVersionSchema: z.ZodLazy; +declare const domainIdSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>; +declare const coreDomainNameSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>; +declare const namespacedDomainIdSchema: z.ZodLazy; +declare const privateUseDomainIdSchema: z.ZodLazy; +declare const handshakeFrameSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>; +declare const identityKeySchema: z.ZodLazy, Uint8Array>; +}, z.core.$strip>>; +declare const deviceIdSchema: z.ZodLazy, Uint8Array>>; +declare const peerIdentitySchema: z.ZodLazy, Uint8Array>>>; + "identity-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + certificate: z.ZodOptional, Uint8Array>>; +}, z.core.$strip>>; +declare const manageCommandSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; +}, z.core.$strip>>; +declare const manageRequestFrameSchema: z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>; +declare const manageOkSchema: z.ZodLazy; +}, z.core.$catchall>>; +declare const manageErrorSchema: z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; +}, z.core.$strip>>; +declare const manageResponseFrameSchema: z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>; +declare const revocationClaimsSchema: z.ZodLazy, Uint8Array>; + issuer: z.ZodLazy, Uint8Array>>>; + "issuer-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + "revoked-at": z.ZodNumber; +}, z.core.$strip>>; +declare const revocationEntrySchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const revocationAnnounceFrameSchema: z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>; +declare const roomPathSchema: z.ZodLazy>, z.ZodLazy>]>>; +declare const deviceIdHexSchema: z.ZodLazy; +declare const ownerNamedRoomPathSchema: z.ZodLazy; +declare const dmRoomPathSchema: z.ZodLazy; +declare const roomSendSchema: z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; +}, z.core.$strip>>; +declare const roomReadSchema: z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const roomLeaveSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const roomMembersSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const messageRefSchema: z.ZodLazy, Uint8Array>; + relation: z.ZodString; +}, z.core.$strip>>; +declare const roomJoinSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const roomInviteSchema: z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const streamSessionSchema: z.ZodLazy; +declare const streamDataFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const streamAckFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>; +declare const streamEndFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>; +declare const capabilityVerbSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>; +declare const coreCapabilitySchema: z.ZodLazy; +declare const namespacedCapabilitySchema: z.ZodLazy; +declare const privateUseCapabilitySchema: z.ZodLazy; +declare const capabilityScopeSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const coseHeaderAlgSchema: z.ZodLazy>; +declare const coseHeaderKidSchema: z.ZodLazy>; +declare const coseHeaderLabelSchema: z.ZodLazy>; +declare const coseTokenHeadersSchema: z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>; +declare const coseSign1Schema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>; +declare const capabilityTokenSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const tokenClaimsSchema: z.ZodLazy, Uint8Array>; + issuer: z.ZodLazy, Uint8Array>>>; + "issuer-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + bearer: z.ZodLazy, Uint8Array>>>; + capability: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + expires: z.ZodNumber; + "not-before": z.ZodOptional; + parent: z.ZodOptional, Uint8Array>>; + "delegations-remaining": z.ZodOptional; +}, z.core.$catchall>>; +declare const pingFrameSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const closeFrameSchema: z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>; +declare const peerAdvertSchema: z.ZodLazy, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; +}, z.core.$strip>>; +declare const gossipFrameSchema: z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const candidateKindSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>; +declare const wireCandidateSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; +}, z.core.$strip>>; +declare const candidatesFrameSchema: z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const syncPunchFrameSchema: z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>; +declare const observedAddressFrameSchema: z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>; +declare const relayOfferFrameSchema: z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>; +declare const relayConnectFrameSchema: z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const relayDataFrameSchema: z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>; +declare const relayInboundFrameSchema: z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const coordinatorFrameSchema: z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>; +declare const webrtcOfferSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>; +declare const webrtcAnswerSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>; +declare const webrtcIceCandidateSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const iceCandidateInitSchema: z.ZodLazy; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; +}, z.core.$strip>>; +type DataHaveFrame = z.infer; +type DataRequestFrame = z.infer; +type DataEntriesFrame = z.infer; +type HandleClaims = z.infer; +type HandleRecord = z.infer; +type ManageCommandParams = z.infer; +type PtySpawn = z.infer; +type PtyWrite = z.infer; +type PtyResize = z.infer; +type PtyKill = z.infer; +type ProcSpawn = z.infer; +type ProcSignal = z.infer; +type ProcKill = z.infer; +type ExecList = z.infer; +type ExecSessionInfo = z.infer; +type FrameVariant = z.infer; +type Frame = z.infer; +type ProtocolVersion = z.infer; +type DomainId = z.infer; +type CoreDomainName = z.infer; +type NamespacedDomainId = z.infer; +type PrivateUseDomainId = z.infer; +type HandshakeFrame = z.infer; +type IdentityKey = z.infer; +type DeviceId = z.infer; +type PeerIdentity = z.infer; +type ManageCommand = z.infer; +type ManageRequestFrame = z.infer; +type ManageOk = z.infer; +type ManageError = z.infer; +type ManageResponseFrame = z.infer; +type RevocationClaims = z.infer; +type RevocationEntry = z.infer; +type RevocationAnnounceFrame = z.infer; +type RoomPath = z.infer; +type DeviceIdHex = z.infer; +type OwnerNamedRoomPath = z.infer; +type DmRoomPath = z.infer; +type RoomSend = z.infer; +type RoomRead = z.infer; +type RoomLeave = z.infer; +type RoomMembers = z.infer; +type MessageRef = z.infer; +type RoomJoin = z.infer; +type RoomInvite = z.infer; +type StreamSession = z.infer; +type StreamDataFrame = z.infer; +type StreamAckFrame = z.infer; +type StreamEndFrame = z.infer; +type CapabilityVerb = z.infer; +type CoreCapability = z.infer; +type NamespacedCapability = z.infer; +type PrivateUseCapability = z.infer; +type CapabilityScope = z.infer; +type CoseHeaderAlg = z.infer; +type CoseHeaderKid = z.infer; +type CoseHeaderLabel = z.infer; +type CoseTokenHeaders = z.infer; +type CoseSign1 = z.infer; +type CapabilityToken = z.infer; +type TokenClaims = z.infer; +type PingFrame = z.infer; +type CloseFrame = z.infer; +type PeerAdvert = z.infer; +type GossipFrame = z.infer; +type CandidateKind = z.infer; +type WireCandidate = z.infer; +type CandidatesFrame = z.infer; +type SyncPunchFrame = z.infer; +type ObservedAddressFrame = z.infer; +type RelayOfferFrame = z.infer; +type RelayConnectFrame = z.infer; +type RelayDataFrame = z.infer; +type RelayInboundFrame = z.infer; +type CoordinatorFrame = z.infer; +type WebrtcOffer = z.infer; +type WebrtcAnswer = z.infer; +type WebrtcIceCandidate = z.infer; +type IceCandidateInit = z.infer; +//#endregion +export { PtyResize as $, handleRecordSchema as $t, IceCandidateInit as A, relayOfferFrameSchema as An, capabilityVerbSchema as At, NamespacedDomainId as B, roomSendSchema as Bn, dataEntriesFrameSchema as Bt, ExecSessionInfo as C, ptyKillSchema as Cn, WebrtcIceCandidate as Ct, HandleClaims as D, relayConnectFrameSchema as Dn, candidatesFrameSchema as Dt, GossipFrame as E, ptyWriteSchema as En, candidateKindSchema as Et, ManageOk as F, roomJoinSchema as Fn, coseHeaderAlgSchema as Ft, PingFrame as G, syncPunchFrameSchema as Gn, dmRoomPathSchema as Gt, OwnerNamedRoomPath as H, streamDataFrameSchema as Hn, dataRequestFrameSchema as Ht, ManageRequestFrame as I, roomLeaveSchema as In, coseHeaderKidSchema as It, ProcKill as J, webrtcIceCandidateSchema as Jn, execSessionInfoSchema as Jt, PrivateUseCapability as K, tokenClaimsSchema as Kn, domainIdSchema as Kt, ManageResponseFrame as L, roomMembersSchema as Ln, coseHeaderLabelSchema as Lt, ManageCommand as M, revocationClaimsSchema as Mn, coordinatorFrameSchema as Mt, ManageCommandParams as N, revocationEntrySchema as Nn, coreCapabilitySchema as Nt, HandleRecord as O, relayDataFrameSchema as On, capabilityScopeSchema as Ot, ManageError as P, roomInviteSchema as Pn, coreDomainNameSchema as Pt, PtyKill as Q, handleClaimsSchema as Qt, MessageRef as R, roomPathSchema as Rn, coseSign1Schema as Rt, ExecList as S, protocolVersionSchema as Sn, WebrtcAnswer as St, FrameVariant as T, ptySpawnSchema as Tn, WireCandidate as Tt, PeerAdvert as U, streamEndFrameSchema as Un, deviceIdHexSchema as Ut, ObservedAddressFrame as V, streamAckFrameSchema as Vn, dataHaveFrameSchema as Vt, PeerIdentity as W, streamSessionSchema as Wn, deviceIdSchema as Wt, ProcSpawn as X, wireCandidateSchema as Xn, frameVariantSchema as Xt, ProcSignal as Y, webrtcOfferSchema as Yn, frameSchema as Yt, ProtocolVersion as Z, gossipFrameSchema as Zt, DataRequestFrame as _, privateUseCapabilitySchema as _n, StreamDataFrame as _t, CapabilityVerb as a, manageErrorSchema as an, RelayOfferFrame as at, DmRoomPath as b, procSignalSchema as bn, SyncPunchFrame as bt, CoreCapability as c, manageResponseFrameSchema as cn, RevocationEntry as ct, CoseHeaderKid as d, namespacedDomainIdSchema as dn, RoomLeave as dt, handshakeFrameSchema as en, PtySpawn as et, CoseHeaderLabel as f, observedAddressFrameSchema as fn, RoomMembers as ft, DataHaveFrame as g, pingFrameSchema as gn, StreamAckFrame as gt, DataEntriesFrame as h, peerIdentitySchema as hn, RoomSend as ht, CapabilityToken as i, manageCommandSchema as in, RelayInboundFrame as it, IdentityKey as j, revocationAnnounceFrameSchema as jn, closeFrameSchema as jt, HandshakeFrame as k, relayInboundFrameSchema as kn, capabilityTokenSchema as kt, CoreDomainName as l, messageRefSchema as ln, RoomInvite as lt, CoseTokenHeaders as m, peerAdvertSchema as mn, RoomRead as mt, CandidatesFrame as n, identityKeySchema as nn, RelayConnectFrame as nt, CloseFrame as o, manageOkSchema as on, RevocationAnnounceFrame as ot, CoseSign1 as p, ownerNamedRoomPathSchema as pn, RoomPath as pt, PrivateUseDomainId as q, webrtcAnswerSchema as qn, execListSchema as qt, CapabilityScope as r, manageCommandParamsSchema as rn, RelayDataFrame as rt, CoordinatorFrame as s, manageRequestFrameSchema as sn, RevocationClaims as st, CandidateKind as t, iceCandidateInitSchema as tn, PtyWrite as tt, CoseHeaderAlg as u, namespacedCapabilitySchema as un, RoomJoin as ut, DeviceId as v, privateUseDomainIdSchema as vn, StreamEndFrame as vt, Frame as w, ptyResizeSchema as wn, WebrtcOffer as wt, DomainId as x, procSpawnSchema as xn, TokenClaims as xt, DeviceIdHex as y, procKillSchema as yn, StreamSession as yt, NamespacedCapability as z, roomReadSchema as zn, coseTokenHeadersSchema as zt }; \ No newline at end of file diff --git a/ts/packages/core/dist/protocol-DKGCdPBm.d.mts b/ts/packages/core/dist/protocol-DKGCdPBm.d.mts new file mode 100644 index 0000000..1bdbbc9 --- /dev/null +++ b/ts/packages/core/dist/protocol-DKGCdPBm.d.mts @@ -0,0 +1,1022 @@ +import { z } from "zod"; +//#region src/generated/protocol.d.ts +declare const dataHaveFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>; +declare const dataRequestFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>; +declare const dataEntriesFrameSchema: z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>; +declare const handleClaimsSchema: z.ZodLazy, Uint8Array>>>; + "identity-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + candidates: z.ZodOptional, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>>; + mailboxes: z.ZodOptional, Uint8Array>>>>>; + issued: z.ZodNumber; + expires: z.ZodNumber; +}, z.core.$strip>>; +declare const handleRecordSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const manageCommandParamsSchema: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>]>, z.ZodUnion; +}, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; +}, z.core.$strip>>>]>]>>; +declare const ptySpawnSchema: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>; +declare const ptyWriteSchema: z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const ptyResizeSchema: z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; +}, z.core.$strip>>; +declare const ptyKillSchema: z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>; +declare const procSpawnSchema: z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; +}, z.core.$strip>>; +declare const procSignalSchema: z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; +}, z.core.$strip>>; +declare const procKillSchema: z.ZodLazy; + session: z.ZodLazy>; +}, z.core.$strip>>; +declare const execListSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const execSessionInfoSchema: z.ZodLazy>; + kind: z.ZodUnion, z.ZodLiteral<"proc">]>; + argv: z.ZodOptional>; + cwd: z.ZodOptional; +}, z.core.$strip>>; +declare const frameVariantSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>>, z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>>, z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>>]>>; +declare const frameSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>>, z.ZodLazy; +}, z.core.$strip>>>, z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>>, z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>>, z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>>, z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>>, z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>>, z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "head-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; +}, z.core.$strip>>>, z.ZodLazy; + peer: z.ZodLazy, Uint8Array>>>; + "from-seq": z.ZodNumber; + entries: z.ZodArray, Uint8Array>>; +}, z.core.$strip>>>]>>>>; +declare const protocolVersionSchema: z.ZodLazy; +declare const domainIdSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>; +declare const coreDomainNameSchema: z.ZodLazy, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>; +declare const namespacedDomainIdSchema: z.ZodLazy; +declare const privateUseDomainIdSchema: z.ZodLazy; +declare const handshakeFrameSchema: z.ZodLazy; + version: z.ZodLazy>; + domains: z.ZodArray, z.ZodLiteral<"core/exec">, z.ZodLiteral<"core/data">, z.ZodLiteral<"core/federation">, z.ZodLiteral<"core/webrtc">, z.ZodLiteral<"core/room">]>>>, z.ZodLazy>, z.ZodLazy>]>>>>; + params: z.ZodOptional>>; +}, z.core.$strip>>; +declare const identityKeySchema: z.ZodLazy, Uint8Array>; +}, z.core.$strip>>; +declare const deviceIdSchema: z.ZodLazy, Uint8Array>>; +declare const peerIdentitySchema: z.ZodLazy, Uint8Array>>>; + "identity-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + certificate: z.ZodOptional, Uint8Array>>; +}, z.core.$strip>>; +declare const manageCommandSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; +}, z.core.$strip>>; +declare const manageRequestFrameSchema: z.ZodLazy; + "request-id": z.ZodNumber; + command: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + params: z.ZodLazy; + shell: z.ZodOptional; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + bytes: z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + cols: z.ZodNumber; + rows: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + argv: z.ZodArray; + cwd: z.ZodOptional; + env: z.ZodObject<{}, z.core.$catchall>; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + signal: z.ZodNumber; + }, z.core.$strip>>>, z.ZodLazy; + session: z.ZodLazy>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodObject<{}, z.core.$catchall>, z.ZodUnion; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; + }, z.core.$strip>>>, z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>, z.ZodLazy; + }, z.core.$strip>>>]>, z.ZodUnion; + }, z.core.$strip>>>, z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; + }, z.core.$strip>>>]>, z.ZodUnion; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; + }, z.core.$strip>>>, z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; + }, z.core.$strip>>>]>]>>>; + }, z.core.$strip>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + token: z.ZodOptional, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>; +declare const manageOkSchema: z.ZodLazy; +}, z.core.$catchall>>; +declare const manageErrorSchema: z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; +}, z.core.$strip>>; +declare const manageResponseFrameSchema: z.ZodLazy; + "request-id": z.ZodNumber; + outcome: z.ZodUnion; + }, z.core.$catchall>>>, z.ZodLazy; + code: z.ZodString; + message: z.ZodOptional; + }, z.core.$strip>>>]>; +}, z.core.$strip>>; +declare const revocationClaimsSchema: z.ZodLazy, Uint8Array>; + issuer: z.ZodLazy, Uint8Array>>>; + "issuer-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + "revoked-at": z.ZodNumber; +}, z.core.$strip>>; +declare const revocationEntrySchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const revocationAnnounceFrameSchema: z.ZodLazy; + entries: z.ZodArray, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; + }, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>>>; +}, z.core.$strip>>; +declare const roomPathSchema: z.ZodLazy>, z.ZodLazy>]>>; +declare const deviceIdHexSchema: z.ZodLazy; +declare const ownerNamedRoomPathSchema: z.ZodLazy; +declare const dmRoomPathSchema: z.ZodLazy; +declare const roomSendSchema: z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; + text: z.ZodString; + refs: z.ZodOptional, Uint8Array>; + relation: z.ZodString; + }, z.core.$strip>>>>>; +}, z.core.$strip>>; +declare const roomReadSchema: z.ZodLazy; + "message-id": z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const roomLeaveSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const roomMembersSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const messageRefSchema: z.ZodLazy, Uint8Array>; + relation: z.ZodString; +}, z.core.$strip>>; +declare const roomJoinSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const roomInviteSchema: z.ZodLazy; + invitee: z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const streamSessionSchema: z.ZodLazy; +declare const streamDataFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + seq: z.ZodNumber; + channel: z.ZodString; + bytes: z.ZodCustom, Uint8Array>; +}, z.core.$strip>>; +declare const streamAckFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + "ack-seq": z.ZodNumber; + window: z.ZodNumber; +}, z.core.$strip>>; +declare const streamEndFrameSchema: z.ZodLazy; + session: z.ZodLazy>; + "exit-code": z.ZodOptional; + "exit-signal": z.ZodOptional; +}, z.core.$strip>>; +declare const capabilityVerbSchema: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>; +declare const coreCapabilitySchema: z.ZodLazy; +declare const namespacedCapabilitySchema: z.ZodLazy; +declare const privateUseCapabilitySchema: z.ZodLazy; +declare const capabilityScopeSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const coseHeaderAlgSchema: z.ZodLazy>; +declare const coseHeaderKidSchema: z.ZodLazy>; +declare const coseHeaderLabelSchema: z.ZodLazy>; +declare const coseTokenHeadersSchema: z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>; +declare const coseSign1Schema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>; +declare const capabilityTokenSchema: z.ZodLazy, Uint8Array>, z.ZodLazy; + "4": z.ZodOptional, Uint8Array>>; +}, z.core.$catchall>>>, z.ZodUnion, Uint8Array>, z.ZodNull]>, z.ZodCustom, Uint8Array>], null>>>>; +declare const tokenClaimsSchema: z.ZodLazy, Uint8Array>; + issuer: z.ZodLazy, Uint8Array>>>; + "issuer-key": z.ZodLazy, Uint8Array>; + }, z.core.$strip>>>; + bearer: z.ZodLazy, Uint8Array>>>; + capability: z.ZodLazy>, z.ZodLazy>, z.ZodLazy>]>>>; + scope: z.ZodLazy; + }, z.core.$strip>>>; + expires: z.ZodNumber; + "not-before": z.ZodOptional; + parent: z.ZodOptional, Uint8Array>>; + "delegations-remaining": z.ZodOptional; +}, z.core.$catchall>>; +declare const pingFrameSchema: z.ZodLazy; +}, z.core.$strip>>; +declare const closeFrameSchema: z.ZodLazy; + reason: z.ZodOptional; +}, z.core.$strip>>; +declare const peerAdvertSchema: z.ZodLazy, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; +}, z.core.$strip>>; +declare const gossipFrameSchema: z.ZodLazy; + peers: z.ZodArray, Uint8Array>>>; + addresses: z.ZodArray; + "snapshot-seconds": z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const candidateKindSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>; +declare const wireCandidateSchema: z.ZodLazy, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; +}, z.core.$strip>>; +declare const candidatesFrameSchema: z.ZodLazy; + candidates: z.ZodArray, z.ZodLiteral<"server-reflexive">, z.ZodLiteral<"relayed">]>>>; + priority: z.ZodNumber; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const syncPunchFrameSchema: z.ZodLazy; + nonce: z.ZodNumber; + "deadline-unix-ms": z.ZodNumber; +}, z.core.$strip>>; +declare const observedAddressFrameSchema: z.ZodLazy; + address: z.ZodString; +}, z.core.$strip>>; +declare const relayOfferFrameSchema: z.ZodLazy; + addresses: z.ZodArray; +}, z.core.$strip>>; +declare const relayConnectFrameSchema: z.ZodLazy; + "target-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const relayDataFrameSchema: z.ZodLazy; + payload: z.ZodCustom, Uint8Array>; + "to-device": z.ZodOptional, Uint8Array>>>>; + "from-device": z.ZodOptional, Uint8Array>>>>; +}, z.core.$strip>>; +declare const relayInboundFrameSchema: z.ZodLazy; + "source-device": z.ZodLazy, Uint8Array>>>; +}, z.core.$strip>>; +declare const coordinatorFrameSchema: z.ZodLazy; + term: z.ZodNumber; + coordinator: z.ZodLazy, Uint8Array>>>; + "capacity-hint": z.ZodOptional; +}, z.core.$strip>>; +declare const webrtcOfferSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>; +declare const webrtcAnswerSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + sdp: z.ZodString; +}, z.core.$strip>>; +declare const webrtcIceCandidateSchema: z.ZodLazy; + "negotiation-id": z.ZodNumber; + candidate: z.ZodOptional; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; + }, z.core.$strip>>>>; +}, z.core.$strip>>; +declare const iceCandidateInitSchema: z.ZodLazy; + "sdp-m-line-index": z.ZodOptional; + "username-fragment": z.ZodOptional; +}, z.core.$strip>>; +type DataHaveFrame = z.infer; +type DataRequestFrame = z.infer; +type DataEntriesFrame = z.infer; +type HandleClaims = z.infer; +type HandleRecord = z.infer; +type ManageCommandParams = z.infer; +type PtySpawn = z.infer; +type PtyWrite = z.infer; +type PtyResize = z.infer; +type PtyKill = z.infer; +type ProcSpawn = z.infer; +type ProcSignal = z.infer; +type ProcKill = z.infer; +type ExecList = z.infer; +type ExecSessionInfo = z.infer; +type FrameVariant = z.infer; +type Frame = z.infer; +type ProtocolVersion = z.infer; +type DomainId = z.infer; +type CoreDomainName = z.infer; +type NamespacedDomainId = z.infer; +type PrivateUseDomainId = z.infer; +type HandshakeFrame = z.infer; +type IdentityKey = z.infer; +type DeviceId = z.infer; +type PeerIdentity = z.infer; +type ManageCommand = z.infer; +type ManageRequestFrame = z.infer; +type ManageOk = z.infer; +type ManageError = z.infer; +type ManageResponseFrame = z.infer; +type RevocationClaims = z.infer; +type RevocationEntry = z.infer; +type RevocationAnnounceFrame = z.infer; +type RoomPath = z.infer; +type DeviceIdHex = z.infer; +type OwnerNamedRoomPath = z.infer; +type DmRoomPath = z.infer; +type RoomSend = z.infer; +type RoomRead = z.infer; +type RoomLeave = z.infer; +type RoomMembers = z.infer; +type MessageRef = z.infer; +type RoomJoin = z.infer; +type RoomInvite = z.infer; +type StreamSession = z.infer; +type StreamDataFrame = z.infer; +type StreamAckFrame = z.infer; +type StreamEndFrame = z.infer; +type CapabilityVerb = z.infer; +type CoreCapability = z.infer; +type NamespacedCapability = z.infer; +type PrivateUseCapability = z.infer; +type CapabilityScope = z.infer; +type CoseHeaderAlg = z.infer; +type CoseHeaderKid = z.infer; +type CoseHeaderLabel = z.infer; +type CoseTokenHeaders = z.infer; +type CoseSign1 = z.infer; +type CapabilityToken = z.infer; +type TokenClaims = z.infer; +type PingFrame = z.infer; +type CloseFrame = z.infer; +type PeerAdvert = z.infer; +type GossipFrame = z.infer; +type CandidateKind = z.infer; +type WireCandidate = z.infer; +type CandidatesFrame = z.infer; +type SyncPunchFrame = z.infer; +type ObservedAddressFrame = z.infer; +type RelayOfferFrame = z.infer; +type RelayConnectFrame = z.infer; +type RelayDataFrame = z.infer; +type RelayInboundFrame = z.infer; +type CoordinatorFrame = z.infer; +type WebrtcOffer = z.infer; +type WebrtcAnswer = z.infer; +type WebrtcIceCandidate = z.infer; +type IceCandidateInit = z.infer; +//#endregion +export { PtyResize as $, handleRecordSchema as $t, IceCandidateInit as A, relayOfferFrameSchema as An, capabilityVerbSchema as At, NamespacedDomainId as B, roomSendSchema as Bn, dataEntriesFrameSchema as Bt, ExecSessionInfo as C, ptyKillSchema as Cn, WebrtcIceCandidate as Ct, HandleClaims as D, relayConnectFrameSchema as Dn, candidatesFrameSchema as Dt, GossipFrame as E, ptyWriteSchema as En, candidateKindSchema as Et, ManageOk as F, roomJoinSchema as Fn, coseHeaderAlgSchema as Ft, PingFrame as G, syncPunchFrameSchema as Gn, dmRoomPathSchema as Gt, OwnerNamedRoomPath as H, streamDataFrameSchema as Hn, dataRequestFrameSchema as Ht, ManageRequestFrame as I, roomLeaveSchema as In, coseHeaderKidSchema as It, ProcKill as J, webrtcIceCandidateSchema as Jn, execSessionInfoSchema as Jt, PrivateUseCapability as K, tokenClaimsSchema as Kn, domainIdSchema as Kt, ManageResponseFrame as L, roomMembersSchema as Ln, coseHeaderLabelSchema as Lt, ManageCommand as M, revocationClaimsSchema as Mn, coordinatorFrameSchema as Mt, ManageCommandParams as N, revocationEntrySchema as Nn, coreCapabilitySchema as Nt, HandleRecord as O, relayDataFrameSchema as On, capabilityScopeSchema as Ot, ManageError as P, roomInviteSchema as Pn, coreDomainNameSchema as Pt, PtyKill as Q, handleClaimsSchema as Qt, MessageRef as R, roomPathSchema as Rn, coseSign1Schema as Rt, ExecList as S, protocolVersionSchema as Sn, WebrtcAnswer as St, FrameVariant as T, ptySpawnSchema as Tn, WireCandidate as Tt, PeerAdvert as U, streamEndFrameSchema as Un, deviceIdHexSchema as Ut, ObservedAddressFrame as V, streamAckFrameSchema as Vn, dataHaveFrameSchema as Vt, PeerIdentity as W, streamSessionSchema as Wn, deviceIdSchema as Wt, ProcSpawn as X, wireCandidateSchema as Xn, frameVariantSchema as Xt, ProcSignal as Y, webrtcOfferSchema as Yn, frameSchema as Yt, ProtocolVersion as Z, gossipFrameSchema as Zt, DataRequestFrame as _, privateUseCapabilitySchema as _n, StreamDataFrame as _t, CapabilityVerb as a, manageErrorSchema as an, RelayOfferFrame as at, DmRoomPath as b, procSignalSchema as bn, SyncPunchFrame as bt, CoreCapability as c, manageResponseFrameSchema as cn, RevocationEntry as ct, CoseHeaderKid as d, namespacedDomainIdSchema as dn, RoomLeave as dt, handshakeFrameSchema as en, PtySpawn as et, CoseHeaderLabel as f, observedAddressFrameSchema as fn, RoomMembers as ft, DataHaveFrame as g, pingFrameSchema as gn, StreamAckFrame as gt, DataEntriesFrame as h, peerIdentitySchema as hn, RoomSend as ht, CapabilityToken as i, manageCommandSchema as in, RelayInboundFrame as it, IdentityKey as j, revocationAnnounceFrameSchema as jn, closeFrameSchema as jt, HandshakeFrame as k, relayInboundFrameSchema as kn, capabilityTokenSchema as kt, CoreDomainName as l, messageRefSchema as ln, RoomInvite as lt, CoseTokenHeaders as m, peerAdvertSchema as mn, RoomRead as mt, CandidatesFrame as n, identityKeySchema as nn, RelayConnectFrame as nt, CloseFrame as o, manageOkSchema as on, RevocationAnnounceFrame as ot, CoseSign1 as p, ownerNamedRoomPathSchema as pn, RoomPath as pt, PrivateUseDomainId as q, webrtcAnswerSchema as qn, execListSchema as qt, CapabilityScope as r, manageCommandParamsSchema as rn, RelayDataFrame as rt, CoordinatorFrame as s, manageRequestFrameSchema as sn, RevocationClaims as st, CandidateKind as t, iceCandidateInitSchema as tn, PtyWrite as tt, CoseHeaderAlg as u, namespacedCapabilitySchema as un, RoomJoin as ut, DeviceId as v, privateUseDomainIdSchema as vn, StreamEndFrame as vt, Frame as w, ptyResizeSchema as wn, WebrtcOffer as wt, DomainId as x, procSpawnSchema as xn, TokenClaims as xt, DeviceIdHex as y, procKillSchema as yn, StreamSession as yt, NamespacedCapability as z, roomReadSchema as zn, coseTokenHeadersSchema as zt }; \ No newline at end of file