import type { Duration, RelativeTime } from './utils/timeUtils'; export interface ValueHistoryEntry { startTime: RelativeTime; endTime: RelativeTime; value: T; remove(): void; close(endTime: RelativeTime): void; } export declare const CLEAR_OLD_VALUES_INTERVAL: number; /** * Store and keep track of values spans. This whole cache assumes that values are added in * chronological order (i.e. all entries have an increasing start time). */ export interface ValueHistory { add: (value: Value, startTime: RelativeTime) => ValueHistoryEntry; find: (startTime?: RelativeTime, options?: { returnInactive: boolean; }) => Value | undefined; closeActive: (endTime: RelativeTime) => void; findAll: (startTime?: RelativeTime, duration?: Duration) => Value[]; reset: () => void; stop: () => void; } export declare function createValueHistory({ expireDelay, maxEntries, }: { expireDelay: number; maxEntries?: number; }): ValueHistory; /** * Reset all global state. This is useful for testing to ensure clean state between tests. * * @internal */ export declare function resetValueHistoryGlobals(): void;