UNPKG

jsplanet

Version:

A controller for Trackmania 2020 dedicated server.

1,181 lines (1,180 loc) 40.8 kB
import { z } from "zod"; type XmlRpcCallbacks = "ManiaPlanet.ModeScriptCallbackArray" | "ManiaPlanet.PlayerChat" | "ManiaPlanet.PlayerConnect" | "ManiaPlanet.PlayerDisconnect" | "ManiaPlanet.PlayerInfoChanged"; type XmlRpcMethods = "AddMap" | "AddMapList" | "Authenticate" | "ChangeAuthPassword" | "ChatEnableManualRouting" | "ChatForwardToLogin" | "ChatSend" | "ChatSendServerMessage" | "ChatSendServerMessageToId" | "ChatSendServerMessageToLanguage" | "ChatSendServerMessageToLogin" | "ChatSendToId" | "ChatSendToLanguage" | "ChatSendToLogin" | "EnableCallbacks" | "ForcePlayerTeam" | "ForceSpectator" | "GetChatLines" | "GetCurrentMapIndex" | "GetCurrentMapInfo" | "GetForcedTeams" | "GetMapInfo" | "GetMapList" | "GetModeScriptSettings" | "GetModeScriptText" | "GetNextMapIndex" | "GetNextMapInfo" | "GetPlayerInfo" | "GetScriptName" | "GetServerPassword" | "GetServerPasswordForSpectator" | "GetStatus" | "GetVersion" | "InsertMap" | "InsertMapList" | "JumpToMapIdent" | "JumpToMapIndex" | "Kick" | "NextMap" | "RemoveMap" | "RemoveMapList" | "RestartMap" | "SetApiVersion" | "SetForcedTeams" | "SetModeScriptSettings" | "SetModeScriptText" | "SetNextMapIdent" | "SetNextMapIndex" | "SetScriptName" | "SetServerPassword" | "SetServerPasswordForSpectator" | "system.listMethods" | "system.methodHelp" | "system.methodSignature" | "TriggerModeScriptEventArray" | "WriteFile"; type XmlRpcScriptCallbacks = "Maniaplanet.EndRound_End" | "Maniaplanet.EndRound_Start" | "Maniaplanet.Pause.Status" | "Maniaplanet.StartRound_End" | "Maniaplanet.StartRound_Start" | "Trackmania.Event.StartLine" | "Trackmania.Event.WayPoint" | "Trackmania.Scores" | "Trackmania.WarmUp.End" | "Trackmania.WarmUp.EndRound" | "Trackmania.WarmUp.Start" | "Trackmania.WarmUp.StartRound"; type XmlRpcScriptMethods = "Maniaplanet.Pause.SetActive" | "Trackmania.GetScores" | "XmlRpc.EnableCallbacks"; declare const endRoundEndSchema: z.ZodObject<{ count: z.ZodNumber; isvalid: z.ZodOptional<z.ZodBoolean>; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; isvalid?: boolean | undefined; valid?: number | undefined; }, { count: number; time: number; isvalid?: boolean | undefined; valid?: number | undefined; }>; declare const mapDetailsSchema: z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; MapStyle: z.ZodString; MapType: z.ZodString; Name: z.ZodString; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; }>; declare const mapInfoSchema: z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; AuthorTime: z.ZodNumber; BronzeTime: z.ZodNumber; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; LapRace: z.ZodBoolean; MapStyle: z.ZodString; MapType: z.ZodString; Mood: z.ZodString; Name: z.ZodString; NbCheckpoints: z.ZodNumber; NbLaps: z.ZodNumber; SilverTime: z.ZodNumber; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }>; declare const modeScriptSettingsSchema: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>; declare const pauseStatusSchema: z.ZodObject<{ active: z.ZodBoolean; available: z.ZodBoolean; responseid: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { active: boolean; available: boolean; responseid?: string | undefined; }, { active: boolean; available: boolean; responseid?: string | undefined; }>; declare const playerInfoSchema: z.ZodObject<{ Flags: z.ZodNumber; LadderRanking: z.ZodNumber; LadderScore: z.ZodNumber; Login: z.ZodString; NickName: z.ZodString; PlayerId: z.ZodNumber; SpectatorStatus: z.ZodNumber; TeamId: z.ZodNumber; }, "strip", z.ZodTypeAny, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }>; declare const roundSchema: z.ZodObject<{ count: z.ZodNumber; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; valid?: number | undefined; }, { count: number; time: number; valid?: number | undefined; }>; declare const scoresSchema: z.ZodObject<{ players: z.ZodArray<z.ZodObject<{ accountid: z.ZodString; bestlapcheckpoints: z.ZodArray<z.ZodNumber, "many">; bestlaptime: z.ZodNumber; bestracecheckpoints: z.ZodArray<z.ZodNumber, "many">; bestracetime: z.ZodNumber; login: z.ZodString; mappoints: z.ZodNumber; matchpoints: z.ZodNumber; name: z.ZodString; prevracecheckpoints: z.ZodArray<z.ZodNumber, "many">; prevracetime: z.ZodNumber; rank: z.ZodNumber; roundpoints: z.ZodNumber; }, "strip", z.ZodTypeAny, { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }, { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }>, "many">; responseid: z.ZodOptional<z.ZodString>; section: z.ZodUnion<[z.ZodLiteral<"">, z.ZodLiteral<"EndMap">, z.ZodLiteral<"EndMatch">, z.ZodLiteral<"EndMatchEarly">, z.ZodLiteral<"EndRound">, z.ZodLiteral<"PreEndRound">]>; teams: z.ZodArray<z.ZodObject<{ id: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>; mappoints: z.ZodNumber; matchpoints: z.ZodNumber; name: z.ZodUnion<[z.ZodLiteral<"Blue">, z.ZodLiteral<"Red">]>; roundpoints: z.ZodNumber; }, "strip", z.ZodTypeAny, { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }, { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }>, "many">; useteams: z.ZodBoolean; winnerplayer: z.ZodString; winnerteam: z.ZodUnion<[z.ZodLiteral<-1>, z.ZodLiteral<0>, z.ZodLiteral<1>]>; }, "strip", z.ZodTypeAny, { players: { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }[]; section: "" | "EndMap" | "EndMatch" | "EndMatchEarly" | "EndRound" | "PreEndRound"; teams: { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }[]; useteams: boolean; winnerplayer: string; winnerteam: 0 | 1 | -1; responseid?: string | undefined; }, { players: { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }[]; section: "" | "EndMap" | "EndMatch" | "EndMatchEarly" | "EndRound" | "PreEndRound"; teams: { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }[]; useteams: boolean; winnerplayer: string; winnerteam: 0 | 1 | -1; responseid?: string | undefined; }>; declare const scriptSchema: z.ZodObject<{ CurrentValue: z.ZodString; NextValue: z.ZodString; }, "strip", z.ZodTypeAny, { CurrentValue: string; NextValue: string; }, { CurrentValue: string; NextValue: string; }>; declare const startLineSchema: z.ZodObject<{ accountid: z.ZodString; login: z.ZodString; time: z.ZodNumber; }, "strip", z.ZodTypeAny, { time: number; accountid: string; login: string; }, { time: number; accountid: string; login: string; }>; declare const statusSchema: z.ZodObject<{ Code: z.ZodNumber; Name: z.ZodString; }, "strip", z.ZodTypeAny, { Name: string; Code: number; }, { Name: string; Code: number; }>; declare const versionSchema: z.ZodObject<{ ApiVersion: z.ZodString; Build: z.ZodString; Name: z.ZodString; TitleId: z.ZodString; Version: z.ZodString; }, "strip", z.ZodTypeAny, { Name: string; ApiVersion: string; Build: string; TitleId: string; Version: string; }, { Name: string; ApiVersion: string; Build: string; TitleId: string; Version: string; }>; declare const warmupRoundSchema: z.ZodObject<{ current: z.ZodNumber; total: z.ZodNumber; }, "strip", z.ZodTypeAny, { current: number; total: number; }, { current: number; total: number; }>; declare const waypointSchema: z.ZodObject<{ checkpointinlap: z.ZodNumber; checkpointinrace: z.ZodNumber; isendlap: z.ZodBoolean; isendrace: z.ZodBoolean; laptime: z.ZodNumber; login: z.ZodString; racetime: z.ZodNumber; speed: z.ZodNumber; time: z.ZodNumber; }, "strip", z.ZodTypeAny, { time: number; login: string; checkpointinlap: number; checkpointinrace: number; isendlap: boolean; isendrace: boolean; laptime: number; racetime: number; speed: number; }, { time: number; login: string; checkpointinlap: number; checkpointinrace: number; isendlap: boolean; isendrace: boolean; laptime: number; racetime: number; speed: number; }>; type Language = { Lang: string; Text: string; }; type EndRoundEnd = z.infer<typeof endRoundEndSchema>; type MapDetails = z.infer<typeof mapDetailsSchema>; type MapInfo = z.infer<typeof mapInfoSchema>; type ModeScriptSettings = z.infer<typeof modeScriptSettingsSchema>; type PauseStatus = z.infer<typeof pauseStatusSchema>; type PlayerInfo = z.infer<typeof playerInfoSchema>; type Round = z.infer<typeof roundSchema>; type Scores = z.infer<typeof scoresSchema>; type Script = z.infer<typeof scriptSchema>; type StartLine = z.infer<typeof startLineSchema>; type Status = z.infer<typeof statusSchema>; type Version = z.infer<typeof versionSchema>; type WarmupRound = z.infer<typeof warmupRoundSchema>; type Waypoint = z.infer<typeof waypointSchema>; interface XmlRpcCallbacksCall { "ManiaPlanet.ModeScriptCallbackArray": { [Callback in XmlRpcScriptCallbacks]: [ callback: Callback, args: XmlRpcScriptCallbacksCall[Callback][0] ]; }[XmlRpcScriptCallbacks]; "ManiaPlanet.PlayerChat": [ playerId: number, playerLogin: string, message: string, isCommand: boolean ]; "ManiaPlanet.PlayerConnect": [login: string, isSpectator: boolean]; "ManiaPlanet.PlayerDisconnect": [login: string, unknown: string]; "ManiaPlanet.PlayerInfoChanged": [newPlayerInfo: PlayerInfo]; } interface XmlRpcMethodsCall { AddMap: [filename: string]; AddMapList: [filenames: string[]]; Authenticate: [user: string, password: string]; ChangeAuthPassword: [login: string, password: string]; ChatEnableManualRouting: [enable: boolean, forwardServerMessage: boolean]; ChatForwardToLogin: [text: string, senderLogin: string, destLogin: string]; ChatSend: [text: string]; ChatSendServerMessage: [text: string]; ChatSendServerMessageToId: [text: string, playerId: number]; ChatSendServerMessageToLanguage: [languages: Language[], login: string]; ChatSendServerMessageToLogin: [text: string, login: string]; ChatSendToId: [text: string, playerId: number]; ChatSendToLanguage: [languages: Language[], login: string]; ChatSendToLogin: [text: string, login: string]; EnableCallbacks: [enable: boolean]; ForcePlayerTeam: [login: string, team: 0 | 1]; ForceSpectator: [login: string, mode: number]; GetChatLines: []; GetCurrentMapIndex: []; GetCurrentMapInfo: []; GetForcedTeams: []; GetMapInfo: [filename: string]; GetMapList: [size: number, offset: number]; GetModeScriptSettings: []; GetModeScriptText: []; GetNextMapIndex: []; GetNextMapInfo: []; GetPlayerInfo: [login: string]; GetScriptName: []; GetServerPassword: []; GetServerPasswordForSpectator: []; GetStatus: []; GetVersion: []; InsertMap: [filename: string]; InsertMapList: [filenames: string[]]; JumpToMapIdent: [uid: string]; JumpToMapIndex: [index: number]; Kick: [login: string]; NextMap: []; RemoveMap: [filename: string]; RemoveMapList: [filenames: string[]]; RestartMap: []; SetApiVersion: [version: string]; SetForcedTeams: [areTeamsForced: boolean]; SetModeScriptSettings: [settings: ModeScriptSettings]; SetModeScriptText: [scriptText: string]; SetNextMapIdent: [uid: string]; SetNextMapIndex: [index: number]; SetScriptName: [scriptName: string]; SetServerPassword: [password: string]; SetServerPasswordForSpectator: [password: string]; "system.listMethods": []; "system.methodHelp": [method: string]; "system.methodSignature": [method: string]; TriggerModeScriptEventArray: { [Method in XmlRpcScriptMethods]: [ method: Method, args: XmlRpcScriptMethodsCall[Method] ]; }[XmlRpcScriptMethods]; WriteFile: [filename: string, content: Buffer]; } interface XmlRpcMethodsResponse { AddMap: [success: boolean]; AddMapList: [added: number]; Authenticate: [success: boolean]; ChangeAuthPassword: [success: boolean]; ChatEnableManualRouting: [success: boolean]; ChatForwardToLogin: [success: boolean]; ChatSend: [success: boolean]; ChatSendServerMessage: [success: boolean]; ChatSendServerMessageToId: [success: boolean]; ChatSendServerMessageToLanguage: [success: boolean]; ChatSendServerMessageToLogin: [success: boolean]; ChatSendToId: [success: boolean]; ChatSendToLanguage: [success: boolean]; ChatSendToLogin: [success: boolean]; EnableCallbacks: [success: boolean]; ForcePlayerTeam: [success: boolean]; ForceSpectator: [success: boolean]; GetChatLines: [lines: string[]]; GetCurrentMapIndex: [index: number]; GetCurrentMapInfo: [mapInfo: MapInfo]; GetForcedTeams: [areTeamsForced: boolean]; GetMapInfo: [mapInfo: MapInfo]; GetMapList: [maps: MapDetails[]]; GetModeScriptSettings: [settings: ModeScriptSettings]; GetModeScriptText: [scriptText: string]; GetNextMapIndex: [index: number]; GetNextMapInfo: [mapInfo: MapInfo]; GetPlayerInfo: [playerInfo: PlayerInfo]; GetScriptName: [script: Script]; GetServerPassword: [password: string]; GetServerPasswordForSpectator: [password: string]; GetStatus: [status: Status]; GetVersion: [version: Version]; InsertMap: [success: boolean]; InsertMapList: [inserted: number]; JumpToMapIdent: [success: boolean]; JumpToMapIndex: [success: boolean]; Kick: [success: boolean]; NextMap: [success: boolean]; RemoveMap: [success: boolean]; RemoveMapList: [removed: number]; RestartMap: [success: boolean]; SetApiVersion: [success: boolean]; SetForcedTeams: [success: boolean]; SetModeScriptSettings: [success: boolean]; SetModeScriptText: [success: boolean]; SetNextMapIdent: [success: boolean]; SetNextMapIndex: [success: boolean]; SetScriptName: [success: boolean]; SetServerPassword: [success: boolean]; SetServerPasswordForSpectator: [success: boolean]; "system.listMethods": [methodsName: string[]]; "system.methodHelp": [help: string]; "system.methodSignature": [ signatures: [returnType: string, ...parameters: string[]][] ]; TriggerModeScriptEventArray: [success: boolean]; WriteFile: [success: boolean]; } interface XmlRpcScriptCallbacksCall { "Maniaplanet.EndRound_End": [[data: string], [round: EndRoundEnd]]; "Maniaplanet.EndRound_Start": [[data: string], [round: Round]]; "Maniaplanet.Pause.Status": [[data: string], [pauseStatus: PauseStatus]]; "Maniaplanet.StartRound_End": [[data: string], [round: Round]]; "Maniaplanet.StartRound_Start": [[data: string], [Round: Round]]; "Trackmania.Event.StartLine": [[data: string], [startLine: StartLine]]; "Trackmania.Event.WayPoint": [[data: string], [waypoint: Waypoint]]; "Trackmania.Scores": [[data: string], [scores: Scores]]; "Trackmania.WarmUp.End": [[data: string], [warmup: Record<string, never>]]; "Trackmania.WarmUp.EndRound": [[data: string], [warmupRound: WarmupRound]]; "Trackmania.WarmUp.Start": [[data: string], [warmup: Record<string, never>]]; "Trackmania.WarmUp.StartRound": [[data: string], [warmupRound: WarmupRound]]; } interface XmlRpcScriptMethodsCall { "Maniaplanet.Pause.SetActive": [enable: "false" | "true"]; "Trackmania.GetScores": []; "XmlRpc.EnableCallbacks": [enable: "false" | "true"]; } declare const xmlRpcScriptMethodsWithResponse: ("Maniaplanet.Pause.SetActive" | "Trackmania.GetScores")[]; type XmlRpcScriptMethodsWithResponse = (typeof xmlRpcScriptMethodsWithResponse)[number]; declare const xmlRpcScriptMethodsResponseCallback: { "Maniaplanet.Pause.SetActive": "Maniaplanet.Pause.Status"; "Trackmania.GetScores": "Trackmania.Scores"; }; type XmlRpcScriptMethodResponseCallbackCall<Callback extends XmlRpcScriptMethodsWithResponse = XmlRpcScriptMethodsWithResponse> = XmlRpcScriptCallbacksCall[(typeof xmlRpcScriptMethodsResponseCallback)[Callback]][1]; type XmlRpcScriptResponseCallbacks = (typeof xmlRpcScriptMethodsResponseCallback)[XmlRpcScriptMethodsWithResponse]; declare const xmlRpcMethodsResponseType: { AddMap: z.ZodTuple<[z.ZodBoolean], null>; AddMapList: z.ZodTuple<[z.ZodNumber], null>; Authenticate: z.ZodTuple<[z.ZodBoolean], null>; ChangeAuthPassword: z.ZodTuple<[z.ZodBoolean], null>; ChatEnableManualRouting: z.ZodTuple<[z.ZodBoolean], null>; ChatForwardToLogin: z.ZodTuple<[z.ZodBoolean], null>; ChatSend: z.ZodTuple<[z.ZodBoolean], null>; ChatSendServerMessage: z.ZodTuple<[z.ZodBoolean], null>; ChatSendServerMessageToId: z.ZodTuple<[z.ZodBoolean], null>; ChatSendServerMessageToLanguage: z.ZodTuple<[z.ZodBoolean], null>; ChatSendServerMessageToLogin: z.ZodTuple<[z.ZodBoolean], null>; ChatSendToId: z.ZodTuple<[z.ZodBoolean], null>; ChatSendToLanguage: z.ZodTuple<[z.ZodBoolean], null>; ChatSendToLogin: z.ZodTuple<[z.ZodBoolean], null>; EnableCallbacks: z.ZodTuple<[z.ZodBoolean], null>; ForcePlayerTeam: z.ZodTuple<[z.ZodBoolean], null>; ForceSpectator: z.ZodTuple<[z.ZodBoolean], null>; GetChatLines: z.ZodTuple<[z.ZodArray<z.ZodString, "many">], null>; GetCurrentMapIndex: z.ZodTuple<[z.ZodNumber], null>; GetCurrentMapInfo: z.ZodTuple<[z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; AuthorTime: z.ZodNumber; BronzeTime: z.ZodNumber; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; LapRace: z.ZodBoolean; MapStyle: z.ZodString; MapType: z.ZodString; Mood: z.ZodString; Name: z.ZodString; NbCheckpoints: z.ZodNumber; NbLaps: z.ZodNumber; SilverTime: z.ZodNumber; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }>], null>; GetForcedTeams: z.ZodTuple<[z.ZodBoolean], null>; GetMapInfo: z.ZodTuple<[z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; AuthorTime: z.ZodNumber; BronzeTime: z.ZodNumber; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; LapRace: z.ZodBoolean; MapStyle: z.ZodString; MapType: z.ZodString; Mood: z.ZodString; Name: z.ZodString; NbCheckpoints: z.ZodNumber; NbLaps: z.ZodNumber; SilverTime: z.ZodNumber; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }>], null>; GetMapList: z.ZodTuple<[z.ZodArray<z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; MapStyle: z.ZodString; MapType: z.ZodString; Name: z.ZodString; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; }>, "many">], null>; GetModeScriptSettings: z.ZodTuple<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>], null>; GetModeScriptText: z.ZodTuple<[z.ZodString], null>; GetNextMapIndex: z.ZodTuple<[z.ZodNumber], null>; GetNextMapInfo: z.ZodTuple<[z.ZodObject<{ Author: z.ZodString; AuthorNickname: z.ZodString; AuthorTime: z.ZodNumber; BronzeTime: z.ZodNumber; CopperPrice: z.ZodNumber; Environnement: z.ZodString; FileName: z.ZodString; GoldTime: z.ZodNumber; LapRace: z.ZodBoolean; MapStyle: z.ZodString; MapType: z.ZodString; Mood: z.ZodString; Name: z.ZodString; NbCheckpoints: z.ZodNumber; NbLaps: z.ZodNumber; SilverTime: z.ZodNumber; UId: z.ZodString; }, "strip", z.ZodTypeAny, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }, { Author: string; AuthorNickname: string; CopperPrice: number; Environnement: string; FileName: string; GoldTime: number; MapStyle: string; MapType: string; Name: string; UId: string; AuthorTime: number; BronzeTime: number; LapRace: boolean; Mood: string; NbCheckpoints: number; NbLaps: number; SilverTime: number; }>], null>; GetPlayerInfo: z.ZodTuple<[z.ZodObject<{ Flags: z.ZodNumber; LadderRanking: z.ZodNumber; LadderScore: z.ZodNumber; Login: z.ZodString; NickName: z.ZodString; PlayerId: z.ZodNumber; SpectatorStatus: z.ZodNumber; TeamId: z.ZodNumber; }, "strip", z.ZodTypeAny, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }>], null>; GetScriptName: z.ZodTuple<[z.ZodObject<{ CurrentValue: z.ZodString; NextValue: z.ZodString; }, "strip", z.ZodTypeAny, { CurrentValue: string; NextValue: string; }, { CurrentValue: string; NextValue: string; }>], null>; GetServerPassword: z.ZodTuple<[z.ZodString], null>; GetServerPasswordForSpectator: z.ZodTuple<[z.ZodString], null>; GetStatus: z.ZodTuple<[z.ZodObject<{ Code: z.ZodNumber; Name: z.ZodString; }, "strip", z.ZodTypeAny, { Name: string; Code: number; }, { Name: string; Code: number; }>], null>; GetVersion: z.ZodTuple<[z.ZodObject<{ ApiVersion: z.ZodString; Build: z.ZodString; Name: z.ZodString; TitleId: z.ZodString; Version: z.ZodString; }, "strip", z.ZodTypeAny, { Name: string; ApiVersion: string; Build: string; TitleId: string; Version: string; }, { Name: string; ApiVersion: string; Build: string; TitleId: string; Version: string; }>], null>; InsertMap: z.ZodTuple<[z.ZodBoolean], null>; InsertMapList: z.ZodTuple<[z.ZodNumber], null>; JumpToMapIdent: z.ZodTuple<[z.ZodBoolean], null>; JumpToMapIndex: z.ZodTuple<[z.ZodBoolean], null>; Kick: z.ZodTuple<[z.ZodBoolean], null>; NextMap: z.ZodTuple<[z.ZodBoolean], null>; RemoveMap: z.ZodTuple<[z.ZodBoolean], null>; RemoveMapList: z.ZodTuple<[z.ZodNumber], null>; RestartMap: z.ZodTuple<[z.ZodBoolean], null>; SetApiVersion: z.ZodTuple<[z.ZodBoolean], null>; SetForcedTeams: z.ZodTuple<[z.ZodBoolean], null>; SetModeScriptSettings: z.ZodTuple<[z.ZodBoolean], null>; SetModeScriptText: z.ZodTuple<[z.ZodBoolean], null>; SetNextMapIdent: z.ZodTuple<[z.ZodBoolean], null>; SetNextMapIndex: z.ZodTuple<[z.ZodBoolean], null>; SetScriptName: z.ZodTuple<[z.ZodBoolean], null>; SetServerPassword: z.ZodTuple<[z.ZodBoolean], null>; SetServerPasswordForSpectator: z.ZodTuple<[z.ZodBoolean], null>; "system.listMethods": z.ZodTuple<[z.ZodArray<z.ZodString, "many">], null>; "system.methodHelp": z.ZodTuple<[z.ZodString], null>; "system.methodSignature": z.ZodTuple<[z.ZodArray<z.ZodType<[string, ...string[]], z.ZodTypeDef, [string, ...string[]]>, "many">], null>; TriggerModeScriptEventArray: z.ZodTuple<[z.ZodBoolean], null>; WriteFile: z.ZodTuple<[z.ZodBoolean], null>; }; declare const xmlRpcCallbacksCallType: { "ManiaPlanet.ModeScriptCallbackArray": z.Schema<XmlRpcCallbacksCall["ManiaPlanet.ModeScriptCallbackArray"]>; "ManiaPlanet.PlayerChat": z.ZodTuple<[z.ZodNumber, z.ZodString, z.ZodString, z.ZodBoolean], null>; "ManiaPlanet.PlayerConnect": z.ZodTuple<[z.ZodString, z.ZodBoolean], null>; "ManiaPlanet.PlayerDisconnect": z.ZodTuple<[z.ZodString, z.ZodString], null>; "ManiaPlanet.PlayerInfoChanged": z.ZodTuple<[z.ZodObject<{ Flags: z.ZodNumber; LadderRanking: z.ZodNumber; LadderScore: z.ZodNumber; Login: z.ZodString; NickName: z.ZodString; PlayerId: z.ZodNumber; SpectatorStatus: z.ZodNumber; TeamId: z.ZodNumber; }, "strip", z.ZodTypeAny, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }, { Flags: number; LadderRanking: number; LadderScore: number; Login: string; NickName: string; PlayerId: number; SpectatorStatus: number; TeamId: number; }>], null>; }; declare const xmlRpcScriptCallbacksCallType: { "Maniaplanet.EndRound_End": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ count: z.ZodNumber; isvalid: z.ZodOptional<z.ZodBoolean>; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; isvalid?: boolean | undefined; valid?: number | undefined; }, { count: number; time: number; isvalid?: boolean | undefined; valid?: number | undefined; }>], null>]; "Maniaplanet.EndRound_Start": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ count: z.ZodNumber; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; valid?: number | undefined; }, { count: number; time: number; valid?: number | undefined; }>], null>]; "Maniaplanet.Pause.Status": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ active: z.ZodBoolean; available: z.ZodBoolean; responseid: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { active: boolean; available: boolean; responseid?: string | undefined; }, { active: boolean; available: boolean; responseid?: string | undefined; }>], null>]; "Maniaplanet.StartRound_End": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ count: z.ZodNumber; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; valid?: number | undefined; }, { count: number; time: number; valid?: number | undefined; }>], null>]; "Maniaplanet.StartRound_Start": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ count: z.ZodNumber; time: z.ZodNumber; valid: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { count: number; time: number; valid?: number | undefined; }, { count: number; time: number; valid?: number | undefined; }>], null>]; "Trackmania.Event.StartLine": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ accountid: z.ZodString; login: z.ZodString; time: z.ZodNumber; }, "strip", z.ZodTypeAny, { time: number; accountid: string; login: string; }, { time: number; accountid: string; login: string; }>], null>]; "Trackmania.Event.WayPoint": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ checkpointinlap: z.ZodNumber; checkpointinrace: z.ZodNumber; isendlap: z.ZodBoolean; isendrace: z.ZodBoolean; laptime: z.ZodNumber; login: z.ZodString; racetime: z.ZodNumber; speed: z.ZodNumber; time: z.ZodNumber; }, "strip", z.ZodTypeAny, { time: number; login: string; checkpointinlap: number; checkpointinrace: number; isendlap: boolean; isendrace: boolean; laptime: number; racetime: number; speed: number; }, { time: number; login: string; checkpointinlap: number; checkpointinrace: number; isendlap: boolean; isendrace: boolean; laptime: number; racetime: number; speed: number; }>], null>]; "Trackmania.Scores": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ players: z.ZodArray<z.ZodObject<{ accountid: z.ZodString; bestlapcheckpoints: z.ZodArray<z.ZodNumber, "many">; bestlaptime: z.ZodNumber; bestracecheckpoints: z.ZodArray<z.ZodNumber, "many">; bestracetime: z.ZodNumber; login: z.ZodString; mappoints: z.ZodNumber; matchpoints: z.ZodNumber; name: z.ZodString; prevracecheckpoints: z.ZodArray<z.ZodNumber, "many">; prevracetime: z.ZodNumber; rank: z.ZodNumber; roundpoints: z.ZodNumber; }, "strip", z.ZodTypeAny, { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }, { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }>, "many">; responseid: z.ZodOptional<z.ZodString>; section: z.ZodUnion<[z.ZodLiteral<"">, z.ZodLiteral<"EndMap">, z.ZodLiteral<"EndMatch">, z.ZodLiteral<"EndMatchEarly">, z.ZodLiteral<"EndRound">, z.ZodLiteral<"PreEndRound">]>; teams: z.ZodArray<z.ZodObject<{ id: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>; mappoints: z.ZodNumber; matchpoints: z.ZodNumber; name: z.ZodUnion<[z.ZodLiteral<"Blue">, z.ZodLiteral<"Red">]>; roundpoints: z.ZodNumber; }, "strip", z.ZodTypeAny, { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }, { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }>, "many">; useteams: z.ZodBoolean; winnerplayer: z.ZodString; winnerteam: z.ZodUnion<[z.ZodLiteral<-1>, z.ZodLiteral<0>, z.ZodLiteral<1>]>; }, "strip", z.ZodTypeAny, { players: { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }[]; section: "" | "EndMap" | "EndMatch" | "EndMatchEarly" | "EndRound" | "PreEndRound"; teams: { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }[]; useteams: boolean; winnerplayer: string; winnerteam: 0 | 1 | -1; responseid?: string | undefined; }, { players: { accountid: string; bestlapcheckpoints: number[]; bestlaptime: number; bestracecheckpoints: number[]; bestracetime: number; login: string; mappoints: number; matchpoints: number; name: string; prevracecheckpoints: number[]; prevracetime: number; rank: number; roundpoints: number; }[]; section: "" | "EndMap" | "EndMatch" | "EndMatchEarly" | "EndRound" | "PreEndRound"; teams: { mappoints: number; matchpoints: number; name: "Blue" | "Red"; roundpoints: number; id: 0 | 1; }[]; useteams: boolean; winnerplayer: string; winnerteam: 0 | 1 | -1; responseid?: string | undefined; }>], null>]; "Trackmania.WarmUp.End": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>], null>]; "Trackmania.WarmUp.EndRound": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ current: z.ZodNumber; total: z.ZodNumber; }, "strip", z.ZodTypeAny, { current: number; total: number; }, { current: number; total: number; }>], null>]; "Trackmania.WarmUp.Start": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>], null>]; "Trackmania.WarmUp.StartRound": [z.ZodTuple<[z.ZodString], null>, z.ZodTuple<[z.ZodObject<{ current: z.ZodNumber; total: z.ZodNumber; }, "strip", z.ZodTypeAny, { current: number; total: number; }, { current: number; total: number; }>], null>]; }; export { type XmlRpcCallbacks, type XmlRpcCallbacksCall, xmlRpcCallbacksCallType, type XmlRpcMethods, type XmlRpcMethodsCall, type XmlRpcMethodsResponse, xmlRpcMethodsResponseType, type XmlRpcScriptCallbacks, type XmlRpcScriptCallbacksCall, xmlRpcScriptCallbacksCallType, type XmlRpcScriptMethodResponseCallbackCall, xmlRpcScriptMethodsResponseCallback, xmlRpcScriptMethodsWithResponse, type XmlRpcScriptResponseCallbacks, };