luxlabs header browser preview


@class IRServiceToken, IRSession, NSArray, NSString, NSObject, NSUserDefaults;
@protocol OS_dispatch_queue, MRRouteRepresentable;

@interface MRURouteRecommender : NSObject <IRSessionDelegate>

@property (retain, nonatomic) IRSession *session;
@property (retain, nonatomic) IRServiceToken *serviceToken;
@property (readonly, nonatomic) NSUserDefaults *userDefaults;
@property (nonatomic) long long mode;
@property (retain, nonatomic) NSObject<OS_dispatch_queue> *donationQueue;
@property (readonly, nonatomic) struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } recommendedRoutesLock;
@property (readonly, nonatomic) struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } donatedRoutesLock;
@property (nonatomic) int firstUnlockToken;
@property (retain, nonatomic) NSArray *recommendedRoutes;
@property (retain, nonatomic) NSArray *donatedRoutes;
@property (retain, nonatomic) id<MRRouteRepresentable> lastDonatedPickerChoice;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)sharedInstance;

- (id)init;
- (void)session:(id)a0 didFailWithError:(id)a1;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void).cxx_destruct;
- (void)session:(id)a0 suspendedWithReason:(long long)a1;
- (void)session:(id)a0 suspensionReasonEnded:(long long)a1 isNoLongerSuspended:(BOOL)a2;
- (id)irCandidateFor:(id)a0;
- (void)addDonatedRoute:(id)a0;
- (void)donateGroupedOutputDevices:(id)a0;
- (void)donatePickerChoiceFor:(id)a0 presentingAppBundleId:(id)a1 nowPlayingAppBundleId:(id)a2 visibleMediaApps:(id)a3;
- (void)initializeSession;
- (void)initializeSessionWhenAppropriate;
- (id)localizeRemoteControllableBundleIdentifier:(id)a0;
- (id)recommendationForGroupedOutputDevices:(id)a0;
- (void)session:(id)a0 didUpdateContext:(id)a1;
- (id)sortEndpointRoutes:(id)a0;
- (void)updateRecommendations;

@end