/** AudioWorklet processor that forwards raw input samples to the main thread. */ declare function registerProcessor(name: string, ctor: unknown): void declare class AudioWorkletProcessor { readonly port: MessagePort } class PcmRecorder extends AudioWorkletProcessor { process(inputs: Float32Array[][]): boolean { const ch = inputs[0]?.[0] if (ch && ch.length > 0) { const copy = new Float32Array(ch) this.port.postMessage(copy, [copy.buffer]) } return true } } registerProcessor('pcm-recorder', PcmRecorder)