Buffer OCPP message when an error occur at sending it
[e-mobility-charging-stations-simulator.git] / src / types / Worker.ts
... / ...
CommitLineData
1import type { Worker } from 'worker_threads';
2
3import type { PoolOptions } from 'poolifier';
4
5export enum WorkerProcessType {
6 WORKER_SET = 'workerSet',
7 DYNAMIC_POOL = 'dynamicPool',
8 STATIC_POOL = 'staticPool',
9}
10
11export type MessageHandler<T> = (this: T, message: unknown) => void;
12
13export type WorkerOptions = {
14 workerStartDelay?: number;
15 elementStartDelay?: number;
16 poolMaxSize?: number;
17 poolMinSize?: number;
18 elementsPerWorker?: number;
19 poolOptions?: PoolOptions<Worker>;
20 messageHandler?: MessageHandler<Worker>;
21};
22
23export type WorkerData = Record<string, unknown>;
24
25export type WorkerSetElement = {
26 worker: Worker;
27 numberOfWorkerElements: number;
28};
29
30export type WorkerMessage<T extends WorkerData> = {
31 id: WorkerMessageEvents;
32 data: T;
33};
34
35export enum WorkerMessageEvents {
36 START_WORKER_ELEMENT = 'startWorkerElement',
37}