/** * ProgressTracker — Tracks read progress and computes speed/ETA. * * Uses a sliding window (last 1 second) for accurate speed calculation * instead of a naive total-bytes / total-time average. * This gives accurate readings even when I/O speed varies mid-file. */ import type { ProgressInfo } from '../types/index.js'; export declare class ProgressTracker { private readonly totalBytes; private readonly encoding; private readonly callback; private bytesRead; private rowsProcessed; private readonly window; private startTime; constructor(totalBytes: number, encoding: BufferEncoding, callback?: ((info: ProgressInfo) => void) | null); /** * Called each time a chunk is read from disk. * @param chunkByteLength Byte size of the chunk. */ onChunk(chunkByteLength: number): void; /** * Update the row count (called by BatchController or main loop). * @param count Number of rows just processed. */ addRows(count: number): void; /** * Called when the file is fully read. * Fires one final callback with 100% completion. */ complete(): void; } //# sourceMappingURL=progress-tracker.d.ts.map