import OSS from "ali-oss";
export declare class AliOssServer {
    private readonly accessKeyId;
    private readonly accessKeySecret;
    private readonly bucket;
    private readonly region;
    private ossClient;
    constructor(accessKeyId: string, accessKeySecret: string, bucket: string, region?: string);
    uploadFile(fileName: string, file: string): Promise<string | null>;
    downloadFile(fileName: string): Promise<any>;
    listObjects(prefix?: string, maxKeys?: number): Promise<{
        objects: OSS.ObjectMeta[];
        prefixes: string[];
        nextMarker: string;
        isTruncated: boolean;
    } | null>;
    deleteObject(fileName: string): Promise<boolean>;
    deleteMultipleObjects(fileNames: string[]): Promise<{
        deleted: string[] | undefined;
    } | null>;
    getObjectUrl(fileName: string, expires?: number): Promise<string>;
    getObjectMeta(fileName: string): Promise<{
        meta: OSS.UserMeta;
        headers: object;
    } | null>;
    copyObject(source: string, target: string): Promise<{
        data: OSS.ModifyData;
    } | null>;
    putObjectACL(fileName: string, acl: "public-read" | "public-read-write" | "private"): Promise<boolean>;
    getObjectACL(fileName: string): Promise<{
        acl: OSS.ACLType;
    } | null>;
}
