@class NSData, NSString, NSArray, MRAVOutputDeviceSourceInfo, MRAVEndpoint, MRGroupSessionInfo, NSDictionary, _MRAVOutputDeviceDescriptorProtobuf; @protocol MRRouteRecommendation; @interface MRAVOutputDevice : NSObject { id<MRRouteRecommendation> _recommendation; } @property (copy, nonatomic) NSString *airPlayGroupID; @property (readonly, nonatomic) NSString *groupContextID; @property (copy, nonatomic) NSString *parentGroupIdentifier; @property (readonly, nonatomic) NSString *baseParentGroupID; @property (copy, nonatomic) NSString *primaryID; @property (readonly, nonatomic) BOOL supportsRapportRemoteControlTransport; @property (readonly, nonatomic) BOOL supportsSharePlayHandoff; @property (readonly, nonatomic) float distance; @property (readonly, nonatomic) BOOL discoveredOnSameInfra; @property (readonly, nonatomic) BOOL canBeAirPlayReceiver; @property (weak, nonatomic) MRAVEndpoint *endpoint; @property (readonly, nonatomic) NSDictionary *roomsLookupTable; @property (readonly, nonatomic) NSArray *rooms; @property (copy, nonatomic) _MRAVOutputDeviceDescriptorProtobuf *descriptor; @property (retain, nonatomic) id<MRRouteRecommendation> recommendation; @property (readonly, nonatomic) NSString *logicalDeviceID; @property (readonly, nonatomic) NSString *tightSyncID; @property (readonly, nonatomic) BOOL supportsRapport; @property (readonly, nonatomic) BOOL isAddedToHomeKit; @property (readonly, nonatomic, getter=isAuxiliary) BOOL auxiliary; @property (readonly, nonatomic) NSString *currentBluetoothListeningMode; @property (readonly, nonatomic) NSArray *availableBluetoothListeningModes; @property (readonly, nonatomic) BOOL supportsHeadTrackedSpatialAudio; @property (readonly, nonatomic) BOOL allowsHeadTrackedSpatialAudio; @property (readonly, nonatomic, getter=isHeadTrackedSpatialAudioActive) BOOL headTrackedSpatialAudioActive; @property (readonly, nonatomic) NSString *headTrackedSpatialAudioMode; @property (readonly, nonatomic) BOOL supportsConversationDetection; @property (readonly, nonatomic, getter=isConversationDetectionEnabled) BOOL conversationDetectionEnabled; @property (readonly, nonatomic, getter=isPrimaryLocalDevice) BOOL primaryLocalDevice; @property (readonly, nonatomic, getter=isNearby) BOOL nearby; @property (readonly, nonatomic, getter=isKnown) BOOL known; @property (readonly, nonatomic) MRAVOutputDeviceSourceInfo *sourceInfo; @property (readonly, nonatomic) NSString *name; @property (readonly, nonatomic) NSString *uid; @property (readonly, nonatomic) NSString *modelID; @property (readonly, nonatomic) NSString *firmwareVersion; @property (readonly, nonatomic) NSString *groupID; @property (readonly, nonatomic) NSString *baseGroupID; @property (readonly, nonatomic) NSData *MACAddress; @property (readonly, nonatomic) NSDictionary *modelSpecificInfo; @property (readonly, nonatomic) NSString *playingPairedDeviceName; @property (readonly, nonatomic) BOOL canAccessRemoteAssets; @property (readonly, nonatomic) BOOL canAccessAppleMusic; @property (readonly, nonatomic) BOOL canAccessiCloudMusicLibrary; @property (readonly, nonatomic) BOOL canPlayEncryptedProgressiveDownloadAssets; @property (readonly, nonatomic) BOOL canFetchMediaDataFromSender; @property (readonly, nonatomic) BOOL presentsOptimizedUserInterfaceWhenPlayingFetchedAudioOnlyAssets; @property (readonly, nonatomic, getter=isRemoteControllable) BOOL remoteControllable; @property (readonly, nonatomic, getter=isGroupLeader) BOOL groupLeader; @property (readonly, nonatomic) BOOL groupContainsGroupLeader; @property (readonly, nonatomic, getter=isAirPlayReceiverSessionActive) BOOL airPlayReceiverSessionActive; @property (readonly, nonatomic, getter=isGroupable) BOOL groupable; @property (readonly, nonatomic) BOOL supportsBluetoothSharing; @property (readonly, nonatomic, getter=isProxyGroupPlayer) BOOL proxyGroupPlayer; @property (readonly, nonatomic) BOOL canRelayCommunicationChannel; @property (readonly, nonatomic) BOOL supportsBufferedAirPlay; @property (readonly, nonatomic) BOOL canProxyEndpoint; @property (readonly, nonatomic) BOOL supportsMultiplayer; @property (readonly, nonatomic, getter=isEligibleForWHAPlayback) BOOL eligibleForWHAPlayback; @property (readonly, nonatomic) BOOL shouldBeLocallyHosted; @property (readonly, nonatomic) BOOL supportsMigration; @property (readonly, nonatomic, getter=isDeviceGroupable) BOOL deviceGroupable; @property (readonly, nonatomic, getter=isPickedOnPairedDevice) BOOL pickedOnPairedDevice; @property (readonly, nonatomic) unsigned int deviceType; @property (readonly, nonatomic) unsigned int deviceSubtype; @property (readonly, nonatomic) long long hostDeviceClass; @property (readonly, nonatomic) NSArray *clusterComposition; @property (readonly, nonatomic) NSArray *clusterCompositionOutputDevices; @property (readonly, nonatomic) NSArray *allClusterMembers; @property (readonly, nonatomic) NSArray *allClusterMembersOutputDevices; @property (readonly, nonatomic) NSArray *activatedClusterMembersOutputDevices; @property (readonly, nonatomic) NSArray *roomOutputDevices; @property (readonly, nonatomic) unsigned long long configuredClusterSize; @property (readonly, nonatomic) unsigned int clusterType; @property (readonly, nonatomic) float batteryLevel; @property (readonly, nonatomic) BOOL hasBatteryLevel; @property (readonly, nonatomic, getter=isLocalDevice) BOOL localDevice; @property (readonly, nonatomic) BOOL supportsExternalScreen; @property (readonly, nonatomic) BOOL requiresAuthorization; @property (readonly, nonatomic) BOOL parentGroupContainsDiscoverableLeader; @property (readonly, nonatomic, getter=isVolumeControlAvailable) BOOL volumeControlAvailable; @property (readonly, nonatomic) unsigned int volumeCapabilities; @property (readonly, nonatomic) float volume; @property (readonly, nonatomic, getter=isVolumeMuted) BOOL volumeMuted; @property (readonly, nonatomic) BOOL isPersonalRoute; @property (readonly, nonatomic) BOOL producesLowFidelityAudio; @property (readonly, nonatomic) NSString *bluetoothID; @property (readonly, nonatomic) NSString *debugName; @property (readonly, nonatomic, getter=isUsingJSONProtocol) BOOL usingJSONProtocol; @property (readonly, nonatomic) BOOL supportsHAP; @property (readonly, nonatomic, getter=isPickable) BOOL pickable; @property (readonly, nonatomic) long long transportType; @property (readonly, nonatomic) NSString *clusterID; @property (readonly, nonatomic, getter=isClusterLeader) BOOL clusterLeader; @property (readonly, nonatomic) NSString *parentUID; @property (readonly, nonatomic) NSString *roomID; @property (readonly, nonatomic) NSString *roomName; @property (readonly, nonatomic, getter=isMultiRoom) BOOL multiRoom; @property (readonly, nonatomic) NSString *localizedName; @property (readonly, nonatomic) BOOL supportsEngageOnClusterActivation; @property (readonly, nonatomic) MRGroupSessionInfo *groupSessionInfo; @property (readonly, nonatomic) NSString *deviceEnclosureColor; @property (readonly, nonatomic, getter=isAppleAccessory) BOOL appleAccessory; @property (readonly, nonatomic) NSString *capabilitiesDescription; @property (readonly, nonatomic) NSString *composedTypeDescription; @property (readonly, nonatomic) NSString *roleDescription; @property (readonly, nonatomic) NSDictionary *jsonEncodableDictionaryRepresentation; @property (readonly, nonatomic) NSArray *dnsNames; @property (readonly, nonatomic) BOOL isAirpodsDevice; @property (readonly, nonatomic) BOOL isB298Device; @property (readonly, nonatomic) BOOL isB515Device; @property (readonly, nonatomic) BOOL isB688Device; @property (readonly, nonatomic) BOOL isB698Device; @property (readonly, nonatomic) BOOL isB698CDevice; @property (readonly, nonatomic) BOOL isBeatsLegacyDevice; @property (readonly, nonatomic) BOOL isHearingDevice; @property (readonly, nonatomic) BOOL isJ327Device; @property (readonly, nonatomic) BOOL isB520Device; @property (readonly, nonatomic) BOOL isHomeTheaterB520Device; + (id)localDeviceLocalizedName; + (id)localDeviceUID; - (void)adjustVolume:(long long)a0 details:(id)a1; - (unsigned long long)hash; - (void)setVolume:(float)a0 details:(id)a1; - (void)setVolumeMuted:(BOOL)a0 details:(id)a1; - (id)groupableOutputDevice; - (id)description; - (void).cxx_destruct; - (BOOL)isEqual:(id)a0; - (BOOL)containsUID:(id)a0; - (BOOL)isEqualToOutputDevice:(id)a0 denyList:(id)a1; - (id)outputDeviceWithSourceInfoFrom:(id)a0; - (id)clusterCompositionMembers; - (id)clusterMembers; - (id)effectiveOutputDeviceForUID:(id)a0; - (BOOL)isEqualFuzzy:(id)a0; - (BOOL)isEqualToOutputDevice:(id)a0; - (BOOL)isEqualToOutputDevice:(id)a0 denyList:(id)a1 addedProperties:(id *)a2 removedProperties:(id *)a3 changedProperties:(id *)a4; - (id)mergingVolumeFrom:(id)a0; @end