/** * Virtual ASR injection — pushes transcript text into a live {@link import('./asr-handle').AsrHandle} * as if the speech recognizer had produced it. Used by WebSocket test clients and automation * **without** sending real microphone audio. * * SIP/WS runtimes also emit speech-start / speech-end and barge-in-style signals where * possible so scripts written around VAD observables behave the same in text tests. * Unknown `asrId` values are ignored. * * Methods require the **`asrId`** returned by **`AsrHandle.id`** from **`channel.createAsr()`**. */ export interface TextInput { /** * Inject a **final** transcript for the given ASR instance. * * Emits a final partial first, then `result$`, then speech-end style signals. * @param asrId - Value of **`(await channel.createAsr()).id`**. * @param text - Full utterance text (final result). */ pushResult(asrId: string, text: string): void; /** * Inject a partial hypothesis. * * Unlike {@link pushResult}, this does not emit `result$` and does not close the * synthetic turn by itself. Pass `isFinal` only to mark the partial as final-like * for consumers of `partial$`. * @param asrId - Target ASR **`id`**. * @param text - Partial or final text. * @param isFinal - When `true`, marks this partial as the last before a final (host may align with **`result$`**). */ pushPartial(asrId: string, text: string, isFinal?: boolean): void; } //# sourceMappingURL=text-input.d.ts.map