build(deps-dev): apply updates
[e-mobility-charging-stations-simulator.git] / src / types / AutomaticTransactionGenerator.ts
CommitLineData
f4b3f35d
JB
1import type { JsonObject } from './JsonType.js'
2
c72f6634
JB
3export enum IdTagDistribution {
4 RANDOM = 'random',
5 ROUND_ROBIN = 'round-robin',
a223d9be 6 CONNECTOR_AFFINITY = 'connector-affinity'
c72f6634
JB
7}
8
f4b3f35d 9export interface AutomaticTransactionGeneratorConfiguration extends JsonObject {
66a7748d
JB
10 enable: boolean
11 minDuration: number
12 maxDuration: number
13 minDelayBetweenTwoTransactions: number
14 maxDelayBetweenTwoTransactions: number
15 probabilityOfStart: number
16 stopAfterHours: number
46a830d2 17 stopAbsoluteDuration: boolean
66a7748d
JB
18 requireAuthorize?: boolean
19 idTagDistribution?: IdTagDistribution
e1d9a0f4 20}
fa7bccf4 21
e1d9a0f4 22export interface Status {
66a7748d
JB
23 start: boolean
24 startDate?: Date
25 lastRunDate?: Date
26 stopDate?: Date
27 stoppedDate?: Date
0a1dd746
JB
28 authorizeRequests: number
29 acceptedAuthorizeRequests: number
30 rejectedAuthorizeRequests: number
31 startTransactionRequests: number
32 acceptedStartTransactionRequests: number
33 rejectedStartTransactionRequests: number
34 stopTransactionRequests: number
35 acceptedStopTransactionRequests: number
36 rejectedStopTransactionRequests: number
37 skippedConsecutiveTransactions: number
38 skippedTransactions: number
e1d9a0f4 39}
981ebfbe 40
e1d9a0f4 41export interface ChargingStationAutomaticTransactionGeneratorConfiguration {
66a7748d
JB
42 automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration
43 automaticTransactionGeneratorStatuses?: Status[]
e1d9a0f4 44}