import { CoreConfig, CoreEventMap } from "./types.js";
import { Request as SegmentRequest } from "./requests/request.js";
import { EventTarget } from "./utils/event-target.js";
type HttpConfig = Pick<CoreConfig, "httpNotReceivingBytesTimeoutMs" | "httpRequestSetup" | "validateHTTPSegment">;
export declare class HttpRequestExecutor {
    private readonly request;
    private readonly httpConfig;
    private readonly requestControls;
    private readonly abortController;
    private readonly expectedBytesLength?;
    private readonly requestByteRange?;
    private readonly onChunkDownloaded;
    constructor(request: SegmentRequest, httpConfig: HttpConfig, eventTarget: EventTarget<CoreEventMap>);
    private fetch;
    private handleResponseHeaders;
    private handleError;
}
export {};
