import { FC } from 'react'; import { VoiceSessionSnapshot } from '../../voice/voiceSession'; /** * The session's single animated control (BOFF-7120). * * It was a decorative round orb with a separate mic button beneath it. Now it is * one pill that both SHOWS the state and IS the control, because two elements * were saying the same thing: the orb pulsed to mean "listening" while the mic * button sat next to it meaning "the microphone". Merging them leaves a single * large target, which matters when the user is talking rather than looking. * * What tapping it does depends on the phase, and the icon always says which: * - listening -> mute (Mic) * - muted -> unmute (MicOff) * - speaking -> interrupt (Square — the stop glyph, not a microphone) * - thinking -> interrupt (Square — stop the answer being generated) * * Interruption living here is deliberate: it is the biggest target on screen, * and it replaced barge-in when the microphone had to be closed during playback * to stop the assistant transcribing its own voice. */ interface Props { session: VoiceSessionSnapshot; compact?: boolean; onPress?: () => void; /** Accessible name — the caller knows the translated strings. */ label: string; /** Start-up window: the recogniser has been asked but is not capturing yet. */ connecting?: boolean; } export declare const AssistantVoiceOrb: FC; export {}; //# sourceMappingURL=AssistantVoiceOrb.d.ts.map