import { ProgressCallback, UploadResult } from "../types";
import { BaseUploader } from "./BaseUploader";
export declare class TOSUploader extends BaseUploader {
    private client;
    private cdnService?;
    constructor(config: any);
    /**
     * 初始化 TOS 客户端
     */
    private initializeClient;
    /**
     * 初始化 CDN 服务
     */
    private initializeCDNService;
    /**
     * 上传单个文件
     */
    protected uploadSingleFile(localPath: string, remotePath: string, options?: {
        overwrite?: boolean;
        enableResume?: boolean;
        maxRetries?: number;
        chunkSize?: number;
        onProgress?: ProgressCallback;
        customCacheControl?: string;
        preload?: boolean;
    }): Promise<UploadResult>;
    /**
     * 构建文件 URL
     */
    private buildFileUrl;
    /**
     * 验证配置
     */
    validateConfig(): Promise<boolean>;
    /**
     * 检查文件是否存在
     */
    fileExists(remotePath: string): Promise<boolean>;
    /**
     * 获取文件信息
     */
    getFileInfo(remotePath: string): Promise<any>;
    /**
     * 删除文件
     */
    deleteFile(remotePath: string): Promise<boolean>;
    /**
     * 列出文件
     */
    listFiles(prefix?: string, maxKeys?: number): Promise<any[]>;
    /**
     * CDN刷新（兼容接口）
     */
    refreshCDNCache(url: string, options?: any): Promise<boolean>;
    /**
     * CDN预热（兼容接口）
     */
    preloadCDNCache(url: string, options?: any): Promise<boolean>;
    /**
     * 批量CDN预热（兼容接口）
     */
    preloadCDNCacheBatch(urls: string[], options?: any): Promise<{
        success: number;
        failed: number;
    }>;
    /**
     * 批量CDN刷新（兼容接口）
     */
    refreshCDNCacheBatch(urls: string[], options?: any): Promise<{
        success: number;
        failed: number;
    }>;
}
//# sourceMappingURL=TOSUploader.d.ts.map