Apply dependencies update
[e-mobility-charging-stations-simulator.git] / src / types / ConfigurationData.ts
... / ...
CommitLineData
1import { ServerOptions } from 'ws';
2import { StorageType } from './Storage';
3import type { WorkerChoiceStrategy } from 'poolifier';
4import { WorkerProcessType } from './Worker';
5
6export interface StationTemplateUrl {
7 file: string;
8 numberOfStations: number;
9}
10
11export interface UIWebSocketServerConfiguration {
12 enabled?: boolean;
13 options?: ServerOptions;
14}
15
16export interface StorageConfiguration {
17 enabled?: boolean;
18 type?: StorageType;
19 uri?: string;
20}
21
22export default interface ConfigurationData {
23 supervisionUrls?: string[];
24 stationTemplateUrls: StationTemplateUrl[];
25 uiWebSocketServer?: UIWebSocketServerConfiguration;
26 performanceStorage?: StorageConfiguration;
27 autoReconnectMaxRetries?: number;
28 distributeStationsToTenantsEqually?: boolean;
29 workerProcess?: WorkerProcessType;
30 workerStartDelay?: number;
31 workerPoolMinSize?: number;
32 workerPoolMaxSize?: number;
33 workerPoolStrategy?: WorkerChoiceStrategy;
34 chargingStationsPerWorker?: number;
35 logStatisticsInterval?: number;
36 logFormat?: string;
37 logLevel?: string;
38 logRotate?: boolean;
39 logMaxFiles?: number;
40 logFile?: string;
41 logErrorFile?: string;
42 logConsole?: boolean;
43}