import { WriteCallback } from "../base-download-engine-fetch-stream.js";
export type SmartChunkSplitOptions = {
    chunkSize: number;
    startChunk: number;
    endChunk: number;
    lastChunkEndsFile: boolean;
    totalSize: number;
};
export default class SmartChunkSplit {
    private readonly _callback;
    private readonly _options;
    private readonly _lastChunkSize;
    private _bytesWriteLocation;
    private _chunks;
    private _closed;
    constructor(_callback: WriteCallback, _options: SmartChunkSplitOptions);
    calcLastChunkSize(): number;
    addChunk(data: Uint8Array): void;
    get savedLength(): number;
    closeAndSendLeftoversIfLengthIsUnknown(): void;
    private _sendChunk;
}
