import { requireOptionalNativeModule, type NativeModule } from 'expo-modules-core'; import type { AudioOutputRoute } from '../../src/types/audio'; type AstraAudioRouteEvents = { onAudioRouteChanged: (route: AudioOutputRoute | null) => void; }; declare class AstraAudioRouteModuleType extends NativeModule { getCurrentRoute(): AudioOutputRoute | null; start(): void; stop(): void; } const native = requireOptionalNativeModule('AstraAudioRoute'); export const isAstraAudioRouteAvailable = native !== null; export const AstraAudioRoute = native ?? { addListener: () => ({ remove: () => {} }), removeAllListeners: () => {}, getCurrentRoute: () => null, start: () => {}, stop: () => {}, };