diff options
Diffstat (limited to 'assets/src/network/channel/messages/messages.ts')
| -rw-r--r-- | assets/src/network/channel/messages/messages.ts | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/assets/src/network/channel/messages/messages.ts b/assets/src/network/channel/messages/messages.ts index 3f2253d..67f70ac 100644 --- a/assets/src/network/channel/messages/messages.ts +++ b/assets/src/network/channel/messages/messages.ts @@ -1,5 +1,12 @@ export type AnyMessage = ShareMessage | RequestMessage; +export type EventName = AnyMessage["event_name"]; +export type MessageForEvent<EN> = Extract<AnyMessage, { event_name: EN }>; + +export type TokenizedMessage = { + token: string; +} & AnyMessage; + // Messages for the sharer export type ShareMessage = @@ -9,20 +16,24 @@ export type ShareMessage = | RequestIceCandidateMessage; export type NewRequestMessage = { + event_name: "new_request"; token: string; }; export type RequestCancelledMessage = { + event_name: "request_cancelled"; token: string; }; export type ShareAcceptedMessage = { + event_name: "share_accepted"; token: string; sdp: string; type: RTCSdpType; }; export type RequestIceCandidateMessage = { + event_name: "request_ice_candidate"; token: string; candidate: RTCIceCandidateInit; }; @@ -35,15 +46,21 @@ export type RequestMessage = | ShareCancelledMessage | ShareIceCandidateMessage; -export type RequestAcknowledgedMessage = {}; +export type RequestAcknowledgedMessage = { + event_name: "request_acknowledged"; +}; export type RequestAcceptedMessage = { + event_name: "request_accepted"; sdp: string; type: RTCSdpType; }; -export type ShareCancelledMessage = {}; +export type ShareCancelledMessage = { + event_name: "share_cancelled"; +}; export type ShareIceCandidateMessage = { + event_name: "share_ice_candidate"; candidate: RTCIceCandidateInit; }; |
