Refine console ouput colorization
[e-mobility-charging-stations-simulator.git] / src / types / Worker.ts
CommitLineData
9efbac5b 1import { PoolOptions } from 'poolifier';
c045d9a9
JB
2import { Worker } from 'worker_threads';
3
a4624c96
JB
4export enum WorkerProcessType {
5 WORKER_SET = 'workerSet',
6 DYNAMIC_POOL = 'dynamicPool',
7 STATIC_POOL = 'staticPool'
8}
9
b8da29bc 10export interface WorkerOptions {
322c9192 11 startDelay?: number;
b8da29bc
JB
12 poolMaxSize?: number;
13 poolMinSize?: number;
14 elementsPerWorker?: number;
9efbac5b 15 poolOptions?: PoolOptions<Worker>;
b8da29bc
JB
16}
17
322c9192
JB
18// eslint-disable-next-line @typescript-eslint/no-empty-interface
19export interface WorkerData {}
46eb543c 20
07f35004 21export interface ChargingStationWorkerData extends WorkerData {
c045d9a9
JB
22 index: number;
23 templateFile: string;
24}
25
26export interface WorkerSetElement {
81797102
JB
27 worker: Worker;
28 numberOfWorkerElements: number;
29}
30
31export interface WorkerMessage {
32 id: WorkerEvents;
33 data: any;
c045d9a9
JB
34}
35
36export enum WorkerEvents {
37 START_WORKER_ELEMENT = 'startWorkerElement',
81797102
JB
38 STOP_WORKER_ELEMENT = 'stopWorkerElement',
39 PERFORMANCE_STATISTICS = 'performanceStatistics'
c045d9a9
JB
40}
41