declare const FileReaderMethodMap: {
    readonly arrayBuffer: "readAsArrayBuffer";
    readonly binaryString: "readAsBinaryString";
    readonly dataURL: "readAsDataURL";
    readonly text: "readAsText";
};
type ReadType = keyof typeof FileReaderMethodMap;
interface FileReader {
    (blob: Blob, type: 'arrayBuffer'): Promise<ArrayBuffer>;
    (blob: Blob, type?: Exclude<ReadType, 'arrayBuffer'>): Promise<string>;
}
/**
 * 读取 Blob 或 File 对象，转为 Base64/String/ArrayBuffer
 *
 * <em style="font-weight: bold;">注意：该方法仅适用于浏览器端。</em>
 *
 * @function
 * @alias module:Browser.fileReader
 * @see {@link https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader FileReader}
 * @since 4.16.0
 * @param {Blob} blob Blob 或 File 对象
 * @param {'arrayBuffer'|'binaryString'|'dataURL'|'text'} [type='dataURL'] 读取类型，默认`dataURL`。可选 `arrayBuffer`  `binaryString` `dataURL` `text` 。
 * @returns {Promise<string|ArrayBuffer>} 文件内容
 * @example
 * const aFileParts = ['<a id="a"><b id="b">hey!</b></a>']; // 一个包含DOMString的数组
 * const htmlBlob = new Blob(aFileParts, { type: 'text/html' }); // 得到 blob
 *
 * fileReader(htmlBlob).then(data=>{
 *   console.log(data); // data:text/html;base64,PGEgaWQ9ImEiPjxiIGlkPSJiIj5oZXkhPC9iPjwvYT4=
 * });
 *
 * const textBlob = new Blob(aFileParts, { type: 'text/plain' });
 *
 * fileReader(textBlob, 'text').then(data=>{
 *   console.log(data); // <a id="a"><b id="b">hey!</b></a>
 * });
 */
declare const fileReader: FileReader;
export default fileReader;
