import { Response } from 'node-fetch'; type ByteProgressCallback = (info: { progress: number; eta: number; speed: string; }) => void; export declare function streamWithProgress(response: Response, progressCallback: ByteProgressCallback): Promise; /** * Extract a downloaded archive into `cwd`, which is created if missing. * * Dispatches on magic bytes, not the filename, because there is no filename to * dispatch on: `streamWithProgress` saves downloads as * `crypto.randomBytes(16).toString('hex')`, with no extension. * * Two gaps are deliberate, and both throw a named error rather than failing * obscurely: bzip2, and pre-POSIX v7 tars, which carry no magic to detect them by. * * Neither backend writes outside `cwd`. */ export declare function extractArchive(archivePath: string, cwd: string): Promise; type DownloadAndExtractFile = { showProgress: boolean; cwd: string; skipExtract?: boolean; dstFileName?: string; }; export declare function downloadAndExtractFile(url: string, { cwd, skipExtract, dstFileName }: DownloadAndExtractFile): Promise; export declare function downloadAndGunzip(url: string): Promise; export {}; //# sourceMappingURL=http-utils.d.ts.map