@class NIDevicePresenceNotifier, NIConfiguration, NSDictionary, NSObject, NIExportedObjectForwarder, NIFindingNotifier, NSDate, NICarKeyEventNotifier, NISessionVisionContext, NIServerConnection, NSString, NIDiscoveryToken, NSArray, NSError, NSUUID; @protocol NISessionDelegate, NIInternalSessionDelegate, OS_dispatch_queue, OS_os_log, OS_dispatch_semaphore, NIInternalDeviceCapability, NIDeviceCapability; @interface NISession : NSObject { NSObject *_queue; NSUUID *_internalID; NIServerConnection *_connection; NIExportedObjectForwarder *_exportedObjectForwarder; NIConfiguration *_currentConfiguration; NSObject *_discoveryTokenSemaphore; struct vector> { struct UWBSessionInterruptionBookkeeping *__begin_; struct UWBSessionInterruptionBookkeeping *__end_; struct __compressed_pair> { struct UWBSessionInterruptionBookkeeping *__value_; } __end_cap_; } _interruptions; struct atomic { struct __cxx_atomic_impl> { _Atomic BOOL __a_value; } __a_; } _readyForCallbacks; NSObject *_log; double _startTime; double _duration; BOOL _updatedNearbyObjects; long long _motionState; NIDiscoveryToken *_discoveryToken; NICarKeyEventNotifier *_carKeyEventNotifier; unsigned long long _connectionOptions; struct atomic { struct __cxx_atomic_impl> { _Atomic BOOL __a_value; } __a_; } _isObserverSession; NIDevicePresenceNotifier *_devicePresenceNotifier; NIFindingNotifier *_findingNotifier; NISessionVisionContext *_visionContext; NSDate *_lastObjectUpdateLogTime; struct NearbyObjectUpdateLogging { int totalUpdates; int totalObjects; int objectsWithDistance; int objectsWithHorizontalAngle; float firstDistance; float lastDistance; float minDistance; float maxDistance; float firstHorizontalAngleRad; float lastHorizontalAngleRad; } _objectUpdateLogging; } @property (class, readonly) id internalDeviceCapabilities; @property (class, readonly, copy) NSArray *interactableDiscoveryTokens; @property (class, readonly, copy) NSArray *activelyInteractingDiscoveryTokens; @property (class, retain) NSDictionary *cachedPlatformCapabilities; @property (class, readonly, nonatomic, getter=isSupported) BOOL supported; @property (class, readonly, nonatomic) id deviceCapabilities; @property (readonly) long long motionState; @property (readonly, getter=isPreciseRangingAllowed) BOOL preciseRangingAllowed; @property (readonly, getter=isExtendedDistanceMeasurementAllowed) BOOL extendedDistanceMeasurementAllowed; @property long long rangingPriorityPolicy; @property (readonly, getter=isRangingLimitExceeded) BOOL rangingLimitExceeded; @property (readonly) NICarKeyEventNotifier *carKeyEventNotifier; @property (readonly) NIDevicePresenceNotifier *devicePresenceNotifier; @property (readonly) NIFindingNotifier *findingNotifier; @property int internalState; @property (retain) NSError *invalidationError; @property (retain) NSDictionary *activationResponse; @property (weak) id internalDelegate; @property (weak, nonatomic) id delegate; @property (retain, nonatomic) NSObject *delegateQueue; @property (readonly, copy, nonatomic) NIDiscoveryToken *discoveryToken; @property (readonly, copy, nonatomic) NIConfiguration *configuration; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)generateFindingDiscoveryToken; + (BOOL)_supportedPlatform:(id)a0; + (void)_queryAndCacheCapabilities; + (void)getAsyncInteractableDiscoveryTokens:(id /* block */)a0; + (id)localDevicePrintableState; + (id)setLocalDeviceDebugParameters:(id)a0; + (id)generateFindingDiscoveryTokenWithIdentityResolvingKey:(id)a0; + (id)generateBluetoothDeviceTokenWithPublicAddress:(id)a0 IRK:(id)a1; + (id)setLocalDeviceCanInteract:(BOOL)a0 withDiscoveryTokens:(id)a1; + (id)_localDeviceLogger; + (id)setLocalDeviceInteractableDiscoveryTokens:(id)a0; + (id)generateFindingDiscoveryTokenWithSharedSecret:(id)a0; + (void)setAsyncLocalDeviceInteractableDiscoveryTokens:(id)a0 completion:(id /* block */)a1; + (void)getAsyncActivelyInteractingDiscoveryTokens:(id /* block */)a0; + (id)observerSession; - (void)_removeObject:(id)a0; - (id)_setURSKTTL:(unsigned long long)a0; - (void)pause; - (id)init; - (void)didUpdateAlgorithmState:(id)a0 forObject:(id)a1; - (void)uwbSessionInterruptionReasonEnded:(long long)a0 timestamp:(double)a1; - (void)_handleARSessionDidUpdateFrame:(id)a0; - (void)didRemoveNearbyObjects:(id)a0 withReason:(unsigned long long)a1; - (void)_performBlockOnDelegateQueue:(id /* block */)a0 ifRespondsToSelector:(SEL)a1 evenIfNotRunning:(BOOL)a2; - (void)uwbSessionDidInvalidateWithError:(id)a0; - (void)_handleARSessionDidFailWithError:(id)a0; - (struct { void /* unknown type, empty encoding */ x0[4]; })worldTransformForObject:(id)a0; - (void)_reinterruptSessionWithCachedInterruption; - (void)didUpdateLocalDiscoveryToken:(id)a0; - (id)_initAndConnectToServerWithOptions:(unsigned long long)a0; - (void)_handleActivationError:(id)a0; - (void)_handleRunSessionSuccess; - (BOOL)_isValidARSession:(id)a0 andConfiguration:(id)a1; - (void)processBluetoothEventWithType:(long long)a0 btcClockTicks:(unsigned long long)a1 eventCounter:(unsigned long long)a2; - (void)session:(id)a0 willRunWithConfiguration:(id)a1; - (void)sessionInterruptionEnded:(id)a0; - (id)_setDebugURSK:(id)a0 transactionIdentifier:(unsigned int)a1; - (void)_pauseInternalARSessionIfNeeded; - (void)didUpdateMotionState:(long long)a0; - (void)updateResponderDeviceIdentifier:(id)a0 completionHandler:(id /* block */)a1; - (void)_osLogNearbyObjectUpdate:(id)a0; - (void)_provideTruthTag:(id)a0; - (id)getInternalIdentifier; - (void)uwbSessionInterruptedWithReason:(long long)a0 timestamp:(double)a1; - (void)_invalidateSessionAndNotifyError:(id)a0; - (void)setConfigurationForTesting:(id)a0; - (void)_addRegionPredicate:(id)a0; - (void)_handleActivationSuccess:(id)a0; - (void)invalidate; - (void)session:(id)a0 didUpdateExternalAnchors:(id)a1; - (void)didUpdateHomeDeviceUWBRangingAvailability:(BOOL)a0; - (void)_handleARSessionDidChangeState:(unsigned long long)a0; - (id).cxx_construct; - (void)session:(id)a0 didChangeState:(unsigned long long)a1; - (void)didUpdateNearbyObjects:(id)a0; - (void)_logTime; - (void)runWithConfiguration:(id)a0; - (void)relayDCKMessage:(id)a0; - (void)_configureAndRunInternalARSession; - (id)getInternalConnectionQueue; - (void)processBluetoothEventWithType:(long long)a0 btcClockTicks:(unsigned long long)a1; - (void)_removeRegionPredicate:(id)a0; - (void)_setARSessionInternal:(id)a0; - (BOOL)_isInternalClient; - (void)_interruptSessionWithInternalReason:(long long)a0 cachedInterruption:(BOOL)a1; - (id)_getSessionFailureError; - (void)_handleARSessionWasInterrupted; - (void)session:(id)a0 didFailWithError:(id)a1; - (void)_addObject:(id)a0; - (id)deleteURSKs; - (void)didGenerateShareableConfigurationData:(id)a0 forObject:(id)a1; - (id)getInternalLogObject; - (void)didDiscoverNearbyObject:(id)a0; - (void)object:(id)a0 didUpdateRegion:(id)a1 previousRegion:(id)a2; - (void)_handlePauseSessionError:(id)a0; - (void)_handleRunSessionError:(id)a0; - (void).cxx_destruct; - (void)didReceiveRangingAuthRecommendation:(BOOL)a0 forObject:(id)a1; - (void)processDCKMessage:(id)a0 responseCallback:(id /* block */)a1; - (void)_submitErrorMetric:(id)a0; - (void)setARSession:(id)a0; - (id)_verifyError:(id)a0; - (void)processVisionInput:(id)a0; - (void)didUpdateHealthStatus:(long long)a0; - (void)sessionWasInterrupted:(id)a0; - (void)_serverConnectionInterrupted; - (void)_invalidateInternal; - (void)_handlePauseSessionSuccess; - (BOOL)isEqual:(id)a0; - (void)_logDurationAndSubmit:(BOOL)a0; - (void)_performBlockOnDelegateQueue:(id /* block */)a0 ifRespondsToSelector:(SEL)a1; - (void)session:(id)a0 didUpdateFrame:(id)a1; - (void)_handleARSession:(id)a0 willRunWithConfiguration:(id)a1; - (void)_handleARSessionInterruptionEnded; - (void)_notifyDidInvalidateWithError:(id)a0; - (long long)niVisionInputTrackingStateFromARTRackingState:(long long)a0; - (double)lightEstimateFromARLightEstimate:(id)a0; - (id)_synchronousRemoteObject; - (void)sessionShouldAttemptRelocalization:(id)a0 completion:(id /* block */)a1; - (id)_remoteObject; - (void)_invalidateInternalARSessionIfNeeded; - (void)_serverConnectionInvalidated; - (void)uwbSessionDidFailWithError:(id)a0; @end