import { ProgressEvent } from './types.js'; export interface ProgressTrackerConfig { readonly totalRows: number; readonly emitInterval?: number; readonly onProgress?: (event: ProgressEvent) => void | Promise; } export declare class ProgressTracker { private readonly totalRows; private readonly emitInterval; private readonly onProgress?; private processedRows; private successfulRows; private failedRows; private processingTimes; private lastEmitTime; private totalTokens; constructor(config: ProgressTrackerConfig); /** * Start tracking progress */ start(): void; /** * Record a successful evaluation */ recordSuccess(durationMs: number, tokensUsed?: number): void; /** * Record a failed evaluation */ recordFailure(durationMs: number): void; /** * Record a retry attempt */ recordRetry(error: string, retryCount: number): void; /** * Mark completion */ complete(): void; /** * Pause tracking */ pause(): void; /** * Resume tracking */ resume(): void; /** * Skip rows (for resuming from a specific index) * This marks rows as processed without actually processing them */ skipRows(count: number): void; /** * Emit if interval has passed */ private maybeEmit; /** * Emit progress event */ private emit; /** * Get current progress without emitting */ getCurrentProgress(): ProgressEvent; } //# sourceMappingURL=progress-tracker.d.ts.map