@class PRRoseSolution, NSDictionary, NSObject, PRCompanionRangingSession, NSMutableArray, PRDevicePoseProvider, NSString, NSTimer, PRRemoteDevice, NSOperationQueue, NSNumber, PRFindMyCoreAnalytics, CMMotionActivityManager, NSUUID; @protocol OS_os_log, PRItemLocalizerDelegate, OS_dispatch_queue, PRItemLocalizerDataRecorder; @interface PRItemLocalizer : NSObject { struct unique_ptr> { struct __compressed_pair> { struct PRRoseSyntheticApertureBatchFilter *__value_; } __ptr_; } _itemLocationFilter; struct unique_ptr> { struct __compressed_pair> { struct PRRoseRangeFilter *__value_; } __ptr_; } _rangeFilter; NSObject *_logger; int _clientState; int _rangingState; double _lastSuccessfulCompanionCommunicationOrInitMachContinuousTimeSeconds; } @property (retain, nonatomic) PRDevicePoseProvider *poseProvider; @property (retain, nonatomic) PRCompanionRangingSession *session; @property (retain, nonatomic) PRRemoteDevice *remoteDevice; @property (retain, nonatomic) NSUUID *productUUID; @property (retain, nonatomic) NSNumber *isOwner; @property (retain, nonatomic) NSDictionary *configurationParameters; @property (retain, nonatomic) NSObject *proximityQueue; @property (nonatomic) BOOL requiresLowerRangingFrequency; @property (retain, nonatomic) NSObject *delegateQueue; @property (retain, nonatomic) NSObject *estimatorQueue; @property (retain, nonatomic) NSMutableArray *trajectory; @property (retain, nonatomic) PRRoseSolution *latestProximity; @property (nonatomic) struct BatchSolution { int solutionStatus; BOOL isVerticalResolved; int verticalState; BOOL verticalStateChanged; struct vector> { struct BatchSolutionParticle *__begin_; struct BatchSolutionParticle *__end_; struct __compressed_pair> { struct BatchSolutionParticle *__value_; } __end_cap_; } BatchSolutionList; double lastTestStatisticValue; } lastSolution; @property (nonatomic) BOOL firstRangeArrow; @property (nonatomic) BOOL firstAoAArrow; @property (nonatomic) double previousVIOPoseTime; @property BOOL targetIsMoving; @property BOOL deviceIsMoving; @property BOOL pathIsDegenerate; @property (retain, nonatomic) NSTimer *movementTimer; @property (retain, nonatomic) CMMotionActivityManager *deviceActivityManager; @property (retain, nonatomic) NSOperationQueue *activityQueue; @property (retain, nonatomic) PRFindMyCoreAnalytics *analytics; @property (retain, nonatomic) id dataRecorder; @property (weak, nonatomic) id delegate; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (BOOL)isInternalBuild; - (BOOL)stop:(id *)a0; - (void)reset; - (void)dealloc; - (id).cxx_construct; - (id)initWithDelegate:(id)a0 queue:(id)a1; - (void).cxx_destruct; - (void)didFailWithError:(id)a0; - (void)didReceiveNewSolutions:(id)a0; - (void)rangingRequestDidUpdateStatus:(unsigned long long)a0; - (void)rangingServiceDidUpdateState:(unsigned long long)a0 cause:(long long)a1; - (void)remoteDevice:(id)a0 didChangeState:(long long)a1; - (void)analyticsLogTorchButtonPresented; - (void)analyticsLogTorchChangedState:(BOOL)a0; - (BOOL)commonConfigure:(id)a0; - (BOOL)configureForDeviceWithId:(id)a0; - (BOOL)configureForItem:(id)a0; - (void)deleteTrajectoryWaypointsBeforeTime:(double)a0; - (void)devicePoseUpdated:(id)a0; - (void)discardData; - (id)estimatorInputForProximity:(id)a0; - (void)invalidPoseDetected; - (void)logAndPresentSolution:(struct BatchSolution { int x0; BOOL x1; int x2; BOOL x3; struct vector> { struct BatchSolutionParticle *x0; struct BatchSolutionParticle *x1; struct __compressed_pair> { struct BatchSolutionParticle *x0; } x2; } x4; double x5; })a0 withTimeStamp:(double)a1; - (void)logEstimatorInput:(id)a0; - (void)logRangeEstimate:(id)a0; - (void)logTargetEstimates:(id)a0; - (void)logTargetIsMovingChange:(BOOL)a0; - (void)performFilteringWithEstimatorInput:(id)a0 targetMoving:(BOOL)a1 deviceMoving:(BOOL)a2; - (struct BatchSolution { int x0; BOOL x1; int x2; BOOL x3; struct vector> { struct BatchSolutionParticle *x0; struct BatchSolutionParticle *x1; struct __compressed_pair> { struct BatchSolutionParticle *x0; } x2; } x4; double x5; })performLocationFiltering:(id)a0; - (id)performRangeFilteringWithVIO:(id)a0; - (id)performRangeFilteringWithoutVIO:(id)a0 targetMoving:(BOOL)a1 deviceMoving:(BOOL)a2; - (void)presentRangeEstimate:(id)a0; - (void)presentTargetEstimate:(id)a0; - (id)produceBlendedRangeEstimateForPose:(id)a0; - (void)remoteDeviceDidMove; - (void)revokeTargetEstimate:(unsigned long long)a0; - (void)revokeTargetEstimateWithLastSolution:(struct BatchSolution { int x0; BOOL x1; int x2; BOOL x3; struct vector> { struct BatchSolutionParticle *x0; struct BatchSolutionParticle *x1; struct __compressed_pair> { struct BatchSolutionParticle *x0; } x2; } x4; double x5; })a0; - (id)saveData; - (void)sendItemLocalizerChangedActivity:(unsigned long long)a0; - (void)sendItemLocalizerChangedState:(unsigned long long)a0; - (void)sendPRItemState:(unsigned long long)a0; - (void)setDegeneratePath:(BOOL)a0; - (BOOL)startWithDevicePoseProvider:(id)a0 error:(id *)a1; - (unsigned long long)trajectoryIndexForTime:(double)a0; - (void)updateDelegateWithSelector:(SEL)a0 object:(id)a1; @end