/**
 * Convert a blob to a binary string
 *
 * The blob can optionnaly be sliced with the slice arguments
 *
 * @version 1.0.0
 * @since   1.0.0
 * @param   {Blob}  blob Blob to convert and optionnally sample
 * @param   {Number}  chunk Size in bytes to slice blob
 * @return  {Promise<string>}       Binary data as a string
 */
export declare function blobToBinaryString(blob: Blob, chunk?: number): Promise<string>;
/**
 * Convert a blob to an ArrayBuffer
 *
 * The blob can optionnally be sliced with the `size`argument
 *
 * @version 1.0.0
 * @since   1.0.0
 * @param   {Blob}  blob Blob
 * @param   {Number}  chunk Size in bytes to slice blob
 * @return  {Promise<ArrayBuffer>}       Binary data as a buffer
 */
export declare function blobToArrayBuffer(blob: Blob, chunk?: number): Promise<ArrayBuffer>;
/**
 * Compares two buffers byte to byte
 *
 * @version 1.0.0
 * @since   1.0.0
 * @param   {ArrayBuffer}  buf1          First buffer
 * @param   {ArrayBuffer}  buf2          Second buffer
 * @return  {Boolean}           `true` if buffers are equal
 */
export declare function compareBuffers(buf1: ArrayBuffer, buf2: ArrayBuffer): boolean;
/**
 * Compares two File objects by their content using chunking.
 *
 * @param {File} file1 The first File object.
 * @param {File} file2 The second File object.
 * @param {number} [chunkSize=1024 * 1024] The chunk size in bytes.  Defaults
 *  to 1MB.
 * @returns {Promise<boolean>} A promise that resolves to true if the files
 *  have the same content, false otherwise.
 */
export declare function areFilesEqual(file1: File, file2: File, chunkSize?: number): Promise<boolean>;
