/// import { CancellationToken, HttpExecutor, UpdateFileInfo, UpdateInfo } from "builder-util-runtime"; import { OutgoingHttpHeaders, RequestOptions } from "http"; import { URL } from "url"; import { ResolvedUpdateFileInfo } from "./main"; export declare abstract class Provider { protected readonly executor: HttpExecutor; readonly useMultipleRangeRequest: boolean; protected requestHeaders: OutgoingHttpHeaders | null; protected constructor(executor: HttpExecutor, useMultipleRangeRequest?: boolean); readonly fileExtraDownloadHeaders: OutgoingHttpHeaders | null; setRequestHeaders(value: OutgoingHttpHeaders | null): void; abstract getLatestVersion(): Promise; abstract resolveFiles(updateInfo: UpdateInfo): Array; httpRequest(url: URL, headers?: OutgoingHttpHeaders | null, cancellationToken?: CancellationToken): Promise; protected createRequestOptions(url: URL, headers?: OutgoingHttpHeaders | null): RequestOptions; } export declare function findFile(files: Array, extension: string, not?: Array): ResolvedUpdateFileInfo | null | undefined; export declare function parseUpdateInfo(rawData: string | null, channelFile: string, channelFileUrl: URL): UpdateInfo; export declare function getFileList(updateInfo: UpdateInfo): Array; export declare function resolveFiles(updateInfo: UpdateInfo, baseUrl: URL, pathTransformer?: (p: string) => string): Array;