build(deps-dev): apply updates
[e-mobility-charging-stations-simulator.git] / src / types / Statistics.ts
CommitLineData
840ca85d
JB
1import type { CircularBuffer } from 'mnemonist'
2
66a7748d 3import type { WorkerData } from '../worker/index.js'
4c3f6c20 4import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js'
6bf6769e 5
e1d9a0f4 6export interface TimestampedData {
66a7748d
JB
7 timestamp: number
8 value: number
e1d9a0f4 9}
0c142310 10
e1d9a0f4 11export type StatisticsData = Partial<{
66a7748d
JB
12 requestCount: number
13 responseCount: number
14 errorCount: number
15 timeMeasurementCount: number
1c818bd3 16 measurementTimeSeries: CircularBuffer<TimestampedData> | TimestampedData[]
66a7748d
JB
17 currentTimeMeasurement: number
18 minTimeMeasurement: number
19 maxTimeMeasurement: number
20 totalTimeMeasurement: number
21 avgTimeMeasurement: number
22 medTimeMeasurement: number
23 ninetyFiveThPercentileTimeMeasurement: number
24 stdDevTimeMeasurement: number
25}>
63b48f77 26
f4b3f35d 27export interface Statistics extends WorkerData {
66a7748d
JB
28 id: string
29 name: string
30 uri: string
31 createdAt: Date
32 updatedAt?: Date
33 statisticsData: Map<string | RequestCommand | IncomingRequestCommand, StatisticsData>
f4b3f35d 34}
e8237645 35
276e05ae 36export interface TemplateStatistics {
e8237645 37 configured: number
8f8f87c4 38 provisioned: number
e8237645
JB
39 added: number
40 started: number
41 indexes: Set<number>
42}