import type AWSModule from "aws-sdk";
export interface UploadS3ObjectParams {
    path: string;
    bucket: string;
    body: AWSModule.S3.PutObjectRequest["Body"];
    userSub?: string | null;
}
/**
 * Uploads an arbitrarily sized buffer, blob, or stream to S3, using intelligent
 * concurrent handling of parts if the payload is large enough
 *
 * @param uploadObjectParams - The parameters required to perform an upload to S3
 * @param awsS3ConfigOverrides - Configuration option overrides
 */
export declare const uploadObjectToS3: (uploadObjectParams: UploadS3ObjectParams, awsS3ConfigOverrides?: AWSModule.S3.ClientConfiguration) => Promise<AWSModule.S3.ManagedUpload.SendData>;
