import COS from 'cos-nodejs-sdk-v5';
import { Client } from '../oss_client';
import type { UploadResp, UploadOptions } from '../oss_client';
import type { OSSUploadOptions, OSSUploadLocalItem } from '../types';
declare class COSClient extends Client<Partial<COS.COSOptions>, COS.UploadFileParams> {
    #private;
    constructor(options: OSSUploadOptions);
    upload: (item: OSSUploadLocalItem, params?: Partial<COS.PutObjectParams & {
        FilePath: string;
        SliceSize?: number | undefined;
        onProgress?: COS.onProgress | undefined;
        onFileFinish?: COS.onFileFinish | undefined;
    }> | Partial<COS.SliceUploadFileParams & {
        FilePath: string;
        SliceSize?: number | undefined;
        onProgress?: COS.onProgress | undefined;
        onFileFinish?: COS.onFileFinish | undefined;
    }> | undefined, options?: UploadOptions | undefined) => Promise<UploadResp>;
    getUploadedUrl: (item: OSSUploadLocalItem, params?: Partial<COS.PutObjectParams & {
        FilePath: string;
        SliceSize?: number | undefined;
        onProgress?: COS.onProgress | undefined;
        onFileFinish?: COS.onFileFinish | undefined;
    }> | Partial<COS.SliceUploadFileParams & {
        FilePath: string;
        SliceSize?: number | undefined;
        onProgress?: COS.onProgress | undefined;
        onFileFinish?: COS.onFileFinish | undefined;
    }> | undefined) => Promise<{
        url: string;
    }>;
    get globalOptions(): {
        SecretId: string | undefined;
        SecretKey: string | undefined;
        Timeout: number;
    };
    get globalUploadParams(): {
        Bucket: string | undefined;
        Region: string | undefined;
    };
    get client(): COS;
}
export default COSClient;
