"use client" let utterance: SpeechSynthesisUtterance | null = null export async function speak( text: string, _rate = 0.85, ): Promise { return new Promise((resolve) => { stopSpeaking() const u = new SpeechSynthesisUtterance(text) u.lang = "es-AR" u.rate = _rate u.onend = () => resolve() u.onerror = () => resolve() utterance = u speechSynthesis.speak(u) }) } export function stopSpeaking(): void { if (utterance) { speechSynthesis.cancel() utterance = null } }