@class NSMutableDictionary, HDLocationManager, HDProfile, NSDictionary, HDAlertSuppressor, NSObject, NSMutableArray, HDAssertion, NSString, HDWorkoutMirroringManager, NSHashTable, HDWorkoutSessionServer, HDWorkoutLocationSmoother, HDWatchAppStateMonitor, HKObserverSet; @protocol OS_dispatch_queue; @interface HDWorkoutManager : NSObject <HDDevicePowerObserver, HDDiagnosticObject, HDProfileReadyObserver, HDWorkoutDataAccumulatorObserver, HDWorkoutSessionObserver> { HDWorkoutSessionServer *_currentWorkout; HDAssertion *_currentWorkoutAssertion; HDWorkoutSessionServer *_nextWorkout; NSMutableDictionary *_sessionServers; NSMutableDictionary *_sessionCreationHandlers; NSHashTable *_observerTable; HKObserverSet *_sessionObservers; HDWatchAppStateMonitor *_appStateMonitor; BOOL _hasPerformedPostLaunchSessionRecovery; NSMutableArray *_postLaunchRecoveryBlocks; NSObject<OS_dispatch_queue> *_postLaunchRecoveryCallbackQueue; HKObserverSet *_currentWorkoutObservers; NSMutableDictionary *_backgroundStartAssertions; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _assertionsLock; } @property (readonly, nonatomic) NSObject<OS_dispatch_queue> *queue; @property (retain, nonatomic) HDWorkoutLocationSmoother *locationSmoother; @property (readonly, nonatomic) HDWorkoutSessionServer *currentWorkout; @property (readonly, nonatomic) NSDictionary *sessionServers; @property (readonly, weak, nonatomic) HDProfile *profile; @property (readonly, nonatomic) BOOL isInHeartRateRecovery; @property (readonly, nonatomic) HDAlertSuppressor *alertSuppressor; @property (readonly, nonatomic) HDLocationManager *locationManager; @property (readonly, nonatomic) HDWorkoutMirroringManager *mirroringManager; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)profileDidBecomeReady:(id)a0; - (void)devicePowerMonitor:(id)a0 primaryPowerSourceIsCharging:(BOOL)a1; - (BOOL)finishAllWorkoutsForClient:(id)a0 error:(id *)a1; - (void)unitTest_finishAllDetachedWorkoutBuilders; - (void)dealloc; - (void)startWatchAppWithWorkoutPlanData:(id)a0 processIdentifier:(int)a1 completion:(id /* block */)a2; - (id)initWithProfile:(id)a0; - (void)_startWatchAppWithWorkoutPlanData:(id)a0 processIdentifier:(int)a1 completion:(id /* block */)a2; - (void)registerCurrentWorkoutObserver:(id)a0; - (void)_receivedStartWorkoutAppRequest:(id)a0 completion:(id /* block */)a1; - (void)hk_fakeLapEventWithDate:(id)a0 strokeStyle:(long long)a1; - (id)currentWorkoutConfiguration; - (id)diagnosticDescription; - (void)unregisterCurrentWorkoutObserver:(id)a0; - (void)recoverWorkoutSessionForClient:(id)a0 server:(id)a1 completion:(id /* block */)a2; - (void)getCurrentWorkoutSnapshotWithCompletion:(id /* block */)a0; - (void)_sendStartWorkoutAppResponse:(id /* block */)a0 error:(id)a1; - (void)performWhenPostLaunchSessionRecoveryHasCompleted:(id /* block */)a0; - (BOOL)hasAnyActiveWorkouts; - (void)removeWorkoutSessionObserver:(id)a0; - (void)_takeBackgroundStartAssertionForApplicationIdentifier:(id)a0; - (void)_didCreateMirroredSessionServer:(id)a0; - (BOOL)currentActivityRequiresExtendedMode; - (void)unitTest_smoothRoute:(id)a0 withSmoother:(id)a1 completion:(id /* block */)a2; - (void)workoutSession:(id)a0 didBeginActivity:(id)a1; - (id)newBiomeInterface; - (id)currentWorkoutClient; - (void)workoutSession:(id)a0 didEndActivity:(id)a1; - (void)removeWorkoutEventObserver:(id)a0; - (void)workoutSession:(id)a0 didChangeToState:(long long)a1 fromState:(long long)a2 date:(id)a3; - (id)currentWorkoutSessionServer; - (void)workoutSession:(id)a0 didFailWithError:(id)a1; - (void)addWorkoutSessionObserver:(id)a0 queue:(id)a1; - (id)sessionServerWithConfiguration:(id)a0 sessionUUID:(id)a1 clientBundleIdentifier:(id)a2 taskServer:(id)a3; - (id)unitTest_currentWorkoutSession; - (void).cxx_destruct; - (void)workoutSession:(id)a0 didGenerateEvent:(id)a1; - (id)recoveredWorkoutSessionServerWithIdentifier:(id)a0 error:(id *)a1; - (void)mirroredSessionServerWithUUID:(id)a0 completion:(id /* block */)a1; - (void)hk_fakeStopEventWithDate:(id)a0; - (void)receivedStartWorkoutAppRequest:(id)a0 completion:(id /* block */)a1; - (void)startWatchAppWithWorkoutConfiguration:(id)a0 client:(id)a1 completion:(id /* block */)a2; - (id)newCMSwimTracker; - (BOOL)allowBackgroundStartForApplicationIdentifier:(id)a0; - (void)_startWatchAppWithWorkoutConfiguration:(id)a0 client:(id)a1 completion:(id /* block */)a2; - (void)generatePauseOrResumeRequestAllowingBackgroundRuntime:(BOOL)a0 completion:(id /* block */)a1; - (void)workoutSession:(id)a0 didUpdateControllerStateForRecoveryIdentifier:(id)a1; - (void)endHeartRateRecovery; - (void)tearDownMirroredWorkoutSession:(id)a0; - (void)sessionServerFromSessionIdentifier:(id)a0 completion:(id /* block */)a1; - (void)workoutSession:(id)a0 didUpdateDataAccumulator:(id)a1; - (void)addWorkoutEventObserver:(id)a0; @end