@tigrbljs/tigr-asgi-contract
v0.3.2
Published
Generated TypeScript and TSX contract package for the Tigr ASGI contract. It is generated from the canonical `contract/` directory and mirrors the legality and schema artifacts.
Readme
@tigrbljs/tigr-asgi-contract
Generated TypeScript and TSX contract package for the Tigr ASGI contract. It is generated from the canonical contract/ directory and mirrors the legality and schema artifacts.
Contract Package Matrix
| Ecosystem | Package | Version | Path | Surface files | Notes |
| --- | --- | --- | --- | --- | --- |
| python | tigr-asgi-contract | 0.3.2 | packages/contract-py | 18 | Enums, models, validators |
| npm | @tigrbljs/tigr-asgi-contract | 0.3.2 | packages/contract-npm | 20 | TypeScript and TSX surfaces |
| rust | tigr_asgi_contract_rs | 0.3.2 | packages/contract-rs | 17 | Serde-friendly contract surfaces |
Generated Surface Matrix
| Module | Export surface |
| --- | --- |
| bindings | src/bindings.ts |
| capabilities | src/capabilities.ts |
| compatibility | src/compatibility.ts |
| completion | src/completion.ts |
| events | src/events.ts |
| exchanges | src/exchanges.ts |
| families | src/families.ts |
| frames | src/frames.ts |
| ids | src/ids.ts |
| models | src/models.ts |
| protocols | src/protocols.ts |
| registry | src/registry.ts |
| scope | src/scope.ts |
| scope_types | src/scope_types.ts |
| subevents | src/subevents.ts |
| validators | src/validators.ts |
| tsx/BindingBadge | tsx/BindingBadge |
| tsx/FamilyBadge | tsx/FamilyBadge |
| tsx/ScopeView | tsx/ScopeView |
| tsx/SubeventBadge | tsx/SubeventBadge |
Release Matrix
| Field | Value |
| --- | --- |
| Contract name | tigr-asgi-contract |
| Contract version | 0.3.2 |
| Artifact version | 0.3.2 |
| Serde version | 1 |
| Schema draft | 2020-12 |
| Bindings | 6 |
| Families | 5 |
| Subevents | 42 |
| Scope types | 4 |
| Event types | 26 |
Scope Type Matrix
| ASGI3 scope type | Scope ext fields | Scope event types | Source |
| --- | --- | --- | --- |
| http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | scope.schema.json |
| websocket | transport, family_capabilities, websocket | websocket.connect, websocket.receive, websocket.disconnect, websocket.accept, websocket.send, websocket.close, transport.emit.complete | scope.schema.json |
| webtransport | transport, family_capabilities, webtransport | webtransport.connect, webtransport.accept, webtransport.stream.receive, webtransport.stream.send, webtransport.datagram.receive, webtransport.datagram.send, webtransport.disconnect, webtransport.close, transport.emit.complete | scope.schema.json |
| lifespan | transport, family_capabilities | - | scope.schema.json |
Capability Matrix
| Capability field | Family alignment | Meaning | Schema source |
| --- | --- | --- | --- |
| request | request | bounded unary invocation available | transport.schema.json#/$defs/familyCapabilities |
| session | session | long-lived association available | transport.schema.json#/$defs/familyCapabilities |
| message | message | discrete logical message transport available | transport.schema.json#/$defs/familyCapabilities |
| stream_in | stream | inbound stream chunks available | transport.schema.json#/$defs/familyCapabilities |
| stream_out | stream | outbound stream chunks available | transport.schema.json#/$defs/familyCapabilities |
| datagram | datagram | datagram transport available | transport.schema.json#/$defs/familyCapabilities |
Compatibility Matrix
| Compatibility field | Value | Meaning | Source |
| --- | --- | --- | --- |
| contract_name | tigr-asgi-contract | Canonical contract identifier | contract/compatibility.yaml |
| contract_version | 0.1.2 | Published contract version | contract/compatibility.yaml |
| serde_version | 1 | Serialization surface version | contract/compatibility.yaml |
| schema_draft | 2020-12 | JSON Schema draft level | contract/compatibility.yaml |
Completion Matrix
| Completion level | Meaning | Default | Source |
| --- | --- | --- | --- |
| accepted_by_runtime | send accepted by runtime/output queue | no | contract/completion.yaml |
| flushed_to_transport | send flushed to transport boundary | yes | contract/completion.yaml |
Event Matrix
| Transport event | ASGI3 scope type | Bindings | Related subevents | Meaning |
| --- | --- | --- | --- | --- |
| http.request | http | http.stream, jsonrpc, rest, sse | request.accept, request.body_in, request.chunk_in, request.close, request.open, stream.chunk_in | Inbound HTTP request unit |
| http.disconnect | http | http.stream, jsonrpc, rest, sse | request.disconnect, stream.abort | HTTP connection closed by peer or server |
| http.response.start | http | http.stream, jsonrpc, rest, sse | response.open, stream.open | HTTP response metadata start |
| http.response.body | http | http.stream, jsonrpc, rest, sse | message.out, message.replay, message.snapshot, response.body_out, response.chunk_out, response.close, stream.chunk_out, stream.close, stream.finalize, stream.flush | HTTP response body frame |
| http.response.pathsend | http | http.stream, jsonrpc, rest, sse | - | |
| websocket.connect | websocket | websocket | session.open | WebSocket connection open event |
| websocket.receive | websocket | websocket | message.decode, message.handle, message.in | Inbound WebSocket frame |
| websocket.disconnect | websocket | websocket | session.disconnect | WebSocket disconnect signal |
| websocket.accept | websocket | websocket | session.accept, session.ready | WebSocket accept handshake response |
| websocket.send | websocket | websocket | message.ack, message.nack, message.out, message.replay, message.snapshot, session.heartbeat, session.sync | Outbound WebSocket frame |
| websocket.close | websocket | websocket | session.close | WebSocket close frame |
| webtransport.connect | webtransport | webtransport | session.open | WebTransport session connect event |
| webtransport.accept | webtransport | webtransport | session.accept, session.ready | WebTransport accept event |
| webtransport.stream.receive | webtransport | webtransport | message.decode, message.handle, message.in, stream.chunk_in | Inbound WebTransport stream frame |
| webtransport.stream.send | webtransport | webtransport | message.ack, message.nack, message.out, message.replay, message.snapshot, session.heartbeat, session.sync, stream.chunk_out, stream.finalize, stream.flush, stream.open | Outbound WebTransport stream frame |
| webtransport.datagram.receive | webtransport | webtransport | datagram.handle, datagram.in, message.decode, message.handle, message.in | Inbound WebTransport datagram |
| webtransport.datagram.send | webtransport | webtransport | datagram.ack, datagram.out, message.ack, message.nack | Outbound WebTransport datagram |
| webtransport.disconnect | webtransport | webtransport | session.disconnect | WebTransport disconnect signal |
| webtransport.close | webtransport | webtransport | datagram.close, session.close, stream.abort, stream.close | WebTransport close event |
| lifespan.startup | http, websocket, webtransport | - | - | |
| lifespan.startup.complete | http, websocket, webtransport | - | - | |
| lifespan.startup.failed | http, websocket, webtransport | - | - | |
| lifespan.shutdown | http, websocket, webtransport | - | - | |
| lifespan.shutdown.complete | http, websocket, webtransport | - | - | |
| lifespan.shutdown.failed | http, websocket, webtransport | - | - | |
| transport.emit.complete | http, websocket, webtransport | http.stream, jsonrpc, rest, sse, websocket, webtransport | datagram.emit_complete, message.emit_complete, response.emit_complete, session.emit_complete, stream.emit_complete | Completion emission event |
Family Matrix
| Family | Subevent count | Required bindings | Optional bindings | Subevents |
| --- | --- | --- | --- | --- |
| request | 11 | rest, jsonrpc, http.stream, sse | - | request.open, request.body_in, request.chunk_in, request.accept, request.close, request.disconnect, response.open, response.body_out, response.chunk_out, response.close, response.emit_complete |
| session | 8 | sse, websocket, webtransport | - | session.open, session.accept, session.ready, session.heartbeat, session.sync, session.close, session.disconnect, session.emit_complete |
| message | 9 | sse, websocket | webtransport | message.in, message.decode, message.handle, message.out, message.ack, message.nack, message.replay, message.snapshot, message.emit_complete |
| stream | 8 | http.stream, sse, webtransport | rest, jsonrpc | stream.open, stream.chunk_in, stream.chunk_out, stream.flush, stream.finalize, stream.abort, stream.close, stream.emit_complete |
| datagram | 6 | webtransport | - | datagram.in, datagram.handle, datagram.out, datagram.ack, datagram.close, datagram.emit_complete |
Subevent Matrix
| Subevent | Family | Family legality | Required bindings | Optional bindings | Derived bindings | Related transport events |
| --- | --- | --- | --- | --- | --- | --- |
| request.open | request | R required | rest, jsonrpc, http.stream, sse | - | - | http.request |
| request.body_in | request | R required | rest, jsonrpc | http.stream, sse | - | http.request |
| request.chunk_in | request | R required | - | - | http.stream | http.request |
| request.accept | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.request |
| request.close | request | R required | rest, jsonrpc, http.stream, sse | - | - | http.request |
| request.disconnect | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.disconnect |
| response.open | request | R required | rest, jsonrpc, http.stream | sse | - | http.response.start |
| response.body_out | request | R required | rest, jsonrpc | http.stream | - | http.response.body |
| response.chunk_out | request | R required | - | - | http.stream, sse | http.response.body |
| response.close | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.response.body |
| response.emit_complete | request | R required | rest, jsonrpc, http.stream, sse | - | - | transport.emit.complete |
| session.open | session | R required | sse, websocket, webtransport | - | - | websocket.connect, webtransport.connect |
| session.accept | session | R required | sse, websocket, webtransport | - | - | websocket.accept, webtransport.accept |
| session.ready | session | R required | sse, websocket, webtransport | - | - | websocket.accept, webtransport.accept |
| session.heartbeat | session | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send |
| session.sync | session | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send |
| session.close | session | R required | sse, websocket, webtransport | - | - | websocket.close, webtransport.close |
| session.disconnect | session | R required | - | sse, websocket, webtransport | - | websocket.disconnect, webtransport.disconnect |
| session.emit_complete | session | R required | - | sse, websocket, webtransport | - | transport.emit.complete |
| message.in | message | R required | websocket | webtransport | - | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.decode | message | R required | - | websocket, webtransport | jsonrpc | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.handle | message | R required | websocket | webtransport | - | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.out | message | R required | sse, websocket | webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.ack | message | R required | - | websocket, webtransport | - | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| message.nack | message | R required | - | websocket, webtransport | - | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| message.replay | message | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.snapshot | message | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.emit_complete | message | R required | sse, websocket | webtransport | - | transport.emit.complete |
| stream.open | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.stream.send, http.response.start |
| stream.chunk_in | stream | R required | http.stream, webtransport | rest, jsonrpc | - | webtransport.stream.receive, http.request |
| stream.chunk_out | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.stream.send, http.response.body |
| stream.flush | stream | R required | - | http.stream, sse, webtransport | - | webtransport.stream.send, http.response.body |
| stream.finalize | stream | R required | http.stream, webtransport | rest, jsonrpc, sse | - | webtransport.stream.send, http.response.body |
| stream.abort | stream | R required | - | http.stream, sse, webtransport | - | webtransport.close, http.disconnect |
| stream.close | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.close, http.response.body |
| stream.emit_complete | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | transport.emit.complete |
| datagram.in | datagram | R required | webtransport | - | - | webtransport.datagram.receive |
| datagram.handle | datagram | R required | webtransport | - | - | webtransport.datagram.receive |
| datagram.out | datagram | R required | webtransport | - | - | webtransport.datagram.send |
| datagram.ack | datagram | R required | - | webtransport | - | webtransport.datagram.send |
| datagram.close | datagram | R required | webtransport | - | - | webtransport.close |
| datagram.emit_complete | datagram | R required | webtransport | - | - | transport.emit.complete |
Binding Subevent Matrix
Every row is a concrete binding x subevent record sourced from the legality registries.
| Binding | Protocols | Exchange | ASGI3 scope type | Scope ext fields | Scope event types | Required families | Optional families | Subevent | Family | Family legality | Binding legality | Related transport events |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.open | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.body_in | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.chunk_in | request | R required | F forbidden | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.accept | request | R required | O optional | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.close | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.disconnect | request | R required | O optional | http.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.open | request | R required | R required | http.response.start |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.body_out | request | R required | R required | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.chunk_out | request | R required | F forbidden | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.close | request | R required | O optional | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.emit_complete | request | R required | R required | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.decode | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.open | stream | R required | O optional | webtransport.stream.send, http.response.start |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_in | stream | R required | O optional | webtransport.stream.receive, http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_out | stream | R required | O optional | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.flush | stream | R required | F forbidden | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.finalize | stream | R required | O optional | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.abort | stream | R required | F forbidden | webtransport.close, http.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.close | stream | R required | O optional | webtransport.close, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.emit_complete | stream | R required | O optional | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.close | datagram | R required | F forbidden | webtransport.close |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.open | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.body_in | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.chunk_in | request | R required | F forbidden | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.accept | request | R required | O optional | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.close | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.disconnect | request | R required | O optional | http.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.open | request | R required | R required | http.response.start |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.body_out | request | R required | R required | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.chunk_out | request | R required | F forbidden | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.close | request | R required | O optional | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.emit_complete | request | R required | R required | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.decode | message | R required | D derived | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.open | stream | R required | O optional | webtransport.stream.send, http.response.start |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_in | stream | R required | O optional | webtransport.stream.receive, http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_out | stream | R required | O optional | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.flush | stream | R required | F forbidden | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.finalize | stream | R required | O optional | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.abort | stream | R required | F forbidden | webtransport.close, http.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.close | stream | R required | O optional | webtransport.close, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.emit_complete | stream | R required | O optional | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.close | datagram | R required | F forbidden | webtransport.close |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.open | request | R required | R required | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.body_in | request | R required | O optional | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.chunk_in | request | R required | D derived | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.accept | request | R required | O optional | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.close | request | R required | R required | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.disconnect | request | R required | O optional | http.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.open | request | R required | R required | http.response.start |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.body_out | request | R required | O optional | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.chunk_out | request | R required | D derived | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.close | request | R required | O optional | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.emit_complete | request | R required | R required | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.decode | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.open | stream | R required | R required | webtransport.stream.send, http.response.start |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.chunk_in | stream | R required | R required | webtransport.stream.receive, http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.chunk_out | stream | R required | R required | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.flush | stream | R required | O optional | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.finalize | stream | R required | R required | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.abort | stream | R required | O optional | webtransport.close, http.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.close | stream | R required | R required | webtransport.close, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.emit_complete | stream | R required | R required | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.close | datagram | R required | F forbidden | webtransport.close |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.open | request | R required | R required | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.body_in | request | R required | O optional | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.chunk_in | request | R required | F forbidden | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.accept | request | R required | O optional | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.close | request | R required | R required | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.disconnect | request | R required | O optional | http.disconnect |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.open | request | R required | O optional | http.response.start |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.body_out | request | R required | F forbidden | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.chunk_out | request | R required | D derived | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.close | request | R required | O optional | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.emit_complete | request | R required | R required | transport.emit.complete |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.open | session | R required | R required | websocket.connect, webtransport.connect |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.accept | session | R required | R required | websocket.accept, webtransport.accept |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.ready | session | R required | R required | websocket.accept, webtransport.accept |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.heartbeat | session | R required | O optional | websocket.send, webtransport.stream.send |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.sync | session | R required | O optional | websocket.send, webtransport.stream.send |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.close | session | R required | R required | websocket.close, webtransport.close |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.disconnect | session | R required | O optional | websocket.disconnect, webtransport.disconnect |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.emit_complete | session | R required | O optional | transport.emit.complete |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, `sessio
