/** * Provides volume and pitch data from the user's microphone using getUserMedia. * Intended to be used as a singleton */ export declare class Microphone { ready?: Promise; started: boolean; private stream; private ctx; private analyser?; private source?; private soundData?; private pitchData?; private _lastVolumeUpdate?; private _lastPitchUpdate?; _volume: number; _low: number; _pitch: number; constructor(ctx: AudioContext); start(): Promise | undefined; stop(): void; _onStreamReady(stream: MediaStream): void; _updateVolumeData(): void; _updatePitchData(): void; _getSoundStats(array: Uint8Array): { volume: number; low: number; }; _correlatePitch(buf: Float32Array, sampleRate: number): number; _updateVolumeDataIfNeeded(): void; _updatePitchDataIfNeeded(): void; /** * Return the volume data from the microphone ( between 0 and 100 ) Updates if the data is stale */ readonly volume: number; /** * Return the pitch data from the microphone ( between 0 and 100 ) Updates if the data is stale */ readonly pitch: number; }