ddnet
Version:
A typescript npm package for interacting with data from ddnet.org
512 lines (511 loc) • 12.1 kB
TypeScript
import { z } from 'zod';
/**
* The zod schema for player data.
*
* @see
* [players.py](https://github.com/ddnet/ddnet-scripts/blob/master/servers/scripts/players.py)
*
* @internal
*/
export declare const _Schema_players_json2: z.ZodObject<{
player: z.ZodString;
points: z.ZodIntersection<z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>, z.ZodObject<{
total: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
total: number;
}, {
total: number;
}>>;
team_rank: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
rank: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
points_last_month: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
points_last_week: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
favorite_server: z.ZodObject<{
server: z.ZodString;
}, "strip", z.ZodTypeAny, {
server: string;
}, {
server: string;
}>;
first_finish: z.ZodObject<{
timestamp: z.ZodNumber;
map: z.ZodString;
time: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
map: string;
time: number;
timestamp: number;
}, {
map: string;
time: number;
timestamp: number;
}>;
last_finishes: z.ZodArray<z.ZodObject<{
timestamp: z.ZodNumber;
map: z.ZodString;
time: z.ZodNumber;
country: z.ZodString;
type: z.ZodString;
}, "strip", z.ZodTypeAny, {
map: string;
country: string;
type: string;
time: number;
timestamp: number;
}, {
map: string;
country: string;
type: string;
time: number;
timestamp: number;
}>, "many">;
favorite_partners: z.ZodArray<z.ZodObject<{
name: z.ZodString;
finishes: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
name: string;
finishes: number;
}, {
name: string;
finishes: number;
}>, "many">;
types: z.ZodRecord<z.ZodString, z.ZodObject<{
points: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
total: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
total: number;
}, {
points: number;
rank: number;
total: number;
}>, z.ZodObject<{
rank: z.ZodNull;
total: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
rank: null;
total: number;
}, {
rank: null;
total: number;
}>]>;
team_rank: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
rank: z.ZodUnion<[z.ZodObject<{
rank: z.ZodNumber;
points: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
}, {
points: number;
rank: number;
}>, z.ZodObject<{
rank: z.ZodNull;
}, "strip", z.ZodTypeAny, {
rank: null;
}, {
rank: null;
}>]>;
maps: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
points: z.ZodNumber;
total_finishes: z.ZodNumber;
finishes: z.ZodLiteral<0>;
}, "strip", z.ZodTypeAny, {
points: number;
finishes: 0;
total_finishes: number;
}, {
points: number;
finishes: 0;
total_finishes: number;
}>, z.ZodObject<{
points: z.ZodNumber;
total_finishes: z.ZodNumber;
finishes: z.ZodNumber;
team_rank: z.ZodOptional<z.ZodNumber>;
rank: z.ZodNumber;
time: z.ZodNumber;
first_finish: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}, {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}>]>>;
}, "strip", z.ZodTypeAny, {
points: {
points: number;
rank: number;
total: number;
} | {
rank: null;
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
maps: Record<string, {
points: number;
finishes: 0;
total_finishes: number;
} | {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}>;
}, {
points: {
points: number;
rank: number;
total: number;
} | {
rank: null;
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
maps: Record<string, {
points: number;
finishes: 0;
total_finishes: number;
} | {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}>;
}>>;
activity: z.ZodArray<z.ZodObject<{
date: z.ZodString;
hours_played: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
date: string;
hours_played: number;
}, {
date: string;
hours_played: number;
}>, "many">;
hours_played_past_365_days: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
points: ({
points: number;
rank: number;
} | {
rank: null;
}) & {
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
player: string;
first_finish: {
map: string;
time: number;
timestamp: number;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
points_last_month: {
points: number;
rank: number;
} | {
rank: null;
};
points_last_week: {
points: number;
rank: number;
} | {
rank: null;
};
favorite_server: {
server: string;
};
last_finishes: {
map: string;
country: string;
type: string;
time: number;
timestamp: number;
}[];
favorite_partners: {
name: string;
finishes: number;
}[];
types: Record<string, {
points: {
points: number;
rank: number;
total: number;
} | {
rank: null;
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
maps: Record<string, {
points: number;
finishes: 0;
total_finishes: number;
} | {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}>;
}>;
activity: {
date: string;
hours_played: number;
}[];
hours_played_past_365_days: number;
}, {
points: ({
points: number;
rank: number;
} | {
rank: null;
}) & {
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
player: string;
first_finish: {
map: string;
time: number;
timestamp: number;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
points_last_month: {
points: number;
rank: number;
} | {
rank: null;
};
points_last_week: {
points: number;
rank: number;
} | {
rank: null;
};
favorite_server: {
server: string;
};
last_finishes: {
map: string;
country: string;
type: string;
time: number;
timestamp: number;
}[];
favorite_partners: {
name: string;
finishes: number;
}[];
types: Record<string, {
points: {
points: number;
rank: number;
total: number;
} | {
rank: null;
total: number;
};
rank: {
points: number;
rank: number;
} | {
rank: null;
};
team_rank: {
points: number;
rank: number;
} | {
rank: null;
};
maps: Record<string, {
points: number;
finishes: 0;
total_finishes: number;
} | {
points: number;
rank: number;
time: number;
first_finish: number;
finishes: number;
total_finishes: number;
team_rank?: number | undefined;
}>;
}>;
activity: {
date: string;
hours_played: number;
}[];
hours_played_past_365_days: number;
}>;
/**
* Raw player data type, inferred from {@link _Schema_players_json2}
*
* @internal
*/
export type _PlayersJson2 = z.infer<typeof _Schema_players_json2>;