reactor-effect-client 0.7.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +7 -2
- package/README.md +103 -141
- package/dist/Coordinator.d.ts +382 -0
- package/dist/Coordinator.d.ts.map +1 -0
- package/dist/Coordinator.js +732 -0
- package/dist/Coordinator.js.map +1 -0
- package/dist/H3.d.ts +159 -0
- package/dist/H3.d.ts.map +1 -0
- package/dist/H3.js +21 -0
- package/dist/H3.js.map +1 -0
- package/dist/H3Source.d.ts +93 -0
- package/dist/H3Source.d.ts.map +1 -0
- package/dist/H3Source.js +401 -0
- package/dist/H3Source.js.map +1 -0
- package/dist/LocalSource.d.ts +68 -0
- package/dist/LocalSource.d.ts.map +1 -0
- package/dist/LocalSource.js +354 -0
- package/dist/LocalSource.js.map +1 -0
- package/dist/Media.d.ts +106 -0
- package/dist/Media.d.ts.map +1 -0
- package/dist/Media.js +16 -0
- package/dist/Media.js.map +1 -0
- package/dist/Peer.d.ts +134 -0
- package/dist/Peer.d.ts.map +1 -0
- package/dist/Peer.js +57 -0
- package/dist/Peer.js.map +1 -0
- package/dist/Playout.d.ts +724 -0
- package/dist/Playout.d.ts.map +1 -0
- package/dist/Playout.js +28 -0
- package/dist/Playout.js.map +1 -0
- package/dist/Reactor.d.ts +135 -0
- package/dist/Reactor.d.ts.map +1 -0
- package/dist/Reactor.js +158 -0
- package/dist/Reactor.js.map +1 -0
- package/dist/ReactorError.d.ts +331 -0
- package/dist/ReactorError.d.ts.map +1 -0
- package/dist/ReactorError.js +316 -0
- package/dist/ReactorError.js.map +1 -0
- package/dist/ReactorTest.d.ts +383 -0
- package/dist/ReactorTest.d.ts.map +1 -0
- package/dist/ReactorTest.js +317 -0
- package/dist/ReactorTest.js.map +1 -0
- package/dist/Session.d.ts +314 -0
- package/dist/Session.d.ts.map +1 -0
- package/dist/Session.js +51 -0
- package/dist/Session.js.map +1 -0
- package/dist/index.d.ts +12 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -11
- package/dist/index.js.map +1 -1
- package/dist/internal/correlator.d.ts +46 -0
- package/dist/internal/correlator.d.ts.map +1 -0
- package/dist/internal/correlator.js +150 -0
- package/dist/internal/correlator.js.map +1 -0
- package/dist/internal/deadline.d.ts +24 -0
- package/dist/internal/deadline.d.ts.map +1 -0
- package/dist/internal/deadline.js +44 -0
- package/dist/internal/deadline.js.map +1 -0
- package/dist/{h3/_internal/contracts.d.ts → internal/h3/commands.d.ts} +39 -33
- package/dist/internal/h3/commands.d.ts.map +1 -0
- package/dist/internal/h3/commands.js +128 -0
- package/dist/internal/h3/commands.js.map +1 -0
- package/dist/{h3 → internal/h3}/messages.d.ts +16 -11
- package/dist/internal/h3/messages.d.ts.map +1 -0
- package/dist/{h3 → internal/h3}/messages.js +19 -31
- package/dist/internal/h3/messages.js.map +1 -0
- package/dist/internal/h3/operations.d.ts +145 -0
- package/dist/internal/h3/operations.d.ts.map +1 -0
- package/dist/internal/h3/operations.js +284 -0
- package/dist/internal/h3/operations.js.map +1 -0
- package/dist/{h3 → internal/h3}/profile.d.ts +63 -65
- package/dist/internal/h3/profile.d.ts.map +1 -0
- package/dist/{h3 → internal/h3}/profile.js +39 -39
- package/dist/internal/h3/profile.js.map +1 -0
- package/dist/internal/h3/provider.d.ts +14 -0
- package/dist/internal/h3/provider.d.ts.map +1 -0
- package/dist/internal/h3/provider.js +672 -0
- package/dist/internal/h3/provider.js.map +1 -0
- package/dist/internal/h3/references.d.ts +68 -0
- package/dist/internal/h3/references.d.ts.map +1 -0
- package/dist/internal/h3/references.js +339 -0
- package/dist/internal/h3/references.js.map +1 -0
- package/dist/internal/h3/request.d.ts +56 -0
- package/dist/internal/h3/request.d.ts.map +1 -0
- package/dist/internal/h3/request.js +70 -0
- package/dist/internal/h3/request.js.map +1 -0
- package/dist/internal/h3/state.d.ts +120 -0
- package/dist/internal/h3/state.d.ts.map +1 -0
- package/dist/internal/h3/state.js +270 -0
- package/dist/internal/h3/state.js.map +1 -0
- package/dist/{Submission.d.ts → internal/h3/submission.d.ts} +1 -3
- package/dist/internal/h3/submission.d.ts.map +1 -0
- package/dist/{Submission.js → internal/h3/submission.js} +1 -9
- package/dist/internal/h3/submission.js.map +1 -0
- package/dist/internal/hub.d.ts +32 -0
- package/dist/internal/hub.d.ts.map +1 -0
- package/dist/internal/hub.js +92 -0
- package/dist/internal/hub.js.map +1 -0
- package/dist/internal/playout/errors.d.ts +51 -0
- package/dist/internal/playout/errors.d.ts.map +1 -0
- package/dist/internal/playout/errors.js +40 -0
- package/dist/internal/playout/errors.js.map +1 -0
- package/dist/internal/playout/policy.d.ts +559 -0
- package/dist/internal/playout/policy.d.ts.map +1 -0
- package/dist/internal/playout/policy.js +2338 -0
- package/dist/internal/playout/policy.js.map +1 -0
- package/dist/internal/playout/runtime.d.ts +28 -0
- package/dist/internal/playout/runtime.d.ts.map +1 -0
- package/dist/internal/playout/runtime.js +766 -0
- package/dist/internal/playout/runtime.js.map +1 -0
- package/dist/internal/playout/tag.d.ts +14 -0
- package/dist/internal/playout/tag.d.ts.map +1 -0
- package/dist/internal/playout/tag.js +43 -0
- package/dist/internal/playout/tag.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts +55 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.js +42 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts +160 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.js +21 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts +89 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.js +20 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts +85 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.js +24 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts +190 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.js +54 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts +88 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.js +33 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.js.map +1 -0
- package/dist/internal/queue.d.ts +4 -0
- package/dist/internal/queue.d.ts.map +1 -0
- package/dist/{_internal → internal}/queue.js +0 -9
- package/dist/internal/queue.js.map +1 -0
- package/dist/internal/reactorTest/coordinator.d.ts +5 -0
- package/dist/internal/reactorTest/coordinator.d.ts.map +1 -0
- package/dist/internal/reactorTest/coordinator.js +178 -0
- package/dist/internal/reactorTest/coordinator.js.map +1 -0
- package/dist/internal/reactorTest/faults.d.ts +172 -0
- package/dist/internal/reactorTest/faults.d.ts.map +1 -0
- package/dist/internal/reactorTest/faults.js +23 -0
- package/dist/internal/reactorTest/faults.js.map +1 -0
- package/dist/internal/reactorTest/h3.d.ts +431 -0
- package/dist/internal/reactorTest/h3.d.ts.map +1 -0
- package/dist/internal/reactorTest/h3.js +625 -0
- package/dist/internal/reactorTest/h3.js.map +1 -0
- package/dist/internal/reactorTest/media.d.ts +22 -0
- package/dist/internal/reactorTest/media.d.ts.map +1 -0
- package/dist/internal/reactorTest/media.js +34 -0
- package/dist/internal/reactorTest/media.js.map +1 -0
- package/dist/internal/reactorTest/peer.d.ts +318 -0
- package/dist/internal/reactorTest/peer.d.ts.map +1 -0
- package/dist/internal/reactorTest/peer.js +206 -0
- package/dist/internal/reactorTest/peer.js.map +1 -0
- package/dist/internal/reactorTest/playout.d.ts +34 -0
- package/dist/internal/reactorTest/playout.d.ts.map +1 -0
- package/dist/internal/reactorTest/playout.js +340 -0
- package/dist/internal/reactorTest/playout.js.map +1 -0
- package/dist/internal/reactorTest/references.d.ts +25 -0
- package/dist/internal/reactorTest/references.d.ts.map +1 -0
- package/dist/{testing/Png.js → internal/reactorTest/references.js} +50 -12
- package/dist/internal/reactorTest/references.js.map +1 -0
- package/dist/internal/reactorTest/sessions.d.ts +364 -0
- package/dist/internal/reactorTest/sessions.d.ts.map +1 -0
- package/dist/internal/reactorTest/sessions.js +592 -0
- package/dist/internal/reactorTest/sessions.js.map +1 -0
- package/dist/internal/reactorTest/timing.d.ts +13 -0
- package/dist/internal/reactorTest/timing.d.ts.map +1 -0
- package/dist/internal/reactorTest/timing.js +20 -0
- package/dist/internal/reactorTest/timing.js.map +1 -0
- package/dist/internal/recording.d.ts +52 -0
- package/dist/internal/recording.d.ts.map +1 -0
- package/dist/internal/recording.js +141 -0
- package/dist/internal/recording.js.map +1 -0
- package/dist/internal/session/connect.d.ts +34 -0
- package/dist/internal/session/connect.d.ts.map +1 -0
- package/dist/internal/session/connect.js +502 -0
- package/dist/internal/session/connect.js.map +1 -0
- package/dist/internal/session/generation.d.ts +35 -0
- package/dist/internal/session/generation.d.ts.map +1 -0
- package/dist/internal/session/generation.js +185 -0
- package/dist/internal/session/generation.js.map +1 -0
- package/dist/internal/session/ice.d.ts +23 -0
- package/dist/internal/session/ice.d.ts.map +1 -0
- package/dist/internal/session/ice.js +57 -0
- package/dist/internal/session/ice.js.map +1 -0
- package/dist/internal/session/inbound.d.ts +50 -0
- package/dist/internal/session/inbound.d.ts.map +1 -0
- package/dist/internal/session/inbound.js +202 -0
- package/dist/internal/session/inbound.js.map +1 -0
- package/dist/internal/session/model.d.ts +163 -0
- package/dist/internal/session/model.d.ts.map +1 -0
- package/dist/internal/session/model.js +78 -0
- package/dist/internal/session/model.js.map +1 -0
- package/dist/internal/session/requests.d.ts +71 -0
- package/dist/internal/session/requests.d.ts.map +1 -0
- package/dist/internal/session/requests.js +240 -0
- package/dist/internal/session/requests.js.map +1 -0
- package/dist/internal/session/tracks.d.ts +21 -0
- package/dist/internal/session/tracks.d.ts.map +1 -0
- package/dist/internal/session/tracks.js +166 -0
- package/dist/internal/session/tracks.js.map +1 -0
- package/dist/internal/session/upload.d.ts +21 -0
- package/dist/internal/session/upload.d.ts.map +1 -0
- package/dist/internal/session/upload.js +68 -0
- package/dist/internal/session/upload.js.map +1 -0
- package/dist/internal/session.d.ts +66 -0
- package/dist/internal/session.d.ts.map +1 -0
- package/dist/internal/session.js +280 -0
- package/dist/internal/session.js.map +1 -0
- package/dist/{stats.d.ts → internal/stats.d.ts} +30 -16
- package/dist/internal/stats.d.ts.map +1 -0
- package/dist/internal/stats.js +201 -0
- package/dist/internal/stats.js.map +1 -0
- package/dist/internal/token.d.ts +22 -0
- package/dist/internal/token.d.ts.map +1 -0
- package/dist/internal/token.js +65 -0
- package/dist/internal/token.js.map +1 -0
- package/dist/internal/wire.d.ts +37 -0
- package/dist/internal/wire.d.ts.map +1 -0
- package/dist/internal/wire.js +49 -0
- package/dist/internal/wire.js.map +1 -0
- package/notices/bufbuild-protobuf-LICENSE +201 -0
- package/package.json +17 -38
- package/dist/FetchHttp.d.ts +0 -9
- package/dist/FetchHttp.d.ts.map +0 -1
- package/dist/FetchHttp.js +0 -63
- package/dist/FetchHttp.js.map +0 -1
- package/dist/PeerFactory.d.ts +0 -26
- package/dist/PeerFactory.d.ts.map +0 -1
- package/dist/PeerFactory.js +0 -4
- package/dist/PeerFactory.js.map +0 -1
- package/dist/PeerTypes.d.ts +0 -64
- package/dist/PeerTypes.d.ts.map +0 -1
- package/dist/PeerTypes.js +0 -2
- package/dist/PeerTypes.js.map +0 -1
- package/dist/Sequence.d.ts +0 -85
- package/dist/Sequence.d.ts.map +0 -1
- package/dist/Sequence.js +0 -210
- package/dist/Sequence.js.map +0 -1
- package/dist/SessionTypes.d.ts +0 -312
- package/dist/SessionTypes.d.ts.map +0 -1
- package/dist/SessionTypes.js +0 -19
- package/dist/SessionTypes.js.map +0 -1
- package/dist/Submission.d.ts.map +0 -1
- package/dist/Submission.js.map +0 -1
- package/dist/_internal/queue.d.ts +0 -6
- package/dist/_internal/queue.d.ts.map +0 -1
- package/dist/_internal/queue.js.map +0 -1
- package/dist/bytes.d.ts +0 -6
- package/dist/bytes.d.ts.map +0 -1
- package/dist/bytes.js +0 -32
- package/dist/bytes.js.map +0 -1
- package/dist/contract.d.ts +0 -149
- package/dist/contract.d.ts.map +0 -1
- package/dist/contract.js +0 -119
- package/dist/contract.js.map +0 -1
- package/dist/coordinator/_internal/client.d.ts +0 -215
- package/dist/coordinator/_internal/client.d.ts.map +0 -1
- package/dist/coordinator/_internal/client.js +0 -563
- package/dist/coordinator/_internal/client.js.map +0 -1
- package/dist/coordinator/_internal/recording.d.ts +0 -31
- package/dist/coordinator/_internal/recording.d.ts.map +0 -1
- package/dist/coordinator/_internal/recording.js +0 -123
- package/dist/coordinator/_internal/recording.js.map +0 -1
- package/dist/coordinator/_internal/response.d.ts +0 -15
- package/dist/coordinator/_internal/response.d.ts.map +0 -1
- package/dist/coordinator/_internal/response.js +0 -55
- package/dist/coordinator/_internal/response.js.map +0 -1
- package/dist/coordinator/_internal/schemas.d.ts +0 -73
- package/dist/coordinator/_internal/schemas.d.ts.map +0 -1
- package/dist/coordinator/_internal/schemas.js +0 -200
- package/dist/coordinator/_internal/schemas.js.map +0 -1
- package/dist/coordinator/index.d.ts +0 -40
- package/dist/coordinator/index.d.ts.map +0 -1
- package/dist/coordinator/index.js +0 -21
- package/dist/coordinator/index.js.map +0 -1
- package/dist/correlation.d.ts +0 -47
- package/dist/correlation.d.ts.map +0 -1
- package/dist/correlation.js +0 -131
- package/dist/correlation.js.map +0 -1
- package/dist/duration.d.ts +0 -27
- package/dist/duration.d.ts.map +0 -1
- package/dist/duration.js +0 -47
- package/dist/duration.js.map +0 -1
- package/dist/errors.d.ts +0 -1303
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -745
- package/dist/errors.js.map +0 -1
- package/dist/h3/_internal/client.d.ts +0 -9
- package/dist/h3/_internal/client.d.ts.map +0 -1
- package/dist/h3/_internal/client.js +0 -652
- package/dist/h3/_internal/client.js.map +0 -1
- package/dist/h3/_internal/contracts.d.ts.map +0 -1
- package/dist/h3/_internal/contracts.js +0 -123
- package/dist/h3/_internal/contracts.js.map +0 -1
- package/dist/h3/_internal/deployment.d.ts +0 -8
- package/dist/h3/_internal/deployment.d.ts.map +0 -1
- package/dist/h3/_internal/deployment.js +0 -149
- package/dist/h3/_internal/deployment.js.map +0 -1
- package/dist/h3/_internal/evidence.d.ts +0 -17
- package/dist/h3/_internal/evidence.d.ts.map +0 -1
- package/dist/h3/_internal/evidence.js +0 -48
- package/dist/h3/_internal/evidence.js.map +0 -1
- package/dist/h3/_internal/operations.d.ts +0 -58
- package/dist/h3/_internal/operations.d.ts.map +0 -1
- package/dist/h3/_internal/operations.js +0 -268
- package/dist/h3/_internal/operations.js.map +0 -1
- package/dist/h3/_internal/references.d.ts +0 -24
- package/dist/h3/_internal/references.d.ts.map +0 -1
- package/dist/h3/_internal/references.js +0 -309
- package/dist/h3/_internal/references.js.map +0 -1
- package/dist/h3/_internal/request.d.ts +0 -21
- package/dist/h3/_internal/request.d.ts.map +0 -1
- package/dist/h3/_internal/request.js +0 -97
- package/dist/h3/_internal/request.js.map +0 -1
- package/dist/h3/_internal/retained.d.ts +0 -22
- package/dist/h3/_internal/retained.d.ts.map +0 -1
- package/dist/h3/_internal/retained.js +0 -89
- package/dist/h3/_internal/retained.js.map +0 -1
- package/dist/h3/_internal/state.d.ts +0 -44
- package/dist/h3/_internal/state.d.ts.map +0 -1
- package/dist/h3/_internal/state.js +0 -283
- package/dist/h3/_internal/state.js.map +0 -1
- package/dist/h3/index.d.ts +0 -10
- package/dist/h3/index.d.ts.map +0 -1
- package/dist/h3/index.js +0 -7
- package/dist/h3/index.js.map +0 -1
- package/dist/h3/messages.d.ts.map +0 -1
- package/dist/h3/messages.js.map +0 -1
- package/dist/h3/profile.d.ts.map +0 -1
- package/dist/h3/profile.js.map +0 -1
- package/dist/h3/types.d.ts +0 -291
- package/dist/h3/types.d.ts.map +0 -1
- package/dist/h3/types.js +0 -2
- package/dist/h3/types.js.map +0 -1
- package/dist/host.d.ts +0 -26
- package/dist/host.d.ts.map +0 -1
- package/dist/host.js +0 -20
- package/dist/host.js.map +0 -1
- package/dist/json.d.ts +0 -25
- package/dist/json.d.ts.map +0 -1
- package/dist/json.js +0 -143
- package/dist/json.js.map +0 -1
- package/dist/media-stream.d.ts +0 -10
- package/dist/media-stream.d.ts.map +0 -1
- package/dist/media-stream.js +0 -18
- package/dist/media-stream.js.map +0 -1
- package/dist/observation.d.ts +0 -38
- package/dist/observation.d.ts.map +0 -1
- package/dist/observation.js +0 -113
- package/dist/observation.js.map +0 -1
- package/dist/orchestration/elapsed.d.ts +0 -9
- package/dist/orchestration/elapsed.d.ts.map +0 -1
- package/dist/orchestration/elapsed.js +0 -8
- package/dist/orchestration/elapsed.js.map +0 -1
- package/dist/orchestration/h3-source.d.ts +0 -58
- package/dist/orchestration/h3-source.d.ts.map +0 -1
- package/dist/orchestration/h3-source.js +0 -362
- package/dist/orchestration/h3-source.js.map +0 -1
- package/dist/orchestration/index.d.ts +0 -17
- package/dist/orchestration/index.d.ts.map +0 -1
- package/dist/orchestration/index.js +0 -12
- package/dist/orchestration/index.js.map +0 -1
- package/dist/orchestration/media-buffer.d.ts +0 -32
- package/dist/orchestration/media-buffer.d.ts.map +0 -1
- package/dist/orchestration/media-buffer.js +0 -94
- package/dist/orchestration/media-buffer.js.map +0 -1
- package/dist/orchestration/open-h3.d.ts +0 -101
- package/dist/orchestration/open-h3.d.ts.map +0 -1
- package/dist/orchestration/open-h3.js +0 -127
- package/dist/orchestration/open-h3.js.map +0 -1
- package/dist/orchestration/queries.d.ts +0 -10
- package/dist/orchestration/queries.d.ts.map +0 -1
- package/dist/orchestration/queries.js +0 -43
- package/dist/orchestration/queries.js.map +0 -1
- package/dist/orchestration/references.d.ts +0 -18
- package/dist/orchestration/references.d.ts.map +0 -1
- package/dist/orchestration/references.js +0 -79
- package/dist/orchestration/references.js.map +0 -1
- package/dist/orchestration/renewal-state.d.ts +0 -84
- package/dist/orchestration/renewal-state.d.ts.map +0 -1
- package/dist/orchestration/renewal-state.js +0 -95
- package/dist/orchestration/renewal-state.js.map +0 -1
- package/dist/orchestration/renewal.d.ts +0 -103
- package/dist/orchestration/renewal.d.ts.map +0 -1
- package/dist/orchestration/renewal.js +0 -1099
- package/dist/orchestration/renewal.js.map +0 -1
- package/dist/orchestration/request.d.ts +0 -65
- package/dist/orchestration/request.d.ts.map +0 -1
- package/dist/orchestration/request.js +0 -134
- package/dist/orchestration/request.js.map +0 -1
- package/dist/orchestration/retention.d.ts +0 -100
- package/dist/orchestration/retention.d.ts.map +0 -1
- package/dist/orchestration/retention.js +0 -134
- package/dist/orchestration/retention.js.map +0 -1
- package/dist/orchestration/routing.d.ts +0 -21
- package/dist/orchestration/routing.d.ts.map +0 -1
- package/dist/orchestration/routing.js +0 -93
- package/dist/orchestration/routing.js.map +0 -1
- package/dist/orchestration/scheduler-key.d.ts +0 -14
- package/dist/orchestration/scheduler-key.d.ts.map +0 -1
- package/dist/orchestration/scheduler-key.js +0 -62
- package/dist/orchestration/scheduler-key.js.map +0 -1
- package/dist/orchestration/scheduler-policy.d.ts +0 -246
- package/dist/orchestration/scheduler-policy.d.ts.map +0 -1
- package/dist/orchestration/scheduler-policy.js +0 -668
- package/dist/orchestration/scheduler-policy.js.map +0 -1
- package/dist/orchestration/scheduler.d.ts +0 -393
- package/dist/orchestration/scheduler.d.ts.map +0 -1
- package/dist/orchestration/scheduler.js +0 -2621
- package/dist/orchestration/scheduler.js.map +0 -1
- package/dist/orchestration/source-slot.d.ts +0 -124
- package/dist/orchestration/source-slot.d.ts.map +0 -1
- package/dist/orchestration/source-slot.js +0 -348
- package/dist/orchestration/source-slot.js.map +0 -1
- package/dist/orchestration/types.d.ts +0 -1462
- package/dist/orchestration/types.d.ts.map +0 -1
- package/dist/orchestration/types.js +0 -135
- package/dist/orchestration/types.js.map +0 -1
- package/dist/protobuf.d.ts +0 -63
- package/dist/protobuf.d.ts.map +0 -1
- package/dist/protobuf.js +0 -252
- package/dist/protobuf.js.map +0 -1
- package/dist/session/_internal/acquire.d.ts +0 -21
- package/dist/session/_internal/acquire.d.ts.map +0 -1
- package/dist/session/_internal/acquire.js +0 -168
- package/dist/session/_internal/acquire.js.map +0 -1
- package/dist/session/_internal/cleanup.d.ts +0 -19
- package/dist/session/_internal/cleanup.d.ts.map +0 -1
- package/dist/session/_internal/cleanup.js +0 -102
- package/dist/session/_internal/cleanup.js.map +0 -1
- package/dist/session/_internal/lifecycle.d.ts +0 -67
- package/dist/session/_internal/lifecycle.d.ts.map +0 -1
- package/dist/session/_internal/lifecycle.js +0 -142
- package/dist/session/_internal/lifecycle.js.map +0 -1
- package/dist/session/_internal/remote.d.ts +0 -28
- package/dist/session/_internal/remote.d.ts.map +0 -1
- package/dist/session/_internal/remote.js +0 -71
- package/dist/session/_internal/remote.js.map +0 -1
- package/dist/session/_internal/uploads.d.ts +0 -7
- package/dist/session/_internal/uploads.d.ts.map +0 -1
- package/dist/session/_internal/uploads.js +0 -31
- package/dist/session/_internal/uploads.js.map +0 -1
- package/dist/session/commands.d.ts +0 -2
- package/dist/session/commands.d.ts.map +0 -1
- package/dist/session/commands.js +0 -2
- package/dist/session/commands.js.map +0 -1
- package/dist/session/files.d.ts +0 -21
- package/dist/session/files.d.ts.map +0 -1
- package/dist/session/files.js +0 -49
- package/dist/session/files.js.map +0 -1
- package/dist/session/index.d.ts +0 -84
- package/dist/session/index.d.ts.map +0 -1
- package/dist/session/index.js +0 -16
- package/dist/session/index.js.map +0 -1
- package/dist/session/media.d.ts +0 -114
- package/dist/session/media.d.ts.map +0 -1
- package/dist/session/media.js +0 -2
- package/dist/session/media.js.map +0 -1
- package/dist/session/recorder.d.ts +0 -24
- package/dist/session/recorder.d.ts.map +0 -1
- package/dist/session/recorder.js +0 -19
- package/dist/session/recorder.js.map +0 -1
- package/dist/session.d.ts +0 -105
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -976
- package/dist/session.js.map +0 -1
- package/dist/simulation/_internal/source.d.ts +0 -12
- package/dist/simulation/_internal/source.d.ts.map +0 -1
- package/dist/simulation/_internal/source.js +0 -513
- package/dist/simulation/_internal/source.js.map +0 -1
- package/dist/simulation/index.d.ts +0 -13
- package/dist/simulation/index.d.ts.map +0 -1
- package/dist/simulation/index.js +0 -12
- package/dist/simulation/index.js.map +0 -1
- package/dist/simulation/types.d.ts +0 -39
- package/dist/simulation/types.d.ts.map +0 -1
- package/dist/simulation/types.js +0 -2
- package/dist/simulation/types.js.map +0 -1
- package/dist/stats.d.ts.map +0 -1
- package/dist/stats.js +0 -205
- package/dist/stats.js.map +0 -1
- package/dist/testing/Faults.d.ts +0 -4
- package/dist/testing/Faults.d.ts.map +0 -1
- package/dist/testing/Faults.js +0 -7
- package/dist/testing/Faults.js.map +0 -1
- package/dist/testing/Png.d.ts +0 -3
- package/dist/testing/Png.d.ts.map +0 -1
- package/dist/testing/Png.js.map +0 -1
- package/dist/testing/Wav.d.ts +0 -14
- package/dist/testing/Wav.d.ts.map +0 -1
- package/dist/testing/Wav.js +0 -37
- package/dist/testing/Wav.js.map +0 -1
- package/dist/testing/index.d.ts +0 -5
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js +0 -4
- package/dist/testing/index.js.map +0 -1
- package/dist/wire.d.ts +0 -7
- package/dist/wire.d.ts.map +0 -1
- package/dist/wire.generated.d.ts +0 -305
- package/dist/wire.generated.d.ts.map +0 -1
- package/dist/wire.generated.js +0 -1257
- package/dist/wire.generated.js.map +0 -1
- package/dist/wire.js +0 -5
- package/dist/wire.js.map +0 -1
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
import * as Config from "effect/Config";
|
|
2
|
+
import * as Context from "effect/Context";
|
|
3
|
+
import * as Duration from "effect/Duration";
|
|
4
|
+
import * as Effect from "effect/Effect";
|
|
5
|
+
import * as Layer from "effect/Layer";
|
|
6
|
+
import * as Redacted from "effect/Redacted";
|
|
7
|
+
import * as Schema from "effect/Schema";
|
|
8
|
+
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
9
|
+
import * as Recording from "./internal/recording.js";
|
|
10
|
+
import type { ClipReady } from "./Session.js";
|
|
11
|
+
import { ReactorError } from "./ReactorError.js";
|
|
12
|
+
export declare const defaultApiUrl = "https://api.reactor.inc";
|
|
13
|
+
export declare const Track: Schema.Struct<{
|
|
14
|
+
readonly name: Schema.NonEmptyString;
|
|
15
|
+
readonly kind: Schema.Literals<readonly ["audio", "video"]>;
|
|
16
|
+
readonly direction: Schema.Literals<readonly ["recvonly", "sendonly"]>;
|
|
17
|
+
}>;
|
|
18
|
+
export type Track = typeof Track.Type;
|
|
19
|
+
/** A track and the media section a host negotiated for it. */
|
|
20
|
+
export declare const Mapping: Schema.Struct<{
|
|
21
|
+
readonly name: Schema.NonEmptyString;
|
|
22
|
+
readonly kind: Schema.Literals<readonly ["audio", "video"]>;
|
|
23
|
+
readonly direction: Schema.Literals<readonly ["recvonly", "sendonly"]>;
|
|
24
|
+
readonly mid: Schema.String;
|
|
25
|
+
}>;
|
|
26
|
+
export type Mapping = typeof Mapping.Type;
|
|
27
|
+
export declare const Capabilities: Schema.Struct<{
|
|
28
|
+
readonly protocol_version: Schema.NonEmptyString;
|
|
29
|
+
readonly tracks: Schema.$Array<Schema.Struct<{
|
|
30
|
+
readonly name: Schema.NonEmptyString;
|
|
31
|
+
readonly kind: Schema.Literals<readonly ["audio", "video"]>;
|
|
32
|
+
readonly direction: Schema.Literals<readonly ["recvonly", "sendonly"]>;
|
|
33
|
+
}>>;
|
|
34
|
+
readonly commands: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.$Array<Schema.Struct<{
|
|
35
|
+
readonly name: Schema.NonEmptyString;
|
|
36
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
37
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
38
|
+
}>>>>, Schema.optionalKey<Schema.NullOr<Schema.$Array<Schema.Struct<{
|
|
39
|
+
readonly name: Schema.NonEmptyString;
|
|
40
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
41
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
42
|
+
}>>>>, never, never>;
|
|
43
|
+
readonly emission_fps: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Finite>>, Schema.optionalKey<Schema.NullOr<Schema.Finite>>, never, never>;
|
|
44
|
+
}>;
|
|
45
|
+
export type Capabilities = typeof Capabilities.Type;
|
|
46
|
+
export declare const Transport: Schema.Struct<{
|
|
47
|
+
readonly protocol: Schema.NonEmptyString;
|
|
48
|
+
readonly version: Schema.NonEmptyString;
|
|
49
|
+
}>;
|
|
50
|
+
/** A session as the coordinator describes it; unknown states stay as they are. */
|
|
51
|
+
export declare const Descriptor: Schema.Struct<{
|
|
52
|
+
readonly session_id: Schema.NonEmptyString;
|
|
53
|
+
readonly state: Schema.NonEmptyString;
|
|
54
|
+
readonly capabilities: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Struct<{
|
|
55
|
+
readonly protocol_version: Schema.NonEmptyString;
|
|
56
|
+
readonly tracks: Schema.$Array<Schema.Struct<{
|
|
57
|
+
readonly name: Schema.NonEmptyString;
|
|
58
|
+
readonly kind: Schema.Literals<readonly ["audio", "video"]>;
|
|
59
|
+
readonly direction: Schema.Literals<readonly ["recvonly", "sendonly"]>;
|
|
60
|
+
}>>;
|
|
61
|
+
readonly commands: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.$Array<Schema.Struct<{
|
|
62
|
+
readonly name: Schema.NonEmptyString;
|
|
63
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
64
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
65
|
+
}>>>>, Schema.optionalKey<Schema.NullOr<Schema.$Array<Schema.Struct<{
|
|
66
|
+
readonly name: Schema.NonEmptyString;
|
|
67
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
68
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
69
|
+
}>>>>, never, never>;
|
|
70
|
+
readonly emission_fps: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Finite>>, Schema.optionalKey<Schema.NullOr<Schema.Finite>>, never, never>;
|
|
71
|
+
}>>>, Schema.optionalKey<Schema.NullOr<Schema.Struct<{
|
|
72
|
+
readonly protocol_version: Schema.NonEmptyString;
|
|
73
|
+
readonly tracks: Schema.$Array<Schema.Struct<{
|
|
74
|
+
readonly name: Schema.NonEmptyString;
|
|
75
|
+
readonly kind: Schema.Literals<readonly ["audio", "video"]>;
|
|
76
|
+
readonly direction: Schema.Literals<readonly ["recvonly", "sendonly"]>;
|
|
77
|
+
}>>;
|
|
78
|
+
readonly commands: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.$Array<Schema.Struct<{
|
|
79
|
+
readonly name: Schema.NonEmptyString;
|
|
80
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
81
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
82
|
+
}>>>>, Schema.optionalKey<Schema.NullOr<Schema.$Array<Schema.Struct<{
|
|
83
|
+
readonly name: Schema.NonEmptyString;
|
|
84
|
+
readonly description: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.NullOr<Schema.String>>, never, never>;
|
|
85
|
+
readonly schema: Schema.optionalKey<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
86
|
+
}>>>>, never, never>;
|
|
87
|
+
readonly emission_fps: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Finite>>, Schema.optionalKey<Schema.NullOr<Schema.Finite>>, never, never>;
|
|
88
|
+
}>>>, never, never>;
|
|
89
|
+
readonly selected_transport: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Struct<{
|
|
90
|
+
readonly protocol: Schema.NonEmptyString;
|
|
91
|
+
readonly version: Schema.NonEmptyString;
|
|
92
|
+
}>>>, Schema.optionalKey<Schema.NullOr<Schema.Struct<{
|
|
93
|
+
readonly protocol: Schema.NonEmptyString;
|
|
94
|
+
readonly version: Schema.NonEmptyString;
|
|
95
|
+
}>>>, never, never>;
|
|
96
|
+
}>;
|
|
97
|
+
export type Descriptor = typeof Descriptor.Type;
|
|
98
|
+
/**
|
|
99
|
+
* Whether a session state is final. Only `CLOSED` is: hosted Reactor reads
|
|
100
|
+
* `INACTIVE` for a session whose last connection dropped, and that session still
|
|
101
|
+
* runs (and bills) for the documented 30 s reconnect window. A paid run adopted
|
|
102
|
+
* one 9 s after its owner was killed, then ended it with a DELETE that
|
|
103
|
+
* answered 200 and moved it to `CLOSED`.
|
|
104
|
+
*/
|
|
105
|
+
export declare const isTerminal: (state: string) => boolean;
|
|
106
|
+
export declare const IceServer: Schema.Struct<{
|
|
107
|
+
readonly urls: Schema.$Array<Schema.NonEmptyString>;
|
|
108
|
+
readonly username: Schema.optionalKey<Schema.String>;
|
|
109
|
+
readonly credential: Schema.optionalKey<Schema.String>;
|
|
110
|
+
}>;
|
|
111
|
+
export type IceServer = typeof IceServer.Type;
|
|
112
|
+
/** The coordinator's ICE server list, as it sends it. */
|
|
113
|
+
export declare const IceServersReply: Schema.Struct<{
|
|
114
|
+
readonly ice_servers: Schema.$Array<Schema.Struct<{
|
|
115
|
+
readonly uris: Schema.$Array<Schema.NonEmptyString>;
|
|
116
|
+
readonly credentials: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Struct<{
|
|
117
|
+
readonly username: Schema.String;
|
|
118
|
+
readonly password: Schema.String;
|
|
119
|
+
}>>>, Schema.optionalKey<Schema.NullOr<Schema.Struct<{
|
|
120
|
+
readonly username: Schema.String;
|
|
121
|
+
readonly password: Schema.String;
|
|
122
|
+
}>>>, never, never>;
|
|
123
|
+
}>>;
|
|
124
|
+
}>;
|
|
125
|
+
export declare const IceCandidate: Schema.Struct<{
|
|
126
|
+
readonly candidate: Schema.String;
|
|
127
|
+
readonly sdp_mid: Schema.optionalKey<Schema.String>;
|
|
128
|
+
readonly sdp_mline_index: Schema.optionalKey<Schema.Int>;
|
|
129
|
+
}>;
|
|
130
|
+
export type IceCandidate = typeof IceCandidate.Type;
|
|
131
|
+
export declare const Registered: Schema.Struct<{
|
|
132
|
+
readonly connection_id: Schema.Int;
|
|
133
|
+
}>;
|
|
134
|
+
export declare const SdpAnswer: Schema.Struct<{
|
|
135
|
+
readonly sdp_answer: Schema.NonEmptyString;
|
|
136
|
+
readonly connection_id: Schema.decodeTo<Schema.optionalKey<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.NullOr<Schema.Int>>, never, never>;
|
|
137
|
+
}>;
|
|
138
|
+
export type SdpAnswer = typeof SdpAnswer.Type;
|
|
139
|
+
export declare const UploadSlot: Schema.Struct<{
|
|
140
|
+
readonly presigned_id: Schema.NonEmptyString;
|
|
141
|
+
readonly presigned_url: Schema.NonEmptyString;
|
|
142
|
+
readonly path: Schema.String;
|
|
143
|
+
}>;
|
|
144
|
+
export type UploadSlot = typeof UploadSlot.Type;
|
|
145
|
+
/** A create reply whose session id is valid; the rest is decoded by `describe`. */
|
|
146
|
+
export interface Allocation {
|
|
147
|
+
readonly sessionId: string;
|
|
148
|
+
readonly reply: unknown;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* A remote termination verdict. A DELETE response alone is never proof: an
|
|
152
|
+
* independent read confirms the session is gone or terminal.
|
|
153
|
+
*/
|
|
154
|
+
export declare const Termination: Schema.Struct<{
|
|
155
|
+
readonly attempted: Schema.Boolean;
|
|
156
|
+
readonly responseReceived: Schema.Boolean;
|
|
157
|
+
readonly confirmed: Schema.Boolean;
|
|
158
|
+
readonly evidence: Schema.NullOr<Schema.Literals<readonly ["absent", "terminal"]>>;
|
|
159
|
+
/** DELETE status; null means no response arrived. */
|
|
160
|
+
readonly deleteStatus: Schema.NullOr<Schema.Int>;
|
|
161
|
+
/** State from the independent confirmation, when it was valid. */
|
|
162
|
+
readonly state: Schema.NullOr<Schema.String>;
|
|
163
|
+
readonly error: Schema.optionalKey<Schema.Struct<{
|
|
164
|
+
readonly _tag: Schema.String;
|
|
165
|
+
readonly reason: Schema.String;
|
|
166
|
+
readonly message: Schema.String;
|
|
167
|
+
readonly operation: Schema.optionalKey<Schema.String>;
|
|
168
|
+
readonly requestId: Schema.optionalKey<Schema.String>;
|
|
169
|
+
readonly sessionId: Schema.optionalKey<Schema.String>;
|
|
170
|
+
readonly generation: Schema.optionalKey<Schema.String>;
|
|
171
|
+
readonly outcome: Schema.optionalKey<Schema.Literals<readonly ["not-submitted", "unknown", "replied"]>>;
|
|
172
|
+
}>>;
|
|
173
|
+
}>;
|
|
174
|
+
export type Termination = typeof Termination.Type;
|
|
175
|
+
export declare const notTerminated: Termination;
|
|
176
|
+
/** A termination verdict as span attributes: a successful terminate says nothing about billing. */
|
|
177
|
+
export declare const terminationAttributes: (termination: Termination) => Record<string, unknown>;
|
|
178
|
+
/**
|
|
179
|
+
* A model's price. Reactor's billing page says it bills by the session-minute,
|
|
180
|
+
* while its pricing states some models' rates per second; `per` is the unit
|
|
181
|
+
* the pricing states, and callers decide how time rounds.
|
|
182
|
+
*/
|
|
183
|
+
export interface Rate {
|
|
184
|
+
readonly creditsPerDollar: number;
|
|
185
|
+
readonly creditsPerSecond: number;
|
|
186
|
+
readonly per: "second" | "minute";
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* The rate of `model` in `pricing`, by its connect slug or bare name: the
|
|
190
|
+
* catalog lists `h3-reference-to-video-turbo-realtime` where sessions take
|
|
191
|
+
* `reactor/h3-reference-to-video-turbo-realtime`. Only the settings are read
|
|
192
|
+
* strictly, so an entry this client cannot price never stops it pricing another.
|
|
193
|
+
*/
|
|
194
|
+
export declare const modelRate: (pricing: unknown, model: string) => Effect.Effect<{
|
|
195
|
+
creditsPerDollar: number;
|
|
196
|
+
creditsPerSecond: number;
|
|
197
|
+
per: "minute" | "second";
|
|
198
|
+
}, ReactorError, never>;
|
|
199
|
+
export interface TokenOptions {
|
|
200
|
+
/** The API key; the service's configured key when omitted. */
|
|
201
|
+
readonly apiKey?: Redacted.Redacted<string> | undefined;
|
|
202
|
+
readonly modelName: string;
|
|
203
|
+
/**
|
|
204
|
+
* Caps each session the token creates, from one second to a day, or
|
|
205
|
+
* `"unlimited"` for Reactor's default of no cap. An uncapped session bills
|
|
206
|
+
* until something terminates it, so it is never a default here. A token that
|
|
207
|
+
* creates no session, one only `bind`s, needs none.
|
|
208
|
+
*/
|
|
209
|
+
readonly maxSessionDuration?: Duration.Input | "unlimited" | undefined;
|
|
210
|
+
/**
|
|
211
|
+
* Sessions the token may create, 1 to 500; 1 by default. With `bind`,
|
|
212
|
+
* Reactor counts the bound sessions in it and by default leaves no room to create.
|
|
213
|
+
*/
|
|
214
|
+
readonly maxSessions?: number | undefined;
|
|
215
|
+
/** Open sessions of this account the token acts on besides those it creates. */
|
|
216
|
+
readonly bind?: ReadonlyArray<string> | undefined;
|
|
217
|
+
/**
|
|
218
|
+
* How long the token stays valid; Reactor's default of an hour when omitted.
|
|
219
|
+
* Reactor clamps it to six hours without saying so: read `expiresAt`.
|
|
220
|
+
*/
|
|
221
|
+
readonly expiresAfter?: Duration.Input | undefined;
|
|
222
|
+
}
|
|
223
|
+
/** What Reactor says a token grants, from its echo of the request; undefined where it says nothing. */
|
|
224
|
+
export interface Granted {
|
|
225
|
+
readonly models: ReadonlyArray<string>;
|
|
226
|
+
readonly maxSessions: number | undefined;
|
|
227
|
+
readonly maxSessionSeconds: number | "unlimited" | undefined;
|
|
228
|
+
/** Open sessions the token acts on besides those it creates. */
|
|
229
|
+
readonly bound: ReadonlyArray<string>;
|
|
230
|
+
}
|
|
231
|
+
export interface TokenGrant {
|
|
232
|
+
readonly jwt: Redacted.Redacted<string>;
|
|
233
|
+
/** When the token expires, in seconds since the epoch, as Reactor set it. */
|
|
234
|
+
readonly expiresAt: number;
|
|
235
|
+
/**
|
|
236
|
+
* The cap on each session the token creates, in seconds: as asked, or the
|
|
237
|
+
* narrower cap Reactor's echo states; undefined for none.
|
|
238
|
+
*/
|
|
239
|
+
readonly maxSessionSeconds: number | undefined;
|
|
240
|
+
/** Reactor's echo of the grant, when its reply carries one; a grant wider than asked is refused. */
|
|
241
|
+
readonly granted?: Granted | undefined;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* How an application gives sessions their tokens without handing over its API
|
|
245
|
+
* key. A session-scoped token acts only on the sessions it created or was bound
|
|
246
|
+
* to, and lives at most six hours, while a session can run a day or more; so a
|
|
247
|
+
* session starts on a token from `create` and, before that expires, carries on
|
|
248
|
+
* with one from `bind` for its own id.
|
|
249
|
+
*/
|
|
250
|
+
export interface Tokens {
|
|
251
|
+
/** A token that may create one session. */
|
|
252
|
+
readonly create: Effect.Effect<TokenGrant, ReactorError>;
|
|
253
|
+
/** A fresh token bound to an open session. */
|
|
254
|
+
readonly bind: (sessionId: string) => Effect.Effect<TokenGrant, ReactorError>;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Tokens that are never refreshed, for a session shorter than its token: the
|
|
258
|
+
* same `token` creates the session and serves its every later call, and the
|
|
259
|
+
* session's calls fail once it expires.
|
|
260
|
+
*/
|
|
261
|
+
export declare const fixedTokens: (token: TokenGrant) => Tokens;
|
|
262
|
+
export declare const Inspection: Schema.Struct<{
|
|
263
|
+
readonly observedAt: Schema.Finite;
|
|
264
|
+
readonly state: Schema.String;
|
|
265
|
+
readonly hasCapabilities: Schema.Boolean;
|
|
266
|
+
readonly selectedTransport: Schema.NullOr<Schema.Struct<{
|
|
267
|
+
readonly protocol: Schema.NonEmptyString;
|
|
268
|
+
readonly version: Schema.NonEmptyString;
|
|
269
|
+
}>>;
|
|
270
|
+
readonly cluster: Schema.NullOr<Schema.String>;
|
|
271
|
+
readonly zone: Schema.NullOr<Schema.String>;
|
|
272
|
+
readonly serverVersion: Schema.NullOr<Schema.String>;
|
|
273
|
+
}>;
|
|
274
|
+
export type Inspection = typeof Inspection.Type;
|
|
275
|
+
export type Segment = Recording.Segment;
|
|
276
|
+
export type DownloadedClip = Recording.DownloadedClip;
|
|
277
|
+
export type DownloadOptions = Recording.DownloadOptions;
|
|
278
|
+
export declare const parsePlaylist: typeof Recording.parsePlaylist;
|
|
279
|
+
/** The coordinator calls one session makes, authorized by its token. */
|
|
280
|
+
export interface Signaling {
|
|
281
|
+
/** Resolves once the reply names the allocated session; `describe` decodes the rest. */
|
|
282
|
+
readonly create: (model: {
|
|
283
|
+
readonly name: string;
|
|
284
|
+
readonly version?: string | undefined;
|
|
285
|
+
}, extraArgs?: Schema.Json) => Effect.Effect<Allocation, ReactorError>;
|
|
286
|
+
/** A reply that cannot describe its session still names one its owner must terminate. */
|
|
287
|
+
readonly describe: (allocation: Allocation) => Effect.Effect<Descriptor, ReactorError>;
|
|
288
|
+
readonly read: (sessionId: string) => Effect.Effect<Descriptor, ReactorError>;
|
|
289
|
+
/** Polls until the session publishes capabilities and a transport, or ends. */
|
|
290
|
+
readonly ready: (sessionId: string, initial?: Descriptor) => Effect.Effect<Descriptor, ReactorError>;
|
|
291
|
+
readonly iceServers: (sessionId: string) => Effect.Effect<ReadonlyArray<IceServer>, ReactorError>;
|
|
292
|
+
readonly register: (sessionId: string) => Effect.Effect<number, ReactorError>;
|
|
293
|
+
readonly offer: (sessionId: string, connectionId: number, sdp: string, mapping: ReadonlyArray<Mapping>, replace: boolean) => Effect.Effect<void, ReactorError>;
|
|
294
|
+
/** Polls while the answer is pending (202); the caller's deadline bounds it. */
|
|
295
|
+
readonly answer: (sessionId: string, connectionId: number) => Effect.Effect<SdpAnswer, ReactorError>;
|
|
296
|
+
readonly ice: (sessionId: string, connectionId: number, candidates: ReadonlyArray<IceCandidate>, isFinal: boolean) => Effect.Effect<void, ReactorError>;
|
|
297
|
+
readonly allocateUpload: (sessionId: string, name: string, mimeType: string, size: number) => Effect.Effect<UploadSlot, ReactorError>;
|
|
298
|
+
/** Sends no credential: the presigned URL is its own authority. */
|
|
299
|
+
readonly putUpload: (slot: UploadSlot, bytes: Uint8Array<ArrayBuffer>, mimeType: string) => Effect.Effect<void, ReactorError>;
|
|
300
|
+
readonly terminate: (sessionId: string) => Effect.Effect<Termination>;
|
|
301
|
+
/** Polls a recording's playlist, then fetches and joins its segments within a deadline. */
|
|
302
|
+
readonly downloadClip: (clip: ClipReady, options?: DownloadOptions) => Effect.Effect<DownloadedClip, ReactorError>;
|
|
303
|
+
}
|
|
304
|
+
export interface Options {
|
|
305
|
+
readonly apiUrl?: string | undefined;
|
|
306
|
+
/**
|
|
307
|
+
* The API key `mintToken` uses when its options name none. Without a
|
|
308
|
+
* `credential` it also authorizes `inspect`, `terminate` and `downloadClip`,
|
|
309
|
+
* since the key may act on any session of its account.
|
|
310
|
+
*/
|
|
311
|
+
readonly apiKey?: Redacted.Redacted<string> | undefined;
|
|
312
|
+
/**
|
|
313
|
+
* The session token that authorizes `inspect`, `terminate` and
|
|
314
|
+
* `downloadClip`, in place of the API key.
|
|
315
|
+
*/
|
|
316
|
+
readonly credential?: Effect.Effect<Redacted.Redacted<string>, ReactorError> | undefined;
|
|
317
|
+
}
|
|
318
|
+
declare const Coordinator_base: Context.ServiceClass<Coordinator, "reactor-effect-client/Coordinator", {
|
|
319
|
+
readonly apiUrl: string;
|
|
320
|
+
/** The pricing catalog, as the provider publishes it. */
|
|
321
|
+
readonly pricing: Effect.Effect<Schema.Json, ReactorError>;
|
|
322
|
+
readonly mintToken: (options: TokenOptions) => Effect.Effect<TokenGrant, ReactorError>;
|
|
323
|
+
/**
|
|
324
|
+
* `Tokens` minted with the API key: each `create` token may create one
|
|
325
|
+
* session capped as `maxSessionDuration` says, and each `bind` token acts
|
|
326
|
+
* on the one session it names.
|
|
327
|
+
*/
|
|
328
|
+
readonly tokens: (options: Omit<TokenOptions, "maxSessions" | "bind"> & {
|
|
329
|
+
readonly maxSessionDuration: Duration.Input | "unlimited";
|
|
330
|
+
}) => Tokens;
|
|
331
|
+
readonly inspect: (sessionId: string) => Effect.Effect<Inspection, ReactorError>;
|
|
332
|
+
/** Uncertainty stays in the report; supervisors choose their own failure policy. */
|
|
333
|
+
readonly terminate: (sessionId: string) => Effect.Effect<Termination>;
|
|
334
|
+
readonly downloadClip: (clip: ClipReady, options?: DownloadOptions) => Effect.Effect<DownloadedClip, ReactorError>;
|
|
335
|
+
/**
|
|
336
|
+
* The calls one session makes, each with the token `credential` then gives.
|
|
337
|
+
* It is the session's own seam, not an application's: its `create`
|
|
338
|
+
* allocates a session that nothing owns, closes or reports on, so allocate
|
|
339
|
+
* with `Reactor.create`.
|
|
340
|
+
*/
|
|
341
|
+
readonly signaling: (credential: Credential) => Signaling;
|
|
342
|
+
}>;
|
|
343
|
+
export declare class Coordinator extends Coordinator_base {
|
|
344
|
+
}
|
|
345
|
+
/** A session's token, when it has one; failing or late, the request is never sent. */
|
|
346
|
+
type Credential = Effect.Effect<Redacted.Redacted<string> | undefined, ReactorError>;
|
|
347
|
+
/** A Coordinator over the current `HttpClient`. No request runs while it is built. */
|
|
348
|
+
export declare const make: (options?: Options | undefined) => Effect.Effect<{
|
|
349
|
+
readonly apiUrl: string;
|
|
350
|
+
/** The pricing catalog, as the provider publishes it. */
|
|
351
|
+
readonly pricing: Effect.Effect<Schema.Json, ReactorError>;
|
|
352
|
+
readonly mintToken: (options: TokenOptions) => Effect.Effect<TokenGrant, ReactorError>;
|
|
353
|
+
/**
|
|
354
|
+
* `Tokens` minted with the API key: each `create` token may create one
|
|
355
|
+
* session capped as `maxSessionDuration` says, and each `bind` token acts
|
|
356
|
+
* on the one session it names.
|
|
357
|
+
*/
|
|
358
|
+
readonly tokens: (options: Omit<TokenOptions, "maxSessions" | "bind"> & {
|
|
359
|
+
readonly maxSessionDuration: Duration.Input | "unlimited";
|
|
360
|
+
}) => Tokens;
|
|
361
|
+
readonly inspect: (sessionId: string) => Effect.Effect<Inspection, ReactorError>;
|
|
362
|
+
/** Uncertainty stays in the report; supervisors choose their own failure policy. */
|
|
363
|
+
readonly terminate: (sessionId: string) => Effect.Effect<Termination>;
|
|
364
|
+
readonly downloadClip: (clip: ClipReady, options?: DownloadOptions) => Effect.Effect<DownloadedClip, ReactorError>;
|
|
365
|
+
/**
|
|
366
|
+
* The calls one session makes, each with the token `credential` then gives.
|
|
367
|
+
* It is the session's own seam, not an application's: its `create`
|
|
368
|
+
* allocates a session that nothing owns, closes or reports on, so allocate
|
|
369
|
+
* with `Reactor.create`.
|
|
370
|
+
*/
|
|
371
|
+
readonly signaling: (credential: Credential) => Signaling;
|
|
372
|
+
}, ReactorError, HttpClient.HttpClient>;
|
|
373
|
+
/** A Coordinator service over the application's `HttpClient`. */
|
|
374
|
+
export declare const layer: (options?: Options) => Layer.Layer<Coordinator, ReactorError, HttpClient.HttpClient>;
|
|
375
|
+
/**
|
|
376
|
+
* A Coordinator configured from the environment: `REACTOR_API_URL` (optional)
|
|
377
|
+
* and `REACTOR_API_KEY` (optional, for `mintToken`, `inspect`, `terminate`
|
|
378
|
+
* and `downloadClip`).
|
|
379
|
+
*/
|
|
380
|
+
export declare const layerConfig: Layer.Layer<Coordinator, ReactorError | Config.ConfigError, HttpClient.HttpClient>;
|
|
381
|
+
export {};
|
|
382
|
+
//# sourceMappingURL=Coordinator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Coordinator.d.ts","sourceRoot":"","sources":["../src/Coordinator.ts"],"names":[],"mappings":"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"}
|