import { UploadRequest } from "../models/upload/upload-request";
import { IExtendedContentHubClient } from "./extended-client";
import { CancelCallback } from "./internal-client";
import { ResponseMessage } from "./response-message";
/**
 * Client for uploading files (packages).
 */
export interface IUploadClient {
    /**
     * Attempts to upload the specified file.
     * @param request - Describes the file upload.
     * @returns The response of the file upload request.
     */
    uploadAsync(request: UploadRequest, cancelCallback?: CancelCallback): Promise<ResponseMessage>;
}
export declare class UploadClient implements IUploadClient {
    private client;
    constructor(client: IExtendedContentHubClient);
    uploadAsync(request: UploadRequest, cancelCallback?: CancelCallback): Promise<ResponseMessage>;
    private uploadFileAsync;
    private uploadChunkAsync;
    private prepareFormDataNode;
    private prepareFormDataBrowser;
}
