-import { CircularArray } from '../utils/CircularArray';
+import type { IncomingRequestCommand, RequestCommand } from './internal';
+import type { CircularArray } from '../utils';
+import type { WorkerData } from '../worker';
-export interface StatisticsData {
+export type TimeSeries = {
+ timestamp: number;
+ value: number;
+};
+
+export type StatisticsData = {
countRequest: number;
countResponse: number;
countError: number;
countTimeMeasurement: number;
- timeMeasurementSeries: CircularArray<number>;
+ timeMeasurementSeries: CircularArray<TimeSeries>;
currentTimeMeasurement: number;
minTimeMeasurement: number;
maxTimeMeasurement: number;
medTimeMeasurement: number;
ninetyFiveThPercentileTimeMeasurement: number;
stdDevTimeMeasurement: number;
-}
+};
-export default interface Statistics {
+export type Statistics = {
id: string;
- URI: string;
+ name: string;
+ uri: string;
createdAt: Date;
updatedAt?: Date;
- statisticsData: Map<string, Partial<StatisticsData>>;
-}
+ statisticsData: Map<string | RequestCommand | IncomingRequestCommand, Partial<StatisticsData>>;
+} & WorkerData;