import { ICPUMonitorOptions, ICPUUsage } from './types/index.js'; export declare class CPUMonitor { private static instance; private readonly baselines; private readonly maxBaselineAgeMs; private readonly precision; protected constructor(options?: ICPUMonitorOptions); static getInstance(options?: ICPUMonitorOptions): CPUMonitor; private cleanupOldBaselines; private takeSnapshot; private calculateUsage; getStats(callerId?: string): ICPUUsage; getStatsOverInterval(callerId?: string, intervalMs?: number): Promise; generateCallerId(): string; removeCaller(callerId: string): boolean; hasCaller(callerId: string): boolean; getActiveCallerCount(): number; getActiveCallers(): readonly string[]; getBaselineAge(callerId: string): number | null; reset(): void; cleanup(): void; getMonitorStats(): { readonly activeCallers: number; readonly oldestBaseline: number; readonly newestBaseline: number; readonly totalBaselines: number; }; getOneTimeStats(): ICPUUsage; getStatsWithAutoId(): { readonly callerId: string; readonly usage: ICPUUsage; readonly cleanup: () => void; }; } //# sourceMappingURL=cpu-monitor.d.ts.map