import { StoragePoint } from '../../storage.types'; export interface StoredPoint { measurement: string; tags: Record; fields: Record; timestamp: Date; } export declare class InMemoryTimeSeriesStore { private readonly logger; private readonly data; private readonly maxPointsPerMeasurement; private readonly maxAgeMs; private evictionTimer; constructor(maxPointsPerMeasurement?: number, maxAgeMs?: number); destroy(): void; writePoints(points: StoragePoint[]): void; query(measurement: string, where?: Record, timeFrom?: Date, timeTo?: Date, orderDesc?: boolean, limit?: number): StoredPoint[]; queryGroupByTag(measurement: string, groupByTag: string, aggregations: Array<{ func: string; field: string; alias: string; }>, where?: Record, timeFrom?: Date, timeTo?: Date): Array>; aggregate(measurement: string, aggregations: Array<{ func: string; field: string; alias: string; }>, where?: Record, timeFrom?: Date, timeTo?: Date): Record | null; aggregateByTime(measurement: string, aggregations: Array<{ func: string; field: string; alias: string; }>, bucketMs: number, where?: Record, timeFrom?: Date, timeTo?: Date, fillNone?: boolean): Array>; delete(measurement: string, where?: Record): void; dropMeasurement(measurement: string): void; getMeasurements(): string[]; createNanoDate(date: Date): { _nanoISO: string; toISOString: () => string; getTime: () => number; }; pointToRow(point: StoredPoint, selectFields?: string[]): Record; private normalizeFields; private evict; }