-import type { CircularArray } from '../utils/CircularArray';
-import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests';
-import type { WorkerData } from './Worker';
+import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js'
+import type { CircularArray } from '../utils/index.js'
+import type { WorkerData } from '../worker/index.js'
-export type TimeSeries = {
- timestamp: number;
- value: number;
-};
+export interface TimestampedData {
+ timestamp: number
+ value: number
+}
-export type StatisticsData = {
- countRequest: number;
- countResponse: number;
- countError: number;
- countTimeMeasurement: number;
- timeMeasurementSeries: CircularArray<TimeSeries>;
- currentTimeMeasurement: number;
- minTimeMeasurement: number;
- maxTimeMeasurement: number;
- totalTimeMeasurement: number;
- avgTimeMeasurement: number;
- medTimeMeasurement: number;
- ninetyFiveThPercentileTimeMeasurement: number;
- stdDevTimeMeasurement: number;
-};
+export type StatisticsData = Partial<{
+ requestCount: number
+ responseCount: number
+ errorCount: number
+ timeMeasurementCount: number
+ measurementTimeSeries: CircularArray<TimestampedData>
+ currentTimeMeasurement: number
+ minTimeMeasurement: number
+ maxTimeMeasurement: number
+ totalTimeMeasurement: number
+ avgTimeMeasurement: number
+ medTimeMeasurement: number
+ ninetyFiveThPercentileTimeMeasurement: number
+ stdDevTimeMeasurement: number
+}>
export type Statistics = {
- id: string;
- name: string;
- uri: string;
- createdAt: Date;
- updatedAt?: Date;
- statisticsData: Map<string | RequestCommand | IncomingRequestCommand, Partial<StatisticsData>>;
-} & WorkerData;
+ id: string
+ name: string
+ uri: string
+ createdAt: Date
+ updatedAt?: Date
+ statisticsData: Map<string | RequestCommand | IncomingRequestCommand, StatisticsData>
+} & WorkerData