jsplanet
Version:
A controller for Trackmania 2020 dedicated server.
1,181 lines (1,180 loc) • 40.8 kB
TypeScript
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, };