export type SpeechActivityEvent = 'started' | 'ended'; export interface SpeechActivityEventData { event: SpeechActivityEvent; } export interface EngineStateEventData { isPlayoutEnabled: boolean; isRecordingEnabled: boolean; } export interface AudioProcessingStateEventData { voiceProcessingEnabled: boolean; voiceProcessingBypassed: boolean; voiceProcessingAGCEnabled: boolean; stereoPlayoutEnabled: boolean; } export type AudioDeviceModuleEventData = SpeechActivityEventData | EngineStateEventData | AudioProcessingStateEventData | Record; /** * Event emitter for RTCAudioDeviceModule delegate callbacks. * Speech activity events are supported on iOS, macOS, and Android. * Engine/audio-processing-state events remain iOS/macOS only. */ declare class AudioDeviceModuleEventEmitter { private eventEmitter; setupListeners(): void; /** * Subscribe to speech activity events (started/ended). * Supported on iOS, macOS, and Android. */ addSpeechActivityListener(listener: (data: SpeechActivityEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to devices updated event (input/output devices changed) */ addDevicesUpdatedListener(listener: () => void): import("react-native").EmitterSubscription; /** * Subscribe to audio processing state updated event */ addAudioProcessingStateUpdatedListener(listener: (data: AudioProcessingStateEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to engine created event */ addEngineCreatedListener(listener: () => void): import("react-native").EmitterSubscription; /** * Subscribe to engine will enable event */ addEngineWillEnableListener(listener: (data: EngineStateEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to engine will start event */ addEngineWillStartListener(listener: (data: EngineStateEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to engine did stop event */ addEngineDidStopListener(listener: (data: EngineStateEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to engine did disable event */ addEngineDidDisableListener(listener: (data: EngineStateEventData) => void): import("react-native").EmitterSubscription; /** * Subscribe to engine will release event */ addEngineWillReleaseListener(listener: () => void): import("react-native").EmitterSubscription; } export declare const audioDeviceModuleEvents: AudioDeviceModuleEventEmitter; export {};