@class UILabel, ARSession, ARCoachingSessionCache, NSObject, ARCoachingHeuristicCollection, NSMutableArray, UIView, NSLayoutConstraint, NSString, ARCoachingPillButton, ARCoachingState, ARCoachingMotionTracker, ARCoachingAnimationView, CADisplayLink; @protocol ARSessionProviding, ARCoachingOverlayViewDelegate; @interface ARCoachingOverlayView : UIView { UIView *_background; UILabel *_coachingText; ARCoachingPillButton *_resetButton; ARCoachingState *_state; ARCoachingHeuristicCollection *_heuristics; ARCoachingMotionTracker *_motionTracker; long long _coachingRequirements; long long _requestedGoal; long long _coachingMessageType; long long _nextCoachingMessageType; long long _nextCoachingAnimationState; double _lastCoachingUpdateTime; long long _currentConstraintDeviceOrientation; NSLayoutConstraint *_resetButtonBottomLayoutConstraint; NSLayoutConstraint *_coachingTextLeftAnchorConstraint; NSLayoutConstraint *_coachingTextRightAnchorConstraint; ARCoachingAnimationView *_coachingAnimationView; CADisplayLink *_displayLink; NSMutableArray *_uiAnimationQueue; BOOL _uiAnimationQueueRunning; BOOL _isSessionRelocalizingMap; } @property (readonly, nonatomic) BOOL isUIAnimating; @property (readonly, nonatomic) BOOL wasEverActivated; @property (readonly, nonatomic) BOOL isRelocalizing; @property (readonly, nonatomic) ARCoachingSessionCache *coachingSessionCache; @property (nonatomic) long long trackingStateReasonOverride; @property (nonatomic) BOOL trackingStateNormalOverride; @property (nonatomic) BOOL geoTrackingStateOverrideEnabled; @property (nonatomic) long long geoTrackingStateOverride; @property (nonatomic) BOOL geoTrackingStateReasonOverrideEnabled; @property (nonatomic) long long geoTrackingStateReasonOverride; @property (nonatomic) float resetButtonLandscapeVerticalOffset; @property (nonatomic) float resetButtonPortraitVerticalOffset; @property (nonatomic) BOOL hideCoachingMessageLabel; @property (weak, nonatomic) id delegate; @property (weak, nonatomic) NSObject *sessionProvider; @property (retain, nonatomic) ARSession *session; @property (nonatomic) long long goal; @property (nonatomic) BOOL activatesAutomatically; @property (readonly, nonatomic) BOOL isActive; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)dealloc; - (void)teardown; - (struct CGSize { double x0; double x1; })intrinsicContentSize; - (void)session:(id)a0 willRunWithConfiguration:(id)a1; - (void)encodeWithCoder:(id)a0; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)updateConstraints; - (void)session:(id)a0 didFailWithError:(id)a1; - (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3; - (void).cxx_destruct; - (long long)currentDeviceOrientation; - (void)session:(id)a0 didUpdateFrame:(id)a1; - (void)layoutSubviews; - (void)startup; - (id)initWithCoder:(id)a0; - (void)didMoveToWindow; - (void)fadeOut; - (void)buttonPress:(id)a0; - (void)setActive:(BOOL)a0 animated:(BOOL)a1; - (void)setupView; - (void)updateWithFrame:(id)a0; - (void)session:(id)a0 didAddAnchors:(id)a1; - (void)session:(id)a0 didRemoveAnchors:(id)a1; - (void)orientationChanged; - (void)restartIfActive; - (double)calcFadeDurationIn:(BOOL)a0 withButton:(BOOL)a1; - (BOOL)checkActivationHeuristics; - (BOOL)checkDeactivationHeuristics; - (void)createConstraintsForDeviceOrientation:(long long)a0; - (void)crossFadeCoachingMessage:(long long)a0; - (void)doStateAction:(long long)a0; - (void)fadeInWithButton:(BOOL)a0; - (void)finishAllUIAnimations; - (id)frameWithOverrides:(id)a0; - (void)generateHeuristicsForActive:(BOOL)a0; - (void)killUIAnimations; - (void)resolveCoachingMessageWithFrame:(id)a0; - (void)setCoachingMessage:(long long)a0 animationState:(long long)a1; - (void)swapState:(id)a0; - (void)updateCoachingMessagingWithMotionTracker:(BOOL)a0 frame:(id)a1; - (void)updateFromDisplayLink; - (void)updateUIAnimations; @end