aboutsummaryrefslogtreecommitdiff
path: root/common/packets.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'common/packets.d.ts')
-rw-r--r--common/packets.d.ts39
1 files changed, 21 insertions, 18 deletions
diff --git a/common/packets.d.ts b/common/packets.d.ts
index 369d221..0b04183 100644
--- a/common/packets.d.ts
+++ b/common/packets.d.ts
@@ -13,31 +13,34 @@ interface F_RTCIceCandidateInit {
usernameFragment?: string | null
}
-export type ClientboundPacket =
- { init: { your_id: number, version: string } }
- | { client_join: { id: number } } // join: more like "appear" - also sent when you join for others that were there before you.
- | { client_leave: { id: number } }
- | { message: { sender: number, message: string /* encrypted RelayMessageWrapper */ } }
+export interface ClientboundPacket {
+ init?: { your_id: number, version: string }
+ client_join?: { id: number } // join: more like "appear" - also sent when you join for others that were there before you.
+ client_leave?: { id: number }
+ message?: { sender: number, message: string /* encrypted RelayMessageWrapper */ }
+}
-export type ServerboundPacket =
- { ping: null }
- | { relay: { recipient?: number, message: string /* encrypted RelayMessageWrapper */ } }
+export interface ServerboundPacket {
+ ping?: null
+ relay?: { recipient?: number, message: string /* encrypted RelayMessageWrapper */ }
+}
export interface RelayMessageWrapper {
sender: number, // redundancy to ensure the server didn't cheat
inner: RelayMessage
}
-export type RelayMessage =
- { chat: ChatMessage }
- | { identify: { username: string } }
- | { provide: ProvideInfo }
- | { request: { id: string } }
- | { provide_stop: { id: string } }
- | { request_stop: { id: string } }
- | { offer: Sdp }
- | { answer: Sdp }
- | { ice_candidate: F_RTCIceCandidateInit }
+export interface RelayMessage {
+ chat?: ChatMessage
+ identify?: { username: string }
+ provide?: ProvideInfo
+ request?: { id: string }
+ provide_stop?: { id: string }
+ request_stop?: { id: string }
+ offer?: Sdp
+ answer?: Sdp
+ ice_candidate?: F_RTCIceCandidateInit
+}
export interface ChatMessage { text?: string, image?: string }
export type ResourceKind = "track" | "file"