import { Settings } from '../generated-types';
import { _Error as AWSError } from '@aws-sdk/client-s3';
import { Credentials } from './types';
export declare class Client {
    roleArn: string;
    roleSessionName: string;
    region: string;
    externalId: string;
    constructor(region: string, roleArn: string, externalId: string);
    assumeRole(): Promise<Credentials>;
    private getSTSCredentials;
    uploadS3(settings: Settings, fileContent: string | Buffer, filename_prefix: string, s3_aws_folder_name: string, fileExtension: string, signal?: AbortSignal): Promise<{
        statusCode: number;
        message: string;
    }>;
}
export declare function isAWSError(err: unknown): err is AWSError;
