/** Class representing all built-in {@link WebAudioAPI} audio encoders */
export class EncoderBase {
/**
* Called by a concrete encoder instance to initialize the inherited {@link EncoderBase} data
* structure.
*/
constructor() { /* Empty constructor */ }
/**
* Encodes the corresponding audio buffer, and returns a
* {@link https://developer.mozilla.org/en-US/docs/Web/API/Blob Blob} containing the newly
* encoded data.
*
* @param {AudioBuffer} audioData - {@link https://developer.mozilla.org/en-US/docs/Web/API/AudioBuffer AudioBuffer} containing the data to encode
* @param {Object} [encodingOptions] - Optional encoding-specific options such as 'bitRate'
* @returns {Promise<Blob>} Data {@link https://developer.mozilla.org/en-US/docs/Web/API/Blob Blob} containing the newly encoded audio
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/AudioBuffer AudioBuffer}
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Blob Blob}
*/
async encode(audioData, encodingOptions) { return undefined; }
}