@class NSString, NSArray, NSMutableDictionary, CBDevice, NSObject; @protocol OS_xpc_object, OS_dispatch_queue; @interface CBDiscovery : NSObject <CBXPCReceivable, CUXPCCodable, CBActivatable, CBDeviceBuffering, CBDeviceReporting, CBErrorReporting, CBInterruptable, CBLabelable, CBRemotable, CBStateReporting, CBSystemOverridable, CBUseCaseable> { BOOL _activateCalled; id /* block */ _activateCompletion; BOOL _changesPending; NSMutableDictionary *_deviceMap; BOOL _direct; struct { unsigned char bitArray[3]; } _discoveryTypesInternal; BOOL _invalidateCalled; BOOL _invalidateDone; struct LogCategory { int x0; int x1; char *x2; unsigned int x3; char *x4; char *x5; int x6; struct LogCategory *x7; struct LogOutput *x8; struct LogOutput *x9; unsigned long long x10; unsigned long long x11; unsigned int x12; unsigned int x13; char *x14; struct LogCategoryPrivate *x15; } *_ucat; NSObject<OS_xpc_object> *_xpcCnx; } @property (copy, nonatomic) NSString *appID; @property (nonatomic) int bleScanRateOverride; @property (nonatomic) unsigned int clientID; @property (nonatomic) BOOL denyLowPowerModeScans; @property (nonatomic) BOOL denyScreenLockedScans; @property (nonatomic) BOOL disabledActive; @property (nonatomic) BOOL disabledPending; @property (readonly, nonatomic) struct { unsigned char x0[3]; } *discoveryTypesInternalPtr; @property (nonatomic) unsigned long long extraDiscoveryFlags; @property (nonatomic) unsigned int internalFlags; @property (nonatomic) BOOL keepAlive; @property (nonatomic) unsigned int memoryPressureFlags; @property (nonatomic) unsigned int systemOverrideFlags; @property (retain, nonatomic) NSObject<OS_xpc_object> *testListenerEndpoint; @property (nonatomic) char bleRSSIThresholdHint; @property (nonatomic) unsigned char bleRSSIThresholdOrder; @property (nonatomic) int bleScanRate; @property (nonatomic) int bleScanRateScreenOff; @property (nonatomic) unsigned long long changeFlags; @property (copy, nonatomic) NSArray *deviceFilter; @property (nonatomic) unsigned long long discoveryFlags; @property (copy, nonatomic) id /* block */ finishHandler; @property (copy, nonatomic) NSArray *oobKeys; @property (readonly, nonatomic) NSObject<OS_xpc_object> *xpcSubscriberRepresentation; @property (nonatomic) char bleSensorRssiIncreaseScanThreshold; @property (nonatomic) BOOL bleSensorEnableRssiIncreaseScan; @property (nonatomic) unsigned int bleSensorIncreaseScanRate; @property (nonatomic) unsigned int bleSensorIncreaseScanTimeout; @property (nonatomic) unsigned int bleSensorTimeoutBetweenIncreaseScan; @property (retain, nonatomic) NSObject<OS_dispatch_queue> *dispatchQueue; @property (copy, nonatomic) id /* block */ invalidationHandler; @property (copy, nonatomic) id /* block */ devicesBufferedHandler; @property (copy, nonatomic) id /* block */ deviceFoundHandler; @property (copy, nonatomic) id /* block */ deviceLostHandler; @property (readonly, copy) NSArray *discoveredDevices; @property (copy, nonatomic) id /* block */ errorHandler; @property (copy, nonatomic) id /* block */ interruptionHandler; @property (copy, nonatomic) NSString *label; @property (retain, nonatomic) CBDevice *remoteDevice; @property (readonly, nonatomic) long long bluetoothState; @property (copy, nonatomic) id /* block */ bluetoothStateChangedHandler; @property (copy, nonatomic) id /* block */ systemOverrideHandler; @property (nonatomic) unsigned int useCase; @property (copy, nonatomic) NSArray *useCaseClientIDs; + (id)devicesWithDiscoveryFlags:(unsigned long long)a0 error:(id *)a1; + (id)devicesWithDiscoveryFlags:(unsigned long long)a0 endpoint:(id)a1 error:(id *)a2; - (void)encodeWithXPCObject:(id)a0; - (void)_update; - (id)initWithXPCObject:(id)a0 error:(id *)a1; - (void)_xpcReceivedSystemOverrideChanged:(id)a0; - (BOOL)needsAdvertisingAddress; - (BOOL)needsBLEScan; - (id)init; - (void)_activate; - (void)dealloc; - (id)_ensureXPCStarted; - (void)_xpcReceivedMessage:(id)a0; - (void)_invalidated; - (void)_invalidateDirect; - (void)finish; - (void)xpcReceivedMessage:(id)a0; - (void)_activateXPCCompleted:(id)a0; - (id)descriptionWithLevel:(int)a0; - (void)_activateDirectStart; - (void)_activateXPCStart:(BOOL)a0; - (unsigned long long)updateWithXPCSubscriberInfo:(id)a0; - (BOOL)discoveryTypesContainTypes:(const struct { unsigned char x0[3]; } *)a0; - (void)removeDiscoveryType:(int)a0; - (void)_invalidate; - (void)_xpcReceivedDevicesBuffered:(id)a0; - (void)invalidate; - (void)_xpcReceivedDeviceFound:(id)a0; - (void)activateWithCompletion:(id /* block */)a0; - (void)clearDuplicateFilterCache; - (void)_xpcReceivedPowerStateChanged:(id)a0; - (void)addDiscoveryType:(int)a0; - (id)description; - (void)_xpcReceivedDeviceLost:(id)a0; - (void).cxx_destruct; - (BOOL)updateWithCBDiscovery:(id)a0; - (void)_interrupted; - (void)_updateIfNeededWithBlock:(id /* block */)a0; - (BOOL)needsIdentify; - (void)_lostAllDevices; - (void)removeAllDiscoveryTypes; @end