export default Uploader;
declare function Uploader(options: any): {
    /**
     * @property {Array} fileList 文件列表
     */
    fileList: never[];
    /**
     * @property {Array} successList 上传成功的文件列表
     */
    successList: never[];
    /**
     * @property {Array} dnsList DNS列表
     */
    dnsList: null;
    /**
     * 获取上传DNS地址
     * @method getDNS
     * @static
     * @param  {Object}   param    AJAX参数
     * @param  {Function} callback 成功回调
     * @return {void}
     * @version 1.0.0
     */
    getDNS: (param: Object, callback: Function) => void;
    /**
     * 删除文件，终止上传并从列表中移除（进度保持不变）
     * @method removeFile
     * @static
     * @param  {Object} file 文件对象
     * @return {void}
     * @version 1.0.0
     */
    removeFile: (file: Object) => void;
    /**
     * 根据fileKey获取指定文件对象
     * @method getFile
     * @static
     * @param  {String} fileKey 文件名和文件大小md5值
     * @return {Obejct}         文件对象
     * @version 1.0.0
     */
    getFile: (fileKey: string) => any;
    /**
     * 上传分片
     * @method uploadTrunk
     * @static
     * @param  {Object}   param     AJAX参数
     * @param  {Object}   trunkData 分片数据
     * @param  {Function} callback  文件（非分片）上传成功回调函数
     * @return {void}
     * @version 1.0.0
     */
    uploadTrunk: (param: Object, trunkData: Object, callback: Function) => void;
    /**
     * 获取上传断点位置
     * @method getOffset
     * @static
     * @param  {Object}   param    AJAX参数
     * @param  {Function} callback 获取成功回调
     * @return {void}
     * @version 1.0.0
     */
    getOffset: (param: Object, callback: Function) => void;
    clearStorage: (fileKey: any) => void;
    /**
     * 上传文件操作
     * @method upload
     * @static
     * @param  {Number} fileIdx 文件索引
     * @return {void}
     * @version 1.0.0
     */
    upload: (fileIdx: number) => void;
    /**
     * 添加文件
     * @method addFile
     * @static
     * @param {File}   file 上传文件
     * @param {Function} callback  添加成功回调
     * @return {void}
     * @version 1.0.0
     */
    addFile: (file: File, callback: Function) => void;
    /**
     * 判断文件是否已存在列表中
     * @method checkExist
     * @static
     * @param  {File} file File对象
     * @return {Boolean}      存在：true，不存在：false
     * @version 1.0.0
     */
    checkExist: (file: File) => boolean;
    /**
     * 判断是否有待上传（已选中且上传未完成）的文件
     * @method checkedPending
     * @static
     * @return {Boolean} 有：true，无：false
     * @version 1.0.0
     */
    checkedPending: () => boolean;
    /**
     * 事件绑定
     * @method initEvent
     * @static
     * @return {void}
     * @version 1.0.0
     */
    initEvent: () => void;
    /**
     * 初始化
     * @method init
     * @static
     * @return {void}
     * @version 1.0.0
     */
    init: () => void;
    /**
     * 自定义初始化
     * @method initCustom
     * @static
     * @return {void}
     * @version 1.0.0
     */
    initCustom: (file: any) => void;
};
