/**
 * Ranged package download with resume (WS-C4). Fetches a package in 4MB Range
 * chunks into a `.part` file (resumable across retries/process restarts), with
 * per-chunk retry, then verifies the assembled file's size + sha256 and returns
 * the bytes. When the server ignores Range (responds 200 instead of 206) it
 * falls back to verifying the whole body in memory — so small packages and
 * non-Range servers cost no disk. Verify semantics are identical to the plain
 * downloader, so callers are unchanged.
 */
export interface RangedDownloadTarget {
    downloadUrl: string;
    sizeBytes: number;
    checksum: string;
}
export declare function rangedDownloadVerified(fetchFn: typeof fetch, target: RangedDownloadTarget, label: string): Promise<Buffer>;
