import { Playlist } from "./m3u8"; import Downloader, { ArchiveDownloaderConfig, DownloadTaskItem } from "./downloader"; declare class ArchiveDownloader extends Downloader { tempPath: string; m3u8Path: string; m3u8: Playlist; downloadTasks: DownloadTaskItem[]; allDownloadTasks: DownloadTaskItem[]; finishedFilenames: { [index: string]: any; }; totalChunksCount: number; runningThreads: number; sliceStart: number; sliceEnd: number; prefix: string; isResumed: boolean; isDownloaded: boolean; /** * * @param m3u8Path * @param config * @param config.threads 线程数量 */ constructor(m3u8Path?: string, { threads, output, tempDir, key, verbose, retries, proxy, slice, format, cookies, headers, keep, noMerge, keepEncryptedChunks, chunkNamingStrategy, cliMode, }?: ArchiveDownloaderConfig); /** * Parse M3U8 Information */ parse(): Promise; download(): Promise; /** * calculate ETA */ getETA(): string; /** * Check task queue */ checkQueue(): Promise; resume(taskId: string): Promise; /** * 退出前的清理工作 */ clean(): Promise; saveTask(): void; } export default ArchiveDownloader;