ddnet
Version:
A typescript npm package for interacting with data from ddnet.org
178 lines (177 loc) • 4.48 kB
TypeScript
import { z } from 'zod';
/**
* The zod schema for map data.
*
* @see
* [maps.py](https://github.com/ddnet/ddnet-scripts/blob/master/servers/scripts/maps.py)
*
* @internal
*/
export declare const _Schema_maps_json: z.ZodObject<{
name: z.ZodString;
website: z.ZodString;
thumbnail: z.ZodString;
web_preview: z.ZodString;
type: z.ZodString;
points: z.ZodNumber;
difficulty: z.ZodNumber;
mapper: z.ZodString;
release: z.ZodOptional<z.ZodNumber>;
biggest_team: z.ZodNumber;
width: z.ZodNumber;
height: z.ZodNumber;
tiles: z.ZodArray<z.ZodString, "many">;
team_ranks: z.ZodArray<z.ZodObject<{
rank: z.ZodNumber;
time: z.ZodNumber;
timestamp: z.ZodNumber;
country: z.ZodString;
players: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
country: string;
rank: number;
time: number;
timestamp: number;
players: string[];
}, {
country: string;
rank: number;
time: number;
timestamp: number;
players: string[];
}>, "many">;
ranks: z.ZodArray<z.ZodObject<{
rank: z.ZodNumber;
time: z.ZodNumber;
timestamp: z.ZodNumber;
country: z.ZodString;
player: z.ZodString;
}, "strip", z.ZodTypeAny, {
country: string;
rank: number;
time: number;
timestamp: number;
player: string;
}, {
country: string;
rank: number;
time: number;
timestamp: number;
player: string;
}>, "many">;
max_finishes: z.ZodArray<z.ZodObject<{
rank: z.ZodNumber;
player: z.ZodString;
num: z.ZodNumber;
time: z.ZodNumber;
min_timestamp: z.ZodNumber;
max_timestamp: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
rank: number;
time: number;
player: string;
num: number;
min_timestamp: number;
max_timestamp: number;
}, {
rank: number;
time: number;
player: string;
num: number;
min_timestamp: number;
max_timestamp: number;
}>, "many">;
median_time: z.ZodOptional<z.ZodNumber>;
first_finish: z.ZodOptional<z.ZodNumber>;
last_finish: z.ZodOptional<z.ZodNumber>;
finishes: z.ZodOptional<z.ZodNumber>;
finishers: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
width: number;
height: number;
name: string;
type: string;
website: string;
thumbnail: string;
web_preview: string;
points: number;
difficulty: number;
mapper: string;
biggest_team: number;
tiles: string[];
team_ranks: {
country: string;
rank: number;
time: number;
timestamp: number;
players: string[];
}[];
ranks: {
country: string;
rank: number;
time: number;
timestamp: number;
player: string;
}[];
max_finishes: {
rank: number;
time: number;
player: string;
num: number;
min_timestamp: number;
max_timestamp: number;
}[];
release?: number | undefined;
median_time?: number | undefined;
first_finish?: number | undefined;
last_finish?: number | undefined;
finishes?: number | undefined;
finishers?: number | undefined;
}, {
width: number;
height: number;
name: string;
type: string;
website: string;
thumbnail: string;
web_preview: string;
points: number;
difficulty: number;
mapper: string;
biggest_team: number;
tiles: string[];
team_ranks: {
country: string;
rank: number;
time: number;
timestamp: number;
players: string[];
}[];
ranks: {
country: string;
rank: number;
time: number;
timestamp: number;
player: string;
}[];
max_finishes: {
rank: number;
time: number;
player: string;
num: number;
min_timestamp: number;
max_timestamp: number;
}[];
release?: number | undefined;
median_time?: number | undefined;
first_finish?: number | undefined;
last_finish?: number | undefined;
finishes?: number | undefined;
finishers?: number | undefined;
}>;
/**
* Raw player data type, inferred from {@link _Schema_maps_json}
*
* @internal
*/
export type _MapsJson = z.infer<typeof _Schema_maps_json>;