87 lines
1.3 KiB
TypeScript
87 lines
1.3 KiB
TypeScript
interface earthquakeTypes {
|
|
reconnectTimes: number;
|
|
websocketUrl: string;
|
|
areasCsvUrl: string;
|
|
maxScaleMin: number;
|
|
}
|
|
|
|
interface weatherTypes {
|
|
splitCount: number;
|
|
}
|
|
|
|
interface stopsTypes {
|
|
start: number;
|
|
stop: number;
|
|
}
|
|
|
|
interface timeTypes {
|
|
stopTimes: stopsTypes;
|
|
}
|
|
|
|
interface emergencyMailFullTypes {
|
|
isEnabled: true;
|
|
host: string;
|
|
port: number;
|
|
user: string;
|
|
password: string;
|
|
secure: boolean;
|
|
to: string | string[];
|
|
}
|
|
|
|
interface emergencyMailMinTypes {
|
|
isEnabled: false;
|
|
mail: undefined;
|
|
}
|
|
|
|
interface emergencyFullTypes {
|
|
isEnabled: true;
|
|
mail: emergencyMailFullTypes | emergemcyMailMinTypes;
|
|
}
|
|
|
|
interface emergencyMinTypes {
|
|
isEnabled: false;
|
|
}
|
|
|
|
interface legalTypes {
|
|
terms: string;
|
|
privacy: string;
|
|
}
|
|
|
|
interface PanelFullTypes {
|
|
isEnabled: true;
|
|
port: number;
|
|
}
|
|
|
|
interface PanelMinTypes {
|
|
isEnabled: false;
|
|
}
|
|
|
|
interface adminTypes {
|
|
name: string;
|
|
showMail: string | false;
|
|
panel: PanelFullTypes | PanelMinTypes;
|
|
}
|
|
|
|
interface reportTypes {
|
|
isEnabled: boolean;
|
|
message: string;
|
|
}
|
|
|
|
interface uwuzuTypes {
|
|
apiToken: string;
|
|
clientToken?: string;
|
|
host: string;
|
|
}
|
|
|
|
export interface configTypes {
|
|
time: timeTypes,
|
|
earthquake: earthquakeTypes;
|
|
weather: weatherTypes;
|
|
|
|
emergency: emergencyFullTypes | emergencyMinTypes;
|
|
legal: legalTypes;
|
|
admin: adminTypes;
|
|
report: reportTypes;
|
|
uwuzu: uwuzuTypes;
|
|
}
|