@class MPChangePlaybackRateCommand, MPSetPlaybackQueueCommand, MPVocalsControlCommand, MPChangePlaybackPositionCommand, NSMutableArray, NSString, MPInsertIntoPlaybackQueueCommand, MPReorderQueueCommand, MPRatingCommand, MPSetPriorityForPlaybackSessionCommand, MPChangeRepeatModeCommand, MPSkipIntervalCommand, MPChangeShuffleModeCommand, MPRemoteCommand, MPFeedbackCommand, MPSetPlaybackSessionCommand, MPAdvanceShuffleModeCommand, MPPreloadPlaybackSessionCommand, MPChangeQueueEndActionCommand, MRPlayerPath, MPPrepareForSetPlaybackQueueCommand, MPAdvanceRepeatModeCommand; @interface MPRemoteCommandCenter : NSObject <MPRemoteCommandDelegate_Internal> { NSMutableArray *_activeCommands; struct os_unfair_recursive_lock_s { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } ourl_lock; unsigned int ourl_count; } _lock; id _mediaRemoteCommandHandler; BOOL _scheduledSupportedCommandsChangedNotification; BOOL _commandHandlersRegistered; BOOL _canBeNowPlayingApplication; BOOL _invalidated; BOOL _processingEvent; NSMutableArray *_eventQueue; unsigned long long _stateHandler; } @property (readonly, nonatomic) MPRemoteCommand *specialSeekForwardCommand; @property (readonly, nonatomic) MPRemoteCommand *specialSeekBackwardCommand; @property (readonly, nonatomic) MPAdvanceShuffleModeCommand *advanceShuffleModeCommand; @property (readonly, nonatomic) MPAdvanceRepeatModeCommand *advanceRepeatModeCommand; @property (readonly, nonatomic) MPRemoteCommand *removeFromPlaybackQueueCommand; @property (readonly, nonatomic) MPReorderQueueCommand *reorderQueueCommand; @property (readonly, nonatomic) MPRemoteCommand *playItemInQueueCommand; @property (readonly, nonatomic) MPRemoteCommand *createRadioStationCommand; @property (readonly, nonatomic) MPSetPlaybackQueueCommand *setPlaybackQueueCommand; @property (readonly, nonatomic) MPPrepareForSetPlaybackQueueCommand *prepareForSetPlaybackQueueCommand; @property (readonly, nonatomic) MPInsertIntoPlaybackQueueCommand *insertIntoPlaybackQueueCommand; @property (readonly, nonatomic) MPFeedbackCommand *addNowPlayingItemToLibraryCommand; @property (readonly, nonatomic) MPFeedbackCommand *addItemToLibraryCommand; @property (readonly, nonatomic) MPSetPlaybackSessionCommand *setPlaybackSessionCommand; @property (readonly, nonatomic) MPPreloadPlaybackSessionCommand *preloadPlaybackSessionCommand; @property (readonly, nonatomic) MPSetPriorityForPlaybackSessionCommand *setPriorityForPlaybackSessionCommand; @property (readonly, nonatomic) MPRemoteCommand *discardPlaybackSessionCommand; @property (readonly, nonatomic) MPRemoteCommand *reshuffleCommand; @property (readonly, nonatomic) MPChangeQueueEndActionCommand *changeQueueEndActionCommand; @property (readonly, nonatomic) MPRemoteCommand *leaveSharedPlaybackSessionCommand; @property (readonly, nonatomic) MPRemoteCommand *postEventNoticeCommand; @property (readonly, nonatomic) MPRemoteCommand *prepareVocalsControlCommand; @property (readonly, nonatomic) MPVocalsControlCommand *vocalsControlCommand; @property (readonly, nonatomic) BOOL commandHandlersRegistered; @property (readonly, nonatomic) BOOL canBeNowPlayingApplication; @property (readonly, copy, nonatomic) NSString *playerID; @property (readonly, copy, nonatomic) MRPlayerPath *playerPath; @property (nonatomic) BOOL disableAutomaticCanBeNowPlaying; @property (nonatomic) BOOL wantsSerializedEventDelivery; @property (readonly, nonatomic) MPRemoteCommand *pauseCommand; @property (readonly, nonatomic) MPRemoteCommand *playCommand; @property (readonly, nonatomic) MPRemoteCommand *stopCommand; @property (readonly, nonatomic) MPRemoteCommand *togglePlayPauseCommand; @property (readonly, nonatomic) MPRemoteCommand *enableLanguageOptionCommand; @property (readonly, nonatomic) MPRemoteCommand *disableLanguageOptionCommand; @property (readonly, nonatomic) MPChangePlaybackRateCommand *changePlaybackRateCommand; @property (readonly, nonatomic) MPChangeRepeatModeCommand *changeRepeatModeCommand; @property (readonly, nonatomic) MPChangeShuffleModeCommand *changeShuffleModeCommand; @property (readonly, nonatomic) MPRemoteCommand *nextTrackCommand; @property (readonly, nonatomic) MPRemoteCommand *previousTrackCommand; @property (readonly, nonatomic) MPSkipIntervalCommand *skipForwardCommand; @property (readonly, nonatomic) MPSkipIntervalCommand *skipBackwardCommand; @property (readonly, nonatomic) MPRemoteCommand *seekForwardCommand; @property (readonly, nonatomic) MPRemoteCommand *seekBackwardCommand; @property (readonly, nonatomic) MPChangePlaybackPositionCommand *changePlaybackPositionCommand; @property (readonly, nonatomic) MPRatingCommand *ratingCommand; @property (readonly, nonatomic) MPFeedbackCommand *likeCommand; @property (readonly, nonatomic) MPFeedbackCommand *dislikeCommand; @property (readonly, nonatomic) MPFeedbackCommand *bookmarkCommand; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (void)getPendingCommandTypesWithCompletion:(id /* block */)a0; + (id)sharedCommandCenter; + (long long)_numberOfCommandCentersWithTargets; + (id)commandCenterForPlayerID:(id)a0; + (id)commandCenterForPlayerPath:(id)a0; + (void)updateLaunchCommandsWithConfigurationHandler:(id /* block */)a0; - (id)initWithPlayerID:(id)a0; - (void)_flushEventQueue; - (id)initWithPlayerPath:(id)a0; - (void)dealloc; - (id)_activeCommands; - (id)_stateDictionary; - (void)_stopMediaRemoteSync; - (void)_scheduleSupportedCommandsChanged:(BOOL)a0; - (id)_debugCommandDescriptions; - (void)invalidate; - (void)_pushMediaRemoteCommand:(unsigned int)a0 withOptions:(id)a1 completion:(id /* block */)a2; - (void)_startMediaRemoteSync; - (void)getPendingCommandTypesWithCompletion:(id /* block */)a0; - (void)_commandTargetsDidChangeNotification:(id)a0; - (BOOL)containsCommand:(id)a0; - (void).cxx_destruct; - (void)_locked_updateCanBeNowPlayingApplicationIfNeeded; - (id)_createRemoteCommandWithConcreteClass:(Class)a0 mediaRemoteType:(unsigned int)a1; - (void)remoteCommandDidMutatePropagatableProperty:(id)a0; - (BOOL)isInvalidated; - (void)dispatchCommandEvent:(id)a0 completion:(id /* block */)a1; @end