Skip to content

VoiceSession

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:57

The seam both voice tracks satisfy toward a Maelstrom instance: the realtime track and the cascaded voice pipeline. It emits intents into the instance, consumes speakable results, and receives grounding updates. Concrete implementations live in @maelstrom-co/realtime (RealtimeSession) and the cascade package — never in client.

The v1 seam is deliberately minimal (lifecycle + state, plus a transcript channel for live captions); SpeakableResult and GroundingUpdate are exported but unreferenced by this interface for now. The full seam shape (intent-emission surface, speakable-result and grounding-update flow) is to be settled through follow-up coordination, before the contract ossifies.

readonly state: VoiceSessionState

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:58

connect(): Promise<void>

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:59

Promise<void>


disconnect(): Promise<void>

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:60

Promise<void>


on(event, handler): Unsubscribe

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:61

"state"

(s) => void

Unsubscribe

on(event, handler): Unsubscribe

Defined in: packages/client/src/lib/voice-session/voice-session.types.ts:62

"transcript"

(t) => void

Unsubscribe