238 lines
4.8 KiB
TypeScript
238 lines
4.8 KiB
TypeScript
export type position = "bench" | "gk" | "def" | "mid" | "att";
|
|
export type forecast = "a" | "u" | "m";
|
|
// These are the types for the database
|
|
export interface users {
|
|
id: number;
|
|
username: string;
|
|
password: string;
|
|
throttle: number;
|
|
active: boolean;
|
|
inActiveDays: number;
|
|
google: string;
|
|
github: string;
|
|
admin: boolean;
|
|
favoriteLeague: number | null;
|
|
theme: string | null;
|
|
locale: string | null;
|
|
}
|
|
export interface players {
|
|
uid: string;
|
|
name: string;
|
|
nameAscii: string;
|
|
club: string;
|
|
pictureID: number;
|
|
value: number;
|
|
sale_price: number;
|
|
position: position;
|
|
forecast: forecast;
|
|
total_points: number;
|
|
average_points: number;
|
|
last_match: number;
|
|
locked: boolean;
|
|
exists: boolean;
|
|
league: string;
|
|
}
|
|
export interface data {
|
|
value1: string;
|
|
value2: string;
|
|
}
|
|
export interface leagueSettings {
|
|
leagueName: string;
|
|
leagueID: number;
|
|
startMoney: number;
|
|
transfers: number;
|
|
duplicatePlayers: number;
|
|
starredPercentage: number;
|
|
league: string;
|
|
archived: number;
|
|
matchdayTransfers: boolean;
|
|
fantasyEnabled: boolean;
|
|
predictionsEnabled: boolean;
|
|
predictWinner: number;
|
|
predictDifference: number;
|
|
predictExact: number;
|
|
top11: boolean;
|
|
active: boolean;
|
|
inActiveDays: number;
|
|
}
|
|
export interface leagueUsers {
|
|
leagueID: number;
|
|
user: number;
|
|
fantasyPoints: number;
|
|
predictionPoints: number;
|
|
points: number;
|
|
money: number;
|
|
formation: string;
|
|
admin: boolean;
|
|
tutorial: boolean;
|
|
}
|
|
export interface points {
|
|
leagueID: number;
|
|
user: number;
|
|
fantasyPoints: number;
|
|
predictionPoints: number;
|
|
points: number;
|
|
matchday: number;
|
|
money: number;
|
|
time: number;
|
|
}
|
|
export interface transfers {
|
|
leagueID: number;
|
|
seller: number;
|
|
buyer: number;
|
|
playeruid: string;
|
|
value: number;
|
|
position: position;
|
|
starred: boolean;
|
|
max: number;
|
|
}
|
|
export interface invite {
|
|
inviteID: string;
|
|
leagueID: number;
|
|
}
|
|
export interface squad {
|
|
leagueID: number;
|
|
user: number;
|
|
playeruid: string;
|
|
position: position;
|
|
starred: boolean;
|
|
}
|
|
export interface historicalSquad extends squad {
|
|
matchday: number;
|
|
}
|
|
export interface historicalPlayers {
|
|
time: number;
|
|
uid: string;
|
|
name: string;
|
|
nameAscii: string;
|
|
club: string;
|
|
pictureID: number;
|
|
value: number;
|
|
sale_price: number;
|
|
position: position;
|
|
forecast: forecast;
|
|
total_points: number;
|
|
average_points: number;
|
|
last_match: number;
|
|
exists: boolean;
|
|
league: string;
|
|
}
|
|
export interface historicalTransfers {
|
|
matchday: number;
|
|
leagueID: number;
|
|
seller: number;
|
|
buyer: number;
|
|
playeruid: string;
|
|
value: number;
|
|
}
|
|
export interface clubs {
|
|
club: string;
|
|
fullName?: string;
|
|
gameStart: number;
|
|
gameEnd: number;
|
|
opponent: string;
|
|
teamScore?: number;
|
|
opponentScore?: number;
|
|
league: string;
|
|
home: boolean;
|
|
exists: boolean;
|
|
}
|
|
export interface historicalClubs {
|
|
club: string;
|
|
fullName?: string;
|
|
gameStart: number;
|
|
opponent: string;
|
|
teamScore?: number;
|
|
opponentScore?: number;
|
|
league: string;
|
|
home: boolean;
|
|
time: number;
|
|
exists: boolean;
|
|
}
|
|
export interface futureClubs {
|
|
club: string;
|
|
fullName?: string;
|
|
gameStart: number;
|
|
opponent: string;
|
|
league: string;
|
|
home: boolean;
|
|
}
|
|
// Stores every servers analytics data
|
|
export interface detailedAnalytics {
|
|
serverID: string;
|
|
day: number;
|
|
version: string;
|
|
active: number;
|
|
total: number;
|
|
leagueActive: string;
|
|
leagueTotal: string;
|
|
themeActive: string;
|
|
themeTotal: string;
|
|
localeActive: string;
|
|
localeTotal: string;
|
|
}
|
|
// Stores the analytics data combined for all the servers
|
|
export interface analytics {
|
|
day: number;
|
|
versionActive: string;
|
|
versionTotal: string;
|
|
leagueActive: string;
|
|
leagueTotal: string;
|
|
themeActive: string;
|
|
themeTotal: string;
|
|
localeActive: string;
|
|
localeTotal: string;
|
|
}
|
|
// Stores all the plugin settings
|
|
export interface plugins {
|
|
name: string;
|
|
settings: string; // JSON of all the settings
|
|
enabled: boolean;
|
|
installed: boolean;
|
|
url: string;
|
|
version: string;
|
|
}
|
|
export interface pictures {
|
|
id: number;
|
|
url: string;
|
|
downloading: boolean; // If the picture has started downloading
|
|
downloaded: boolean; // If the picture exists as a valid file
|
|
width: number;
|
|
height: number;
|
|
}
|
|
export type anouncementColor = "error" | "info" | "success" | "warning";
|
|
export interface announcements {
|
|
leagueID: number;
|
|
priority: anouncementColor;
|
|
title: string;
|
|
description: string;
|
|
}
|
|
|
|
export interface predictions {
|
|
leagueID: number;
|
|
user: number;
|
|
club: string;
|
|
league: string;
|
|
home: number;
|
|
away: number;
|
|
}
|
|
|
|
export interface futurePredictions {
|
|
leagueID: number;
|
|
user: number;
|
|
club: string;
|
|
league: string;
|
|
gameStart: number;
|
|
home: number;
|
|
away: number;
|
|
}
|
|
|
|
export interface historicalPredictions {
|
|
matchday: number;
|
|
leagueID: number;
|
|
user: number;
|
|
club: string;
|
|
league: string;
|
|
home: number;
|
|
away: number;
|
|
}
|