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