import type { TimeSeriesData, TimeSeriesDataRow, TimeSeriesMetadata, VariableDbEntry } from './time-series.types.js'; export declare const TIME_SERIES_CACHE_TTL_MS: number; export declare class TimeSeriesCacheService { getCacheKeyForVariable(variableEntryId: string, location?: string, environment?: string): string; getValidCacheEntry(cacheKey: string): Promise; isCacheValid(existingData?: VariableDbEntry): boolean; calculateDataGaps(start: Date, end: Date, existingData?: VariableDbEntry): Array<{ start: Date; end: Date; }>; deduplicateByTimestamp(data: TimeSeriesDataRow[]): TimeSeriesDataRow[]; getDataInRange(data: TimeSeriesData, startDate: Date, endDate: Date): TimeSeriesData; storeConsolidatedData(options: { cacheKey: string; variableEntryId: string; environment?: string; metadata: Partial; data: TimeSeriesDataRow[]; /** The originally-requested start date. When provided, the stored range covers at least * this date so that future requests for the same range don't detect a spurious gap * just because Harmony returned data starting later than the requested start. */ requestedStartDate?: Date; /** The originally-requested end date. Same rationale as requestedStartDate. */ requestedEndDate?: Date; }): Promise; } export default TimeSeriesCacheService;