///
import * as net from 'net';
import type { Candidate } from './interfaces/candidate';
import { Job } from './interfaces/job';
import type { ParamsTimeout } from './timeouthandler';
import { TimeOut } from './timeouthandler';
export type Packets = string | string[] | number | number[];
export default class AddJob extends TimeOut {
candidates: Job[];
constructor(params: ParamsTimeout);
protected onRequest(): void;
private static constructCandidate;
protected makeCancelable(candidate: Candidate, client?: net.Socket): () => void;
download(target: string, packets: Packets, opts?: Partial<{
ipv6: boolean;
throttle: number;
}>): Promise;
private passMessage;
private static parsePackets;
private static parsePacketArray;
private static parsePacketString;
private static decomposeRange;
private static range;
private static sortPackets;
protected prepareCandidate(candidate: Job): void;
private getCandidate;
protected onNext(): void;
}