fix(ocpp-server): silence linter
[e-mobility-charging-stations-simulator.git] / src / types / Statistics.ts
index 9bb614ee2654509daec9b1a90551a5e52650b9bd..9601a90cb70e2ace501599190aba61f1d834c14a 100644 (file)
@@ -1,6 +1,7 @@
-import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js'
-import type { CircularArray } from '../utils/index.js'
+import type { CircularBuffer } from 'mnemonist'
+
 import type { WorkerData } from '../worker/index.js'
+import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js'
 
 export interface TimestampedData {
   timestamp: number
@@ -12,7 +13,7 @@ export type StatisticsData = Partial<{
   responseCount: number
   errorCount: number
   timeMeasurementCount: number
-  measurementTimeSeries: CircularArray<TimestampedData>
+  measurementTimeSeries: CircularBuffer<TimestampedData> | TimestampedData[]
   currentTimeMeasurement: number
   minTimeMeasurement: number
   maxTimeMeasurement: number
@@ -23,11 +24,19 @@ export type StatisticsData = Partial<{
   stdDevTimeMeasurement: number
 }>
 
-export type Statistics = {
+export interface Statistics extends WorkerData {
   id: string
   name: string
   uri: string
   createdAt: Date
   updatedAt?: Date
   statisticsData: Map<string | RequestCommand | IncomingRequestCommand, StatisticsData>
-} & WorkerData
+}
+
+export interface TemplateStatistics {
+  configured: number
+  provisioned: number
+  added: number
+  started: number
+  indexes: Set<number>
+}