Permit to disable persistent configuration storage.
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationWorker.ts
... / ...
CommitLineData
1import { WorkerData, WorkerMessage, WorkerMessageEvents } from './Worker';
2
3import { JsonObject } from './JsonType';
4
5export interface ChargingStationWorkerOptions extends JsonObject {
6 elementStartDelay?: number;
7}
8
9export interface ChargingStationWorkerData extends WorkerData {
10 index: number;
11 templateFile: string;
12 chargingStationWorkerOptions?: ChargingStationWorkerOptions;
13}
14
15enum InternalChargingStationWorkerMessageEvents {
16 STARTED = 'started',
17 STOPPED = 'stopped',
18 PERFORMANCE_STATISTICS = 'performanceStatistics',
19}
20
21export type ChargingStationWorkerMessageEvents =
22 | WorkerMessageEvents
23 | InternalChargingStationWorkerMessageEvents;
24
25export const ChargingStationWorkerMessageEvents = {
26 ...WorkerMessageEvents,
27 ...InternalChargingStationWorkerMessageEvents,
28};
29
30export interface ChargingStationWorkerMessage
31 extends Omit<WorkerMessage<ChargingStationWorkerData>, 'id'> {
32 id: ChargingStationWorkerMessageEvents;
33}