import type { Audio } from '../Audio'; import { AudioPipeline } from '../pipeline'; import { WebAudioContext } from './WebAudioContext'; import { WebSound } from './WebSound'; export declare class WebAudio extends AudioPipeline { parent: Audio; /** Source */ protected _sourceBuffer?: AudioBuffer; protected _sourceNode: AudioBufferSourceNode; protected _sourceLoad?: Promise; /** Nodes */ gain: GainNode; analyser: AnalyserNode; get context(): WebAudioContext; get isPlayable(): boolean; get duration(): number; get buffer(): AudioBuffer | null; set buffer(val: AudioBuffer | null); constructor(parent: Audio); load(): Promise; protected _loadUrl(url: string): Promise; protected _decode(buffer: ArrayBuffer | AudioBuffer): Promise; cloneSource(): { source: AudioBufferSourceNode; gain: GainNode; }; createSound(): WebSound; }