import { CloudDriveResourceUploadStatus } from './type';
/**
 * 资源对象
 * 支持类型 `` 'bmp', 'jpg', 'png','gif', 'pdf', 'jpeg', 'pptx', 'ppt', 'doc', 'docx', 'mp3','mp4',``
 *
 */
/** @en
 * CloudDriveResource
 * support `` 'bmp', 'jpg', 'png','gif', 'pdf', 'jpeg', 'pptx', 'ppt', 'doc', 'docx', 'mp3','mp4',``
 *
 */
export declare abstract class CloudDriveResource {
    /**
     * 资源扩展名
     */
    /** @en
     * Extension name of the resource file
     */
    ext: string;
    /**
     * 资源文件名称
     */
    /** @en
     * Resource name of the resource file
     */
    resourceName: string;
    /**
     * 资源文件 UUID
     */
    /** @en
     * UUID of the resource file
     */
    resourceUuid: string;
    /**
     * 资源文件大小，单位：字节
     */
    /** @en
     * File size in bytes
     */
    size: number;
    /**
     * 最近更新时间
     */
    /** @en
     * Last update time
     */
    updateTime: number;
    /**
     * @deprecated
     *
     * 是否进入教室后自动打开课件，目前未实现
     */
    /** @en
     * @deprecated
     * Wether automatically open the file after classroom is launched, currently not implemented.
     */
    initOpen?: boolean;
    /**
     * 资源文件 URL
     */
    /** @en
     * Resource file URL
     */
    url?: string;
    constructor(data: {
        ext: string;
        resourceName: string;
        resourceUuid: string;
        size: number;
        updateTime: number;
        url?: string;
        initOpen?: boolean;
    });
}
/**
 * 资源上传进度对象
 */
/** @en
 * Cloud Drive Uploading Progress
 */
export declare class CloudDriveUploadingProgress {
    /**
     * 资源扩展名
     */
    /** @en
     * Extension name of the resource file
     */
    ext: string;
    /**
     * 资源文件名称
     */
    /** @en
     * Resource name of the resource file
     */
    resourceName: string;
    /**
     * 资源文件 UUID
     */
    /** @en
     * UUID of the resource file
     */
    resourceUuid: string;
    /**
     * 资源文件大小，单位：字节
     */
    /** @en
     * File size in bytes
     */
    size: number;
    /**
     * 最近更新时间
     */
    /** @en
     * Last update time
     */
    updateTime: number;
    /**
     * 上传状态
     */
    /** @en
     * Upload status
     */
    status: CloudDriveResourceUploadStatus;
    /**
     * 上传进度
     */
    /** @en
     * Upload progress
     */
    progress: number;
    constructor(data: {
        ext: string;
        resourceName: string;
        resourceUuid?: string;
        size?: number;
        updateTime?: number;
    });
}
