Refine TS and linter configuration
[e-mobility-charging-stations-simulator.git] / src / types / Statistics.ts
index 0ee58f750e2809c7d8e1d81cc119b0f237cb67ed..628ad28b6d150a582acacd875dd575dd18c5d5e5 100644 (file)
@@ -1,11 +1,17 @@
-import { CircularArray } from '../utils/CircularArray';
+import type { CircularArray } from '../utils/CircularArray';
+import type { WorkerData } from './Worker';
+
+export interface TimeSeries {
+  timestamp: number;
+  value: number;
+}
 
 export interface StatisticsData {
   countRequest: number;
   countResponse: number;
   countError: number;
   countTimeMeasurement: number;
-  timeMeasurementSeries: CircularArray<number>;
+  timeMeasurementSeries: CircularArray<TimeSeries>;
   currentTimeMeasurement: number;
   minTimeMeasurement: number;
   maxTimeMeasurement: number;
@@ -16,10 +22,11 @@ export interface StatisticsData {
   stdDevTimeMeasurement: number;
 }
 
-export default interface Statistics {
+export default interface Statistics extends WorkerData {
   id: string;
-  URI: string;
+  name: string;
+  uri: string;
   createdAt: Date;
-  lastUpdatedAt?: Date;
-  statisticsData: Record<string, StatisticsData>;
+  updatedAt?: Date;
+  statisticsData: Map<string, Partial<StatisticsData>>;
 }