UNPKG

@4players/odin-common

Version:

A collection of commonly used type definitions and utility functions across ODIN web projects

259 lines (258 loc) 8.94 kB
import { type infer, z } from 'zod'; export type { infer as Infer }; export type Commands = Record<string, { request: z.ZodTypeAny; response: z.ZodTypeAny; }>; export declare const MainCommandsRpc: { Hello: { request: z.ZodObject<{ stream: z.ZodLiteral<"main">; }, "strip", z.ZodTypeAny, { stream: "main"; }, { stream: "main"; }>; response: z.ZodNull; }; JoinRoom: { request: z.ZodObject<{ token: z.ZodString; room_id: z.ZodString; user_data: z.ZodType<Uint8Array, z.ZodTypeDef, Uint8Array>; position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; }, "strip", z.ZodTypeAny, { position: [number, number] | [number, number, number]; user_data: Uint8Array; room_id: string; token: string; }, { position: [number, number] | [number, number, number]; user_data: Uint8Array; room_id: string; token: string; }>; response: z.ZodObject<{ peer_id: z.ZodNumber; stream_id: z.ZodOptional<z.ZodNumber>; token: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { peer_id: number; token?: string | undefined; stream_id?: number | undefined; }, { peer_id: number; token?: string | undefined; stream_id?: number | undefined; }>; }; WebRtcUpdate: { request: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{ kind: z.ZodLiteral<"Sdp">; type: z.ZodEnum<["Answer", "Offer"]>; sdp: z.ZodString; media_map: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodString], null>, "many">; }, "strip", z.ZodTypeAny, { type: "Answer" | "Offer"; kind: "Sdp"; sdp: string; media_map: [number, string][]; }, { type: "Answer" | "Offer"; kind: "Sdp"; sdp: string; media_map: [number, string][]; }>, z.ZodObject<{ kind: z.ZodLiteral<"Trickle">; candidate: z.ZodString; spd_mid: z.ZodOptional<z.ZodString>; spd_mline_index: z.ZodOptional<z.ZodNumber>; username_fragment: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>; }, "strip", z.ZodTypeAny, { candidate: string; kind: "Trickle"; spd_mid?: string | undefined; spd_mline_index?: number | undefined; username_fragment?: string | null | undefined; }, { candidate: string; kind: "Trickle"; spd_mid?: string | undefined; spd_mline_index?: number | undefined; username_fragment?: string | null | undefined; }>, z.ZodObject<{ kind: z.ZodLiteral<"TrickleFinished">; }, "strip", z.ZodTypeAny, { kind: "TrickleFinished"; }, { kind: "TrickleFinished"; }>]>; response: z.ZodNull; }; RequestReconnectToken: { request: z.ZodObject<{ peer_id: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { peer_id?: number | undefined; }, { peer_id?: number | undefined; }>; response: z.ZodString; }; Ping: { request: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>; response: z.ZodNull; }; }; export type MainCommands = typeof MainCommandsRpc; export declare const RoomCommandsRpc: { Hello: { request: z.ZodObject<{ stream: z.ZodLiteral<"room">; token: z.ZodString; room_id: z.ZodString; user_data: z.ZodType<Uint8Array, z.ZodTypeDef, Uint8Array>; position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; }, "strip", z.ZodTypeAny, { stream: "room"; position: [number, number] | [number, number, number]; user_data: Uint8Array; room_id: string; token: string; }, { stream: "room"; position: [number, number] | [number, number, number]; user_data: Uint8Array; room_id: string; token: string; }>; response: z.ZodNull; }; UpdatePeer: { request: z.ZodObject<{ user_data: z.ZodType<Uint8Array, z.ZodTypeDef, Uint8Array>; }, "strip", z.ZodTypeAny, { user_data: Uint8Array; }, { user_data: Uint8Array; }>; response: z.ZodNull; }; StartMedia: { request: z.ZodObject<{ media_id: z.ZodNumber; properties: z.ZodUnion<[z.ZodObject<{ kind: z.ZodOptional<z.ZodLiteral<"audio">>; uid: z.ZodOptional<z.ZodString>; customType: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { uid?: string | undefined; kind?: "audio" | undefined; customType?: string | undefined; }, { uid?: string | undefined; kind?: "audio" | undefined; customType?: string | undefined; }>, z.ZodObject<{ kind: z.ZodOptional<z.ZodLiteral<"video">>; codec: z.ZodOptional<z.ZodString>; uid: z.ZodOptional<z.ZodString>; customType: z.ZodOptional<z.ZodString>; id: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { id?: string | undefined; codec?: string | undefined; uid?: string | undefined; kind?: "video" | undefined; customType?: string | undefined; }, { id?: string | undefined; codec?: string | undefined; uid?: string | undefined; kind?: "video" | undefined; customType?: string | undefined; }>]>; }, "strip", z.ZodTypeAny, { properties: { uid?: string | undefined; kind?: "audio" | undefined; customType?: string | undefined; } | { id?: string | undefined; codec?: string | undefined; uid?: string | undefined; kind?: "video" | undefined; customType?: string | undefined; }; media_id: number; }, { properties: { uid?: string | undefined; kind?: "audio" | undefined; customType?: string | undefined; } | { id?: string | undefined; codec?: string | undefined; uid?: string | undefined; kind?: "video" | undefined; customType?: string | undefined; }; media_id: number; }>; response: z.ZodNull; }; StopMedia: { request: z.ZodObject<{ media_id: z.ZodNumber; }, "strip", z.ZodTypeAny, { media_id: number; }, { media_id: number; }>; response: z.ZodNull; }; PauseMedia: { request: z.ZodObject<{ media_id: z.ZodNumber; }, "strip", z.ZodTypeAny, { media_id: number; }, { media_id: number; }>; response: z.ZodNull; }; ResumeMedia: { request: z.ZodObject<{ media_id: z.ZodNumber; }, "strip", z.ZodTypeAny, { media_id: number; }, { media_id: number; }>; response: z.ZodNull; }; SetPeerPosition: { request: z.ZodObject<{ position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; }, "strip", z.ZodTypeAny, { position: [number, number] | [number, number, number]; }, { position: [number, number] | [number, number, number]; }>; response: z.ZodNull; }; SendMessage: { request: z.ZodObject<{ target_peer_ids: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>; message: z.ZodType<Uint8Array, z.ZodTypeDef, Uint8Array>; }, "strip", z.ZodTypeAny, { message: Uint8Array; target_peer_ids?: number[] | undefined; }, { message: Uint8Array; target_peer_ids?: number[] | undefined; }>; response: z.ZodNull; }; }; export type RoomCommands = typeof RoomCommandsRpc;