/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { LobbyVisibility, LobbyVisibility$outboundSchema, } from "./lobbyvisibility.js"; import { Region, Region$outboundSchema } from "./region.js"; export type CreateLobbyParams = { /** * Types of lobbies a player can create. * * @remarks * * `private`: the player who created the room must share the roomId with their friends * * `public`: visible in the public lobby list, anyone can join * * `local`: for testing with a server running locally */ visibility: LobbyVisibility; /** * User input to initialize the game state. Object must be smaller than 64KB. */ initialConfig?: any | undefined; region: Region; }; /** @internal */ export type CreateLobbyParams$Outbound = { visibility: string; initialConfig?: any | undefined; region: string; }; /** @internal */ export const CreateLobbyParams$outboundSchema: z.ZodType< CreateLobbyParams$Outbound, z.ZodTypeDef, CreateLobbyParams > = z.object({ visibility: LobbyVisibility$outboundSchema, initialConfig: z.any().optional(), region: Region$outboundSchema, }); export function createLobbyParamsToJSON( createLobbyParams: CreateLobbyParams, ): string { return JSON.stringify( CreateLobbyParams$outboundSchema.parse(createLobbyParams), ); }