import { ScannedFile, SmallFileCompressionOptions } from './types'; declare type EnqueueScannedFiles = (files: ScannedFile[], priority: boolean) => void; declare type FinalizeCallback = () => void; export declare class SmallFileCompressor { private readonly taskId; private readonly config; private readonly enqueueScannedFiles; private readonly onFinalizeChanged; private readonly moduleName; private pendingSmallFiles; private pendingSmallBytes; private compressedSourceFiles; private bundleSequenceByBaseName; private compressionChain; private compressionJobsInFlight; private isFinalizedState; private isCancelled; constructor(taskId: number, options: SmallFileCompressionOptions | undefined, enqueueScannedFiles: EnqueueScannedFiles, onFinalizeChanged: FinalizeCallback, moduleName?: string); isEnabled(): boolean; isFinalized(): boolean; cancel(): void; maybeCollect(scanned: ScannedFile, primaryRootName: string): boolean; finalize(primaryRootName: string): void; private buildCompressionConfig; private isCompressibleFile; private flushPendingSmallFiles; private createBundleScannedFile; private zipWithWorker; private sanitizeBundleName; private detectBundleRootFolder; private stripRootPrefix; private buildBundleFileName; } export {};