@class GCMotion, GCControllerLiveInput, _GCControllerInputComponent, GCDeviceBattery, GCDeviceLight, NSObject, NSMutableArray, GCGamepad, GCExtendedGamepad, NSString, GCPhysicalInputProfile, NSArray, GCMicroGamepad, GCDeviceHaptics, GCSProfile; @protocol GCControllerProductInfo, GCDeviceHapticCapabilityInfo, GCDeviceGameIntentComponent, NSObject, GCControllerPlayerIndicator, OS_dispatch_queue, GCDeviceLightComponent, GCNamedProfile, GCControllerSettingsComponent, GCSystemGestureComponent, GCDeviceBatteryComponent, NSCopying, GCControllerMotionConfigurableSensors, NSSecureCoding; @interface GCController : NSObject <_GCIPCObject, NSSecureCoding, GCDeviceLegacy, GCDevice> { id _info; _GCControllerInputComponent *_input; GCPhysicalInputProfile *_physicalInput; GCMotion *_motion; id _motionConfigurableSensors; id _settings; id _playerIndicator; id _hapticCapabilityInfo; id _light; id _battery; id _gameIntent; id _systemGesture; id _profile; _GCControllerInputComponent *_legacy_input; NSString *_uniqueIdentifier; unsigned int _service; NSMutableArray *_hidServices; NSString *_physicalDeviceUniqueID; NSString *_debugName; NSString *_vendorName; NSString *_description; unsigned long long _deviceHash; long long _playerIndex; BOOL _physicalDeviceUsesCompass; BOOL _forwarded; BOOL _allHIDDevicesConnected; BOOL _published; BOOL _isProxyController; } @property (class, readonly) BOOL supportsSecureCoding; @property (class, readonly) GCController *current; @property (class, nonatomic) BOOL shouldMonitorBackgroundEvents; @property (copy, nonatomic) id /* block */ __deprecated_controllerPausedHandler; @property (readonly, nonatomic, getter=isComponentBased) BOOL componentBased; @property (readonly, nonatomic) NSArray *components; @property (readonly, nonatomic) id motionConfigurableSensors; @property (readonly, nonatomic) id systemGestureComponent; @property (readonly, nonatomic) GCSProfile *settingsProfile; @property (readonly) id identifier; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (retain, nonatomic) GCPhysicalInputProfile *profile; @property (retain, nonatomic) NSString *uniqueIdentifier; @property (readonly, nonatomic) NSArray *hidServices; @property (readonly, nonatomic) unsigned int service; @property (retain, nonatomic) NSString *physicalDeviceUniqueID; @property (nonatomic) BOOL physicalDeviceUsesCompass; @property (readonly, nonatomic) unsigned long long deviceHash; @property (copy, nonatomic) NSString *debugName; @property (nonatomic, getter=isForwarded) BOOL forwarded; @property (nonatomic, getter=areAllHIDDevicesConnected) BOOL allHIDDevicesConnected; @property (nonatomic, getter=isPublished) BOOL published; @property (readonly, nonatomic) NSString *productCategory; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) id identifier; @property (copy, nonatomic) NSArray *components; @property (copy, nonatomic) id /* block */ controllerPausedHandler; @property (readonly, nonatomic, getter=isAttachedToDevice) BOOL attachedToDevice; @property (readonly, getter=isSnapshot) BOOL snapshot; @property (nonatomic) long long playerIndex; @property (readonly, nonatomic) GCControllerLiveInput *input; @property (readonly, copy, nonatomic) GCDeviceBattery *battery; @property (readonly, nonatomic) GCPhysicalInputProfile *physicalInputProfile; @property (readonly, nonatomic) GCGamepad *gamepad; @property (readonly, nonatomic) GCMicroGamepad *microGamepad; @property (readonly, nonatomic) GCExtendedGamepad *extendedGamepad; @property (readonly, nonatomic) GCMotion *motion; @property (readonly, retain, nonatomic) GCDeviceLight *light; @property (readonly, retain, nonatomic) GCDeviceHaptics *haptics; @property (retain, nonatomic) NSObject *handlerQueue; @property (readonly, copy, nonatomic) NSString *vendorName; @property (readonly, nonatomic) NSString *productCategory; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (void)_startWirelessControllerDiscoveryWithBTClassic:(BOOL)a0 btle:(BOOL)a1 completionHandler:(id /* block */)a2; + (void)__daemon__appDidEnterBackground; + (id)snapshotWithProfile:(id)a0; + (void)_startWirelessControllerDiscoveryWithCompanions:(BOOL)a0 btClassic:(BOOL)a1 btle:(BOOL)a2 completionHandler:(id /* block */)a3; + (id)controllers; + (void)startWirelessControllerDiscoveryWithCompletionHandler:(id /* block */)a0; + (BOOL)userHasPairedGameController; + (void)__daemon__appWillEnterForeground; + (void)__openXPC_and_CBApplicationDidBecomeActive__; + (BOOL)settingsSupportedForCBDevice:(id)a0; + (BOOL)_settingsSupportedForBLEDevice:(id)a0 settingsStore:(id)a1; + (void)__open__; + (BOOL)_settingsSupportedForBTClassicDevice:(id)a0 settingsStore:(id)a1; + (id)controllerWithMicroGamepad; + (void)stopWirelessControllerDiscovery; + (id)controllerWithExtendedGamepad; + (void)__openXPC__; - (id)capture; - (void)setVendorName:(id)a0; - (id)persistentIdentifier; - (void)dealloc; - (id)initWithProfile:(id)a0; - (void)encodeWithCoder:(id)a0; - (void)setService:(unsigned int)a0; - (unsigned int)sampleRate; - (void).cxx_destruct; - (id)initWithCoder:(id)a0; - (void)removeComponent:(id)a0; - (id)initWithComponents:(id)a0; - (id)anonymizedIdentifier; - (id)detailedProductCategory; - (void)_setSnapshot:(BOOL)a0; - (id)_legacy_gamepad; - (void)clearServiceRef; - (void)setHidServices:(id)a0; - (void)addServiceRefs:(id)a0; - (void)_addComponent:(id)a0; - (void)_becomeCurrent; - (id)_componentOfClass:(Class)a0; - (id)_componentWithProtocol:(id)a0; - (id)_legacy_batteryStatus; - (id)_legacy_description; - (id)_legacy_extendedGamepad; - (void)_legacy_handleEvent:(struct __IOHIDEvent { } *)a0; - (id)_legacy_input; - (void)_legacy_invalidateDescription; - (BOOL)_legacy_isAttachedToDevice; - (BOOL)_legacy_isEqualToController:(id)a0; - (id)_legacy_keyboard; - (id)_legacy_microGamepad; - (id)_legacy_motion; - (id)_legacy_mouse; - (id)_legacy_physicalInputProfile; - (id)_legacy_physicalInputProfileName; - (long long)_legacy_playerIndex; - (id)_legacy_productCategory; - (void)_legacy_setPlayerIndex:(long long)a0; - (id)_legacy_vendorName; - (void)_triggerGameIntentLongPress; - (void)_triggerGameIntentShortPress; - (void)addServiceRef:(id)a0; - (void)addServiceRefsWithDevice:(id)a0; - (id)controllerSettings; - (void *)createInputBufferForDevice:(struct __IOHIDDevice { } *)a0 withSize:(unsigned long long)a1; - (BOOL)displayTrueSiriRemoteName; - (id)hapticEngines; - (BOOL)hasServiceRef:(struct __IOHIDServiceClient { } *)a0; - (id)initWithIdentifier:(id)a0 components:(id)a1; - (id)initWithProfileClass:(Class)a0 serviceRef:(struct __IOHIDServiceClient { } *)a1; - (id)initWithProfileClass:(Class)a0 services:(id)a1; - (id)initWithServiceRef:(struct __IOHIDServiceClient { } *)a0; - (void)initializeHapticEngines; - (BOOL)isATVRemote; - (BOOL)isEqualToController:(id)a0; - (BOOL)isProxyController; - (id)physicalInputProfileName; - (void)removeHapticEngines; - (void)removeServiceRef:(struct __IOHIDServiceClient { } *)a0; - (void)setDeviceHash:(unsigned long long)a0; - (void)setIsProxyController:(BOOL)a0; @end