Skip to content

HealthKit macOS xcode14.0 beta1

TJ Lambert edited this page Aug 3, 2022 · 3 revisions

#HealthKit.framework https://github.com/xamarin/xamarin-macios/pull/15612

diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummary.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummary.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummary.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummary.h	2022-05-31 15:04:02.000000000 -0400
@@ -0,0 +1,113 @@
+//
+//  HKActivitySummary.h
+//  HealthKit
+//
+//  Copyright (c) 2015-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+
+/*!
+ @class         HKActivitySummary
+ @abstract      An object that represents a summary of a user's activity for a given day.
+ */
+HK_EXTERN API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0))
+@interface HKActivitySummary : NSObject <NSSecureCoding, NSCopying>
+
+/**
+ @method        dateComponentsForCalendar:
+ @abstract      The date components representing the day for this particular HKActivitySummary.
+ @discussion    These date components will contain era, year, month, and day components in the provided calendar.
+ */
+- (NSDateComponents *)dateComponentsForCalendar:(NSCalendar *)calendar;
+
+/**
+  @property      activityMoveMode
+  @abstract      The move mode of this activity summary
+  @discussion    The move mode of an activity summary determines if activeEnergyBurned or appleMoveTime are used for the move ring.
+  */
+@property (nonatomic, assign) HKActivityMoveMode activityMoveMode API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/**
+  @property      activeEnergyBurned
+  @abstract      The amount of active energy that the user burned.
+  @discussion    This quantity is compatible with energy units.
+  */
+@property (nonatomic, strong) HKQuantity *activeEnergyBurned;
+
+/**
+  @property      appleMoveTime
+  @abstract      The amount of move time that the user performed.
+  @discussion    This quantity is compatible with time units. The measurement criteria of
+                 move time time is defined by Apple.
+  */
+@property (nonatomic, strong) HKQuantity *appleMoveTime API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/**
+  @property      appleExerciseTime
+  @abstract      The amount of exercise time that the user performed.
+  @discussion    This quantity is compatible with time units. The measurement criteria of
+                 exercise time is defined by Apple.
+  */
+@property (nonatomic, strong) HKQuantity *appleExerciseTime;
+
+/**
+  @property      appleStandHours
+  @abstract      The number of stand hours that the user earned.
+ @discussion     This quantity is compatible with the count unit. The measurement criteria of
+                 stand hours is defined by Apple.
+  */
+@property (nonatomic, strong) HKQuantity *appleStandHours;
+
+/**
+  @property      activeEnergyBurnedGoal
+  @abstract      The user's active energy goal for the day.
+  @discussion    This quantity is compatible with energy units.
+  */
+@property (nonatomic, strong) HKQuantity *activeEnergyBurnedGoal;
+
+/**
+  @property      appleMoveTimeGoal
+  @abstract      The user's move time goal for the day.
+  @discussion    This quantity is compatible with time units.
+  */
+@property (nonatomic, strong) HKQuantity *appleMoveTimeGoal API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/**
+  @property      appleExerciseTimeGoal
+  @abstract      The user's exercise time goal for the day.
+  @discussion    This quantity is compatible with time units.
+  */
+@property (nonatomic, strong) HKQuantity *appleExerciseTimeGoal API_DEPRECATED_WITH_REPLACEMENT("exerciseTimeGoal", ios(9.3, API_TO_BE_DEPRECATED), watchos(2.2, API_TO_BE_DEPRECATED));
+
+/**
+  @property      exerciseTimeGoal
+  @abstract      The user's exercise time goal for the day.
+  @discussion    This quantity is compatible with time units.
+  */
+@property (nonatomic, strong, nullable) HKQuantity *exerciseTimeGoal API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/**
+  @property      appleStandHoursGoal
+  @abstract      The user's active stand hours goal for the day.
+  @discussion    This quantity is compatible with the count unit.
+  */
+@property (nonatomic, strong) HKQuantity *appleStandHoursGoal API_DEPRECATED_WITH_REPLACEMENT("standHoursGoal", ios(9.3, API_TO_BE_DEPRECATED), watchos(2.2, API_TO_BE_DEPRECATED));
+
+/**
+  @property      standHoursGoal
+  @abstract      The user's active stand hours goal for the day.
+  @discussion    This quantity is compatible with the count unit.
+  */
+@property (nonatomic, strong, nullable) HKQuantity *standHoursGoal API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathDateComponents API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummaryQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummaryQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummaryQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKActivitySummaryQuery.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,45 @@
+//
+//  HKActivitySummaryQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2015-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+@class HKActivitySummary;
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKActivitySummaryQueryDescriptor", ios(9.3, API_TO_BE_DEPRECATED), watchos(2.2, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKActivitySummaryQuery : HKQuery
+
+/**
+  @property      updateHandler
+  @abstract      An optional handler to be called when activity summaries matching the given predicate are updated.
+  @discussion    This property may not be modified once the query has been executed. If this property is nonnull, then
+                 the query must be manually stopped.
+  */
+@property (nonatomic, copy, nullable) void(^updateHandler)(HKActivitySummaryQuery *query, NSArray<HKActivitySummary *> * _Nullable updatedActivitySummaries, NSError * _Nullable error);
+
+/*!
+  @method        initWithPredicate:resultsHandler:
+  @abstract      Returns a query that will retrieve HKActivitySummaries matching the given predicate.
+  @discussion    If no updateHandler is set on the query, the query will automatically stop after calling resultsHandler.
+                 Otherwise, the query continues to run and calls the updateHandler as HKActivitySummaries matching the
+                 predicate are updated.
+  
+  @param         predicate  The predicate which HKActivitySummaries should match.
+  @param         handler    The block to invoke with results when the query has finished.
+  */
+- (instancetype)initWithPredicate:(nullable NSPredicate *)predicate
+                   resultsHandler:(void(^)(HKActivitySummaryQuery *query, NSArray<HKActivitySummary *> * _Nullable activitySummaries, NSError * _Nullable error))handler;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAnchoredObjectQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAnchoredObjectQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAnchoredObjectQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAnchoredObjectQuery.h	2022-05-31 15:04:04.000000000 -0400
@@ -0,0 +1,90 @@
+//
+//  HKAnchoredObjectQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKQueryAnchor.h>
+#import <HealthKit/HKQueryDescriptor.h>
+
+@class HKDeletedObject;
+
+NS_ASSUME_NONNULL_BEGIN
+
+#define HKAnchoredObjectQueryNoAnchor (0)
+
+/*!
+ @class         HKAnchoredObjectQuery
+ @discussion    This query can be used by an application to find out about new or deleted samples in the HealthKit
+                database.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKAnchoredObjectQueryDescriptor", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKAnchoredObjectQuery : HKQuery
+
+/*!
+ @property      updateHandler
+ @abstract      An optional handler to be called when samples matching the given predicate are added or deleted.
+ @discussion    This property may not be modified once the query has been executed.  It may only be set if the query has
+                no limit.
+ */
+@property (nonatomic, copy, nullable) void(^updateHandler)(HKAnchoredObjectQuery *query, NSArray<__kindof HKSample *> * _Nullable addedObjects, NSArray<HKDeletedObject *> * _Nullable deletedObjects, HKQueryAnchor * _Nullable newAnchor, NSError * _Nullable error) API_AVAILABLE(ios(9.0), watchos(2.0));
+
+/*!
+ @method        initWithType:predicate:anchor:limit:resultsHandler:
+ @abstract      Returns a query that will retrieve HKSamples and HKDeletedObjects matching the given predicate that are
+                newer than the given anchor.
+ @discussion    If no updateHandler is set on the query, the query will automatically stop after calling resultsHandler.
+                Otherwise, the query continues to run and call updateHandler as samples matching the predicate are
+                created or deleted.
+ 
+ @param         type            The type of sample to retrieve.
+ @param         predicate       The predicate which samples should match.
+ @param         anchor          The anchor which was returned by a previous HKAnchoredObjectQuery result or update
+                                handler.  Pass nil when querying for the first time.
+ @param         limit           The maximum number of samples and deleted objects to return.  Pass HKObjectQueryNoLimit
+                                for no limit.
+ @param         handler         The block to invoke with results when the query has finished finding.
+ */
+- (instancetype)initWithType:(HKSampleType *)type
+                   predicate:(nullable NSPredicate *)predicate
+                      anchor:(nullable HKQueryAnchor *)anchor
+                       limit:(NSUInteger)limit
+              resultsHandler:(void(^)(HKAnchoredObjectQuery *query, NSArray<__kindof HKSample *> * _Nullable sampleObjects, NSArray<HKDeletedObject *> * _Nullable deletedObjects, HKQueryAnchor * _Nullable newAnchor, NSError * _Nullable error))handler API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+- (instancetype)initWithType:(HKSampleType *)type
+                   predicate:(nullable NSPredicate *)predicate
+                      anchor:(NSUInteger)anchor
+                       limit:(NSUInteger)limit
+           completionHandler:(void(^)(HKAnchoredObjectQuery *query, NSArray<__kindof HKSample *> * __nullable results, NSUInteger newAnchor, NSError * __nullable error))handler API_DEPRECATED_WITH_REPLACEMENT("initWithType:predicate:anchor:limit:resultsHandler:", ios(8.0, 9.0));
+
+/*!
+ @method        initWithQueryDescriptors:anchor:limit:resultsHandler
+ @abstract      Returns a query that will retrieve HKSamples and HKDeletedObjects matching the given query descriptors
+                that are newer than the given anchor.
+ @discussion    If no updateHandler is set on the query, the query will automatically stop after calling resultsHandler.
+                Otherwise, the query continues to run and call updateHandler as samples matching the query descriptors
+                are created or deleted.
+ 
+ @param         queryDescriptors   An array of query descriptors that describes the sample types and predicates that
+                                   you are interested in getting notified for.
+ @param         anchor             The anchor which was returned by a previous HKAnchoredObjectQuery result or update
+                                   handler.  Pass nil when querying for the first time.
+ @param         limit              The maximum number of samples and deleted objects to return. Pass
+                                   HKObjectQueryNoLimit for no limit.
+ @param         handler            The block to invoke with results when the query has finished finding.
+*/
+- (instancetype)initWithQueryDescriptors:(NSArray<HKQueryDescriptor *> *)queryDescriptors
+                                  anchor:(nullable HKQueryAnchor *)anchor
+                                   limit:(NSInteger)limit
+                          resultsHandler:(void(^)(HKAnchoredObjectQuery *query, NSArray<__kindof HKSample *> * _Nullable sampleObjects, NSArray<HKDeletedObject *> * _Nullable deletedObjects, HKQueryAnchor * _Nullable newAnchor, NSError * _Nullable error))handler API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAppleWalkingSteadinessClassification.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAppleWalkingSteadinessClassification.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAppleWalkingSteadinessClassification.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAppleWalkingSteadinessClassification.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,48 @@
+//
+//  HKAppleWalkingSteadinessClassification.h
+//  HealthKit
+//
+//  Copyright © 2021-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+
+/*!
+ @enum          HKAppleWalkingSteadinessClassification
+ @abstract      This enumerated type is used to represent the classification for the user's walking steadiness.
+ @constant      HKAppleWalkingSteadinessClassificationOK         Walking steadiness is OK.
+ @constant      HKAppleWalkingSteadinessClassificationLow        Walking steadiness is Low.
+ @constant      HKAppleWalkingSteadinessClassificationVeryLow    Walking steadiness is Very Low.
+ */
+typedef NS_ENUM(NSInteger, HKAppleWalkingSteadinessClassification) {
+    HKAppleWalkingSteadinessClassificationOK NS_SWIFT_NAME(ok) = 1,
+    HKAppleWalkingSteadinessClassificationLow,
+    HKAppleWalkingSteadinessClassificationVeryLow,
+} API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @abstract Determines the Apple Walking Steadiness classification for the provided Apple Walking Steadiness value.
+ @param value Apple Walking Steadiness quantity with expected value between 0% and 100%.
+ @param classificationOut A pointer to the classification determined for the provided value.
+ @param errorOut A pointer to an error describing why an unknown classification was returned.
+ @return YES if the classification was successful. NO otherwise, meaning the provided value could not be classified.
+ */
+HK_EXTERN BOOL HKAppleWalkingSteadinessClassificationForQuantity(HKQuantity *value, HKAppleWalkingSteadinessClassification *classificationOut, NSError **errorOut) API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0)) NS_REFINED_FOR_SWIFT;
+
+/*!
+ @abstract Retrieves the minimum quantity in percent unit for an Apple Walking Steadiness classification.
+ @param classification Apple Walking Steadiness classification for desired minimum value.
+ */
+HK_EXTERN HKQuantity * HKAppleWalkingSteadinessMinimumQuantityForClassification(HKAppleWalkingSteadinessClassification classification) API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0)) NS_REFINED_FOR_SWIFT;
+
+/*!
+ @abstract Retrieves the maximum quantity in percent unit for an Apple Walking Steadiness classification.
+ @param classification Apple Walking Steadiness classification for desired maximum value.
+ */
+HK_EXTERN HKQuantity * HKAppleWalkingSteadinessMaximumQuantityForClassification(HKAppleWalkingSteadinessClassification classification) API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0)) NS_REFINED_FOR_SWIFT;
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachment.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachment.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachment.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachment.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,72 @@
+//
+//  HKAttachment.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+#import <UniformTypeIdentifiers/UTType.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKAttachment
+ @discussion    An HKAttachment represents a file attachment stored in the HealthKit database.
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKAttachment : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      identifier
+ @abstract      A unique identifier of the receiver in the HealthKit database.
+ */
+@property (copy, readonly) NSUUID *identifier;
+
+/*!
+ @property      name
+ @abstract      Represents the name of the file.
+ */
+@property (copy, readonly) NSString *name;
+
+/*!
+ @property      contentType
+ @abstract      The Uniform Type of the file.
+ */
+@property (copy, readonly) UTType *contentType;
+
+/*!
+ @property      size
+ @abstract      The size in bytes of the file.
+ */
+@property (assign, readonly) NSInteger size;
+
+/*!
+ @property      creationDate
+ @abstract      The date the receiver was created.
+ */
+@property (copy, readonly) NSDate *creationDate;
+
+/*!
+ @property      metadata
+ @abstract      Extra information describing the attachment.
+ @discussion    Keys must be NSString and values must be either NSString, NSNumber, or NSDate.
+ */
+@property (copy, readonly, nullable) NSDictionary<NSString *, id> *metadata;
+
+/*!
+ @method        init
+ @abstract      The init method is unavailable. To create an attachment, use HKAttachmentStore.
+ */
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method        new
+ @abstract      The new method is unavailable. To create an attachment, use HKAttachmentStore.
+ */
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachmentStore.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachmentStore.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachmentStore.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAttachmentStore.h	2022-05-31 14:49:27.000000000 -0400
@@ -0,0 +1,94 @@
+//
+//  HKAttachmentStore.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKAttachment.h>
+
+@class HKHealthStore;
+@class HKObject;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKAttachmentStore
+ @discussion    The HKAttachmentStore class provides an interface for accessing and storing HKAttachment objects.
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKAttachmentStore : NSObject
+
+/*!
+ @method        initWithHealthStore:
+ @abstract      The designated initializer to create an HKAttachmentStore.
+ @param         healthStore     Specifies the HKHealthStore object to use.
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore;
+
+/*!
+ @method        addAttachmentToObject:name:contentType:URL:metadata:completion:
+ @abstract      Creates a new HKAttachment using the passed in NSURL and attaches it to the specified HKObject.
+ @param         object          The object for which to add the HKAttachment.
+ @param         name            The name of the attachment.
+ @param         contentType     The content type of the attachment.
+ @param         URL             The NSURL to use to create the attachment.
+ @param         metadata        Extra information describing the attachment.
+ @param         completion      Called with an HKAttachment instance once the file was successfully saved and attached,
+                                otherwise called with an error.
+ */
+- (void)addAttachmentToObject:(HKObject *)object
+                         name:(NSString *)name
+                  contentType:(UTType *)contentType
+                          URL:(NSURL *)URL
+                     metadata:(nullable NSDictionary<NSString *, id> *)metadata
+                   completion:(void (^)(HKAttachment * _Nullable attachment, NSError * _Nullable error))completion NS_REFINED_FOR_SWIFT;
+
+/*!
+ @method        removeAttachment:fromObject:completion:
+ @abstract      Removes the given HKAttachment from the specified HKObject.
+ @param         attachment      The HKAttachment to be removed.
+ @param         object          The object from which to remove the attachment.
+ @param         completion      Called once the remove operation finishes.
+ */
+- (void)removeAttachment:(HKAttachment *)attachment
+              fromObject:(HKObject *)object
+              completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_NAME(removeAttachment(_:from:completion:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        getAttachmentsForObject:completion:
+ @abstract      Retrieves a list of attachments for a given object.
+ @param         object               The object for which to retrieve attachments.
+ @param         completion           Called with a list of attachments or an error.
+ */
+- (void)getAttachmentsForObject:(HKObject *)object
+                     completion:(void(^)(NSArray<HKAttachment *> * _Nullable attachments, NSError * _Nullable error))completion NS_SWIFT_NAME(getAttachments(for:completion:)) NS_SWIFT_ASYNC_NAME(attachments(for:));
+
+/*!
+ @method        getDataForAttachment:completion:
+ @abstract      Retrieves the NSData for the given HKAttachment.
+ @discussion    Prefer @c streamDataForAttachment:completion: for large files that support incremental reading to limit your app's peak memory usage.
+                The attachment's data may not always be available locally, and could be stored in iCloud.
+ @param         attachment           The attachment object to read data from.
+ @param         completion           Called with an NSData or an error.
+ @return        An NSProgress object to use for tracking the progress of downloading the attachment's data from iCloud.
+ */
+- (NSProgress *)getDataForAttachment:(HKAttachment *)attachment
+                          completion:(void(^)(NSData * _Nullable attachmentData, NSError * _Nullable error))completion NS_SWIFT_NAME(getData(for:completion:));
+
+/*!
+ @method        streamDataForAttachment:dataHandler:
+ @abstract      Streams the given HKAttachment's data as ordered NSData chunks.
+ @discussion    The dataHandler's done parameter is set to YES when all chunks have been streamed.
+                The attachment's data may not always be available locally, and could be stored in iCloud.
+ @param         attachment           The attachment object to read data from.
+ @param         dataHandler          Called with an NSData chunk or an error. When done is YES, the operation has completed.
+ @return        An NSProgress object to use for tracking the progress of downloading the attachment's data from iCloud.
+ */
+- (NSProgress *)streamDataForAttachment:(HKAttachment *)attachment
+                            dataHandler:(void(^)(NSData * _Nullable dataChunk, NSError * _Nullable error, BOOL done))dataHandler;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAudiogramSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAudiogramSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAudiogramSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKAudiogramSample.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,86 @@
+//
+//  HKAudiogramSample.h
+//  HealthKit
+//
+//  Copyright © 2017-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuantity.h>
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKAudiogramSensitivityPoint;
+
+/*!
+ @class     HKAudiogramSample
+ @abstract  A sample object representing the results of a standard hearing test.
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKAudiogramSample : HKSample
+
+/*!
+ @property  sensitivityPoints
+ @abstract  The hearing sensitivity readings associated with a hearing test.
+ */
+@property (readonly, copy) NSArray<HKAudiogramSensitivityPoint *> *sensitivityPoints;
+
+/*!
+ @method                   audiogramSampleWithsensitivityPoints:startDate:endDate:metadata:
+ @abstract                 Creates a new audiogram sample with the specified attributes.
+ @param sensitivityPoints  Sensitivity data associated with the sample, with a maximum limit of 30 points. Frequencies must be unique, and ordered ascending.
+ @param startDate          The start date for the hearing test.
+ @param endDate            The end date for the hearing test.
+ @param metadata           Optional meta data associated with the sample.
+ @return                   A new instance of an audiogram sample.
+ */
++ (instancetype)audiogramSampleWithSensitivityPoints:(NSArray<HKAudiogramSensitivityPoint *> *)sensitivityPoints
+                                           startDate:(NSDate *)startDate
+                                             endDate:(NSDate *)endDate
+                                            metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+@end
+
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKAudiogramSensitivityPoint : NSObject
+
+/*!
+ @property frequency  Frequency where sensitivity was measured.  The unit of measurement
+ is [HKUnit hertzUnit] or "Hz".
+ */
+@property (readonly, copy) HKQuantity *frequency;
+
+/*!
+ @property sensitivity Left ear sensitivity measured in attenuated dB from a baseline of 0 dB.
+ The unit of measurement is [HKUnit decibelHearingLevelUnit] or "dBHL".
+ */
+@property (readonly, copy, nullable) HKQuantity *leftEarSensitivity;
+
+/*!
+ @property sensitivity Right ear sensitivity measured in attenuated dB from a baseline of 0 dB.
+ The unit of measurement is [HKUnit decibelHearingLevelUnit] or "dBHL".
+ */
+@property (readonly, copy, nullable) HKQuantity *rightEarSensitivity;
+
+/*!
+ @method                    sensitivityPointWithFrequency:leftEarSensitivity:rightEarSensitivity:error:
+ @abstract                  Creates a point that can be included in a audiogram.
+ @param frequency           Frequency where sensitivity was measured.
+ @param leftEarSensitivity  Left ear sensitivity measured in attenuated dB from a baseline of 0 dB.
+ @param rightEarSensitivity Right ear sensitivity measured in attenuated dB from a baseline of 0 dB.
+ @param error               If there was a problem creating this instance this will contain the error.
+ @return                    New instance of a sensitivity point or nil if there were problems
+                            creating the instance.  Errors may include incorrect quantity units
+                            or data that is out of an expected range.
+ */
++ (nullable instancetype)sensitivityPointWithFrequency:(HKQuantity *)frequency
+                                    leftEarSensitivity:(nullable HKQuantity *)leftEarSensitivity
+                                   rightEarSensitivity:(nullable HKQuantity *)rightEarSensitivity
+                                                 error:(NSError * _Nullable *)error;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
+
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCDADocumentSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCDADocumentSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCDADocumentSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCDADocumentSample.h	2022-05-31 15:02:15.000000000 -0400
@@ -0,0 +1,125 @@
+//
+//  HKCDADocumentSample.h
+//  HealthKit
+//
+//  Copyright © 2015-2022 Apple. All rights reserved.
+//
+//  HealthKit support for storing and retrieving
+//  Consolidated Clinical Document records.
+//
+
+#import <HealthKit/HKDocumentSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKCDADocument;
+
+/*!
+ @class         HKCDADocumentSample
+ @abstract      A sample object representing a CDA document.
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos)
+@interface HKCDADocumentSample : HKDocumentSample
+
+/*!
+ @property      document
+ @abstract      The contents of the document.
+ @discussion    Access to each CDA instance must be authorized by the user in order for the document data to be
+                accessible to an app.  The authorization request occurs the first time a document matches the predicate
+                of an executed HKDocumentQuery.  This property will always be nil if the sample is returned by an
+                HKSampleQuery or an HKAnchoredObjectQuery.
+ */
+@property (readonly, nullable) HKCDADocument *document;
+
+/*!
+ @method                CDADocumentSampleWithData:startDate:endDate:device:metadata:validationError:
+ @abstract              Creates a new document sample with the specified attributes.
+ @param documentData    Document contents in an XML format that meets the CDA standard.
+ @param startDate       The start date for the document.
+ @param endDate         The end date for the document.
+ @param metadata        Metadata for the document.
+ @param validationError The XML content will be validated against the standard for CDA content.  If that validation
+                        fails, then this parameter will be set with the relavant error.  Detailed information about the
+                        failure may be obtained by examining the value for the HKDetailedCDAValidationErrorKey key of
+                        the NSError's userInfo dictionary.
+ @return                The new instance or nil if the documentData does not pass validation.
+ @discussion            Attributes of the document, such as title, patient name, etc. will be extracted automatically
+                        from the document content.
+ */
++ (nullable instancetype)CDADocumentSampleWithData:(NSData *)documentData
+                                         startDate:(NSDate *)startDate
+                                           endDate:(NSDate *)endDate
+                                          metadata:(nullable NSDictionary<NSString *, id> *)metadata
+                                   validationError:(NSError **)validationError __WATCHOS_UNAVAILABLE;
+
+@end
+
+HK_EXTERN API_AVAILABLE(ios(11.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos)
+@interface HKCDADocument : NSObject
+
+/*!
+ @property  documentData
+ @abstract  The CDA document content in XML format as specified in the CDA standard. This may be nil if the
+            includeDocumentData option in HKDocumentQuery is specified as NO.
+ */
+@property (readonly, copy, nullable) NSData *documentData API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      title
+ @abstract      The title of the document.
+ @discussion    This property is extracted automatically from the document.
+ */
+@property (readonly, copy) NSString *title API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      patientName
+ @abstract      The name of the patient receiving treatment.
+ @discussion    This property is extracted automatically from the document.
+ */
+@property (readonly, copy) NSString *patientName API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      authorName
+ @abstract      The person responsible for authoring the document.  Usually, this is the treating physician.
+ @discussion    This property is extracted automatically from the document.
+ */
+@property (readonly, copy) NSString *authorName API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      custodianName
+ @abstract      The organization responsible for the document.  This is usually the treating institution name.
+ @discussion    This property is extracted automatically from the document.
+ */
+@property (readonly, copy) NSString *custodianName API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+/*!
+ @constant  HKPredicateKeyPathCDATitle
+ */
+HK_EXTERN NSString * const HKPredicateKeyPathCDATitle API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant  HKPredicateKeyPathCDAPatientName
+ */
+HK_EXTERN NSString * const HKPredicateKeyPathCDAPatientName API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant  HKPredicateKeyPathCDAAuthorName
+ */
+HK_EXTERN NSString * const HKPredicateKeyPathCDAAuthorName API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant  HKPredicateKeyPathCDACustodianName
+ */
+HK_EXTERN NSString * const HKPredicateKeyPathCDACustodianName API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDetailedCDAValidationErrorKey
+ @discussion    This may be used with the validationError parameter of
+                CDADocumentSampleWithData:startDate:endDate:device:metadata:validationError: to obtain a detailed
+                description of the validation errors encountered when creating a CDA document.
+ */
+HK_EXTERN NSString * const HKDetailedCDAValidationErrorKey API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCategorySample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCategorySample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCategorySample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCategorySample.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,88 @@
+//
+//  HKCategorySample.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKObject.h>
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKCategoryType;
+
+/*!
+ @class      HKCategorySample
+ @abstract   An HKObject subclass representing an category measurement
+ @discussion Category samples are samples that can be categorized into an enum of concrete values
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCategorySample : HKSample
+
+@property (readonly, strong) HKCategoryType *categoryType;
+
+/*!
+ @property   value
+ @discussion The preferred enum for the value is determined by the receiver's category type.
+ */
+@property (readonly) NSInteger value;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method     categorySampleWithType:value:startDate:endDate:metadata:
+ @abstract   Creates a new HKCategorySample.
+ 
+ @param      type       The type of the sample.
+ @param      value      The enumeration value for the sample. See HKCategoryTypeIdentifier for appropriate value.
+ @param      startDate  The start date of the sample.
+ @param      endDate    The end date of the sample.
+ @param      metadata   Metadata for the sample (optional).
+ */
++ (instancetype)categorySampleWithType:(HKCategoryType *)type
+                                 value:(NSInteger)value
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate
+                              metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+/*!
+ @method     categorySampleWithType:value:startDate:endDate:
+ @abstract   Creates a new HKCategorySample.
+ 
+ @param      type       The type of the sample.
+ @param      value      The enumeration value for the sample. See HKCategoryTypeIdentifier for appropriate value.
+ @param      startDate  The start date of the sample.
+ @param      endDate    The end date of the sample.
+ */
++ (instancetype)categorySampleWithType:(HKCategoryType *)type
+                                 value:(NSInteger)value
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate;
+
+/*!
+ @method     categorySampleWithType:value:startDate:endDate:device:metadata:
+ @abstract   Creates a new HKCategorySample.
+ 
+ @param      type       The type of the sample.
+ @param      value      The enumeration value for the sample. See HKCategoryTypeIdentifier for appropriate value.
+ @param      startDate  The start date of the sample.
+ @param      endDate    The end date of the sample.
+ @param      device     The HKDevice that generated the sample (optional).
+ @param      metadata   Metadata for the sample (optional).
+ */
++ (instancetype)categorySampleWithType:(HKCategoryType *)type
+                                 value:(NSInteger)value
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate
+                                device:(nullable HKDevice *)device
+                              metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+/*!
+ @constant     HKPredicateKeyPathCategoryValue
+ */
+HK_EXTERN NSString * const HKPredicateKeyPathCategoryValue API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCharacteristicObjects.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCharacteristicObjects.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCharacteristicObjects.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCharacteristicObjects.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,69 @@
+//
+//  HKCharacteristicObjects.h
+//  HealthKit
+//
+//  Copyright © 2016-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class     HKBiologicalSexObject
+ @abstract  A wrapper object for HKBiologicalSex enumeration.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKBiologicalSexObject : NSObject <NSCopying, NSSecureCoding>
+
+@property (readonly) HKBiologicalSex biologicalSex;
+
+@end
+
+/*!
+ @class     HKBloodTypeObject
+ @abstract  A wrapper object for HKBloodType enumeration.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKBloodTypeObject : NSObject <NSCopying, NSSecureCoding>
+
+@property (readonly) HKBloodType bloodType;
+
+@end
+
+/*!
+ @class     HKFitzpatrickSkinTypeObject
+ @abstract  A wrapper object for HKFitzpatrickSkinType enumeration.
+ */
+HK_EXTERN API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKFitzpatrickSkinTypeObject : NSObject <NSCopying, NSSecureCoding>
+
+@property (readonly) HKFitzpatrickSkinType skinType;
+
+@end
+
+/*!
+ @class     HKWheelchairUseObject
+ @abstract  A wrapper object for HKWheelchairUse enumeration.
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0))
+@interface HKWheelchairUseObject : NSObject <NSCopying, NSSecureCoding>
+
+@property (readonly) HKWheelchairUse wheelchairUse;
+
+@end
+
+/*!
+ @class     HKActivityMoveModeObject
+ @abstract  A wrapper object for HKActivityMoveMode enumeration.
+ */
+HK_EXTERN API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0))
+@interface HKActivityMoveModeObject : NSObject <NSCopying, NSSecureCoding>
+
+@property (readonly) HKActivityMoveMode activityMoveMode;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalRecord.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalRecord.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalRecord.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalRecord.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,51 @@
+//
+//  HKClinicalRecord.h
+//  HealthKit
+//
+//  Copyright (c) 2018-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+@class HKClinicalType;
+@class HKFHIRResource;
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN NSString * const HKPredicateKeyPathClinicalRecordFHIRResourceIdentifier API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) __WATCHOS_PROHIBITED;
+HK_EXTERN NSString * const HKPredicateKeyPathClinicalRecordFHIRResourceType API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) __WATCHOS_PROHIBITED;
+
+/*!
+ @class		   HKClinicalRecord
+ @abstract     An HKObject subclass representing a health record.
+ @discussion   The startDate and endDate properties (inherited from HKSample) are set to the date the sample was
+               added to Health. Unlike other HKObject subclasses, UUID is not a stable identifier
+               for a given sample. Use a combination of HKSource, FHIRResource.resourceType, and
+               FHIRResource.identifier instead.
+*/
+HK_EXTERN
+API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0))
+__WATCHOS_PROHIBITED
+@interface HKClinicalRecord : HKSample <NSSecureCoding, NSCopying>
+
+@property (readonly, copy) HKClinicalType *clinicalType;
+
+/*!
+ @property     displayName
+ @abstract     The primary display name used in Health.
+ @discussion   The display name is not localized, and is generally expected to be US English.
+ */
+@property (copy, readonly) NSString *displayName;
+
+/*!
+ @property     FHIRResource
+ @abstract     The FHIR resource (where applicable) backing this sample.
+ */
+@property (copy, readonly, nullable) HKFHIRResource *FHIRResource;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalType.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalType.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalType.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKClinicalType.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,63 @@
+//
+//  HKClinicalType.h
+//  HealthKit
+//
+//  Copyright (c) 2018-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKObjectType.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKClinicalType;
+
+typedef NSString *HKClinicalTypeIdentifier NS_TYPED_ENUM API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of allergies or intolerances.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierAllergyRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of a condition, problem, or diagnosis.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierConditionRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of vaccine administration.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierImmunizationRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of lab results.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierLabResultRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of medication prescription, intake, or administration.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierMedicationRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of clinical procedures.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierProcedureRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records of vital signs.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierVitalSignRecord API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/// A type identifier for records containing information about the user’s insurance coverage.
+HK_EXTERN HKClinicalTypeIdentifier const HKClinicalTypeIdentifierCoverageRecord API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+@interface HKObjectType (ClinicalType)
+
+/*!
+ @method        clinicalTypeForIdentifier
+ @abstract      Returns the clinical type given a valid clinical type identifier.
+ */
+#if defined(__swift__) && __swift__
++ (nullable HKClinicalType *)clinicalTypeForIdentifier:(HKClinicalTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKClinicalType(_:)", ios(12.0, API_TO_BE_DEPRECATED), watchos(5.0, API_TO_BE_DEPRECATED));
+#else
++ (nullable HKClinicalType *)clinicalTypeForIdentifier:(HKClinicalTypeIdentifier)identifier API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+#endif // defined(__swift__) && __swift__
+@end
+
+/*!
+ @class         HKClinicalType
+ @abstract      A type that identifies samples that contain clinical record data.
+ */
+HK_EXTERN
+API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0))
+@interface HKClinicalType : HKSampleType
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsLensSpecification.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsLensSpecification.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsLensSpecification.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsLensSpecification.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,56 @@
+//
+//  HKContactsLensSpecification.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKLensSpecification.h>
+
+@class HKQuantity;
+@class HKVisionPrism;
+
+NS_ASSUME_NONNULL_BEGIN
+/*!
+ @class         HKContactsLensSpecification
+ @abstract      An object subclass representing lens specification for contacts
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKContactsLensSpecification : HKLensSpecification <NSSecureCoding, NSCopying>
+
+/*!
+ @property      baseCurve
+ @abstract      The curvature of the back surface of the lens (measured in mm)
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *baseCurve;
+
+/*!
+ @property      diameter
+ @abstract      The width of the lens from edge to edge (measured in mm)
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *diameter;
+
+/*!
+ @method        initWithSphere:cylinder:axis:addPower:baseCurve:diameter
+
+ @param         sphere     The lens power to correct nearsightedness or farsightedness
+ @param         cylinder   The lens power required to correct astigmatism
+ @param         axis       The angle along which cylindrical power should be positioned to correct astigmatism
+ @param         addPower   The power adjustment applied to a multifocal lens to correct presbyopia
+ @param         baseCurve  The curvature of the back surface of the lens
+ @param         diameter   The width of the lens from edge to edge
+ */
+- (instancetype)initWithSphere:(HKQuantity *)sphere
+                      cylinder:(nullable HKQuantity *)cylinder
+                          axis:(nullable HKQuantity *)axis
+                      addPower:(nullable HKQuantity *)addPower
+                     baseCurve:(nullable HKQuantity *)baseCurve
+                      diameter:(nullable HKQuantity *)diameter;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsPrescription.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsPrescription.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsPrescription.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKContactsPrescription.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,66 @@
+//
+//  HKContactsPrescription.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKVisionPrescription.h>
+
+@class HKContactsLensSpecification;
+@class HKDevice;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKContactsPrescription
+ @abstract      An object representing a contacts prescription
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKContactsPrescription: HKVisionPrescription
+
+/*!
+ @property      rightEye
+ @abstract      The right eye lens specification
+ */
+@property (nonatomic, copy, readonly, nullable) HKContactsLensSpecification *rightEye;
+
+/*!
+ @property      leftEye
+ @abstract      The left eye lens specification
+ */
+@property (nonatomic, copy, readonly, nullable) HKContactsLensSpecification *leftEye;
+
+/*!
+ @property      brand
+ @abstract      The prescribed brand after contact lens fitting
+ */
+@property (nonatomic, copy, readonly) NSString *brand;
+
+/*!
+ @method        prescriptionWithRightEyeSpecification:leftEyeSpecification:brand:dateIssued:expirationDate:device:metadata
+
+ @param         rightEyeSpecification  The right eye specification
+ @param         leftEyeSpecification   The left eye specification
+ @param         brand                  The prescribed brand after contact lens fitting
+ @param         dateIssued             The date the prescription was issued
+ @param         expirationDate         The date the prescription expires
+ @param         device                 The device that generated the sample
+ @param         metadata               The metadata for the sample
+ */
++ (instancetype)prescriptionWithRightEyeSpecification:(nullable HKContactsLensSpecification *)rightEyeSpecification
+                                 leftEyeSpecification:(nullable HKContactsLensSpecification *)leftEyeSpecification
+                                                brand:(NSString *)brand
+                                           dateIssued:(NSDate *)dateIssued
+                                       expirationDate:(nullable NSDate *)expirationDate
+                                               device:(nullable HKDevice *)device
+                                             metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelation.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelation.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelation.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelation.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,81 @@
+//
+//  HKCorrelation.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKObjectType;
+@class HKCorrelationType;
+
+/*!
+ @class         HKCorrelation
+ @abstract      An HKCorrelation is a collection of correlated objects.
+ @discussion    When multiple readings are taken together, it may be beneficial to correlate them so that they can be
+                displayed together and share common metadata about how they were created.
+ 
+                For example, systolic and diastolic blood pressure readings are typically presented together so these
+                readings should be saved with a correlation of type blood pressure.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCorrelation : HKSample
+
+@property (readonly) HKCorrelationType *correlationType;
+
+/*!
+ @property  objects
+ @abstract  A set of HKSamples containing all of the objects that were saved with the receiver.
+ */
+@property (readonly, copy) NSSet<__kindof HKSample *> *objects;
+
+/*!
+ @method        correlationWithType:startDate:endDate:objects:
+ @abstract      Creates a new HKCorrelation with the given type, start date, end date, and objects.
+ @discussion    objects must be a set of HKQuantitySamples and HKCategorySamples
+ */
++ (instancetype)correlationWithType:(HKCorrelationType *)correlationType
+                          startDate:(NSDate *)startDate
+                            endDate:(NSDate *)endDate
+                            objects:(NSSet<HKSample *> *)objects;
+
+/*!
+ @method        correlationWithType:startDate:endDate:objects:metadata:
+ @abstract      Creates a new HKCorrelation with the given type, start date, end date, objects, and metadata.
+ @discussion    objects must be a set of HKQuantitySamples and HKCategorySamples
+ */
++ (instancetype)correlationWithType:(HKCorrelationType *)correlationType
+                          startDate:(NSDate *)startDate
+                            endDate:(NSDate *)endDate
+                            objects:(NSSet<HKSample *> *)objects
+                           metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+/*!
+ @method        correlationWithType:startDate:endDate:objects:device:metadata:
+ @abstract      Creates a new HKCorrelation with the given type, start date, end date, objects, and metadata.
+ @param         correlationType The correlation type of the objects set.
+ @param         startDate       The start date of the correlation.
+ @param         endDate         The end date of the correlation.
+ @param         device          The HKDevice that generated the samples (optional).
+ @param         metadata        Metadata for the correlation (optional).
+ @discussion    objects must be a set of HKQuantitySamples and HKCategorySamples
+ */
++ (instancetype)correlationWithType:(HKCorrelationType *)correlationType
+                          startDate:(NSDate *)startDate
+                            endDate:(NSDate *)endDate
+                            objects:(NSSet<HKSample *> *)objects
+                             device:(nullable HKDevice *)device
+                           metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method    objectsForType:
+ @abstract  Returns the set of correlated objects with the specified type.
+ */
+- (NSSet<__kindof HKSample *> *)objectsForType:(HKObjectType *)objectType;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelationQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelationQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelationQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCorrelationQuery.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,53 @@
+//
+//  HKCorrelationQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKCorrelationType;
+@class HKCorrelation;
+
+/*!
+ @class         HKCorrelationQuery
+ @abstract      A query to find HKCorrelations
+ @discussion    Correlations are HKSamples that contain a set of correlated samples. HKCorrelationQuery
+                accepts a predicate to filter HKCorrelations and a dictionary of predicates to filter the
+                correlated samples.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCorrelationQuery : HKQuery
+
+@property (readonly, copy) HKCorrelationType *correlationType;
+/*!
+ @property      samplePredicates
+ @abstract      A dictionary of predicates for the HKCorrelation's objects
+ @discussion    samplePredicates maps HKSampleTypes to NSPredicates. The predicate value will apply
+                to objects of the key type. 
+ 
+ */
+@property (readonly, copy, nullable) NSDictionary<__kindof HKSampleType *, NSPredicate *> *samplePredicates;
+
+/*!
+ @method    initWithTypes:predicate:samplePredicate:completion:
+ @abstract  The designated initializer for HKCorrelationQuery.
+
+ @param     correlationType     The type of correlation that is being queried for
+
+ @param     predicate           The predicate for scoping which HKCorrelations are returned
+
+ @param     samplePredicates    A dictionary mapping HKSampleTypes to NSPredicates. If no predicate for a particular type
+                                is provided, it is assumed to be a nil predicate and objects of that type will not be
+                                filtered.
+ */
+- (instancetype)initWithType:(HKCorrelationType *)correlationType
+                   predicate:(nullable NSPredicate *)predicate
+            samplePredicates:(nullable NSDictionary<HKSampleType *, NSPredicate *> *)samplePredicates
+                  completion:(void(^)(HKCorrelationQuery *query, NSArray<HKCorrelation *> * _Nullable correlations, NSError * _Nullable error))completion;
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySample.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,32 @@
+//
+//  HKCumulativeQuantitySample.h
+//  HealthKit
+//
+//  Copyright © 2018 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuantitySample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+
+/*!
+ @class         HKCumulativeQuantitySample
+ @abstract      An HKQuantitySample subclass representing a quantity measurement with cumulative aggregation style.
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKCumulativeQuantitySample : HKQuantitySample
+
+/*!
+ @property      sumQuantity
+ @abstract      The sum of quantities represented by the receiver.
+ */
+@property (readonly, copy) HKQuantity *sumQuantity;
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathSum API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySeriesSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySeriesSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySeriesSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKCumulativeQuantitySeriesSample.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,19 @@
+//
+//  HKCumulativeQuantitySeriesSample.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKCumulativeQuantitySample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN API_DEPRECATED_WITH_REPLACEMENT("HKCumulativeQuantitySample", ios(12.0, 13.0), watchos(5.0, 6.0))
+@interface HKCumulativeQuantitySeriesSample : HKCumulativeQuantitySample
+
+@property (readonly, copy) HKQuantity *sum;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDefines.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDefines.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDefines.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDefines.h	2022-05-31 15:04:04.000000000 -0400
@@ -0,0 +1,384 @@
+//
+//  HKDefines.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+#if !defined(__cplusplus)
+#define HK_EXTERN extern __attribute__((visibility("default")))
+#else
+#define HK_EXTERN extern "C" __attribute__((visibility("default")))
+#endif
+
+HK_EXTERN NSString * const HKErrorDomain API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum      HKErrorCode
+
+ @constant  HKNoError                           No error.
+ @constant  HKErrorHealthDataUnavailable        HealthKit is not available on this device.
+ @constant  HKErrorHealthDataRestricted         HealthKit is restricted on this device.
+ @constant  HKErrorInvalidArgument              An invalid argument was provided to the API.
+ @constant  HKErrorAuthorizationDenied          The application is not authorized to perform the requested operation.
+ @constant  HKErrorAuthorizationNotDetermined   The user has not yet chosen whether the application is authorized to
+                                                perform the requested operation.
+ @constant  HKErrorDatabaseInaccessible         Protected health data is inaccessible because the device is locked.
+ @constant  HKErrorUserCanceled                 The user canceled the operation.
+ @constant  HKErrorAnotherWorkoutSessionStarted Another workout session was started by this or another application.
+ @constant  HKErrorUserExitedWorkoutSession     User exited the application while a workout session was running.
+ @constant  HKErrorRequiredAuthorizationDenied  The user has not granted the application authorization to access
+                                                required data types.
+ @constant  HKErrorNoData                       No data is available for the requested query and predicate, and so the
+                                                query's result could not be meaningfully computed.
+ */
+typedef NS_ENUM(NSInteger, HKErrorCode) {
+    HKNoError = 0,
+    HKErrorHealthDataUnavailable,
+    HKErrorHealthDataRestricted,
+    HKErrorInvalidArgument,
+    HKErrorAuthorizationDenied,
+    HKErrorAuthorizationNotDetermined,
+    HKErrorDatabaseInaccessible,
+    HKErrorUserCanceled,
+    HKErrorAnotherWorkoutSessionStarted     API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0)),
+    HKErrorUserExitedWorkoutSession         API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0)),
+    HKErrorRequiredAuthorizationDenied      API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0)),
+    HKErrorNoData                           API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)),
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum      HKUpdateFrequency
+ */
+typedef NS_ENUM(NSInteger, HKUpdateFrequency) {
+    HKUpdateFrequencyImmediate = 1,
+    HKUpdateFrequencyHourly,
+    HKUpdateFrequencyDaily,
+    HKUpdateFrequencyWeekly,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum      HKAuthorizationStatus
+ @abstract  This enumerated type is used to indicate the currently granted authorization status for a specific
+            HKObjectType.
+
+ @constant  HKAuthorizationStatusNotDetermined      The user has not yet made a choice regarding whether this
+                                                    application may save objects of the specified type.
+ @constant  HKAuthorizationStatusSharingDenied      This application is not allowed to save objects of the specified type.
+ @constant  HKAuthorizationStatusSharingAuthorized  This application is authorized to save objects of the specified type.
+ */
+typedef NS_ENUM(NSInteger, HKAuthorizationStatus) {
+    HKAuthorizationStatusNotDetermined = 0,
+    HKAuthorizationStatusSharingDenied,
+    HKAuthorizationStatusSharingAuthorized,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum      HKAuthorizationRequestStatus
+ @abstract  This enumerated type is used to indicate whether it is necessary to request authorization from the user.
+
+ @constant  HKAuthorizationRequestStatusUnknown         The authorization request status could not be determined because
+                                                        an error occurred.
+ @constant  HKAuthorizationRequestStatusShouldRequest   The application should request authorization from the user.
+ @constant  HKAuthorizationRequestStatusUnnecessary     Requesting authorization from the user is unnecessary.
+ */
+typedef NS_ENUM(NSInteger, HKAuthorizationRequestStatus) {
+    HKAuthorizationRequestStatusUnknown = 0,
+    HKAuthorizationRequestStatusShouldRequest,
+    HKAuthorizationRequestStatusUnnecessary,
+} API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum       HKBiologicalSex
+ @abstract   This enumerated type is used to represent the biological sex of an individual.
+ */
+typedef NS_ENUM(NSInteger, HKBiologicalSex) {
+    HKBiologicalSexNotSet = 0,
+    HKBiologicalSexFemale,
+    HKBiologicalSexMale,
+    HKBiologicalSexOther API_AVAILABLE(ios(8.2), watchos(2.0), macCatalyst(13.0), macos(13.0)),
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum       HKBloodType
+ @abstract   This enumerated type is used to represent the blood type of an individual.
+ */
+typedef NS_ENUM(NSInteger, HKBloodType) {
+    HKBloodTypeNotSet = 0,
+    HKBloodTypeAPositive,
+    HKBloodTypeANegative,
+    HKBloodTypeBPositive,
+    HKBloodTypeBNegative,
+    HKBloodTypeABPositive,
+    HKBloodTypeABNegative,
+    HKBloodTypeOPositive,
+    HKBloodTypeONegative,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueSleepAnalysis
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierSleepAnalysis type.
+ @discussion    To represent the user being both in bed and asleep, use two or more samples with overlapping times. By comparing the
+                start and end times of these samples, it is possible to calculate a number of secondary statistics:
+                1) The amount of time it took for the user to fall asleep
+                2) The percentage of time in bed that the user actually spent sleeping,
+                3) The number of times the user woke while in bed
+                4) The total amount of time spent both in bed and asleep.
+
+ @constant HKCategoryValueSleepAnalysisInBed The user is in bed.
+ @constant HKCategoryValueSleepAnalysisAwake The user is awake.
+ @constant HKCategoryValueSleepAnalysisAsleepUnspecified The user is asleep and no specific stage is specified.
+ @constant HKCategoryValueSleepAnalysisAsleepCore Corresponds to Stages 1 and 2 of AASM scoring model.
+ @constant HKCategoryValueSleepAnalysisAsleepDeep  Corresponds to Stage 3 of AASM scoring model.
+ @constant HKCategoryValueSleepAnalysisAsleepREM Corresponds to REM stage of AASM scoring model.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueSleepAnalysis) {
+    HKCategoryValueSleepAnalysisInBed = 0,
+    HKCategoryValueSleepAnalysisAsleepUnspecified API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) = 1,
+    HKCategoryValueSleepAnalysisAsleep API_DEPRECATED_WITH_REPLACEMENT("HKCategoryValueSleepAnalysisAsleepUnspecified", ios(8.0, 16.0), watchos(2.0, 9.0)) = HKCategoryValueSleepAnalysisAsleepUnspecified,
+    HKCategoryValueSleepAnalysisAwake API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)) = 2,
+    HKCategoryValueSleepAnalysisAsleepCore API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) = 3,
+    HKCategoryValueSleepAnalysisAsleepDeep API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) = 4,
+    HKCategoryValueSleepAnalysisAsleepREM API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) = 5,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/// Returns the set of `HKCategoryValueSleepAnalysis` values that are considered to be asleep.
+HK_EXTERN NSSet<NSNumber *> * HKCategoryValueSleepAnalysisAsleepValues(void) API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_REFINED_FOR_SWIFT;
+
+
+/*!
+ @enum          HKCategoryValueAppleStandHour
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierAppleStandHour type.
+
+ @constant      HKCategoryValueAppleStandHourStood  The user stood up and moved a little for at least one minute during
+                                                    the sample.
+ @constant      HKCategoryValueAppleStandHourIdle   The user did not stand up and move a little for at least one
+                                                    continuous minute during the sample.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueAppleStandHour) {
+    HKCategoryValueAppleStandHourStood = 0,
+    HKCategoryValueAppleStandHourIdle,
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKFitzpatrickSkinType
+ @abstract      This enumerated type is used to represent the skin type of an individual based on the Fitzpatrick scale.
+ @discussion    The Fitzpatrick scale is a numerical classification for skin color based on the skin's response to sun
+                exposure in terms of the degree of burning and tanning.
+
+ @constant      HKFitzpatrickSkinTypeI      Pale white skin that always burns easily in the sun and never tans.
+ @constant      HKFitzpatrickSkinTypeII     White skin that burns easily and tans minimally.
+ @constant      HKFitzpatrickSkinTypeIII    White to light brown skin that burns moderately and tans uniformly.
+ @constant      HKFitzpatrickSkinTypeIV     Beige-olive, lightly tanned skin that burns minimally and tans moderately.
+ @constant      HKFitzpatrickSkinTypeV      Brown skin that rarely burns and tans profusely.
+ @constant      HKFitzpatrickSkinTypeVI     Dark brown to black skin that never burns and tans profusely.
+ */
+typedef NS_ENUM(NSInteger, HKFitzpatrickSkinType) {
+    HKFitzpatrickSkinTypeNotSet = 0,
+    HKFitzpatrickSkinTypeI,
+    HKFitzpatrickSkinTypeII,
+    HKFitzpatrickSkinTypeIII,
+    HKFitzpatrickSkinTypeIV,
+    HKFitzpatrickSkinTypeV,
+    HKFitzpatrickSkinTypeVI,
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKWheelchairUse
+ @abstract      This enumerated type is used to represent whether the user uses a wheelchair.
+
+ @constant      HKWheelchairUseNo      The user does not use a wheelchair.
+ @constant      HKWheelchairUseYes     The user does use a wheelchair.
+ */
+typedef NS_ENUM(NSInteger, HKWheelchairUse) {
+    HKWheelchairUseNotSet = 0,
+    HKWheelchairUseNo,
+    HKWheelchairUseYes,
+} API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueCervicalMucusQuality
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierCervicalMucusQuality type.
+ @discussion    These cervical mucus quality values are ordered from least-fertile (Dry) to most-fertile (EggWhite).
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueCervicalMucusQuality) {
+    HKCategoryValueCervicalMucusQualityDry = 1,
+    HKCategoryValueCervicalMucusQualitySticky,
+    HKCategoryValueCervicalMucusQualityCreamy,
+    HKCategoryValueCervicalMucusQualityWatery,
+    HKCategoryValueCervicalMucusQualityEggWhite,
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueOvulationTestResult
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierOvulationTestResult type.
+ @discussion    This category value tracks the result of a home ovulation test that use surges in hormone levels to
+                indicate fertility.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueOvulationTestResult) {
+    HKCategoryValueOvulationTestResultNegative = 1,
+    HKCategoryValueOvulationTestResultLuteinizingHormoneSurge API_AVAILABLE(ios(13.0), watchos(6.0)) = 2,
+    HKCategoryValueOvulationTestResultPositive API_DEPRECATED_WITH_REPLACEMENT("HKCategoryValueOvulationTestResultLuteinizingHormoneSurge", ios(9.0, 13.0), watchos(2.0, 6.0)) = HKCategoryValueOvulationTestResultLuteinizingHormoneSurge,
+    HKCategoryValueOvulationTestResultIndeterminate = 3,
+    HKCategoryValueOvulationTestResultEstrogenSurge API_AVAILABLE(ios(13.0), watchos(6.0)) = 4,
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValuePregnancyTestResult
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierPregnancyTestResult type.
+ @discussion    This category value tracks the result of a home pregnancy test that checks for presence of the human chorionic
+                gonadotrophin (hCG) hormone in urine to confirm pregnancy.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValuePregnancyTestResult) {
+    HKCategoryValuePregnancyTestResultNegative = 1,
+    HKCategoryValuePregnancyTestResultPositive,
+    HKCategoryValuePregnancyTestResultIndeterminate,
+} API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueProgesteroneTestResult
+ @abstract      Set of values that may be used for HKCategorySamples with the HKCategoryTypeIdentifierProgesteroneTestResult type.
+ @discussion    This category value tracks the result of a home ovulation confirmation test that use surges in hormone levels to
+                confirm if ovulation has occurred.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueProgesteroneTestResult) {
+    HKCategoryValueProgesteroneTestResultNegative = 1,
+    HKCategoryValueProgesteroneTestResultPositive,
+    HKCategoryValueProgesteroneTestResultIndeterminate,
+} API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueMenstrualFlow
+ @abstract      Set of values to indicate the type of menstrual flow.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueMenstrualFlow) {
+    HKCategoryValueMenstrualFlowUnspecified = 1,
+    HKCategoryValueMenstrualFlowLight,
+    HKCategoryValueMenstrualFlowMedium,
+    HKCategoryValueMenstrualFlowHeavy,
+    HKCategoryValueMenstrualFlowNone API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0)),
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValue
+ @abstract      This category value is to be used for types which don't have a specific value defined.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValue) {
+    HKCategoryValueNotApplicable = 0,
+} API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueAudioExposureEvent
+ @abstract      Specifies the kind of audio exposure event associated with the sample.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueAudioExposureEvent) {
+    HKCategoryValueAudioExposureEventLoudEnvironment API_DEPRECATED_WITH_REPLACEMENT("HKCategoryValueEnvironmentalAudioExposureEventMomentaryLimit", ios(13.0, 14.0), watchos(6.0, 7.0)) = 1,
+} API_DEPRECATED_WITH_REPLACEMENT("HKCategoryValueEnvironmentalAudioExposureEvent", ios(13.0, 14.0), watchos(6.0, 7.0));
+
+/*!
+ @enum          HKCategoryValueEnvironmentalAudioExposureEvent
+ @abstract      Specifies the kind of environmental audio exposure event associated with the sample.
+
+ @constant      HKCategoryValueEnvironmentalAudioExposureEventMomentaryLimit          This constant defines environmental events associated
+                with the user being exposed to a loud environment during a short timespan.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueEnvironmentalAudioExposureEvent) {
+    HKCategoryValueEnvironmentalAudioExposureEventMomentaryLimit = 1,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueContraceptive
+ @abstract      Set of values to indicate the type of contraceptive.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueContraceptive) {
+    HKCategoryValueContraceptiveUnspecified = 1,
+    HKCategoryValueContraceptiveImplant,
+    HKCategoryValueContraceptiveInjection,
+    HKCategoryValueContraceptiveIntrauterineDevice,
+    HKCategoryValueContraceptiveIntravaginalRing,
+    HKCategoryValueContraceptiveOral,
+    HKCategoryValueContraceptivePatch,
+} API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueSeverity
+ @abstract      Set of values to indicate the severity of a symptom.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueSeverity) {
+    HKCategoryValueSeverityUnspecified = 0,
+    HKCategoryValueSeverityNotPresent,
+    HKCategoryValueSeverityMild,
+    HKCategoryValueSeverityModerate,
+    HKCategoryValueSeveritySevere,
+} API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueAppetiteChanges
+ @abstract      Set of values to indicate the direction of appetite changes.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValueAppetiteChanges) {
+    HKCategoryValueAppetiteChangesUnspecified = 0,
+    HKCategoryValueAppetiteChangesNoChange,
+    HKCategoryValueAppetiteChangesDecreased,
+    HKCategoryValueAppetiteChangesIncreased,
+} API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));
+
+/*!
+ @enum          HKCategoryValuePresence
+ @abstract      Set of values to indicate whether a data type is present or not.
+ */
+typedef NS_ENUM(NSInteger, HKCategoryValuePresence) {
+    HKCategoryValuePresencePresent = 0,
+    HKCategoryValuePresenceNotPresent,
+} API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));
+
+/*!
+@enum          HKCategoryValueHeadphoneAudioExposureEvent
+@abstract      Specifies the kind of headphone exposure event associated with the sample.
+@constant      HKCategoryValueHeadphoneAudioExposureEventSevenDayLimit     This constant defines headphone events associated with the user being exposed to significant audio levels throught a seven-day period.
+*/
+typedef NS_ENUM(NSInteger, HKCategoryValueHeadphoneAudioExposureEvent) {
+    HKCategoryValueHeadphoneAudioExposureEventSevenDayLimit = 1
+} API_AVAILABLE(ios(14.2), watchos(7.1), macCatalyst(14.2), macos(13.0));
+
+/*!
+ @enum          HKCategoryValueLowCardioFitnessEvent
+ @abstract      Specifies the type of cardio fitness event.
+
+ @constant      HKCategoryValueLowCardioFitnessEventLowFitness       This constant defines an event where a VO2Max measurement was recorded that falls into the "Low" fitness classification
+  */
+typedef NS_ENUM(NSInteger, HKCategoryValueLowCardioFitnessEvent) {
+    HKCategoryValueLowCardioFitnessEventLowFitness = 1,
+} API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+
+/*!
+ @enum          HKActivityMoveMode
+ @abstract      This enumerated type is used to represent the activity mode for the user's move ring.
+ @constant      HKActivityMoveModeActiveEnergy     User's move ring is updated from Active Energy Burned
+ @constant      HKActivityMoveModeAppleMoveTime    User's move ring is updated from Apple Move Time
+ */
+typedef NS_ENUM(NSInteger, HKActivityMoveMode) {
+    HKActivityMoveModeActiveEnergy = 1,
+    HKActivityMoveModeAppleMoveTime = 2,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+@enum          HKCategoryValueAppleWalkingSteadinessEvent
+@abstract      Specifies the kind of Apple Walking Steadiness event associated with the sample.
+@constant      HKCategoryValueAppleWalkingSteadinessEventInitialLow           This constant defines Apple Walking Steadiness events associated with the user's walking steadiness being low.
+@constant      HKCategoryValueAppleWalkingSteadinessEventInitialVeryLow       This constant defines Apple Walking Steadiness events associated with the user's walking steadiness being very low.
+@constant      HKCategoryValueAppleWalkingSteadinessEventRepeatLow            This constant defines Apple Walking Steadiness events associated with the user's walking steadiness remaining low over a significant time period.
+@constant      HKCategoryValueAppleWalkingSteadinessEventRepeatVeryLow        This constant defines Apple Walking Steadiness events associated with the user's walking steadiness remaining very low over a significant time period.
+*/
+typedef NS_ENUM(NSInteger, HKCategoryValueAppleWalkingSteadinessEvent) {
+    HKCategoryValueAppleWalkingSteadinessEventInitialLow = 1,
+    HKCategoryValueAppleWalkingSteadinessEventInitialVeryLow = 2,
+    HKCategoryValueAppleWalkingSteadinessEventRepeatLow = 3,
+    HKCategoryValueAppleWalkingSteadinessEventRepeatVeryLow = 4,
+} API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDeletedObject.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDeletedObject.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDeletedObject.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDeletedObject.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,37 @@
+//
+//  HKDeletedObject.h
+//  HealthKit
+//
+//  Copyright (c) 2015-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKDeletedObject
+ @abstract      A class representing an HKObject that was deleted from the HealtKit database.
+ */
+HK_EXTERN API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKDeletedObject : NSObject <NSSecureCoding>
+
+/*!
+ @property      UUID
+ @abstract      The unique identifier of the HKObject that was deleted from the HealthKit database.
+ */
+@property (readonly, strong) NSUUID *UUID;
+
+/*!
+ @property      metadata
+ @abstract      Extra information describing properties of the receiver.
+ @discussion    Metadata retained from the deleted HKObject.
+                Available keys: HKMetadataKeySyncIdentifier, HKMetadataKeySyncVersion
+ */
+@property (readonly, copy, nullable) NSDictionary<NSString *, id> *metadata API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDevice.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDevice.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDevice.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDevice.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,161 @@
+//
+//  HKDevice.h
+//  HealthKit
+//
+//  Copyright © 2015-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @constant      HKDevicePropertyKeyName
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a device name.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyName API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyManufacturer
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a device manufacturer.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyManufacturer API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyModel
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a device model.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyModel API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyHardwareVersion
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a hardware version.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyHardwareVersion API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyFirmwareVersion
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a firmware version.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyFirmwareVersion API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeySoftwareVersion
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a software version.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeySoftwareVersion API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyLocalIdentifier
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a local identifier.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyLocalIdentifier API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKDevicePropertyKeyUDIDeviceIdentifier
+ @abstract      Used with predicateForObjectsWithDeviceProperty to specify a UDI device identifier.
+ @discussion    The expected value type is an NSString.
+ */
+HK_EXTERN NSString * const HKDevicePropertyKeyUDIDeviceIdentifier API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+
+
+HK_EXTERN API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKDevice : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      name
+ @abstract      The name of the receiver.
+ @discussion    The user-facing name, such as the one displayed in the Bluetooth Settings for a BLE device.
+ */
+@property (readonly, nullable) NSString *name;
+
+/*!
+ @property      manufacturer
+ @abstract      The manufacturer of the receiver.
+ */
+@property (readonly, nullable) NSString *manufacturer;
+
+/*!
+ @property      model
+ @abstract      The model of the receiver.
+ */
+@property (readonly, nullable) NSString *model;
+
+/*!
+ @property      hardwareVersion
+ @abstract      The hardware revision of the receiver.
+ */
+@property (readonly, nullable) NSString *hardwareVersion;
+
+/*!
+ @property      firmwareVersion
+ @abstract      The firmware revision of the receiver.
+ */
+@property (readonly, nullable) NSString *firmwareVersion;
+
+/*!
+ @property      softwareVersion
+ @abstract      The software revision of the receiver.
+ */
+@property (readonly, nullable) NSString *softwareVersion;
+
+/*!
+ @property      localIdentifier
+ @abstract      A unique identifier for the receiver.
+ @discussion    This property is available to clients for a local identifier.
+                For example, Bluetooth peripherals managed by HealthKit use this
+                for the CoreBluetooth UUID which is valid only on the local
+                device and thus distinguish the same Bluetooth peripheral used
+                between multiple devices.
+ */
+@property (readonly, nullable) NSString *localIdentifier;
+
+/*!
+ @property      UDIDeviceIdentifier
+ @abstract      Represents the device identifier portion of a device's FDA UDI (Unique Device Identifier).
+ @discussion    The device identifier can be used to reference the FDA's GUDID (Globally Unique Device
+                Identifier Database). Note that for user privacy concerns this field should not be used to
+                persist the production identifier portion of the device UDI. HealthKit clients should manage
+                the production identifier independently, if needed.
+                See http://www.fda.gov/MedicalDevices/DeviceRegulationandGuidance/UniqueDeviceIdentification/ for more information.
+ */
+@property (readonly, nullable) NSString *UDIDeviceIdentifier;
+
+
+/*!
+ @method        initWithName:manufacturer:model:hardwareVersion:firmwareVersion:softwareVersion:localIdentifier:UDIDeviceIdentifier:
+ @abstract      Initialize a new HKDevice with the specified values.
+ @discussion    This allows initialization of an HKDevice object based on the
+                information provided.
+ */
+- (instancetype)initWithName:(nullable NSString *)name
+                manufacturer:(NSString * _Nullable)manufacturer
+                       model:(NSString * _Nullable)model
+             hardwareVersion:(NSString * _Nullable)hardwareVersion
+             firmwareVersion:(NSString * _Nullable)firmwareVersion
+             softwareVersion:(NSString * _Nullable)softwareVersion
+             localIdentifier:(NSString * _Nullable)localIdentifier
+         UDIDeviceIdentifier:(NSString * _Nullable)UDIDeviceIdentifier;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method        localDevice
+ @abstract      Returns a device representing the host.
+ @discussion    If an app chooses to save samples that were retrieved from the local device, e.g. an HKWorkout with a 
+                totalDistance HKQuantity gathered from CoreLocation GPS distances, then this would be an appropriate 
+                HKDevice to use.
+ */
++ (HKDevice *)localDevice;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDiscreteQuantitySample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDiscreteQuantitySample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDiscreteQuantitySample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDiscreteQuantitySample.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,63 @@
+//
+//  HKDiscreteQuantitySample.h
+//  HealthKit
+//
+//  Copyright © 2019-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuantitySample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+
+/*!
+ @class         HKDiscreteQuantitySample
+ @abstract      An HKQuantitySample subclass representing a quantity measurement with
+                discrete aggregation style.
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKDiscreteQuantitySample : HKQuantitySample
+
+/*!
+ @property      minimumQuantity
+ @abstract      The minimum of the receiver's quantities
+ */
+@property (readonly, copy) HKQuantity *minimumQuantity;
+
+/*!
+ @property      averageQuantity
+ @abstract      The average of the receiver's quantities
+ */
+@property (readonly, copy) HKQuantity *averageQuantity;
+
+/*!
+ @property      maximumQuantity
+ @abstract      The maximum of the receiver's quantities
+ */
+@property (readonly, copy) HKQuantity *maximumQuantity;
+
+/*!
+ @property      mostRecentQuantity
+ @abstract      The receiver's quantity with most recent date interval
+ */
+@property (readonly, copy) HKQuantity *mostRecentQuantity;
+
+/*!
+ @property      mostRecentQuantityDateInterval
+ @abstract      The date interval for the receiver's most recent quantity
+ */
+@property (readonly, copy) NSDateInterval *mostRecentQuantityDateInterval;
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathMin API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathAverage API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMax API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMostRecent API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMostRecentStartDate API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMostRecentEndDate API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMostRecentDuration API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentQuery.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,79 @@
+//
+//  HKDocumentQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2016-2022 Apple Inc. All rights reserved.
+//
+
+#include <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKDocumentSample;
+@class HKDocumentType;
+
+/*!
+ @class         HKDocumentQuery
+ @abstract      A concrete subclass of HKQuery that provides an interface to retrieve documents from the Health store.
+ 
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0))
+@interface HKDocumentQuery : HKQuery
+
+/*!
+ @property      limit
+ @abstract      The maximum number of documents the receiver will return upon completion.
+ */
+@property (readonly) NSUInteger limit;
+
+/*!
+ @property      sortDescriptors
+ @abstract      An array of NSSortDescriptors.
+ */
+@property (readonly, copy, nullable) NSArray<NSSortDescriptor *> *sortDescriptors;
+
+/*!
+ @property      includeDocumentData
+ @abstract      The XML content for documents may be large.  This property can be used to control whether the query
+                returns the XML content for each record.
+ */
+@property (readonly) BOOL includeDocumentData;
+
+/*!
+ @method        initWithDocumentType:predicate:limit:sortDescriptors:includeDocumentData:resultsHandler:
+ @abstract      Returns a query that will retrieve HKDocumentSamples matching the given predicate.
+ 
+ @param         documentType        The type of document to retreive.
+ @param         predicate           The predicate which documents should match.
+ @param         limit               The maximum number of documents to return.  Pass HKObjectQueryNoLimit for no limit.
+ @param         sortDescriptors     The sort descriptors to use to order the resulting documents.
+ @param         includeDocumentData If true, the document content will be returned with the HKDocumentSample instance.
+                                    This option can be used to limit the size of the content returned since the content
+                                    may be large.
+ @param         resultsHandler      The block that will receive query results.  Results will be returned incrementally
+                                    through several calls to this block.  When there are no more results, the done 
+                                    parameter will be YES and the results array will be empty.  If results is nil, then
+                                    an error has occurred and the error parameter will be set.  Delivery of results can
+                                    be stopped by calling HKHealthStore's stopQuery: method.
+
+ @discussion    Health documents may contain sensitive data that a user may want to control explicitly. HKDocumentSample
+                objects returned by HKSampleQuery and HKAnchoredObjectQuery do not include this data (i.e., the document
+                property is nil).  This query can be used to retrieve fully populated HKDocumentSample instances.  The 
+                query will prompt the user to authorize your app to read individual documents.  The query will then
+                return the documents that your app is authorized to read. The user will only be asked to authorize your
+                app to read documents that are new since the last time an HKDocumentQuery was executed.
+ */
+- (instancetype)initWithDocumentType:(HKDocumentType *)documentType
+                           predicate:(nullable NSPredicate *)predicate
+                               limit:(NSUInteger)limit
+                     sortDescriptors:(nullable NSArray<NSSortDescriptor *> *)sortDescriptors
+                 includeDocumentData:(BOOL)includeDocumentData
+                      resultsHandler:(void(^)(HKDocumentQuery *query,
+                                              NSArray<__kindof HKDocumentSample *> * _Nullable results,
+                                              BOOL done,
+                                              NSError * _Nullable error))resultsHandler;
+
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKDocumentSample.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,25 @@
+//
+//  HKDocumentSample.h
+//  HealthKit
+//
+//  Copyright © 2016-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKDocumentType;
+
+/*!
+ @class         HKDocumentSample
+ @abstract      An abstract class representing a health document.
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0))
+@interface HKDocumentSample : HKSample
+
+@property (readonly, strong) HKDocumentType *documentType;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogram.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogram.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogram.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogram.h	2022-05-31 14:51:55.000000000 -0400
@@ -0,0 +1,105 @@
+//
+//  HKElectrocardiogram.h
+//  HealthKit
+//
+//  Copyright © 2020-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+@class HKQuantity;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+@enum          HKElectrocardiogramLead
+@abstract      The medically-defined leads supported by HKElectrocardiogram
+@constant      HKElectrocardiogramLeadAppleWatchSimilarToLeadI.   Apple Watch Series 4 and above has an electrical heart sensor that, when using
+                                                                  the ECG app, enables the generation and analysis of an ECG  similar to a Lead I ECG.
+*/
+typedef NS_ENUM(NSInteger, HKElectrocardiogramLead) {
+    HKElectrocardiogramLeadAppleWatchSimilarToLeadI = 1
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(HKElectrocardiogram.Lead);
+
+/*!
+@enum          HKElectrocardiogramClassification
+@abstract      The possible classifications determined for HKElectrocardiograms
+
+@constant      HKElectrocardiogramClassificationNotSet                      No classification is set on this sample.
+@constant      HKElectrocardiogramClassificationSinusRhythm                 The sample exhibits no signs  of atrial fibrillation.
+@constant      HKElectrocardiogramClassificationAtrialFibrillation          The sample exhibits signs of atrial fibrillation.
+@constant      HKElectrocardiogramClassificationInconclusiveLowHeartRate    The sample classifier could not check for atrial fibrillation due to a heart rate under 50 BPM.
+@constant      HKElectrocardiogramClassificationInconclusiveHighHeartRate   The sample classifier could not check for atrial fibrillation due to a high heart rate.
+@constant      HKElectrocardiogramClassificationInconclusivePoorReading     The sample classifier did not attempt a classification due to not meeting the signal requirements.
+@constant      HKElectrocardiogramClassificationInconclusiveOther           The sample classifier could not determine a classification.
+@constant      HKElectrocardiogramClassificationUnrecognized                The classification created for this sample is unrecognized on this device.
+*/
+typedef NS_ENUM(NSInteger, HKElectrocardiogramClassification) {
+    HKElectrocardiogramClassificationNotSet = 0,
+    HKElectrocardiogramClassificationSinusRhythm,
+    HKElectrocardiogramClassificationAtrialFibrillation,
+    HKElectrocardiogramClassificationInconclusiveLowHeartRate,
+    HKElectrocardiogramClassificationInconclusiveHighHeartRate,
+    HKElectrocardiogramClassificationInconclusivePoorReading,
+    HKElectrocardiogramClassificationInconclusiveOther,
+    
+    HKElectrocardiogramClassificationUnrecognized = 100,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(HKElectrocardiogram.Classification);
+
+/*!
+@enum          HKElectrocardiogramSymptomsStatus
+@abstract      An indication of whether the user experienced symptoms when taking an ECG
+@constant      HKElectrocardiogramSymptomsStatusNotSet        The user did not specify whether or not they experienced symptoms.
+               HKElectrocardiogramSymptomsStatusNone          The user did not experience any symptoms during the duration of the electrocardiogram reading.
+               HKElectrocardiogramSymptomsStatusPresent       The user indicated that they experienced symptoms during the duration of the electrocardiogram reading.
+@discussion    If an HKElectrocardiogram indicates that there are symptoms present, you must do a separate sample query to
+                                retrieve those symptoms.
+ */
+typedef NS_ENUM(NSInteger, HKElectrocardiogramSymptomsStatus) {
+    HKElectrocardiogramSymptomsStatusNotSet = 0,
+    HKElectrocardiogramSymptomsStatusNone = 1,
+    HKElectrocardiogramSymptomsStatusPresent = 2,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(HKElectrocardiogram.SymptomsStatus);
+
+/*!
+ @class         HKElectrocardiogram
+ @abstract      An HKElectrocardiogram is a collection of voltage values as waveforms
+                from one or more leads
+*/
+HK_EXTERN API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0))
+@interface HKElectrocardiogram : HKSample
+
+/*!
+ The number of voltage measurements in the electrocardiogram.
+ */
+@property (nonatomic, readonly, assign) NSInteger numberOfVoltageMeasurements;
+
+/*!
+ The frequency at which the data was sampled. This is reported in [HKUnit hertzUnit].
+*/
+@property (nonatomic, readonly, copy, nullable) HKQuantity *samplingFrequency;
+
+/*!
+ The classification of this electrocardiogram sample.
+*/
+@property (nonatomic, readonly, assign) HKElectrocardiogramClassification classification;
+
+/*!
+ The average heart rate of the user while the electrocardiogram was recorded.
+*/
+@property (nonatomic, readonly, copy, nullable) HKQuantity *averageHeartRate;
+
+/*!
+ Whether the user experienced symptoms during this electrocardiogram.
+*/
+@property (nonatomic, readonly, assign) HKElectrocardiogramSymptomsStatus symptomsStatus;
+
+@end
+
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathAverageHeartRate API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathECGClassification API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathECGSymptomsStatus API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogramQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogramQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogramQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKElectrocardiogramQuery.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,63 @@
+//
+//  HKElectrocardiogramQuery.h
+//  HealthKit
+//
+//  Copyright © 2020-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKElectrocardiogram.h>
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+@class         HKElectrocardiogramVoltageMeasurement
+@abstract      An HKElectrocardiogramVoltageMeasurement contains voltage quantities for all leads at a single instance of measurement.
+@discussion    Each HKElectrocardiogramVoltageMeasurement object corresponds to the voltage quantities across all leads for a given instance in time.
+*/
+HK_EXTERN API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(HKElectrocardiogram.VoltageMeasurement)
+@interface HKElectrocardiogramVoltageMeasurement : NSObject <NSCopying>
+
+/*!
+ The time interval between this voltage measurement and the start of the sample.
+*/
+@property (nonatomic, readonly, assign) NSTimeInterval timeSinceSampleStart;
+
+/*!
+@method        quantityForLead:
+@abstract      Returns an HKQuantity for the specified lead with a unit compatible with [HKUnit voltageUnit].
+
+@param         lead      The HKElectrocardiogramLead for which voltage quantity will be returned.
+*/
+- (nullable HKQuantity *)quantityForLead:(HKElectrocardiogramLead)lead;
+
+@end
+
+/*!
+@class         HKElectrocardiogramQuery
+@abstract      An HKElectrocardiogramQuery is used to access voltage data associated with an HKElectrocardiogram.
+@discussion    Once instantiated, call HKHealthStore executeQuery to begin enumerating the HKElectrocardiogram voltage data.
+*/
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKElectrocardiogramQueryDescriptor", ios(14.0, API_TO_BE_DEPRECATED), watchos(7.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0))
+#endif
+@interface HKElectrocardiogramQuery : HKQuery
+
+/*!
+@method        initWithElectrocardiogram:dataHandler:
+@abstract      Returns a query that will enumerate over voltages recorded across leads in
+               an electrocardiogram.
+ 
+ @param         electrocardiogram    The sample for which the lead data will be returned.
+ @param         dataHandler          The block to invoke with results from the query. It will be called once for each voltage measurement. Call [query stop] to stop enumeration, if desired.
+
+*/
+- (instancetype)initWithElectrocardiogram:(HKElectrocardiogram *)electrocardiogram
+                             dataHandler:(void (^)(HKElectrocardiogramQuery *query, HKElectrocardiogramVoltageMeasurement * _Nullable voltageMeasurement, BOOL done, NSError * _Nullable error))dataHandler NS_SWIFT_NAME(init(electrocardiogram:dataHandler:)) NS_DESIGNATED_INITIALIZER NS_REFINED_FOR_SWIFT;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRRelease.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRRelease.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRRelease.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRRelease.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,35 @@
+//
+//  HKFHIRRelease.h
+//  HealthKit
+//
+//  Copyright © 2019-2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @abstract      FHIR releases are official releases of the FHIR specification.
+ @discussion    FHIR releases are published on https://hl7.org/fhir. There is a one-to-many relationship between FHIR
+                releases and FHIR versions.
+ */
+typedef NSString * HKFHIRRelease NS_TYPED_ENUM;
+
+/*!
+ @abstract      The "DSTU2" release: http://hl7.org/fhir/DSTU2/
+ */
+HK_EXTERN HKFHIRRelease const HKFHIRReleaseDSTU2 NS_SWIFT_NAME(dstu2) API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @abstract      The "R4" release: http://hl7.org/fhir/R4/
+ */
+HK_EXTERN HKFHIRRelease const HKFHIRReleaseR4 NS_SWIFT_NAME(r4) API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @abstract      An unknown release
+ */
+HK_EXTERN HKFHIRRelease const HKFHIRReleaseUnknown API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRResource.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRResource.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRResource.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRResource.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,75 @@
+//
+//  HKFHIRResource.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+
+@class HKFHIRVersion;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NSString * HKFHIRResourceType NS_TYPED_ENUM API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeAllergyIntolerance API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeCondition API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeCoverage API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeImmunization API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeMedicationDispense API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeMedicationOrder API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeMedicationRequest API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeMedicationStatement API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeObservation API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+HK_EXTERN HKFHIRResourceType const HKFHIRResourceTypeProcedure API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @class         HKFHIRResource
+ @abstract      The HKFHIRResource class encapsulates a FHIR (Fast Healthcare Interoperability Resources) resource.
+ */
+HK_EXTERN API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos)
+@interface HKFHIRResource : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      FHIRVersion
+ @abstract      The FHIR version of the resource data.
+ */
+@property (readonly, copy) HKFHIRVersion *FHIRVersion API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @property      resourceType
+ @abstract      The resource type, corresponding to the 'resourceType' field in the resource's JSON representation.
+ @discussion    May be one of 8 FHIR resource types supported within HealthKit: AllergyIntolerance, Condition,
+                Immunization, MedicationDispense, MedicationOrder, MedicationStatement, Observation, and Procedure.
+ */
+@property (readonly, copy) HKFHIRResourceType resourceType;
+
+/*!
+ @property      identifier
+ @abstract      The identifier of the resource, corresponding to the 'id' field in the resource's JSON representation.
+ @discussion    Unique within a given resource type and FHIR end-point, as represented by an HKSource.
+ */
+@property (readonly, copy) NSString *identifier;
+
+/*!
+ @property      data
+ @abstract      The JSON representation of the FHIR resource.
+ @discussion    Conforms to the HL7 Argonaut Project resource type definitions.
+ */
+@property (readonly, copy) NSData *data;
+
+/*!
+ @property      sourceURL
+ @abstract      The fully specified source URL of the FHIR resource.
+ @discussion    This URL can be used to help determine the provenance of the resource. Direct access is protected by
+                OAuth: querying without suitable authorization will result in an authorization error.
+ */
+@property (readonly, copy, nullable) NSURL *sourceURL;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRVersion.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRVersion.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRVersion.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKFHIRVersion.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,49 @@
+//
+//  HKFHIRVersion.h
+//  HealthKit
+//
+//  Copyright © 2019-2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+
+#import <HealthKit/HKFHIRRelease.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKFHIRVersion
+ @abstract      Represents a FHIR version.
+ @discussion    FHIR uses semantic versions ("1.0.2", "4.0.1") to communicate which FHIR version a server supports or a
+                given resource is represented in. A FHIR version is associated with one FHIR release.
+ @see           http://hl7.org/fhir/versions.html#versions
+ */
+HK_EXTERN API_AVAILABLE(ios(14.0), macCatalyst(14.0), macos(13.0)) API_UNAVAILABLE(watchos)
+@interface HKFHIRVersion : NSObject <NSCopying, NSSecureCoding>
+
+@property (nonatomic, assign, readonly) NSInteger majorVersion;
+
+@property (nonatomic, assign, readonly) NSInteger minorVersion;
+
+@property (nonatomic, assign, readonly) NSInteger patchVersion;
+
+@property (nonatomic, strong, readonly) HKFHIRRelease FHIRRelease;
+
+/*!
+ @property      stringRepresentation
+ @abstract      A string representation in the format "{major}.{minor}.{patch}".
+ */
+@property (nonatomic, copy, readonly) NSString *stringRepresentation;
+
+- (instancetype)init NS_UNAVAILABLE;
+
++ (nullable instancetype)versionFromVersionString:(NSString *)versionString error:(NSError **)errorOut;
+
++ (instancetype)primaryDSTU2Version;
+
++ (instancetype)primaryR4Version;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesLensSpecification.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesLensSpecification.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesLensSpecification.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesLensSpecification.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,78 @@
+//
+//  HKGlassesLensSpecification.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKLensSpecification.h>
+
+@class HKQuantity;
+@class HKVisionPrism;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKGlassesLensSpecification
+ @abstract      An object subclass representing lens specification for glasses
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKGlassesLensSpecification : HKLensSpecification <NSSecureCoding, NSCopying>
+
+/*!
+ @property      vertexDistance
+ @abstract      The distance between the back of the eyeglass lens and the eye (measured in mm)
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *vertexDistance;
+
+/*!
+ @property      prism
+ @abstract      The object encapsulating the prism fields
+ */
+@property (nonatomic, copy, readonly, nullable) HKVisionPrism *prism;
+
+/*!
+ @property      farPupillaryDistance
+ @abstract      The distance from each pupil to the center of the nose (measured in mm) when looking at a far target.
+                Can be described as combined or individual value. For distance prescriptions, the pupillary distance will be a far value.
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *farPupillaryDistance;
+
+/*!
+ @property      nearPupillaryDistance
+ @abstract      The distance from each pupil to the center of the nose (measured in mm) when looking at a near target.
+                Can be described as combined or individual value. For near prescriptions, the pupillary distance will be a near value.
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *nearPupillaryDistance;
+
+
+/*!
+ @method        initWithSphere:cylinder:axis:addPower:vertexDistance:prism:farPupillaryDistance:nearPupillaryDistance
+
+ @param         sphere                  The lens power to correct nearsightedness or farsightedness
+ @param         cylinder                The lens power required to correct astigmatism
+ @param         axis                    The angle along which cylindrical power should be positioned to correct astigmatism
+ @param         addPower                The power adjustment applied to a multifocal lens to correct presbyopia
+ @param         vertexDistance          The distance between the back of the eyeglass lens and the eye
+ @param         prism                   The object encapsulating the prism fields
+ @param         farPupillaryDistance    The distance from each pupil to the center of the nose (measured in mm) when looking at a far target.
+                                        Can be described as combined or individual value. For distance prescriptions, the pupillary distance will be a far value.
+ @param         nearPupillaryDistance   The distance from each pupil to the center of the nose (measured in mm) when looking at a near target.
+                                        Can be described as combined or individual value. For near prescriptions, the pupillary distance will be a near value.
+ */
+- (instancetype)initWithSphere:(HKQuantity *)sphere
+                      cylinder:(nullable HKQuantity *)cylinder
+                          axis:(nullable HKQuantity *)axis
+                      addPower:(nullable HKQuantity *)addPower
+                vertexDistance:(nullable HKQuantity *)vertexDistance
+                         prism:(nullable HKVisionPrism *)prism
+          farPupillaryDistance:(nullable HKQuantity *)farPupillaryDistance
+         nearPupillaryDistance:(nullable HKQuantity *)nearPupillaryDistance;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesPrescription.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesPrescription.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesPrescription.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKGlassesPrescription.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,67 @@
+//
+//  HKGlassesPrescription.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKVisionPrescription.h>
+
+@class HKDevice;
+@class HKQuantity;
+@class HKGlassesLensSpecification;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKGlassesPrescription
+ @abstract      An object subclass representing a glasses prescription
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKGlassesPrescription : HKVisionPrescription
+
+/*!
+ @property      glassesDescription
+ @abstract      The description of the type of glasses
+ */
+@property (nonatomic, copy, readonly) NSString *glassesDescription;
+
+/*!
+ @property      rightEye
+ @abstract      The right eye lens specification
+ */
+@property (nonatomic, copy, readonly, nullable) HKGlassesLensSpecification *rightEye;
+
+/*!
+ @property      leftEye
+ @abstract      The left eye lens specification
+ */
+@property (nonatomic, copy, readonly, nullable) HKGlassesLensSpecification *leftEye;
+
+/*!
+ @method        prescriptionWithRightEyeSpecification:leftEyeSpecification:type:dateIssued:expirationDate:device:metadata
+
+ @param         rightEyeSpecification    The right eye specification
+ @param         leftEyeSpecification     The left eye specification
+ @param         description              The description of the type of glasses
+ @param         dateIssued               The date the prescription was issued
+ @param         expirationDate           The date the prescription expires
+ @param         device                   The device that generated the sample
+ @param         metadata                 The metadata for the sample
+ */
++ (instancetype)prescriptionWithRightEyeSpecification:(nullable HKGlassesLensSpecification *)rightEyeSpecification
+                                 leftEyeSpecification:(nullable HKGlassesLensSpecification *)leftEyeSpecification
+                                          description:(NSString *)description
+                                           dateIssued:(NSDate *)dateIssued
+                                       expirationDate:(nullable NSDate *)expirationDate
+                                               device:(nullable HKDevice *)device
+                                             metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHealthStore.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHealthStore.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHealthStore.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHealthStore.h	2022-05-31 15:04:05.000000000 -0400
@@ -0,0 +1,402 @@
+//
+//  HKHealthStore.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKCharacteristicObjects.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKDevice;
+@class HKObject;
+@class HKObjectType;
+@class HKQuantity;
+@class HKQuantityType;
+@class HKQuery;
+@class HKSample;
+@class HKSampleType;
+@class HKSource;
+@class HKSourceRevision;
+@class HKUnit;
+@class HKWorkout;
+@class HKWorkoutBuilder;
+@class HKWorkoutConfiguration;
+@class HKWorkoutSession;
+
+/*!
+ @class         HKHealthStore
+ @abstract      The HKHealthStore class provides an interface for accessing and storing the user's health data.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKHealthStore : NSObject
+
+/*!
+ @method        isHealthDataAvailable
+ @abstract      Returns YES if HealthKit is supported on the device.
+ @discussion    HealthKit is not supported on all iOS devices.  Using HKHealthStore APIs on devices which are not
+                supported will result in errors with the HKErrorHealthDataUnavailable code.  Call isHealthDataAvailable
+                before attempting to use other parts of the framework.
+ */
++ (BOOL)isHealthDataAvailable;
+
+/*!
+ @method        supportsHealthRecords
+ @abstract      Returns YES if the Health Records feature is available.
+ @discussion    The Health Records feature is not available in all regions but may be present in unsupported regions
+                if accounts have already been configured. This can change as accounts are modified during device
+                restore or synchronization.
+                Call supportsHealthRecords before attempting to request authorization for any clinical types.
+ */
+- (BOOL)supportsHealthRecords API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @method        authorizationStatusForType:
+ @abstract      Returns the application's authorization status for the given object type.
+ */
+- (HKAuthorizationStatus)authorizationStatusForType:(HKObjectType *)type;
+
+/*!
+ @method        requestAuthorizationToShareTypes:readTypes:completion:
+ @abstract      Prompts the user to authorize the application for reading and saving objects of the given types.
+ @discussion    Before attempting to execute queries or save objects, the application should first request authorization
+                from the user to read and share every type of object for which the application may require access.
+ 
+                The request is performed asynchronously and its completion will be executed on an arbitrary background
+                queue after the user has responded.  If the user has already chosen whether to grant the application
+                access to all of the types provided, then the completion will be called without prompting the user.
+                The success parameter of the completion indicates whether prompting the user, if necessary, completed
+                successfully and was not cancelled by the user.  It does NOT indicate whether the application was
+                granted authorization.
+ 
+                To customize the messages displayed on the authorization sheet, set the following keys in your app's
+                Info.plist file. Set the NSHealthShareUsageDescription key to customize the message for reading data.
+                Set the NSHealthUpdateUsageDescription key to customize the message for writing data.
+ */
+- (void)requestAuthorizationToShareTypes:(nullable NSSet<HKSampleType *> *)typesToShare
+                               readTypes:(nullable NSSet<HKObjectType *> *)typesToRead
+                              completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_REFINED_FOR_SWIFT_ASYNC(3) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        requestPerObjectReadAuthorizationForType:predicate:completion:
+ @abstract      For types that support per object authorization (like vision prescriptions), prompts the user to select
+                the objects for which they want to grant your app access.
+ @discussion    Before attempting to execute queries, the application should first request authorization from the user
+                to read objects for which the application may require access.
+ 
+                The request is performed asynchronously, and its completion will be executed on an arbitrary background
+                queue after the user has responded. The user will always be prompted to provide access to objects
+                regardless of whether access had been previously provided. The user can choose to toggle each object's
+                access with each prompt. The success parameter of the completion indicates whether prompting the user
+                completed successfully and was not cancelled. It does NOT indicate whether the application was granted
+                authorization.
+  */
+- (void)requestPerObjectReadAuthorizationForType:(HKObjectType *)objectType
+                                       predicate:(nullable NSPredicate *)predicate
+                                      completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        getRequestStatusForAuthorizationToShareTypes:readTypes:completion:
+ @abstract      Determines whether requesting authorization for the given types is necessary.
+ @discussion    Applications may call this method to determine whether the user would be prompted for authorization if
+                the same collections of types are passed to requestAuthorizationToShareTypes:readTypes:completion:.
+                This determination is performed asynchronously and its completion will be executed on an arbitrary
+                background queue.
+ */
+- (void)getRequestStatusForAuthorizationToShareTypes:(NSSet<HKSampleType *> *)typesToShare
+                                           readTypes:(NSSet<HKObjectType *> *)typesToRead
+                                          completion:(void (^)(HKAuthorizationRequestStatus requestStatus, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(statusForAuthorizationRequest(toShare:read:)) API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        handleAuthorizationForExtensionWithCompletion:
+ @abstract      Prompts the user to authorize the application for reading and saving objects.
+ @discussion    When an app extension calls requestAuthorizationToShareTypes:readTypes:completion:, the parent application
+                is responsible for calling this method to prompt the user to authorize the app and its extensions for the
+                types that the extension requested access to.
+ 
+                The request is performed asynchronously and its completion will be executed on an arbitrary background
+                queue after the user has responded.  The success parameter of the completion indicates whether prompting
+                the user, if necessary, completed successfully and was not cancelled by the user.  It does NOT indicate
+                whether the application was granted authorization.
+ */
+- (void)handleAuthorizationForExtensionWithCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(ios(9.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos) NS_EXTENSION_UNAVAILABLE("Not available to extensions");
+
+/*!
+ @method        earliestPermittedSampleDate
+ @abstract      Samples prior to the earliestPermittedSampleDate cannot be saved or queried.
+ @discussion    On some platforms, only samples with end dates newer than the value returned by earliestPermittedSampleDate
+                may be saved or retrieved.
+ */
+- (NSDate *)earliestPermittedSampleDate API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        saveObject:withCompletion:
+ @abstract      Saves an HKObject.
+ @discussion    After an object is saved, on subsequent retrievals the sourceRevision property of the object will be set
+                to the HKSourceRevision representing the version of the application that saved it.
+ 
+                If the object has an HKObjectType property, then in order to save an object successfully the application
+                must first request authorization to share objects with that type.  Saving an object with the same unique
+                identifier as another object that has already been saved will fail.  When the application attempts to
+                save multiple objects, if any single object cannot be saved then none of the objects will be saved.
+                The operation will fail if the objects array contains samples with endDates that are older than the date
+                returned by earliestPermittedSampleDate.
+ 
+                This operation is performed asynchronously and the completion will be executed on an arbitrary
+                background queue.
+ */
+- (void)saveObject:(HKObject *)object withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        saveObjects:withCompletion:
+ @abstract      Saves an array of HKObjects.
+ @discussion    See discussion of saveObject:withCompletion:.
+ */
+- (void)saveObjects:(NSArray<HKObject *> *)objects withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        deleteObject:withCompletion:
+ @abstract      Deletes a single HKObject from the HealthKit database.
+ @discussion    See deleteObjects:withCompletion:.
+ */
+- (void)deleteObject:(HKObject *)object withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        deleteObjects:withCompletion:
+ @abstract      Deletes multiple HKObjects from the HealthKit database.
+ @discussion    An application may only delete objects that it previously saved.  This operation is performed
+                asynchronously and the completion will be executed on an arbitrary background queue.
+ */
+- (void)deleteObjects:(NSArray<HKObject *> *)objects withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        deleteObjectsOfType:predicate:withCompletion:
+ @abstract      Deletes all objects matching the given predicate from the HealthKit database.
+ @discussion    An application may only delete objects that it previously saved.  This operation is performed
+                asynchronously and the completion will be executed on an arbitrary background queue.
+ */
+- (void)deleteObjectsOfType:(HKObjectType *)objectType predicate:(NSPredicate *)predicate withCompletion:(void (^)(BOOL success, NSUInteger deletedObjectCount, NSError * _Nullable error))completion  NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        executeQuery:
+ @abstract      Begins executing the given query.
+ @discussion    After executing a query, the completion, update, and/or results handlers of that query will be invoked
+                asynchronously on an arbitrary background queue as results become available.  Errors that prevent a
+                query from executing will be delivered to one of the query's handlers.  Which handler the error will be
+                delivered to is defined by the HKQuery subclass.  
+ 
+                Each HKQuery instance may only be executed once and calling this method with a currently executing query
+                or one that was previously executed will result in an exception.
+                
+                If a query would retrieve objects with an HKObjectType property, then the application must request
+                authorization to access objects of that type before executing the query.
+ */
+- (void)executeQuery:(HKQuery *)query;
+
+/*!
+ @method        stopQuery:
+ @abstract      Stops a query that is executing from continuing to run.
+ @discussion    Calling this method will prevent the handlers of the query from being invoked in the future.  If the
+                query is already stopped, this method does nothing.
+ */
+- (void)stopQuery:(HKQuery *)query;
+
+/*!
+ @method        splitTotalEnergy:startDate:endDate:resultsHandler:
+ @abstract      For the time period specified, this method calculates the resting and active energy parts of the total
+                energy provided.
+ @discussion    This method uses the user's metrics like age, biological sex, body mass and height to determine
+                their basal metabolic rate. If the application does not have authorization to access these characteristics
+                or if the user has not entered their data then this method uses builtin default values.
+ */
+- (void)splitTotalEnergy:(HKQuantity *)totalEnergy
+               startDate:(NSDate *)startDate
+                 endDate:(NSDate *)endDate
+          resultsHandler:(void(^)(HKQuantity * _Nullable restingEnergy, HKQuantity * _Nullable activeEnergy, NSError * _Nullable error))resultsHandler API_DEPRECATED("No longer supported", ios(9.0, 11.0), watchos(2.0, 4.0));
+
+- (nullable NSDate *)dateOfBirthWithError:(NSError **)error API_DEPRECATED_WITH_REPLACEMENT("dateOfBirthComponentsWithError:", ios(8.0, 10.0), watchos(2.0, 3.0));
+
+/*!
+ @method        dateOfBirthComponentsWithError:
+ @abstract      Returns the user's date of birth in the Gregorian calendar.
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierDateOfBirth.
+ */
+- (nullable NSDateComponents *)dateOfBirthComponentsWithError:(NSError **)error API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        biologicalSexWithError:
+ @abstract      Returns an object encapsulating the user's biological sex.
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierBiologicalSex.
+ */
+- (nullable HKBiologicalSexObject *)biologicalSexWithError:(NSError **)error;
+
+/*!
+ @method        bloodTypeWithError:
+ @abstract      Returns an object encapsulating the user's blood type.
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierBloodType.
+ */
+- (nullable HKBloodTypeObject *)bloodTypeWithError:(NSError **)error;
+
+/*!
+ @method        fitzpatrickSkinTypeWithError:
+ @abstract      Returns an object encapsulating the user's Fitzpatrick skin type.
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierFitzpatrickSkinType.
+ */
+- (nullable HKFitzpatrickSkinTypeObject *)fitzpatrickSkinTypeWithError:(NSError **)error API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        wheelchairUseWithError:
+ @abstract      Returns an object encapsulating the user's wheelchair use.
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierWheelchairUse.
+ */
+- (nullable HKWheelchairUseObject *)wheelchairUseWithError:(NSError **)error API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        activityMoveModeWithError:
+ @abstract      Returns an object encapsulating the user's activity move mode
+ @discussion    Before calling this method, the application should request authorization to access objects with the
+                HKCharacteristicType identified by HKCharacteristicTypeIdentifierActivityMoveMode.
+ */
+- (nullable HKActivityMoveModeObject *)activityMoveModeWithError:(NSError **)error API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+@end
+
+@interface HKHealthStore (HKWorkout)
+
+/*!
+ @method        addSamples:toWorkout:completion:
+ @abstract      Associates samples with a given workout.
+ @discussion    This will associate the given samples with the given workout. These samples will then be returned by a
+                query that contains this workout as a predicate. If a sample is added that is not saved yet, then it will
+                be saved for you. Note that the sample will be saved without an HKDevice.
+ 
+                The workout provided must be one that has already been saved to HealthKit.
+ */
+- (void)addSamples:(NSArray<HKSample *> *)samples toWorkout:(HKWorkout *)workout completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(addSamples(_:to:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        startWorkoutSession:
+ @abstract      Starts the given workout session.
+ @discussion    This method will asynchronously begin a workout session. The methods on the session's delegate will be 
+                called when the session has successfully started or fails to start.
+ */
+- (void)startWorkoutSession:(HKWorkoutSession *)workoutSession API_DEPRECATED("Use HKWorkoutSession's start method", watchos(2.0, 5.0)) API_UNAVAILABLE(ios, macCatalyst, macos);
+
+/*!
+ @method        endWorkoutSession:
+ @abstract      Ends the given workout session.
+ @discussion    This method will end the given session if it is currently running. The state of the workout session will
+                transition to HKWorkoutSessionStateEnded. Once a workout session is ended, it cannot be reused to start
+                a new workout session.
+ */
+- (void)endWorkoutSession:(HKWorkoutSession *)workoutSession API_DEPRECATED("Use HKWorkoutSession's end method", watchos(2.0, 5.0)) API_UNAVAILABLE(ios, macCatalyst, macos);
+
+/*!
+ @method        pauseWorkoutSession:
+ @abstract      Pauses the given workout session.
+ @discussion    This method will pause the given session if it is currently running. The state of the workout session
+                will transition to HKWorkoutSessionStatePaused. An HKWorkoutEventTypePause will be generated and
+                delivered to the workout session's delegate.
+ */
+- (void)pauseWorkoutSession:(HKWorkoutSession *)workoutSession API_DEPRECATED("Use HKWorkoutSession's pause method", watchos(3.0, 5.0)) API_UNAVAILABLE(ios);
+
+/*!
+ @method        resumeWorkoutSession:
+ @abstract      Resumes the given workout session.
+ @discussion    This method will resume the given session if it is currently paused. The state of the workout session
+                will transition to HKWorkoutSessionStateRunning. An HKWorkoutEventTypeResume will be generated and
+                delivered to the workout session's delegate.
+ */
+- (void)resumeWorkoutSession:(HKWorkoutSession *)workoutSession API_DEPRECATED("Use HKWorkoutSession's resume method", watchos(3.0, 5.0)) API_UNAVAILABLE(ios);
+
+/*!
+ @method        startWatchAppWithWorkoutConfiguration:completion:
+ @abstract      Launches or wakes up the WatchKit app on the watch
+ @discussion    This method will launch the WatchKit app corresponding to the calling iOS application on the currently
+                active Apple Watch. After launching, the handleWorkoutConfiguration: method on the WKExtensionDelegate
+                protocol will be called with the HKWorkoutConfiguration as a parameter. The receiving Watch app can use
+                this configuration object to create an HKWorkoutSession and start it with -startWorkoutSession:.
+ */
+- (void)startWatchAppWithWorkoutConfiguration:(HKWorkoutConfiguration *)workoutConfiguration completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) NS_SWIFT_ASYNC_NAME(startWatchApp(toHandle:)) API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @method        recoverActiveWorkoutSessionWithCompletion:
+ @abstract      Recovers an active workout session after a client crash. If no session is available to be re-attached,
+                nil will be returned. If an error occurs, session will be nil and error will be set appropriately.
+ */
+- (void)recoverActiveWorkoutSessionWithCompletion:(void (^)(HKWorkoutSession * _Nullable_result session, NSError * _Nullable error))completion API_AVAILABLE(watchos(5.0)) API_UNAVAILABLE(ios, macCatalyst, macos);
+
+@end
+
+
+@interface HKHealthStore (HKBackgroundDelivery)
+
+/*!
+ @method        enableBackgroundDeliveryForType:frequency:withCompletion:
+ @abstract      This method enables activation of your app when data of the type is recorded at the cadence specified.
+ @discussion    When an app has subscribed to a certain data type it will get activated at the cadence that is specified
+                with the frequency parameter. The app is still responsible for creating an HKObserverQuery to know which
+                data types have been updated and the corresponding fetch queries. Note that certain data types (such as
+                HKQuantityTypeIdentifierStepCount) have a minimum frequency of HKUpdateFrequencyHourly. This is enforced
+                transparently to the caller.
+ */
+- (void)enableBackgroundDeliveryForType:(HKObjectType *)type frequency:(HKUpdateFrequency)frequency withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(watchos(8.0), macCatalyst(13.0), macos(13.0));
+
+- (void)disableBackgroundDeliveryForType:(HKObjectType *)type withCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(watchos(8.0), macCatalyst(13.0), macos(13.0));
+
+- (void)disableAllBackgroundDeliveryWithCompletion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) API_AVAILABLE(watchos(8.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+/*!
+ @constant      HKUserPreferencesDidChangeNotification
+ @abstract      A notification posted every time the user updates their preferred units.
+ @discussion    Each HKHealthStore posts a HKUserPreferencesDidChangeNotification notification when the preferred unit
+                for a HKQuantityType is changed by the user. To guarantee your listener will only receive a single
+                notification when this occurs, it is necessary to provide an HKHealthStore instance for the object
+                parameter of NSNotificationCenter's addObserver methods.
+ */
+HK_EXTERN NSString * const HKUserPreferencesDidChangeNotification API_AVAILABLE(ios(8.2), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+@interface HKHealthStore (HKUserPreferences)
+
+/*!
+ @method        preferredUnitsForQuantityTypes:completion:
+ @abstract      Calls the completion with the preferred HKUnits for a given set of HKQuantityTypes.
+ @discussion    A preferred unit is either the unit that the user has chosen in Health for displaying samples of the
+                given quantity type or the default unit for that type in the current locale of the device. To access the
+                user's preferences it is necessary to request read or share authorization for the set of HKQuantityTypes
+                provided. If neither read nor share authorization has been granted to the app, then the default unit for
+                the locale is provided.
+ 
+                An error will be returned when preferred units are inaccessible because protected health data is
+                unavailable or authorization status is not determined for one or more of the provided types.
+ 
+                The returned dictionary will map HKQuantityType to HKUnit.
+ */
+- (void)preferredUnitsForQuantityTypes:(NSSet<HKQuantityType *> *)quantityTypes completion:(void (^)(NSDictionary<HKQuantityType *, HKUnit *> *preferredUnits, NSError * _Nullable error))completion API_AVAILABLE(ios(8.2), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+@interface HKHealthStore (HKRecalibrateEstimates)
+
+/*!
+@method     recalibrateEstimatesForSampleType:atDate:completion:
+@abstract   Recalibrates the prediction algorithm used for this sample type.
+@discussion Check -[HKSampleType allowsRecalibrationForEstimates] to see if a given sample type is supported. Calling this method results in first-party
+ estimation algorithms to recalibrate what data is used when generating values for HKSamples of this sampleType.
+ */
+- (void)recalibrateEstimatesForSampleType:(HKSampleType *)sampleType
+                                   atDate:(NSDate *)date
+                               completion:(void(^)(BOOL success, NSError * _Nullable error))completion API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1) NS_SWIFT_NAME(recalibrateEstimates(sampleType:date:completion:));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesBuilder.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,100 @@
+//
+//  HKHeartbeatSeriesBuilder.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSeriesBuilder.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKHealthStore;
+@class HKDevice;
+@class HKHeartbeatSeriesSample;
+
+/*!
+ @class              HKHeartbeatSeriesBuilder
+ @abstract           An HKHeartbeatSeriesBuilder is used to generate an HKHeartbeatSeriesSample.
+ @discussion         This class is intended for generating an HKHeartbeatSeriesSample which represents a series of
+                     heartbeats. If the discard method is called, collected data will be deleted.
+                     Calling finishSeriesWithcompletion: will stop and complete the series. If the builder is deleted,
+                     or the client goes away before calling the finish method, data will be lost.
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKHeartbeatSeriesBuilder : HKSeriesBuilder
+
+/*!
+ @property           maximumCount
+ @abstract           The maximum number of heartbeats that can be added to an HKHeartbeatSeriesBuilder.
+ @discussion         Any calls to addHeartbeatWithTimeIntervalSinceSeriesStartDate:precededByGap:completion: once
+                     maximumCount has been reached will fail and an error will be returned in the completion handler.
+ */
+@property (class, readonly) NSUInteger maximumCount;
+
+/*!
+ @method             initWithHealthStore:device:startDate:
+ @abstract           The designated initializer to create an HKHeartbeatSeriesBuilder.
+ @discussion         The HKHealthStore is retained during the life of the object for the saving of the series data and final
+                     return of the series sample.
+ 
+ @param              healthStore  Specifies the HKHealthStore object to use for building the series.
+ @param              device       The optional device represents the HKDevice from which the data is provided.
+ @param              startDate    The start date of the HKHeartbeatSeriesSample that will be generated.
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                             device:(nullable HKDevice *)device
+                          startDate:(NSDate *)startDate NS_DESIGNATED_INITIALIZER;
+
+/*!
+ @method             addHeartbeatWithTimeIntervalSinceSeriesStartDate:precededByGap:completion:
+ @abstract           Associate a heartbeat with the receiver.
+ @discussion         Use this method to asynchronously add a heartbeat to the series.
+ 
+ @param     timeIntervalSinceStart  The elapsed time between the series startDate and the heartbeat occurence. Must be
+                                    a positive value.
+ @param              precededByGap  Whether or not this heartbeat was preceded by a gap in data collection.
+ @param              completion     The completion callback handler returns the status of the save. If the completion
+                                    handler success is NO, then error is non-nil. An error here is considered fatal and
+                                    the series builder will be complete.
+ */
+- (void)addHeartbeatWithTimeIntervalSinceSeriesStartDate:(NSTimeInterval)timeIntervalSinceStart
+                                           precededByGap:(BOOL)precededByGap
+                                              completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(addHeartbeat(at:precededByGap:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method             addMetadata:completion:
+ @discussion         Adds new metadata to the builder instance. This method can be called more than once; each time
+                     the newly provided metadata will be incorporated in the same manner as
+                     -[NSMutableDictionary addEntriesFromDictionary:].
+                     This operation is performed asynchronously and the completion will be executed on an arbitrary
+                     background queue.
+ 
+ @param              metadata    The metadata to add to the builder.
+ @param              completion  Block to be called when the addition of metadata to the builder is complete.
+                                 If success is YES, the metadata has been added to the builder successfully. If success
+                                 is NO, error will be non-null and will contain the error encountered during the
+                                 insertion operation. When an error occurs, the builder's metadata will remain unchanged.
+ */
+- (void)addMetadata:(NSDictionary<NSString *, id> *)metadata
+         completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method             finishSeriesWithCompletion:
+ @abstract           Method to stop data collection and return the associated HKHeartbeatSeriesSample.
+ @discussion         Call this method when you have added all heartbeats to this builder. The completion handler will
+                     return the saved HKHeartbeatSeriesSample. If no heartbeat was added, then heartbeatSeries will be
+                     nil and an error returned. The receiver will be considered invalid afterwards and any further calls
+                     to it will result in an error.
+
+ @param              completion  The completion callback handler returns the saved HKHeartbeatSeriesSample object. If
+                                 heartbeatSeries is nil, an error will indicate why the series could not be returned
+                                 including database inaccessibility during device lock. Subsequent requests for the
+                                 HKHeartbeatSeriesSample can be made through HKSampleQuery or similar queries. To
+                                 retrieve the data stored with an HKHeartbeatSeriesSample use HKHeartbeatSeriesQuery.
+ */
+- (void)finishSeriesWithCompletion:(void (^)(HKHeartbeatSeriesSample * _Nullable heartbeatSeries, NSError * _Nullable error))completion;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesQuery.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,44 @@
+//
+//  HKHeartbeatSeriesQuery.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKHeartbeatSeriesSample;
+
+/*!
+ @class         HKHeartbeatSeriesQuery
+ @abstract      An HKHeartbeatSeriesQuery is used to access data associated with an HKHeartbeatSeriesSample.
+ @discussion    Once instantiated, call HKHealthStore executeQuery to begin enumerating the heartbeat series data.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKHeartbeatSeriesQueryDescriptor", ios(13.0, API_TO_BE_DEPRECATED), watchos(6.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKHeartbeatSeriesQuery : HKQuery
+
+/*!
+ @method        initWithHeartbeatSeries:dataHandler:
+ @abstract      Returns a query that will retrieve heartbeat timestamps for the specified HKHeartbeatSeriesSample.
+ 
+ @param         heartbeatSeries    The HKHeartbeatSeriesSample for which the heartbeat data will be returned.
+ @param         dataHandler        The block to invoke with results from the query. It is called repeatedly for each
+                                   heartbeat in the series. timeSinceSeriesStart is the time elapsed in seconds after the
+                                   series startDate that represents when the heartbeat occured. precededByGap indicates if
+                                   there was a gap in data collection before the current heartbeat, meaning that one or more
+                                   heartbeats may have occured since the previous heartbeat in the series. Once done is YES,
+                                   or stopQuery called, the query is complete and no more calls to the handler will be made.
+ */
+- (instancetype)initWithHeartbeatSeries:(HKHeartbeatSeriesSample *)heartbeatSeries
+                            dataHandler:(void(^)(HKHeartbeatSeriesQuery *query, NSTimeInterval timeSinceSeriesStart, BOOL precededByGap, BOOL done, NSError * _Nullable error))dataHandler NS_DESIGNATED_INITIALIZER;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKHeartbeatSeriesSample.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,22 @@
+//
+//  HKHeartbeatSeriesSample.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSeriesSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKHeartbeatSeriesSample
+ @abstract      An HKHeartbeatSeriesSample represents a series of heartbeats.
+ @discussion    To retrieve the underlying series data for an HKHeartbeatSeriesSample, use HKHeartbeatSeriesQuery
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKHeartbeatSeriesSample : HKSeriesSample
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLensSpecification.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLensSpecification.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLensSpecification.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLensSpecification.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,51 @@
+//
+//  HKLensSpecification.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+
+@class HKQuantity;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKLensSpecification
+ @abstract      An object subclass representing common lens specification
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKLensSpecification : NSObject
+
+/*!
+ @property      sphere
+ @abstract      The lens power to correct nearsightedness or farsightedness. (-) means nearsighted while (+) farsighted.
+ */
+@property (nonatomic, copy, readonly) HKQuantity *sphere;
+
+/*!
+ @property      cylinder
+ @abstract      The lens power required to correct astigmatism. Can be positive or negative.
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *cylinder;
+
+/*!
+ @property      axis
+ @abstract      The angle along which cylindrical power should be positioned to correct astigmatism
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *axis;
+
+/*!
+ @property      addPower
+ @abstract      The power adjustment applied to a multifocal lens to correct presbyopia
+ */
+@property (nonatomic, copy, readonly, nullable) HKQuantity *addPower;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutBuilder.h	2022-05-31 15:04:05.000000000 -0400
@@ -0,0 +1,112 @@
+//
+//  HKLiveWorkoutBuilder.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HealthKit.h>
+#import <HealthKit/HKWorkoutBuilder.h>
+#import <HealthKit/HKLiveWorkoutDataSource.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKLiveWorkoutBuilder;
+
+HK_EXTERN API_AVAILABLE(watchos(5.0)) API_UNAVAILABLE(ios)
+@protocol HKLiveWorkoutBuilderDelegate <NSObject>
+
+/*!
+ @method        workoutBuilder:didCollectDataOfTypes:
+ @abstract      Called every time new samples are added to the workout builder.
+ @discussion    With new samples added, statistics for the collectedTypes may have changed and should be read again
+ 
+ @param         workoutBuilder    The workout builder to which samples were added.
+ @param         collectedTypes    The sample types that were added.
+ */
+- (void)workoutBuilder:(HKLiveWorkoutBuilder *)workoutBuilder didCollectDataOfTypes:(NSSet<HKSampleType *> *)collectedTypes;
+
+/*!
+ @method        workoutBuilderDidCollectEvent:
+ @abstract      Called every time a new event is added to the workout builder.
+ 
+ @param         workoutBuilder    The workout builder to which an event was added.
+ */
+- (void)workoutBuilderDidCollectEvent:(HKLiveWorkoutBuilder *)workoutBuilder;
+
+@optional
+
+/*!
+ @method        workoutBuilder:didBeginActivity:
+ @abstract      Called every time new activity is started and added to the workout builder.
+ 
+ @param         workoutBuilder      The workout builder to which the activity was added to.
+ @param         workoutActivity     The activity that was added.
+ */
+- (void)workoutBuilder:(HKLiveWorkoutBuilder *)workoutBuilder didBeginActivity:(HKWorkoutActivity *)workoutActivity API_AVAILABLE(watchos(9.0));
+
+/*!
+ @method        workoutBuilder:didEndActivity:
+ @abstract      Called every time the end date is set on an activity in the workout builder.
+ 
+ @param         workoutBuilder      The workout builder to which the activity belongs to
+ @param         workoutActivity     The activity that was ended.
+ */
+- (void)workoutBuilder:(HKLiveWorkoutBuilder *)workoutBuilder didEndActivity:(HKWorkoutActivity *)workoutActivity API_AVAILABLE(watchos(9.0));
+
+@end
+
+HK_EXTERN API_AVAILABLE(watchos(5.0)) API_UNAVAILABLE(ios)
+@interface HKLiveWorkoutBuilder : HKWorkoutBuilder
+
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                      configuration:(HKWorkoutConfiguration *)configuration
+                             device:(nullable HKDevice *)device NS_UNAVAILABLE;
+
+/*!
+ @property      delegate
+ @abstract      The delegate object which will be notified of changes to collected data and elapsed workout time.
+ */
+@property (weak) id<HKLiveWorkoutBuilderDelegate> delegate;
+
+/*!
+ @property      workoutSession
+ @abstract      The workout session with which this builder is associated.
+ */
+@property (weak, readonly) HKWorkoutSession *workoutSession;
+
+/*!
+ @property      shouldCollectWorkoutEvents
+ @abstract      Whether or not the builder should automatically incorporate events generated by the session.
+ @discussion    YES if the builder should automatically incorporate events from the associated session. If NO, the client
+                is expected to add relevant events directly to the builder and those generated by the session will be
+                ignored. Defaults to YES. The result of changing this value after a call to
+                beginCollectionWithStartDate:completion: is undefined.
+ */
+@property (assign) BOOL shouldCollectWorkoutEvents;
+
+/*!
+ @property      dataSource
+ @abstract      The data source that will provide data to this workout builder.
+ */
+@property (strong, nullable) HKLiveWorkoutDataSource *dataSource;
+
+/*!
+ @property      elapsedTime
+ @abstract      The elapsed duration of the workout as constructed thus far, considering paused time. When the builder
+                is reading events from an active session, it is possible for this value to increase or decrease;
+                when this occurs, the workoutBuilderDidCollectEvent: delegate method will be called.
+ */
+@property (assign, readonly) NSTimeInterval elapsedTime;
+
+/*!
+ @property      currentWorkoutActivity
+ @abstract      The latest activity that has been added to this builder.
+ @discussion    When an activity is in progress it will be returned by this property. The end date of this activity will always
+                be nil. When the activity is ended, the property would be set to nil until a new activity begins.
+ */
+@property (copy, readonly, nullable) HKWorkoutActivity *currentWorkoutActivity API_AVAILABLE(watchos(9.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutDataSource.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutDataSource.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutDataSource.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKLiveWorkoutDataSource.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,64 @@
+//
+//  HKLiveWorkoutDataSource.h
+//  HealthKit
+//
+//  Copyright © 2017 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKWorkoutBuilder.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKWorkoutConfiguration;
+@class HKQuantityType;
+
+/*!
+ @class         HKLiveWorkoutDataSource
+ @discussion    An HKLiveWorkoutDataSource is to be used with an HKWorkoutBuilder to automatically collect samples
+ */
+HK_EXTERN API_AVAILABLE(watchos(5.0)) API_UNAVAILABLE(ios)
+@interface HKLiveWorkoutDataSource : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @property      typesToCollect
+ @abstract      The quantity types the receiver is collecting.
+ */
+@property (copy, readonly) NSSet<HKQuantityType *> *typesToCollect;
+
+/*!
+ @method        initWithHealthStore:workoutConfiguration:
+ @abstract      The designated initializer of HKLiveWorkoutDataSource.
+ 
+ @param         healthStore     The HKHealthStore. This should match the one used to create the corresponding
+                                HKWorkoutBuilder.
+ @param         configuration   An optional workout configuration. typesToCollect will be populated with default
+                                types for the workout configuration
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+               workoutConfiguration:(nullable HKWorkoutConfiguration *)configuration NS_DESIGNATED_INITIALIZER;
+
+/*!
+ @method        enableCollectionForType:predicate
+ @abstract      Adds a new type of quantity sample to collect.
+ @discussion    Calling this method for a type that is already being collected will override the predicate for that type.
+ 
+ @param         quantityType    The type of sample to collect.
+ @param         predicate       If non-nil, collected samples must match this predicate.
+ */
+- (void)enableCollectionForType:(HKQuantityType *)quantityType
+                      predicate:(nullable NSPredicate *)predicate;
+
+/*!
+ @method        disableCollectionForType:
+ @abstract      Removes the specified quantity type from the types to collect.
+ 
+ @param         quantityType    The type of sample to no longer collect.
+ */
+- (void)disableCollectionForType:(HKQuantityType *)quantityType;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKMetadata.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKMetadata.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKMetadata.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKMetadata.h	2022-05-31 14:49:27.000000000 -0400
@@ -0,0 +1,691 @@
+//
+//  HKMetadata.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @constant      HKMetadataKeyUDIProductionIdentifier
+ @abstract      Represents the serial number of the device that created the HKObject.
+ @discussion    The expected value type is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeyDeviceSerialNumber API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyBodyTemperatureSensorLocation
+ @abstract      Represents the location where a particular body temperature reading was taken.
+ @discussion    The expected value type is an NSNumber containing a HKBodyTemperatureSensorLocation value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyBodyTemperatureSensorLocation API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKBodyTemperatureSensorLocation) {
+    HKBodyTemperatureSensorLocationOther = 0,
+    HKBodyTemperatureSensorLocationArmpit,
+    HKBodyTemperatureSensorLocationBody,
+    HKBodyTemperatureSensorLocationEar,
+    HKBodyTemperatureSensorLocationFinger,
+    HKBodyTemperatureSensorLocationGastroIntestinal,
+    HKBodyTemperatureSensorLocationMouth,
+    HKBodyTemperatureSensorLocationRectum,
+    HKBodyTemperatureSensorLocationToe,
+    HKBodyTemperatureSensorLocationEarDrum,
+    HKBodyTemperatureSensorLocationTemporalArtery,
+    HKBodyTemperatureSensorLocationForehead,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateSensorLocation
+ @abstract      Represents the location where a particular heart rate reading was taken.
+ @discussion    The expected value type is an NSNumber containing a HKHeartRateSensorLocation value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateSensorLocation API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKHeartRateSensorLocation) {
+    HKHeartRateSensorLocationOther = 0,
+    HKHeartRateSensorLocationChest,
+    HKHeartRateSensorLocationWrist,
+    HKHeartRateSensorLocationFinger,
+    HKHeartRateSensorLocationHand,
+    HKHeartRateSensorLocationEarLobe,
+    HKHeartRateSensorLocationFoot,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateMotionContext
+ @abstract      Represents the context in which a particular heart rate reading was taken.
+ @discussion    The expected value type is an NSNumber containing a HKHeartRateMotionContext value. The value is active
+                (HKHeartRateMotionContextActive) if the user is in motion or working out, sedentary if the user is
+                still (HKHeartRateMotionContextSedentary), or not set (HKHeartRateMotionContextNotSet) otherwise.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateMotionContext API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKHeartRateMotionContext) {
+    HKHeartRateMotionContextNotSet = 0,
+    HKHeartRateMotionContextSedentary,
+    HKHeartRateMotionContextActive,
+} API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyUserMotionContext
+ @abstract      Represents the user's motion when a particular sample was taken.
+ @discussion    The expected value type is an NSNumber containing a HKUserMotionContext value. The value is active
+                (HKUserMotionContextActive) if the user is in motion or working out, stationary if the user is
+                still (HKUserMotionContextStationary), or not set (HKUserMotionContextNotSet) otherwise.
+ */
+HK_EXTERN NSString * const HKMetadataKeyUserMotionContext API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKUserMotionContext) {
+    HKUserMotionContextNotSet = 0,
+    HKUserMotionContextStationary,
+    HKUserMotionContextActive,
+} API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySessionEstimate
+ @abstract      Represents a per-session estimate prior to longitudinal smoothing applied to the value stored in the associated HKQuantitySample.
+ @discussion    The expected value type is an HKQuantity object with a unit compatible with the associated HKQuantitySample.
+ */
+HK_EXTERN NSString * const HKMetadataKeySessionEstimate API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @enum          HKHeartRateRecoveryTestType
+ @abstract      Represents the test used to determine a Heart Rate Recovery value
+
+ @constant      HKHeartRateRecoveryTestTypeMaxExercise                  The user was exerted to their physical limit to evaluate actual Heart Rate Recovery.
+ @constant      HKHeartRateRecoveryTestTypePredictionSubMaxExercise     A specific test protocol was used to calculate and correlate a predicted Heart Rate Recovery.
+ @constant      HKHeartRateRecoveryTestTypePredictionNonExercise        A non-exercise equation was used based on user metrics to calculate a predicted Heart Rate Recovery.
+ */
+typedef NS_ENUM(NSInteger, HKHeartRateRecoveryTestType) {
+    HKHeartRateRecoveryTestTypeMaxExercise = 1,
+    HKHeartRateRecoveryTestTypePredictionSubMaxExercise,
+    HKHeartRateRecoveryTestTypePredictionNonExercise,
+} API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateRecoveryTestType
+ @abstract      Represents the test used to determine a Heart Rate Recovery value
+ @discussion    The expected value type is an NSNumber containing a HKHeartRateRecoveryTestType value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateRecoveryTestType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateRecoveryActivityType
+ @abstract      Represents the activity which preceded a Heart Rate Recovery value
+ @discussion    The expected value type is an NSNumber containing a HKWorkoutActivityType value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateRecoveryActivityType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateRecoveryActivityDuration
+ @abstract      Represents the duration of activity which preceded a Heart Rate Recovery value
+ @discussion    The expected value type is an HKQuantity object compatible with a time unit.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateRecoveryActivityDuration API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateRecoveryMaxObservedRecoveryHeartRate
+ @abstract      Represents the maximum heart rate observed during the corresponding Heart Rate Recovery sample interval
+ @discussion    The expected value type is an HKQuantity object compatible with "count/min" unit (eg "BPM").
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateRecoveryMaxObservedRecoveryHeartRate API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyFoodType
+ @abstract      Represents the type of food that was consumed when creating an HKObject.
+ @discussion    This should be a short string representing the type of food, such as 'Banana'. The expected value type
+                is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeyFoodType API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyUDIDeviceIdentifier
+ @abstract      Represents the device identifier portion of a device's UDI (Unique Device Identifier).
+ @discussion    The device identifier can be used to reference the GUDID (Globally Unique Device Identifier Database).
+                The expected value type is NSString.
+ 
+                ** Note that the use of this key is now discouraged in favor of the HKDevice class.
+ */
+HK_EXTERN NSString * const HKMetadataKeyUDIDeviceIdentifier API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyUDIProductionIdentifier
+ @abstract      Represents the production identifier portion of a device's UDI (Unique Device Identifier).
+ @discussion    While part of a device's UDI, the production identifier is not saved in the FDA's GUDID 
+                (Globally Unique Device Identifier Database) and its use in HealthKit is now discouraged for
+                user privacy reasons. Apps should consider handling this independently of HealthKit APIs if
+                needed.
+                The expected value type is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeyUDIProductionIdentifier API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyDigitalSignature
+ @abstract      Represents a digital signature validating the origin of an HKObject's value.
+ @discussion    Intended to provide data integrity for sample data produced by trusted (tamper resistant) measuring devices.
+                The digital signature format should be CMS (Cryptographic Message Syntax specified in IETF RFC 5652).
+                It should be a “Signed-data” type signature containing the data items to be signed (e.g., timestamp, value, etc.)
+                using ASN.1 encoding with DER (Distinguished Encoding Rules). The entire enveloping signature should be further
+                encoded using base64. Recommended digest is SHA256, and recommended cipher is FIPS PUB 186-4 Digital Signature 
+                Standard Elliptic Curve P-256. See documentation for details.
+
+ */
+HK_EXTERN NSString * const HKMetadataKeyDigitalSignature API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyExternalUUID
+ @abstract      Represents a unique identifier for an HKObject that is set by its source.
+                Uniqueness of objects with the same value of this key is not enforced by HealthKit.
+ @discussion    The expected value type is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeyExternalUUID API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySyncIdentifier
+ @abstract      Represents an identifier for an HKObject that is set by its source and is used by HealthKit to uniquely
+                identify an object.
+ @discussion    Saving a HKObject with a HKMetadataKeySyncIdentifier will replace an existing HKObject with the
+                same HKMetadataKeySyncIdentifier value if the new HKObject has a greater HKMetadataKeySyncVersion.
+                The new sample will be added to all HKWorkouts or HKCorrelations containing the replaced sample.
+                HKMetadataKeySyncVersion must be provided if HKMetadataKeySyncIdentifier is provided.
+                The expected value type is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeySyncIdentifier API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySyncVersion
+ @abstract      Represents the version of the HKObject that is set by its source and is used by HealthKit to identify an
+                object's version.
+ @discussion    HKMetadataKeySyncVersion may not be provided if HKMetadataKeySyncIdentifier is not provided.
+                The expected value type is NSNumber.
+ */
+HK_EXTERN NSString * const HKMetadataKeySyncVersion API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyTimeZone
+ @abstract      Represents the time zone that the user was in when the HKObject was created.
+ @discussion    The expected value type is an NSString compatible with NSTimeZone's +timeZoneWithName:.
+ */
+HK_EXTERN NSString * const HKMetadataKeyTimeZone API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+
+/*!
+ @constant      HKMetadataKeyDeviceName
+ @abstract      Represents the name of the device that took the reading.
+ @discussion    The expected value type is NSString.
+ 
+                ** Note that the use of this key is now discouraged in favor of the HKDevice class.
+ */
+HK_EXTERN NSString * const HKMetadataKeyDeviceName API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyDeviceManufacturerName
+ @abstract      Represents the name of the manufacturer of the device that took the reading.
+ @discussion    The expected value type is NSString.
+ 
+                ** Note that the use of this key is now discouraged in favor of the HKDevice class.
+ */
+HK_EXTERN NSString * const HKMetadataKeyDeviceManufacturerName API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyWasTakenInLab
+ @abstract      Represents whether or not the reading was taken in a lab.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWasTakenInLab API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyReferenceRangeLowerLimit
+ @abstract      Represents the lower limit of the reference range for a lab result.
+ @discussion    The expected value type is an NSNumber.
+ */
+HK_EXTERN NSString * const HKMetadataKeyReferenceRangeLowerLimit API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyReferenceRangeUpperLimit
+ @abstract      Represents the upper limit of the reference range for a lab result.
+ @discussion    The expected value type is an NSNumber.
+ */
+HK_EXTERN NSString * const HKMetadataKeyReferenceRangeUpperLimit API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyWasUserEntered
+ @abstract      Represents whether or not the reading was entered by the user.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWasUserEntered API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyWorkoutBrandName
+ @abstract      Represents the brand name of a particular workout.
+ @discussion    The expected value type is NSString.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWorkoutBrandName API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyGroupFitness
+ @abstract      Represents whether or not a workout was performed as part of a group fitness class.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyGroupFitness API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyIndoorWorkout
+ @abstract      Represents whether or not a workout was performed indoors as opposed to outdoors.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyIndoorWorkout API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyCoachedWorkout
+ @abstract      Represents whether or not a workout was performed with a coach or personal trainer.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyCoachedWorkout API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKWeatherCondition) {
+    HKWeatherConditionNone = 0,
+    HKWeatherConditionClear,
+    HKWeatherConditionFair,
+    HKWeatherConditionPartlyCloudy,
+    HKWeatherConditionMostlyCloudy,
+    HKWeatherConditionCloudy,
+    HKWeatherConditionFoggy,
+    HKWeatherConditionHaze,
+    HKWeatherConditionWindy,
+    HKWeatherConditionBlustery,
+    HKWeatherConditionSmoky,
+    HKWeatherConditionDust,
+    HKWeatherConditionSnow,
+    HKWeatherConditionHail,
+    HKWeatherConditionSleet,
+    HKWeatherConditionFreezingDrizzle,
+    HKWeatherConditionFreezingRain,
+    HKWeatherConditionMixedRainAndHail,
+    HKWeatherConditionMixedRainAndSnow,
+    HKWeatherConditionMixedRainAndSleet,
+    HKWeatherConditionMixedSnowAndSleet,
+    HKWeatherConditionDrizzle,
+    HKWeatherConditionScatteredShowers,
+    HKWeatherConditionShowers,
+    HKWeatherConditionThunderstorms,
+    HKWeatherConditionTropicalStorm,
+    HKWeatherConditionHurricane,
+    HKWeatherConditionTornado,
+} API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyWeatherCondition
+ @abstract      Represents the weather condition during the sample.
+ @discussion    The expected value type is an NSNumber containing an HKWeatherCondition value. This key may be set on an
+                HKWorkout object to represent the overall weather condition during the workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWeatherCondition API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyWeatherTemperature
+ @abstract      Represents the weather temperature during the sample.
+ @discussion    The expected value type is an HKQuantity expressed in a temperature unit. This key may be set on an
+                HKWorkout object to represent the overall temperature during the workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWeatherTemperature API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHumidity
+ @abstract      Represents the weather humidity during the sample.
+ @discussion    The expected value type is an HKQuantity expressed in percent. This key may be set on an HKWorkout
+                object to represent the overall humidity during the workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeyWeatherHumidity API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySexualActivityProtectionUsed
+ @abstract      Represents whether or not protection was used during sexual activity. This can be used to track either
+                protection from STIs or protection from pregnancy.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeySexualActivityProtectionUsed API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyMenstrualCycleStart
+ @abstract      Indicates whether or not the sample represents the start of a menstrual cycle. This is a required
+                metadata key for category samples of type HKCategoryTypeIdentifierMenstrualFlow.
+ @discussion    The expected value type is an NSNumber containing a BOOL value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyMenstrualCycleStart API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyLapLength
+ @abstract      Represents the length of a lap recorded during a workout.
+ @discussion    The expected value type is an HKQuantity object compatible with a length unit. This key may be set on an
+                HKWorkout object to represent the length of a lap.
+ */
+HK_EXTERN NSString * const HKMetadataKeyLapLength API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKWorkoutSwimmingLocationType
+ @abstract      This enumerated type is used to represent the location type of a swimming workout.
+ @discussion    This value indicates whether a swimming workout was performed in a pool or open water.
+ */
+typedef NS_ENUM(NSInteger, HKWorkoutSwimmingLocationType) {
+    HKWorkoutSwimmingLocationTypeUnknown = 0,
+    HKWorkoutSwimmingLocationTypePool,
+    HKWorkoutSwimmingLocationTypeOpenWater,
+} API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySwimmingLocationType
+ @abstract      Represents the location type of a swimming workout.
+ @discussion    The expected value type is an NSNumber containing an HKWorkoutSwimmingLocationType value. This key may
+                be set on an HKWorkout object to represent the swimming location type.
+ */
+HK_EXTERN NSString * const HKMetadataKeySwimmingLocationType API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKSwimmingStrokeStyle
+ @abstract      Represents a style of stroke used during a swimming workout.
+ */
+typedef NS_ENUM(NSInteger, HKSwimmingStrokeStyle) {
+    HKSwimmingStrokeStyleUnknown = 0,
+    HKSwimmingStrokeStyleMixed,
+    HKSwimmingStrokeStyleFreestyle,
+    HKSwimmingStrokeStyleBackstroke,
+    HKSwimmingStrokeStyleBreaststroke,
+    HKSwimmingStrokeStyleButterfly,
+    HKSwimmingStrokeStyleKickboard API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)),
+} API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySwimmingStrokeStyle
+ @abstract      Represents the predominant stroke style during a lap of a swimming workout.
+ @discussion    The expected value type is an NSNumber containing an HKSwimmingStrokeStyle value. This key may be set on
+                an HKWorkoutEvent object with the type HKWorkoutEventTypeLap to represent the predominant style used
+                during the lap.
+ */
+HK_EXTERN NSString * const HKMetadataKeySwimmingStrokeStyle API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKInsulinDeliveryReason
+ @abstract      Represents a medical reason for the delivery of insulin
+ 
+ @constant      HKInsulinDeliveryReasonBasal  Delivery for the base metabolic needs of the individual, often
+                                              administered as a continuous rate from an insulin pump, or a periodic
+                                              injection of slow-acting insulin.
+ @constant      HKInsulinDeliveryReasonBolus  Delivery for the episodic needs of the individual, such as a meal or
+                                              glucose level correction.
+ */
+
+typedef NS_ENUM(NSInteger, HKInsulinDeliveryReason) {
+    HKInsulinDeliveryReasonBasal = 1,
+    HKInsulinDeliveryReasonBolus,
+} API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyInsulinDeliveryReason
+ @abstract      Represents the medical reason for the delivery of an insulin dose. This is a required metadata key for
+                samples of type HKQuantityTypeIdentifierInsulinDelivery.
+ @discussion    The expected value type is an NSNumber containing a HKInsulinDeliveryReason value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyInsulinDeliveryReason API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKBloodGlucoseMealTime
+ @abstract      Indicates how your blood glucose reading relates to a meal.
+
+ @constant      HKBloodGlucoseMealTimePreprandial   A glucose value measured at the time just before a meal.
+ @constant      HKBloodGlucoseMealTimePostprandial  A glucose value measured after a meal.
+ */
+typedef NS_ENUM(NSInteger, HKBloodGlucoseMealTime) {
+    HKBloodGlucoseMealTimePreprandial = 1,
+    HKBloodGlucoseMealTimePostprandial,
+} API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyBloodGlucoseMealTime
+ @abstract      Indicates the relative timing of a blood glucose reading to a meal.
+ @discussion    This timing, as well as other factors like meal composition, can be used by medical professionals to
+                determine the acceptable value range for a blood glucose reading. For use cases requiring the capture of
+                precise timing and composition information, developers should record additional dietary samples, such as
+                HKQuantityTypeIdentifierDietaryCarbohydrates. The expected value type is an NSNumber containing a
+                HKBloodGlucoseMealTime value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyBloodGlucoseMealTime API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @enum          HKVO2MaxTestType
+ @abstract      Represents the test used to create a VO2 Max Sample.
+ 
+ @constant      HKVO2MaxTestTypeMaxExercise                      The user was exerted to their physical limit to evaluate and measure actual VO2Max.
+ @constant      HKVO2MaxTestTypePredictionSubMaxExercise         A specific test protocol was used to calculate and correlate a predicted VO2Max.
+ @constant      HKVO2MaxTestTypePredictionNonExercise            A non-exercise equation was used based on user metrics to calculate a predicted VO2Max.
+ */
+typedef NS_ENUM(NSInteger, HKVO2MaxTestType) {
+    HKVO2MaxTestTypeMaxExercise = 1,
+    HKVO2MaxTestTypePredictionSubMaxExercise,
+    HKVO2MaxTestTypePredictionNonExercise,
+} API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyVO2MaxTestType
+ @abstract      Represents the test used to create VO2 Max Sample
+ @discussion    The expected value type is an NSNumber containing a HKVO2MaxTestType value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyVO2MaxTestType API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAverageSpeed
+ @abstract      Represents the average speed for a workout segment or distance sample.
+ @discussion    This represents the average speed when moving so it may not match the value of distance/time for a
+ distance sample.
+ 
+ The expected value type is an HKQuantity object compatible with a speed unit (e.g. m/s). This key may be
+ set on quantity samples of type HKQuantityTypeIdentifierDistanceDownhillSnowSports or a workout segment
+ representing a skiing run.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAverageSpeed API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyMaximumSpeed
+ @abstract      Represents the maximum speed for a workout segment or distance sample.
+ @discussion    The expected value type is an HKQuantity object compatible with a speed unit (e.g. m/s). This key may be
+ set on quantity samples of type HKQuantityTypeIdentifierDistanceDownhillSnowSports or a workout segment
+ representing a skiing run.
+ */
+HK_EXTERN NSString * const HKMetadataKeyMaximumSpeed API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAlpineSlopeGrade
+ @abstract      Represents the grade of a ski run.
+ @discussion    Alpine slope grade is measured in percent where 100% grade is a 45 degree slope.
+ 
+ The expected value type is an HKQuantity object compatible with percent unit. This key may be set on
+ quantity samples of type HKQuantityTypeIdentifierDistanceDownhillSnowSports or a workout segment
+ representing a skiing run.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAlpineSlopeGrade API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyElevationAscended
+ @abstract      Represents the cumulative elevation ascent during a workout.
+ @discussion    The expected value type is an HKQuantity object compatible with length unit. This key may be set on a
+ workout, workout segments or distance samples.
+ */
+HK_EXTERN NSString * const HKMetadataKeyElevationAscended API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyElevationDescended
+ @abstract      Represents the cumulative elevation descent during a workout.
+ @discussion    The expected value type is an HKQuantity object compatible with length unit. This key may be set on a
+ workout, workout segments or distance samples.
+ */
+HK_EXTERN NSString * const HKMetadataKeyElevationDescended API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyFitnessMachineDuration
+ @abstract      Represents the workout duration as displayed by a GymKit connected fitness machine.
+ @discussion    The expected value type is an HKQuantity object compatible with a time unit. This key may be set on an
+                HKWorkout object to represent the duration of the workout as displayed by a GymKit connected fitness
+                machine.
+ */
+HK_EXTERN NSString * const HKMetadataKeyFitnessMachineDuration API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyIndoorBikeDistance
+ @abstract      Represents the distance covered during an indoor bike workout.
+ @discussion    The expected value type is an HKQuantity object compatible with a length unit. This key may be set on an
+                HKWorkout object to represent the distance covered during an indoor bike workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeyIndoorBikeDistance API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyCrossTrainerDistance
+ @abstract      Represents the distance covered during a cross trainer workout.
+ @discussion    The expected value type is an HKQuantity object compatible with a length unit. This key may be set on an
+                HKWorkout object to represent the distance covered during a cross trainer workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeyCrossTrainerDistance API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyHeartRateEventThreshold
+ @abstract      Represents the threshold heart rate that triggered a heart rate event.
+ @discussion    The expected value is an HKQuantity object with a compatible unit (e.g. count/min).
+                This key will be set on heart rate event samples of type HKCategoryTypeIdentifierHighHeartRateEvent and
+                HKCategoryTypeIdentifierLowHeartRateEvent.
+ */
+HK_EXTERN NSString * const HKMetadataKeyHeartRateEventThreshold API_AVAILABLE(ios(12.2), watchos(5.2), macCatalyst(13.0), macos(13.0));
+
+
+/*!
+ @constant      HKMetadataKeyAverageMETs
+ @abstract      Represents the average METs, or Metabolic Equivalent of Task during a workout.
+ @discussion    The expected value type is an HKQuantity expressed in a METs (kcal/(kg*hr)) unit. This key may be set on an
+                HKWorkout object to represent the average workout intensity represented as METs over the entire workout duration.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAverageMETs API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAudioExposureLevel
+ @abstract      Represents the audio level associated with an audio event.
+ @discussion    The expected value is an HKQuantity whose value is the audio level
+                associated with the event measured in dBASPL units.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAudioExposureLevel API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+@constant      HKMetadataKeyAudioExposureDuration
+@abstract      Represents the duration of time that is covered by audio samples.
+@discussion    The expected value type is an HKQuantity object compatible with a time unit.
+               This key may be set on headphone audio exposure event samples to indicate
+               the duration of time that the user was actually exposed to audio through their headphones.
+*/
+HK_EXTERN NSString * const HKMetadataKeyAudioExposureDuration API_AVAILABLE(ios(14.2), watchos(7.1), macCatalyst(14.2), macos(13.0));
+
+/*!
+ @enum          HKAppleECGAlgorithmVersion
+ @abstract      Indicates which algorithm version number was used by the ECG app on Apple Watch.
+
+ @constant      HKAppleECGAlgorithmVersion1   Apple Watch used a version 1 algorithm to generate this ECG.
+ */
+typedef NS_ENUM(NSInteger, HKAppleECGAlgorithmVersion) {
+    HKAppleECGAlgorithmVersion1 = 1,
+    HKAppleECGAlgorithmVersion2 API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0)) = 2,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAppleECGAlgorithmVersion
+ @abstract      Represents the ECG algorithm version that was used to generate a particular HKElectrocardiogram.
+ @discussion    The expected value type is an an NSNumber containing a HKAppleECGAlgorithmVersion value.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAppleECGAlgorithmVersion API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+ @enum          HKDevicePlacementSide
+ @abstract      The detected placement of the device during the bout of walking
+ @constant      HKDevicePlacementSideUnknown                     Unable to determine the placement of the device
+ @constant      HKDevicePlacementSideLeft                        Device predominantly worn on left side
+ @constant      HKDevicePlacementSideRight                       Device predominantly worn on right side
+ @constant      HKDevicePlacementSideCentral                     Device predominantly worn on the middle of the body
+ */
+typedef NS_ENUM(NSInteger, HKDevicePlacementSide) {
+    HKDevicePlacementSideUnknown = 0,
+    HKDevicePlacementSideLeft,
+    HKDevicePlacementSideRight,
+    HKDevicePlacementSideCentral,
+} API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyDevicePlacementSide
+ @abstract      Represents the detected placement of the device during the bout of walking
+ @discussion    The expected value type is an NSNumber containing a HKDevicePlacementSide value.  This key is expected to
+                be written for Walking Aymmetry Percentage.
+ */
+HK_EXTERN NSString * const HKMetadataKeyDevicePlacementSide API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+@constant      HKMetadataKeyBarometricPressure
+@abstract      Represents the barometric pressure recorded at the time of a sample.
+@discussion    The expected value type is an HKQuantity representing a value in units of pressure (atmospheres, pascals, millimeters of Mercury).
+*/
+HK_EXTERN NSString * const HKMetadataKeyBarometricPressure API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAppleDeviceCalibrated
+ @abstract      Represents the calibration status of the devices used to generate this sample.
+ @discussion    The expected value is a boolean NSNumber indicating whether the sample value was estimated using a sufficient set of device calibration data. The calibration status of a device may vary per data type. This key is read-only.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAppleDeviceCalibrated API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
+
+/*!
+@constant      HKMetadataKeyVO2MaxValue
+@abstract      Represents a VO2Max value that can be associated with, for example, Cardio Fitness Events
+@discussion    This key should be used to store an HKQuantity with a unit of `ml/kg·min`
+*/
+HK_EXTERN NSString * const HKMetadataKeyVO2MaxValue API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+
+/*!
+@constant      HKMetadataKeyLowCardioFitnessEventThreshold
+@abstract      Can be used to store a snapshot of the threshold used to classify VO2Max values as "low"
+@discussion    This key should be used to store an HKQuantity, with a unit of `ml/kg·min`, representing the low fitness threshold.
+*/
+HK_EXTERN NSString * const HKMetadataKeyLowCardioFitnessEventThreshold API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+
+/*!
+@constant      HKMetadataKeyDateOfEarliestDataUsedForEstimate
+@abstract      Represents how far back an estimation algorithm incorporated data from.
+@discussion    The expected value is an NSDate indicating the earliest date of data used to produce an estimated value for an HKSample.
+*/
+HK_EXTERN NSString * const HKMetadataKeyDateOfEarliestDataUsedForEstimate API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyAlgorithmVersion
+ @abstract      The version of the algorithm used to generate the sample.
+ @discussion    The key for an NSNumber containing an NSInteger indicating the version of the algorithm used to generate the sample.
+ */
+HK_EXTERN NSString * const HKMetadataKeyAlgorithmVersion API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeySWOLFScore
+ @abstract      Represents sum of strokes per length and time for the length. Calculated for each lap event and segment event during swimming workout.
+ @discussion    The expected value type is an NSNumber containing a score. This key may be set on an HKWorkout object to represent the SWOLF Score during the whole workout.
+ */
+HK_EXTERN NSString * const HKMetadataKeySWOLFScore API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyQuantityClampedToLowerBound
+ @abstract      Represents the quantity being clamped to a lower bound.
+ @discussion    Value is a BOOL indicating whether or not the quantity value in the sample has been clamped to some lower bound
+ */
+HK_EXTERN NSString * const HKMetadataKeyQuantityClampedToLowerBound API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @constant      HKMetadataKeyQuantityClampedToUpperBound
+ @abstract      Represents the quantity being clamped to an upper bound.
+ @discussion    Value is a BOOL indicating whether or not the quantity value in the sample has been clamped to some upper bound
+ */
+HK_EXTERN NSString * const HKMetadataKeyQuantityClampedToUpperBound API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObject.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObject.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObject.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObject.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,61 @@
+//
+//  HKObject.h
+//  HealthKit
+//
+//  Copyright (c) 2014 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKSource;
+@class HKSourceRevision;
+@class HKDevice;
+
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKObject : NSObject <NSSecureCoding>
+
+/*!
+ @property      UUID
+ @abstract      A unique identifier of the receiver in the HealthKit database.
+ */
+@property (readonly, strong) NSUUID *UUID;
+
+@property (readonly, strong) HKSource *source API_DEPRECATED_WITH_REPLACEMENT("sourceRevision", ios(8.0, 9.0));
+
+/*!
+ @property      sourceRevision
+ @abstract      Represents the revision of the source responsible for saving the receiver.
+ */
+@property (readonly, strong) HKSourceRevision *sourceRevision API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      device
+ @abstract      Represents the device that generated the data of the receiver.
+ */
+@property (readonly, strong, nullable) HKDevice *device API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      metadata
+ @abstract      Extra information describing properties of the receiver.
+ @discussion    Keys must be NSString and values must be either NSString, NSNumber, NSDate, or
+                HKQuantity. See HKMetadata.h for potential metadata keys and values.
+ */
+@property (readonly, copy, nullable) NSDictionary<NSString *, id> *metadata;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathUUID API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathSource API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathMetadata API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathCorrelation API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkout API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathDevice API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathSourceRevision API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObjectType.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObjectType.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObjectType.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObjectType.h	2022-05-31 14:51:53.000000000 -0400
@@ -0,0 +1,218 @@
+//
+//  HKObjectType.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKTypeIdentifiers.h>
+#import <HealthKit/HKQuantityAggregationStyle.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKActivitySummaryType;
+@class HKAudiogramSampleType;
+@class HKCategoryType;
+@class HKCharacteristicType;
+@class HKCorrelationType;
+@class HKDocumentType;
+@class HKElectrocardiogramType;
+@class HKQuantityType;
+@class HKSeriesType;
+@class HKUnit;
+@class HKPrescriptionType;
+@class HKWorkoutType;
+
+/*!
+ @class         HKObjectType
+ @abstract      An abstract class representing a type of object that can be stored by HealthKit.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKObjectType : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      identifier
+ @abstract      A unique string identifying a type of health object.
+ @discussion    See HKTypeIdentifiers.h for possible values.
+ */
+@property (readonly, strong) NSString *identifier;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+#if defined(__swift__) && __swift__
++ (nullable HKQuantityType *)quantityTypeForIdentifier:(HKQuantityTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKQuantityType(_:)", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
++ (nullable HKCategoryType *)categoryTypeForIdentifier:(HKCategoryTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKCategoryType(_:)", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
++ (nullable HKCharacteristicType *)characteristicTypeForIdentifier:(HKCharacteristicTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKCharacteristicType(_:)", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
++ (nullable HKCorrelationType *)correlationTypeForIdentifier:(HKCorrelationTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKCorrelationType(_:)", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
++ (nullable HKDocumentType *)documentTypeForIdentifier:(HKDocumentTypeIdentifier)identifier API_DEPRECATED_WITH_REPLACEMENT("HKDocumentType(_:)", ios(10.0, API_TO_BE_DEPRECATED), watchos(3.0, API_TO_BE_DEPRECATED));
+#else
++ (nullable HKQuantityType *)quantityTypeForIdentifier:(HKQuantityTypeIdentifier)identifier;
++ (nullable HKCategoryType *)categoryTypeForIdentifier:(HKCategoryTypeIdentifier)identifier;
++ (nullable HKCharacteristicType *)characteristicTypeForIdentifier:(HKCharacteristicTypeIdentifier)identifier;
++ (nullable HKCorrelationType *)correlationTypeForIdentifier:(HKCorrelationTypeIdentifier)identifier;
++ (nullable HKDocumentType *)documentTypeForIdentifier:(HKDocumentTypeIdentifier)identifier API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+#endif // defined(__swift__) && __swift__
+
++ (nullable HKSeriesType *)seriesTypeForIdentifier:(NSString *)identifier API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
++ (HKWorkoutType *)workoutType;
++ (HKActivitySummaryType *)activitySummaryType API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));
++ (HKAudiogramSampleType *)audiogramSampleType API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
++ (HKElectrocardiogramType *)electrocardiogramType API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));
++ (HKPrescriptionType *)visionPrescriptionType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @method        requiresPerObjectAuthorization
+ @abstract      Returns YES if the authorization for the object type needs to be requested on per object basis.
+ */
+- (BOOL)requiresPerObjectAuthorization;
+
+@end
+
+/*!
+ @class         HKCharacteristicType
+ @abstract      Represents a type of object that describes a characteristic of the user (such as date of birth).
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCharacteristicType : HKObjectType
+@end
+
+/*!
+ @class         HKSampleType
+ @abstract      Represents a type of HKSample.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKSampleType : HKObjectType
+
+/*!
+ @property      isMaximumDurationRestricted
+ @abstract      Returns YES if the start and end date for samples of this type are restricted by a maximum duration.
+ */
+@property (nonatomic, readonly) BOOL isMaximumDurationRestricted API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      maximumAllowedDuration
+ @abstract      When the duration is restricted for samples of this type, returns the maximum duration allowed,
+                calculated as the difference between end and start dates.
+ @discussion    Throws an exception if there is no maximum restriction on duration for samples of this type.
+ */
+@property (nonatomic, readonly) NSTimeInterval maximumAllowedDuration API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      isMinimumDurationRestricted
+ @abstract      Returns YES if the start and end date for samples of this type are restricted by a minimum duration.
+ */
+@property (nonatomic, readonly) BOOL isMinimumDurationRestricted API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      minimumAllowedDuration
+ @abstract      When the duration is restricted for samples of this type, returns the minimum duration allowed,
+                calculated as the difference between end and start dates.
+ @discussion    Throws an exception if there is no minimum restriction on duration for samples of this type.
+ */
+@property (nonatomic, readonly) NSTimeInterval minimumAllowedDuration API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      allowsRecalibrationForEstimates
+ @abstract      Returns YES if first-party samples of this type are produced using a prediction algorithm, and that algorithm supports recalibration. To recalibrate the
+                estimates for a sample type, see -[HKHealthStore recalibrateEstimatesForSampleType:atDate:completion:]
+ */
+@property (nonatomic, readonly) BOOL allowsRecalibrationForEstimates API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+@end
+
+/*!
+ @class         HKCategoryType
+ @abstract      Represent a type of HKCategorySample.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCategoryType : HKSampleType
+@end
+
+/*!
+ @class         HKCorrelationType
+ @abstract      Represents a type of HKCorrelation
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKCorrelationType : HKSampleType
+@end
+
+/*!
+ @class         HKDocumentType
+ @abstract      Represents a type of HKDocument.
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), macCatalyst(13.0), macos(13.0))
+@interface HKDocumentType : HKSampleType
+@end
+
+/*!
+ @class         HKQuantityType
+ @abstract      Represents types of HKQuantitySamples.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKQuantityType : HKSampleType
+
+@property (readonly) HKQuantityAggregationStyle aggregationStyle;
+
+/*!
+ @method        isCompatibleWithUnit:
+ @abstract      Returns YES if the type of HKQuantitySample represented by the receiver can be created with quantities 
+                of the given unit.
+ */
+- (BOOL)isCompatibleWithUnit:(HKUnit *)unit;
+
+@end
+
+/*!
+ @class         HKWorkoutType
+ @abstract      Represents a workout or exercise
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkoutType : HKSampleType
+@end
+
+/*!
+ @class         HKSeriesType
+ @abstract      Represents a type of HKSeriesSample
+ */
+HK_EXTERN API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0))
+@interface HKSeriesType : HKSampleType
+
++ (instancetype)workoutRouteType;
++ (instancetype)heartbeatSeriesType API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+/*!
+ @class         HKActivitySummaryType
+ @abstract      Represents an HKActivitySummary
+ */
+HK_EXTERN API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0))
+@interface HKActivitySummaryType : HKObjectType
+@end
+
+/*!
+ @class    HKAudiogramSampleType
+ @abstract Represents an audiogram sample.
+ */
+HK_EXTERN API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))
+@interface HKAudiogramSampleType : HKSampleType
+@end
+
+/*!
+ @class    HKElectrocardiogramType
+ @abstract Represents an electrocardiogram sample.
+ */
+HK_EXTERN API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0))
+@interface HKElectrocardiogramType : HKSampleType
+@end
+
+/*!
+ @class         HKPrescriptionType
+ @abstract      Represents a prescription type
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKPrescriptionType : HKSampleType
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObserverQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObserverQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObserverQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKObserverQuery.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,44 @@
+//
+//  HKObserverQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKQueryDescriptor.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef void(^HKObserverQueryCompletionHandler)(void);
+
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKObserverQuery : HKQuery
+
+/*!
+ @method        initWithSampleType:predicate:updateHandler:
+ @abstract      This method installs a handler that is called when a sample type has a new sample added.
+ @discussion    If you have subscribed to background updates you must call the passed completion block
+                once you have processed data from this notification. Otherwise the system will continue
+                to notify you of this data.
+ */
+
+- (instancetype)initWithSampleType:(HKSampleType *)sampleType
+                         predicate:(nullable NSPredicate *)predicate
+                     updateHandler:(void(^)(HKObserverQuery *query, HKObserverQueryCompletionHandler completionHandler, NSError * _Nullable error))updateHandler;
+
+/*!
+ @method        initWithQueryDescriptors:updateHandler:
+ @abstract      This method installs a handler that is called when a sample matching the query descriptors is added.
+ @discussion    If you have subscribed to background updates you must call the passed completion block
+                once you have processed data from this notification. Otherwise the system will continue
+                to notify you of this data.
+ 
+ @param         queryDescriptors   An array of query descriptors that describes the sample types and predicates for
+                                   which you are interested in getting notified.
+ */
+- (instancetype)initWithQueryDescriptors:(NSArray<HKQueryDescriptor *> *)queryDescriptors
+                           updateHandler:(void(^)(HKObserverQuery *query, NSSet<HKSampleType *> * _Nullable sampleTypesAdded, HKObserverQueryCompletionHandler completionHandler, NSError * _Nullable error))updateHandler API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantity.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantity.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantity.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantity.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,52 @@
+//
+//  HKQuantity.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKUnit;
+
+/*!
+ @class         HKQuantity
+ @abstract      The HKQuantity class provides an encapsulation of a quantity value and the unit of measurement.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKQuantity : NSObject <NSSecureCoding, NSCopying>
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method        quantityWithUnit:doubleValue:
+ @abstract      Returns a new object representing a quantity measurement with the given unit.
+ */
++ (instancetype)quantityWithUnit:(HKUnit *)unit doubleValue:(double)value;
+
+/*!
+ @method        isCompatibleWithUnit:
+ @abstract      Returns yes if the receiver's value can be converted to a value of the given unit.
+ */
+- (BOOL)isCompatibleWithUnit:(HKUnit *)unit;
+
+/*!
+ @method        doubleValueForUnit:
+ @abstract      Returns the quantity value converted to the given unit.
+ @discussion    Throws an exception if the receiver's value cannot be converted to one of the requested unit.
+ */
+- (double)doubleValueForUnit:(HKUnit *)unit;
+
+/*!
+ @method        compare:
+ @abstract      Returns an NSComparisonResult value that indicates whether the receiver is greater than, equal to, or 
+                less than a given quantity.
+ @discussion    Throws an exception if the unit of the given quantity is not compatible with the receiver's unit.
+ */
+- (NSComparisonResult)compare:(HKQuantity *)quantity;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantityAggregationStyle.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantityAggregationStyle.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantityAggregationStyle.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantityAggregationStyle.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,30 @@
+//
+//  HKQuantityAggregationStyle.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @enum          HKQuantityAggregationStyle
+ @discussion    Describes how quantities can be aggregated over time.
+ 
+ @constant      HKQuantityAggregationStyleCumulative                        Samples may be summed over a time interval.
+ @constant      HKQuantityAggregationStyleDiscreteArithmetic                Samples may be averaged over a time interval using the arithmetic mean
+ @constant      HKQuantityAggregationStyleDiscreteTemporallyWeighted        Samples may be averaged over a time interval using a temporally weighted integration function
+ @constant      HKQuantityAggregationStyleDiscreteEquivalentContinuousLevel Samples may be combined over a time interval by computing the equivalent continuous sound level; see IEC 61672-1
+
+ */
+typedef NS_ENUM(NSInteger, HKQuantityAggregationStyle) {
+    HKQuantityAggregationStyleCumulative = 0,
+    HKQuantityAggregationStyleDiscreteArithmetic API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)),
+    HKQuantityAggregationStyleDiscrete API_DEPRECATED_WITH_REPLACEMENT("HKQuantityAggregationStyleDiscreteArithmetic", ios(8.0, 13.0), watchos(2.0, 6.0)) = HKQuantityAggregationStyleDiscreteArithmetic,
+    HKQuantityAggregationStyleDiscreteTemporallyWeighted API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)),
+    HKQuantityAggregationStyleDiscreteEquivalentContinuousLevel API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)),
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySample.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,79 @@
+//
+//  HKQuantitySample.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+@class HKQuantityType;
+
+/*!
+ @class         HKQuantitySample
+ @abstract      An abstract HKSample subclass representing a quantity measurement.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKQuantitySample : HKSample
+
+@property (readonly, copy) HKQuantityType *quantityType;
+@property (readonly, copy) HKQuantity *quantity;
+
+/*!
+ @property      count
+ @abstract      The number of individual values making up the receiver's quantity.
+ @discussion    Requests for the individual series quantities can be made using HKQuantitySeriesSampleQuery.
+ */
+@property (readonly, assign) NSInteger count API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        quantitySampleWithType:quantity:startDate:endDate:
+ @abstract      Creates a new HKQuantitySample with the given type, quantity, start date, and end date.
+ @discussion    The quantity must have a unit that is compatible with the given quantity type.
+                See -[HKQuantityType isCompatibleWithUnit:].
+ */
++ (instancetype)quantitySampleWithType:(HKQuantityType *)quantityType
+                              quantity:(HKQuantity *)quantity
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate;
+
+/*!
+ @method        quantitySampleWithType:quantity:startDate:endDate:metadata:
+ @abstract      Creates a new HKQuantitySample with the given type, quantity, start date, end date, and metadata.
+ @discussion    The quantity must have a unit that is compatible with the given quantity type.
+                See -[HKQuantityType isCompatibleWithUnit:].
+ */
++ (instancetype)quantitySampleWithType:(HKQuantityType *)quantityType
+                              quantity:(HKQuantity *)quantity
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate
+                              metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+/*!
+ @method        quantitySampleWithType:quantity:startDate:endDate:device:metadata:
+ @abstract      Creates a new HKQuantitySample with the given type, quantity, start date, end date, and metadata.
+ @param         quantityType    The type of the sample.
+ @param         startDate       The start date of the sample.
+ @param         endDate         The end date of the sample.
+ @param         device          The HKDevice that generated the sample (optional).
+ @param         metadata        Metadata for the sample (optional).
+ @discussion    The quantity must have a unit that is compatible with the given quantity type.
+                See -[HKQuantityType isCompatibleWithUnit:].
+ */
++ (instancetype)quantitySampleWithType:(HKQuantityType *)quantityType
+                              quantity:(HKQuantity *)quantity
+                             startDate:(NSDate *)startDate
+                               endDate:(NSDate *)endDate
+                                device:(nullable HKDevice *)device
+                              metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathQuantity API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathCount API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleBuilder.h	2022-05-31 15:04:06.000000000 -0400
@@ -0,0 +1,181 @@
+//
+//  HKQuantitySeriesSampleBuilder.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKDevice;
+@class HKHealthStore;
+@class HKQuantity;
+@class HKQuantitySample;
+@class HKQuantityType;
+
+/*!
+ @class         HKQuantitySeriesSampleBuilder
+ @abstract      An HKQuantitySeriesSampleBuilder is used to generate HKQuantitySample(s) with multiple
+                quantities.
+ @discussion    An HKQuantitySeriesSampleBuilder is used to incrementally create a new quantity series
+                sample in the HealthKit database. This class may be used to create long-running quantity
+                series samples that are associated with an activity like a workout. After inserting each
+                of the quantities that make up the series, the series may be finalized by calling
+                -finishSeriesWithMetadata:completion:. Calling -discard invalidates the series and
+                discards any data that was previously associated with it.
+ */
+HK_EXTERN API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0))
+@interface HKQuantitySeriesSampleBuilder : NSObject
+
+/*!
+ @method        initWithHealthStore:quantityType:device:
+ @abstract      The designated initializer to create an HKQuantitySeriesSampleBuilder.
+ @discussion    The HKHealthStore is retained during the life of the object for the saving of the
+                series data and final return of the series sample.
+
+ @param         healthStore     Specifies the HKHealthStore object to use for building the series.
+ @param         quantityType    Specifies the quantity type for which to build the series.
+ @param         startDate       The date from which the produced sample(s) start.
+ @param         device          The optional device represents the HKDevice from which the data is
+                                provided.
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                       quantityType:(HKQuantityType *)quantityType
+                          startDate:(NSDate *)startDate
+                             device:(nullable HKDevice *)device NS_SWIFT_NAME(init(healthStore:quantityType:startDate:device:));
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @property      quantityType
+ */
+@property (readonly, copy) HKQuantityType *quantityType;
+
+/*!
+ @property      startDate
+ */
+@property (readonly, copy) NSDate *startDate;
+
+/*!
+ @property      device
+ */
+@property (readonly, copy, nullable) HKDevice *device;
+
+/*!
+ @method            insertQuantity:dateInterval:completion:
+ @abstract          Associate a new quantity with the receiver with a specific date interval.
+ @discussion        Use this method to add a quantity to the series. The quantity must have a unit
+                    that is compatible with the receiver's quantity type.
+                    See -[HKQuantityType isCompatibleWithUnit:].
+                    Note that quantities may be inserted in any order,
+                    but will be sorted by dateInterval.startDate when the series is finished.
+ 
+ @param             quantity        The quantity to insert.
+ @param             dateInterval    The dateInterval associated with the quantity.
+                                    If dateInterval.startDate is the same as a previously-provided
+                                    quantity, the new value will replace the old value.
+                                    An HKErrorInvalidArgument will be returned if
+                                    dateInterval.startDate is earlier than the receiver's startDate.
+ */
+- (BOOL)insertQuantity:(HKQuantity *)quantity
+          dateInterval:(NSDateInterval *)dateInterval
+                 error:(NSError **)error NS_SWIFT_NAME(insert(_:for:)) API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method            insertQuantity:date:completion:
+ @abstract          Associate a new quantity with the receiver at a specific instantaneous
+                    date interval.
+ @discussion        This method acts as a convenience for insertQuantity:dateInterval:completion:
+                    where dateInterval has a duration of 0.
+
+ @param             quantity    The quantity to insert.
+ @param             date        The start date associated with the quantity. If this is the same
+                                start date as a previously-provided quantity, the new value will
+                                replace the old value. An HKErrorInvalidArgument will be returned
+                                if date is earlier than the receiver's startDate.
+ */
+- (BOOL)insertQuantity:(HKQuantity *)quantity
+                  date:(NSDate *)date
+                 error:(NSError **)error NS_SWIFT_NAME(insert(_:at:));
+
+/*!
+ @method            finishSeriesWithMetadata:endDate:completion:
+ @abstract          Finalizes the series and returns the resulting HKQuantitySample(s).
+ @discussion        Call this method when all quantities for the series have been inserted.
+                    The completion handler will return the resulting HKQuantitySample(s)
+                    Note that it is possible for a single HKQuantitySeriesSampleBuilder to produce
+                    multiple samples. If no quantity data was added, then samples will be nil and
+                    an error will be returned. After calling this method, the receiver will be
+                    considered invalid and calling any other method will result in an error.
+ 
+ @param             metadata    Optional metadata may be added to associate with the series.
+                                Predefined keys are found in HKMetadata.h, or custom NSString
+                                keys used by the client are allowed. Acceptable metadata value types
+                                are NSString, NSDate, NSNumber and HKQuantity.
+ @param             endDate     Optional date at which the produced sample(s) end.
+                                An HKErrorInvalidArgument will be returned if endDate
+                                is earlier than the receiver's startDate,
+                                or is earlier than the dateInterval.endDate of any inserted quantity.
+ @param             completion  The completion handler will return the resulting HKQuantitySample(s)
+                                for the series. Note that it is possible for a single
+                                HKQuantitySeriesSampleBuilder to produce multiple samples.
+                                If data could not be inserted because of an authorization failure,
+                                samples will be nil and and an error with code
+                                HKErrorAuthorizationDenied or HKErrorAuthorizationNotDetermined
+                                will be returned. If the resulting sample(s) could not be accessed
+                                after they have been created, then samples will be nil and an error
+                                with code HKErrorDatabaseInaccessible will be returned. Any other
+                                error indicates the resulting samples could not be returned.
+                                After calling this method, the receiver will be considered invalid
+                                and calling any other method will result in an error.
+ */
+- (void)finishSeriesWithMetadata:(nullable NSDictionary<NSString *, id> *)metadata
+                         endDate:(nullable NSDate *)endDate
+                      completion:(void(^)(NSArray<__kindof HKQuantitySample *> * _Nullable samples, NSError * _Nullable error))completion NS_SWIFT_NAME(finishSeries(metadata:endDate:completion:));
+
+/*!
+ @method            finishSeriesWithMetadata:completion:
+ @abstract          Finalizes the series and returns the resulting HKQuantitySample(s).
+ @discussion        Call this method when all quantities for the series have been inserted.
+                    The completion handler will return the resulting HKQuantitySample(s)
+                    Note that it is possible for a single HKQuantitySeriesSampleBuilder to produce
+                    multiple samples. If no quantity data was added, then samples will be nil and
+                    an error will be returned. This method functions as a convenience for
+                    finishSeriesWithMetadata:endDate:completion: when endDate is nil.
+                    After calling this method, the receiver will be considered invalid
+                    and calling any other method will result in an error.
+
+ @param             metadata    Optional metadata may be added to associate with the series.
+                                Predefined keys are found in HKMetadata.h, or custom NSString
+                                keys used by the client are allowed. Acceptable metadata value types
+                                are NSString, NSDate, NSNumber and HKQuantity.
+ @param             completion  The completion handler will return the resulting HKQuantitySample(s)
+                                for the series. Note that it is possible for a single
+                                HKQuantitySeriesSampleBuilder to produce multiple samples.
+                                If data could not be inserted because of an authorization failure,
+                                samples will be nil and and an error with code
+                                HKErrorAuthorizationDenied or HKErrorAuthorizationNotDetermined
+                                will be returned. If the resulting sample(s) could not be accessed
+                                after they have been created, then samples will be nil and an error
+                                with code HKErrorDatabaseInaccessible will be returned. Any other
+                                error indicates the resulting samples could not be returned.
+                                After calling this method, the receiver will be considered invalid
+                                and calling any other method will result in an error.
+ */
+- (void)finishSeriesWithMetadata:(nullable NSDictionary<NSString *, id> *)metadata
+                      completion:(void(^)(NSArray<__kindof HKQuantitySample *> * _Nullable samples, NSError * _Nullable error))completion NS_SWIFT_NAME(finishSeries(metadata:completion:));
+
+/*!
+ @method            discard
+ @abstract          Discards all previously inserted data and invalidates the series.
+ @discussion        Calling this method will delete all quantities that were previously inserted into
+                    the series and invalidate the receiver. Calling other methods on the receiver
+                    after calling -discard will result in an exception.
+ */
+- (void)discard;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuantitySeriesSampleQuery.h	2022-05-31 14:51:53.000000000 -0400
@@ -0,0 +1,87 @@
+//
+//  HKQuantitySeriesSampleQuery.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+@class HKQuantitySample;
+
+/*!
+ @class         HKQuantitySeriesSampleQuery
+ @abstract      An HKQuantitySeriesSampleQuery is used to access series data associated with
+                HKQuantitySample(s).
+ @discussion    Once instantiated, call -[HKHealthStore executeQuery:] to begin enumerating
+                the series data.
+                Call -[HKHealthStore stopQuery:] to discontinue further quantity data reporting.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKQuantitySeriesSampleQueryDescriptor", ios(12.0, API_TO_BE_DEPRECATED), watchos(5.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKQuantitySeriesSampleQuery : HKQuery
+
+/*!
+ @property      includeSample
+ @abstract      Include owning HKQuantitySample in quantityHandler handler.
+ @discussion    Default value is NO.
+                If includeSample is set then the quantitySample parameter of quantityHandler will
+                be non-nil anytime the quantity parameter is non-nil.
+                Specifying this option has a performance cost.
+                This property may not be modified once the query has been executed.
+ */
+@property (nonatomic, assign) BOOL includeSample API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      orderByQuantitySampleStartDate
+ @abstract      Order enumerated results first by quantitySample.startDate,
+                then by the quantity's dateInterval.startDate.
+ @discussion    Default value is NO.
+                All quantities owned by a given quantitySample will be
+                enumerated before any quantities owned by any other quantity sample,
+                and the quantity samples will be enumerated in their startDate order.
+                Note that individual quantities may not be returned in their
+                dateInterval.startDate order if more than one quantitySample overlap in time.
+                This property may not be modified once the query has been executed.
+ */
+@property (nonatomic, assign) BOOL orderByQuantitySampleStartDate API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        initWithSample:dataHandler:
+ @abstract      Returns a query that will retrieve HKQuantity objects for samples of a specified
+                type that match the specified predicate.
+ 
+ @param         quantityType        The type of HKQuantitySample to retrieve.
+ @param         predicate           The predicate which the query results should match.
+                                    To query for the quantities for a specific quantity sample
+                                    see: +[HKPredicates predicateForObjectWithUUID:]
+
+ @param         quantityHandler     The block to invoke with results from the query. It will be
+                                    called repeatedly with HKQuantity, and NSDateInterval objects in
+                                    ascending dateInterval.startDate order, until all quantities are
+                                    returned and the done parameter is YES
+                                    or -[HKHealthStore stopQuery:] is called.
+                                    The quantitySample parameter is nil unless includeSample is YES,
+                                    in which case it will be the quantitySample which owns the current
+                                    quantity anytime the quantity paramater is non-nil.
+                                    The stopQuery call can be made within the quantityHandler block.
+                                    Once done is YES, or stopQuery has been called, the query is
+                                    complete and no more calls to quantityHandler will be made.
+ */
+- (instancetype)initWithQuantityType:(HKQuantityType *)quantityType
+                           predicate:(nullable NSPredicate *)predicate
+                     quantityHandler:(void(^)(HKQuantitySeriesSampleQuery *query, HKQuantity * _Nullable quantity, NSDateInterval * _Nullable dateInterval, __kindof HKQuantitySample * _Nullable quantitySample, BOOL done, NSError * _Nullable error))quantityHandler API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+- (instancetype)initWithSample:(HKQuantitySample *)quantitySample
+               quantityHandler:(void(^)(HKQuantitySeriesSampleQuery *query, HKQuantity * _Nullable quantity, NSDate * _Nullable date, BOOL done, NSError * _Nullable error))quantityHandler API_DEPRECATED_WITH_REPLACEMENT("initWithQuantityType:predicate:quantityHandler:", ios(12.0, 13.0), watchos(5.0, 6.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQuery.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,572 @@
+//
+//  HKQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKElectrocardiogram.h>
+#import <HealthKit/HKFHIRResource.h>
+#import <HealthKit/HKWorkout.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKObjectType;
+@class HKQuantity;
+@class HKSampleType;
+@class HKSource;
+
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKQuery : NSObject
+
+@property (readonly, strong, nullable) HKObjectType *objectType API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));
+@property (readonly, strong, nullable) HKSampleType *sampleType API_DEPRECATED_WITH_REPLACEMENT("objectType", ios(8.0, 9.3), watchos(2.0, 2.2));
+
+@property (readonly, strong, nullable) NSPredicate *predicate;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+/**
+ @enum      HKQueryOptions
+ @abstract  Time interval options are used to describe how an HKSample's time period overlaps with a given time period.
+ 
+ @constant  HKQueryOptionNone               The sample's time period must overlap with the predicate's time period.
+ @constant  HKQueryOptionStrictStartDate    The sample's start date must fall in the time period (>= startDate, < endDate)
+ @constant  HKQueryOptionStrictEndDate      The sample's end date must fall in the time period (>= startDate, < endDate)
+ 
+ */
+typedef NS_OPTIONS(NSUInteger, HKQueryOptions) {
+    HKQueryOptionNone               = 0,
+    HKQueryOptionStrictStartDate    = 1 << 0,
+    HKQueryOptionStrictEndDate      = 1 << 1,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+@interface HKQuery (HKObjectPredicates)
+
+/*!
+ @method        predicateForObjectsWithMetadataKey:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects with metadata that contains a given key.
+ 
+ @param         key     The metadata key.
+ */
++ (NSPredicate *)predicateForObjectsWithMetadataKey:(NSString *)key;
+
+/*!
+ @method        predicateForObjectsWithMetadataKey:allowedValues:
+ @abstract      Creates a predicate for use with HKQuery subclasses
+ @discussion    Creates a query predicate that matches objects with metadata containing a value the matches one of the
+                given values for the given key.
+ 
+ @param         key             The metadata key.
+ @param         allowedValues   The list of values that the metadata value can be equal to.
+ */
++ (NSPredicate *)predicateForObjectsWithMetadataKey:(NSString *)key allowedValues:(NSArray *)allowedValues;
+
+/*!
+ @method        predicateForObjectsWithMetadataKey:operatorType:value:
+ @abstract      Creates a predicate for use with HKQuery subclasses
+ @discussion    Creates a query predicate that matches objects with a value for a given metadata key matches the given
+                operator type and value.
+ 
+ @param         key            The metadata key.
+ @param         operatorType   The comparison operator type for the expression.
+ @param         value          The value to be compared against.
+ */
++ (NSPredicate *)predicateForObjectsWithMetadataKey:(NSString *)key operatorType:(NSPredicateOperatorType)operatorType value:(id)value;
+
+/*!
+ @method        predicateForObjectsFromSource:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects saved by a given source.
+ 
+ @param         source  The source.
+ */
++ (NSPredicate *)predicateForObjectsFromSource:(HKSource *)source;
+
+/*!
+ @method        predicateForObjectsFromSources:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects saved by any of the given sources.
+ 
+ @param         sources The list of sources.
+ */
++ (NSPredicate *)predicateForObjectsFromSources:(NSSet<HKSource *> *)sources;
+
+/*!
+ @method        predicateForObjectsFromSourceRevisions:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects saved by any of the specified HKSourceRevisions.
+ 
+ @param         sourceRevisions The list of source revisions.
+ */
++ (NSPredicate *)predicateForObjectsFromSourceRevisions:(NSSet<HKSourceRevision *> *)sourceRevisions API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        predicateForObjectsFromDevices:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects associated with any of the given devices. All properties
+                of each HKDevice are considered in the query and must match exactly, including nil values. To perform 
+                searches based on specific device properties, use predicateForObjectsWithDeviceProperty:allowedValues:.
+ 
+ @param         devices     The set of devices that generated data.
+ */
++ (NSPredicate *)predicateForObjectsFromDevices:(NSSet<HKDevice *> *)devices API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        predicateForObjectsWithDeviceProperty:allowedValues:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches objects associated with an HKDevice with the specified device
+                property matching any value included in allowedValues. To query for samples with devices that match all 
+                the properties of an HKDevice, use predicateForObjectsFromDevices.
+ 
+ @param         key             The device property key. (See HKDevice.h)
+ @param         allowedValues   The set of values for which the device property can match. An empty set will match all
+                devices whose property value is nil.
+ */
++ (NSPredicate *)predicateForObjectsWithDeviceProperty:(NSString *)key allowedValues:(NSSet<NSString *> *)allowedValues API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        predicateForObjectWithUUID:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches the object saved with a particular UUID.
+ 
+ @param         UUID The UUID of the object.
+ */
++ (NSPredicate *)predicateForObjectWithUUID:(NSUUID *)UUID;
+
+/*!
+ @method        predicateForObjectsWithUUIDs:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches the objects saved with one of the given UUIDs.
+ 
+ @param         UUIDs The set of NSUUIDs.
+ */
++ (NSPredicate *)predicateForObjectsWithUUIDs:(NSSet<NSUUID *> *)UUIDs;
+
+/*!
+ @method        predicateForObjectsNoCorrelation
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches the objects that are not associated with an HKCorrelation.
+ */
++ (NSPredicate *)predicateForObjectsWithNoCorrelation;
+
+/*!
+ @method        predicateForObjectsFromWorkout:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches the objects that have been added to the given workout.
+ 
+ @param         workout     The HKWorkout that the object was added to.
+ */
++ (NSPredicate *)predicateForObjectsFromWorkout:(HKWorkout *)workout;
+
+/*!
+ @method        predicateForObjectsAssociatedWithElectrocardiogram:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches the objects that have been added to the given electrocardiogram
+ 
+ @param         electrocardiogram     The HKElectrocardiogram that the object was added to.
+ */
++ (NSPredicate *)predicateForObjectsAssociatedWithElectrocardiogram:(HKElectrocardiogram *)electrocardiogram API_AVAILABLE(ios(14.0), watchos(7.0)) NS_SWIFT_NAME(predicateForObjectsAssociated(electrocardiogram:));
+
+
+@end
+
+
+@interface HKQuery (HKSamplePredicates)
+
+/*!
+ @method        predicateForSamplesWithStartDate:endDate:options:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches samples with a startDate and an endDate that lie inside of a
+                given time interval.
+ 
+ @param         startDate  The start date of the predicate's time interval.
+ @param         endDate    The end date of the predicate's time interval.
+ @param         options    The rules for how a sample's time interval overlaps with the predicate's time interval.
+ */
++ (NSPredicate *)predicateForSamplesWithStartDate:(nullable NSDate *)startDate endDate:(nullable NSDate *)endDate options:(HKQueryOptions)options;
+
+@end
+
+
+@interface HKQuery (HKQuantitySamplePredicates)
+
+/*!
+ @method        predicateForQuantitySamplesWithOperatorType:quantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches quantity samples with values that match the expression formed by
+                the given operator and quantity.
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         quantity        The quantity that the sample's quantity is being compared to. It is the right hand side
+                                of the expression.
+ */
++ (NSPredicate *)predicateForQuantitySamplesWithOperatorType:(NSPredicateOperatorType)operatorType quantity:(HKQuantity *)quantity;
+
+@end
+
+@interface HKQuery (HKCategorySamplePredicates)
+
+/*!
+ @method        predicateForCategorySamplesWithOperatorType:value:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches category samples with values that match the expression formed by 
+                the given operator and value.
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         value           The value that the sample's value is being compared to. It is the right hand side of the
+                                expression.
+ */
+#if defined(__swift__) && __swift__
++ (NSPredicate *)predicateForCategorySamplesWithOperatorType:(NSPredicateOperatorType)operatorType value:(NSInteger)value API_DEPRECATED("Use HKCategoryValuePredicateProviding.predicateForSamples(_:value:)", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
++ (NSPredicate *)predicateForCategorySamplesWithOperatorType:(NSPredicateOperatorType)operatorType value:(NSInteger)value;
+#endif // defined(__swift__) && __swift__
+
+/*!
+ @method predicateForCategorySamplesEqualToValues:
+ @abstract Creates a predicate for use with HKQuery subclasses.
+ @discussion Creates a query predicate that matches all specified category values.
+ */
++ (NSPredicate *)predicateForCategorySamplesEqualToValues:(NSSet<NSNumber *> *)values NS_REFINED_FOR_SWIFT;
+
+@end
+
+@interface HKQuery (HKWorkoutPredicates)
+
+/*!
+ @method        predicateForWorkoutsWithWorkoutActivityType:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts with the given HKWorkoutActivityType.
+ 
+ @param         workoutActivityType     The HKWorkoutActivity type of the workout
+ */
++ (NSPredicate *)predicateForWorkoutsWithWorkoutActivityType:(HKWorkoutActivityType)workoutActivityType;
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:duration:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and duration
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         duration        The value that the workout's duration is being compared to. It is the right hand side of the
+                                expression.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType duration:(NSTimeInterval)duration;
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:totalEnergyBurned:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and totalEnergyBurned
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         totalEnergyBurned   The value that the workout's totalEnergyBurned is being compared to. It is the right hand side of the
+                                    expression. The unit for this value should be of type Energy.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType totalEnergyBurned:(HKQuantity *)totalEnergyBurned API_DEPRECATED("Use predicateForWorkoutActivitiesWithOperatorType:quantityType:sumQuantity: passing the HKQuantityType for HKQuantityTypeIdentifierActiveEnergyBurned", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:totalDistance:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and totalEnergyBurned
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         totalDistance   The value that the workout's totalEnergyBurned is being compared to. It is the right hand side of the
+                                expression. The unit for this value should be of type Distance.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType totalDistance:(HKQuantity *)totalDistance API_DEPRECATED("Use predicateForWorkoutActivitiesWithOperatorType:quantityType:sumQuantity: passing the HKQuantityType for the desired distance type", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+/*!
+ @method        predicateForWorkoutsWithOperatorType:totalSwimmingStrokeCount:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and totalSwimmingStrokeCount
+ 
+ @param         operatorType                The operator type for the expression.
+ @param         totalSwimmingStrokeCount    The value that the workout's totalSwimmingStrokeCount is being compared to.
+                                            It is the right hand side of the expression. The unit for this value should
+                                            be of type Count.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType totalSwimmingStrokeCount:(HKQuantity *)totalSwimmingStrokeCount API_DEPRECATED("Use predicateForWorkoutActivitiesWithOperatorType:quantityType:sumQuantity:", ios(10.0, API_TO_BE_DEPRECATED), watchos(3.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:totalFlightsClimbed:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and totalFlightsClimbed
+ 
+ @param         operatorType                The operator type for the expression.
+ @param         totalFlightsClimbed         The value that the workout's totalFlightsClimbed is being compared to.
+                                            It is the right hand side of the expression. The unit for this value should
+                                            be of type Count.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType totalFlightsClimbed:(HKQuantity *)totalFlightsClimbed API_DEPRECATED("Use predicateForWorkoutActivitiesWithOperatorType:quantityType:sumQuantity: passing the HKQuantityType for HKQuantityTypeIdentifierSwimmingStrokeCount", ios(11.0, API_TO_BE_DEPRECATED), watchos(4.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+                                                                                                                                                            
+/*!
+ @method        predicateForWorkoutsWithOperatorType:quantityType:sumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and sumQuantity in the statistics for
+                the specified type.
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         quantityType    The quantity type to compare statistics for. Should be a cumulative quantity type.
+ @param         sumQuantity     The sum value that the workout statistics are being compared to. The unit for this value should
+                                match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType
+                                         quantityType:(HKQuantityType *)quantityType
+                                          sumQuantity:(HKQuantity *)sumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkouts(operatorType:quantityType:sumQuantity:));
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:quantityType:minimumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and minimumQuantity in the statistics
+                for the specified type.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         minimumQuantity     The minumum value that the workout statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType
+                                         quantityType:(HKQuantityType *)quantityType
+                                      minimumQuantity:(HKQuantity *)minimumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkouts(operatorType:quantityType:minimumQuantity:));
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:quantityType:maximumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and maximumQuantity in the statistics
+                for the specified type.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         maximumQuantity     The maximum value that the workout statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType
+                                         quantityType:(HKQuantityType *)quantityType
+                                      maximumQuantity:(HKQuantity *)maximumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkouts(operatorType:quantityType:maximumQuantity:));
+
+/*!
+ @method        predicateForWorkoutsWithOperatorType:quantityType:averageQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkouts by the given operator type and averageQuantity in the statistics
+                for the specified type.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         averageQuantity     The average value that the workout statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutsWithOperatorType:(NSPredicateOperatorType)operatorType
+                                         quantityType:(HKQuantityType *)quantityType
+                                      averageQuantity:(HKQuantity *)averageQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkouts(operatorType:quantityType:averageQuantity:));
+
+@end
+
+@interface HKQuery (HKWorkoutActivityPredicates)
+
+/*!
+ @method        predicateForWorkoutActivitiesWithWorkoutActivityType:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objects with the given HKWorkoutActivityType.
+                The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate: before being used in a query.
+ 
+ @param         workoutActivityType     The HKWorkoutActivity type of the workout
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithWorkoutActivityType:(HKWorkoutActivityType)workoutActivityType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(workoutActivityType:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithOperatorType:duration:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objects by the given operator type and duration.
+                The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate: before being used in a query.
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         duration        The value that the workout's duration is being compared to. It is the right hand side of the
+                                expression.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithOperatorType:(NSPredicateOperatorType)operatorType
+                                                      duration:(NSTimeInterval)duration API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(operatorType:duration:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithStartDate:endDate:options:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objects with a startDate and an endDate that lie inside of a
+                given time interval. The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate:
+                before being used in a query.
+ 
+ @param         startDate   The start date of the predicate's time interval.
+ @param         endDate     The end date of the predicate's time interval.
+ @param         options     The rules for how a activity's time interval overlaps with the predicate's time interval.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithStartDate:(nullable NSDate *)startDate
+                                                    endDate:(nullable NSDate *)endDate
+                                                    options:(HKQueryOptions)options API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(start:end:options:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithOperatorType:quantityType:sumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objetcs by the given operator type and sumQuantity in the
+                statistics for the specified type. The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate:
+                before being used in a query.
+ 
+ @param         operatorType    The operator type for the expression.
+ @param         quantityType    The quantity type to compare statistics for. Should be a cumulative quantity type.
+ @param         sumQuantity     The sum value that the activity statistics are being compared to. The unit for this value should
+                                match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithOperatorType:(NSPredicateOperatorType)operatorType
+                                                  quantityType:(HKQuantityType *)quantityType
+                                                   sumQuantity:(HKQuantity *)sumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(operatorType:quantityType:sumQuantity:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithOperatorType:quantityType:minimumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objetcs  by the given operator type and minimumQuantity in the
+                statistics for the specified type. The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate:
+                before being used in a query.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         minimumQuantity     The minumum value that the activty statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithOperatorType:(NSPredicateOperatorType)operatorType
+                                                  quantityType:(HKQuantityType *)quantityType
+                                               minimumQuantity:(HKQuantity *)minimumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(operatorType:quantityType:minimumQuantity:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithOperatorType:quantityType:maximumQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objetcs by the given operator type and maximumQuantity in the
+                statistics for the specified type. The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate:
+                before being used in a query.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         maximumQuantity     The maximum value that the activity statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithOperatorType:(NSPredicateOperatorType)operatorType
+                                                  quantityType:(HKQuantityType *)quantityType
+                                               maximumQuantity:(HKQuantity *)maximumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(operatorType:quantityType:maximumQuantity:));
+
+/*!
+ @method        predicateForWorkoutActivitiesWithOperatorType:quantityType:averageQuantity:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKWorkoutActivity objetcs by the given operator type and averageQuantity in the
+                statistics for the specified type. The resulting predicate should be wrapped using predicateForWorkoutsWithActivityPredicate:
+                before being used in a query.
+ 
+ @param         operatorType        The operator type for the expression.
+ @param         quantityType        The quantity type to compare statistics for. Should be a discrete quantity type.
+ @param         averageQuantity     The average value that the activity statistics are being compared to. The unit for this value should
+                                    match the allowed values for the quantityType.
+ */
++ (NSPredicate *)predicateForWorkoutActivitiesWithOperatorType:(NSPredicateOperatorType)operatorType
+                                                  quantityType:(HKQuantityType *)quantityType
+                                               averageQuantity:(HKQuantity *)averageQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkoutActivities(operatorType:quantityType:averageQuantity:));
+
+/*!
+ @method        predicateForWorkoutsWithActivityPredicate:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches workouts containing an activity matching the passed predicate.
+ 
+ @param         activityPredicate   The predicate on the activities of the workout
+ */
++ (NSPredicate *)predicateForWorkoutsWithActivityPredicate:(NSPredicate *)activityPredicate API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(predicateForWorkouts(activityPredicate:));
+
+@end
+
+@interface HKQuery (HKActivitySummaryPredicates)
+
+/*!
+ @method        predicateForActivitySummaryWithDateComponents:
+ @abstract      Creates a predicate for use with HKActivitySummaryQuery
+ @discussion    Creates a query predicate that matches HKActivitySummaries with the given date components.
+ 
+ @param         dateComponents  The date components of the activity summary. These date components should contain era, year, month,
+                and day components in the gregorian calendar.
+ */
++ (NSPredicate *)predicateForActivitySummaryWithDateComponents:(NSDateComponents *)dateComponents API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        predicateForActivitySummariesBetweenStartDateComponents:endDateComponents:
+ @abstract      Creates a predicate for use with HKActivitySummaryQuery
+ @discussion    Creates a query predicate that matches HKActivitySummaries that fall between the given date components.
+ 
+ @param         startDateComponents The date components that define the beginning of the range. These date components should contain 
+                era, year, month, and day components in the gregorian calendar.
+ 
+ @param         endDateComponents   The date components that define the end of the range. These date components should contain era, 
+                year, month, and day components in the gregorian calendar.
+ */
++ (NSPredicate *)predicateForActivitySummariesBetweenStartDateComponents:(NSDateComponents *)startDateComponents endDateComponents:(NSDateComponents *)endDateComponents API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));
+
+@end
+
+@interface HKQuery (HKClinicalRecordPredicates)
+
+/*!
+ @method        predicateForClinicalRecordsWithFHIRResourceType:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKClinicalRecords with a specific FHIR resource type.
+ 
+ @param         resourceType    The FHIR resource type.
+ */
++ (NSPredicate *)predicateForClinicalRecordsWithFHIRResourceType:(HKFHIRResourceType)resourceType API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+/*!
+ @method        predicateForClinicalRecordsFromSource:withFHIRResourceType:identifier:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKClinicalRecords for a given source, FHIR resource type, and FHIR identifier.
+ 
+ @param         source          The source.
+ @param         resourceType    The FHIR resource type.
+ @param         identifier      The FHIR identifier.
+ */
++ (NSPredicate *)predicateForClinicalRecordsFromSource:(HKSource *)source
+                                      FHIRResourceType:(HKFHIRResourceType)resourceType
+                                            identifier:(NSString *)identifier API_AVAILABLE(ios(12.0), macCatalyst(13.0), macos(13.0)) API_UNAVAILABLE(watchos);
+
+@end
+
+@interface HKQuery (HKElectrocardiogramPredicates)
+
+/*!
+ @method        predicateForElectrocardiogramsWithClassification:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKElectrocardiograms with a specific classification.
+ 
+ @param         classification    The classification for the electrocardiogram.
+ */
++ (NSPredicate *)predicateForElectrocardiogramsWithClassification:(HKElectrocardiogramClassification)classification API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(predicateForElectrocardiograms(classification:));
+
+/*!
+ @method        predicateForElectrocardiogramsWithSymptomsStatus:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a query predicate that matches HKElectrocardiograms with a specificied symptoms status.
+ 
+ @param         symptomsStatus    The symptoms status for the electrocardiogram.
+ */
++ (NSPredicate *)predicateForElectrocardiogramsWithSymptomsStatus:(HKElectrocardiogramSymptomsStatus)symptomsStatus API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)) NS_SWIFT_NAME(predicateForElectrocardiograms(symptomsStatus:));
+
+@end
+
+@interface HKQuery (HKVerifiableClinicalRecordPredicates)
+
+/**
+ @method        predicateForVerifiableClinicalRecordsWithRelevantDateWithinDateInterval:
+ @abstract      Creates a predicate for use with HKQuery subclasses.
+ @discussion    Creates a predicate that matches HKVerifiableClinicalRecords with a relevant date within a date interval.
+ 
+ @param         dateInterval      The date interval that the record's relevant date is in.
+ */
++ (NSPredicate *)predicateForVerifiableClinicalRecordsWithRelevantDateWithinDateInterval:(NSDateInterval *)dateInterval API_AVAILABLE(ios(15.0), macCatalyst(15.0), macos(13.0)) NS_SWIFT_NAME(predicateForVerifiableClinicalRecords(withRelevantDateWithin:));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryAnchor.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryAnchor.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryAnchor.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryAnchor.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,31 @@
+//
+//  HKQueryAnchor.h
+//  HealthKit
+//
+//  Copyright © 2019-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKQueryAnchor
+ @discussion    This object encapsulates the state of an HKAnchoredObjectQuery
+ */
+HK_EXTERN API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKQueryAnchor : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @method        anchorFromValue:
+ @discussion    Creates an HKQueryAnchor with an integer anchor which was previously obtained from an
+                HKAnchoredObjectQuery prior to iOS 9.0.
+ */
++ (instancetype)anchorFromValue:(NSUInteger)value;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryDescriptor.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryDescriptor.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryDescriptor.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKQueryDescriptor.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,43 @@
+//
+//  HKQueryDescriptor.h
+//  HealthKit
+//
+//  Copyright © 2021-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKObjectType.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0))
+@interface HKQueryDescriptor : NSObject<NSCopying, NSSecureCoding>
+
+/*!
+ @property      sampleType
+ @abstract      The type of sample to retrieve in an HKQuery.
+ */
+@property (nonatomic, readonly, copy) HKSampleType *sampleType;
+
+/*!
+ @property      predicate
+ @abstract      The predicate which samples should match.
+ */
+@property (nonatomic, readonly, copy, nullable) NSPredicate *predicate;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/*!
+ @method        initWithSampleType:predicate:
+ @abstract      Returns a query descriptor that describes a data type and predicate to be used in an HKQuery.
+ 
+ @param         sampleType      The type of sample to retrieve.
+ @param         predicate       The predicate which samples should match.
+*/
+- (instancetype)initWithSampleType:(HKSampleType *)sampleType
+                         predicate:(nullable NSPredicate *)predicate NS_DESIGNATED_INITIALIZER;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSample.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,44 @@
+//
+//  HKSample.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKObject.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKSampleType;
+
+/*!
+ @class         HKSample
+ @abstract      An abstract class representing measurements taken over a period of time.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKSample : HKObject
+
+@property (readonly, copy) HKSampleType *sampleType;
+
+@property (readonly, strong) NSDate *startDate;
+@property (readonly, strong) NSDate *endDate;
+
+/*!
+ @property      hasUndeterminedDuration
+ @abstract      Indicates whether a sample has an undetermined duration.
+ @discussion    Computed based on the endDate of a sample.
+ */
+@property (readonly) BOOL hasUndeterminedDuration API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+
+
+@end
+
+// Sort Identifiers
+HK_EXTERN NSString * const HKSampleSortIdentifierStartDate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKSampleSortIdentifierEndDate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathStartDate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathEndDate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSampleQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSampleQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSampleQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSampleQuery.h	2022-05-31 14:51:53.000000000 -0400
@@ -0,0 +1,92 @@
+//
+//  HKSampleQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKQueryDescriptor.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+// The query returns all samples that match the given sampleType and predicate.
+static const NSUInteger HKObjectQueryNoLimit = 0;
+
+/*!
+ @class         HKSampleQuery
+ @abstract      A concrete subclass of HKQuery that provides an interface to retrieve HKSample objects.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKSampleQueryDescriptor", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKSampleQuery : HKQuery
+
+/*!
+ @property      limit
+ @abstract      The maximum number of results the receiver will return upon completion.
+ */
+@property (readonly) NSUInteger limit;
+
+/*!
+ @property      sortDescriptors
+ @abstract      An array of NSSortDescriptors.
+ */
+@property (readonly, copy, nullable) NSArray<NSSortDescriptor *> *sortDescriptors;
+
+/*!
+ @method        initWithSampleType:predicate:limit:sortDescriptors:resultsHandler:
+ @abstract      Returns a query that will retrieve HKSamples matching the given predicate.
+ 
+ @param         sampleType      The type of sample to retrieve.
+ @param         predicate       The predicate which samples should match.
+ @param         limit           The maximum number of samples to return.  Pass HKObjectQueryNoLimit for no limit.
+ @param         sortDescriptors The sort descriptors to use to order the resulting samples.
+ @param         resultsHandler  The block to invoke with results when the query has finished executing.
+ */
+- (instancetype)initWithSampleType:(HKSampleType *)sampleType
+                         predicate:(nullable NSPredicate *)predicate
+                             limit:(NSUInteger)limit
+                   sortDescriptors:(nullable NSArray<NSSortDescriptor *> *)sortDescriptors
+                    resultsHandler:(void(^)(HKSampleQuery *query, NSArray<__kindof HKSample *> * _Nullable results, NSError * _Nullable error))resultsHandler;
+
+/*!
+ @method        initWithQueryDescriptors:limit:resultsHandler:
+ @abstract      Returns a query that will retrieve HKSamples matching any of the given queryDescriptors.
+ 
+ @param         queryDescriptors          An array of query descriptors that describes the sample types and predicates
+                                          used for querying.
+ @param         limit                     The maximum number of samples to return. Pass HKObjectQueryNoLimit
+                                          for no limit.
+ @param         resultsHandler            The block to invoke with results when the query has finished executing. This
+                                          block is invoked once with results, an array of HKSamples matching the
+                                          queryDescriptors passed in, or nil if an error occurred.
+ */
+- (instancetype)initWithQueryDescriptors:(NSArray<HKQueryDescriptor *> *)queryDescriptors
+                                   limit:(NSInteger)limit
+                          resultsHandler:(void(^)(HKSampleQuery *query, NSArray<__kindof HKSample *> * _Nullable results, NSError * _Nullable error))resultsHandler API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+
+/*!
+ @method        initWithQueryDescriptors:limit:sortDescriptors:resultsHandler:
+ @abstract      Returns a query that will retrieve HKSamples matching any of the given queryDescriptors.
+ 
+ @param         queryDescriptors          An array of query descriptors that describes the sample types and predicates
+                                          used for querying.
+ @param         limit                     The maximum number of samples to return. Pass HKObjectQueryNoLimit
+                                          for no limit.
+ @param         sortDescriptors           The sort descriptors to use to order the resulting samples.
+ @param         resultsHandler            The block to invoke with results when the query has finished executing. This
+                                          block is invoked once with results, an array of HKSamples matching the
+                                          queryDescriptors passed in, or nil if an error occurred. The HKSamples in the
+                                          array are sorted by the specified sortDescriptors.
+ */
+- (instancetype)initWithQueryDescriptors:(NSArray<HKQueryDescriptor *> *)queryDescriptors
+                                   limit:(NSInteger)limit
+                         sortDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors
+                          resultsHandler:(void(^)(HKSampleQuery *query, NSArray<__kindof HKSample *> * _Nullable results, NSError * _Nullable error))resultsHandler API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesBuilder.h	2022-05-25 21:53:05.000000000 -0400
@@ -0,0 +1,38 @@
+//
+//  HKSeriesBuilder.h
+//  HealthKit
+//
+//  Copyright (c) 2015 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKSeriesBuilder
+ @abstract      An HKSeriesBuilder is an abstract class for generating HKSeriesSample objects. 
+                Concrete subclasses generate the actual HKSeriesSample objects.
+ */
+HK_EXTERN
+@interface HKSeriesBuilder : NSObject
+
+/*!
+ @method        discard
+ @abstract      Stop series generation and discard all collected data.
+ @discussion    This method informs the receiver that no more data should be collected and all
+                previously collected data should be deleted and the receiver will be considered
+                invalid. Any further calls to the receiver will result in an exception.
+ */
+- (void)discard;
+
+
+/*!
+ @method        init
+ @abstract      Use only subclass initializer methods.
+ */
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesSample.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesSample.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesSample.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSeriesSample.h	2022-05-25 21:53:05.000000000 -0400
@@ -0,0 +1,30 @@
+//
+//  HKSeriesSample.h
+//  HealthKit
+//
+//  Copyright (c) 2015 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+
+/*!
+ @class         HKSeriesSample
+ @abstract      This class represents a type of HKSample that references a series of data.
+ */
+HK_EXTERN
+@interface HKSeriesSample : HKSample
+
+/*!
+ @property      count
+ @abstract      The number of individual series datum represented by the receiver and accessible
+                through the appropriate HKQuery series subclass.
+ */
+@property (readonly) NSUInteger count;
+
+@end
+
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSource.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSource.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSource.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSource.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,42 @@
+//
+//  HKSource.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class     HKSource
+ @abstract  Represents the entity that created an object stored by HealthKit.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKSource : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      name
+ @abstract      The name of the source represented by the receiver.  If the source is an app, then the name is the
+                localized name of the app.
+ */
+@property (readonly, strong) NSString *name;
+
+/*!
+ @property  bundleIdentifier
+ @abstract  The bundle identifier of the source represented by the receiver.
+ */
+@property (readonly, strong) NSString *bundleIdentifier;
+
+/*!
+ @method    defaultSource
+ @abstract  Returns the source representing the calling application.
+ */
++ (HKSource *)defaultSource;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceQuery.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,39 @@
+//
+//  HKSourceQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKSourceQuery
+ @abstract      A query that returns a set of sources that have saved objects matching certain criteria.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKSourceQueryDescriptor", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKSourceQuery : HKQuery
+
+/*!
+ @method        initWithSampleType:samplePredicate:completionHandler:
+ @abstract      Returns a query that will retrieve HKSources that have saved samples of the given type matching the 
+                given predicate.
+ 
+ @param         sampleType          The type of sample.
+ @param         objectPredicate     The predicate which samples must match.
+ @param         completionHandler   The block to be called when the query has finished executing.
+ */
+- (instancetype)initWithSampleType:(HKSampleType *)sampleType
+                   samplePredicate:(nullable NSPredicate *)objectPredicate
+                 completionHandler:(void(^)(HKSourceQuery *query, NSSet<HKSource *> * _Nullable sources, NSError * _Nullable error))completionHandler;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceRevision.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceRevision.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceRevision.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKSourceRevision.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,75 @@
+//
+//  HKSourceRevision.h
+//  HealthKit
+//
+//  Copyright © 2015-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+@class HKSource;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKSourceRevision
+ @abstract      Represents a specific revision of an HKSource.
+ */
+
+HK_EXTERN API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKSourceRevision : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      source
+ @abstract      The HKSource of the receiver.
+ */
+@property (readonly) HKSource *source;
+
+/*!
+ @property      version
+ @abstract      The version of the source property.
+ @discussion    This value is taken from the CFBundleVersion of the source. May be nil for older data.
+ */
+@property (readonly, nullable) NSString *version;
+
+/*!
+ @property      productType
+ @abstract      Represents the product type of the device running HealthKit when the object was created.
+ @discussion    This value may be nil for older data, which indicates an unknown product type.
+ */
+@property (readonly, copy, nullable) NSString *productType API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      operatingSystemVersion
+ @abstract      Represents the operating system version of the device running HealthKit when the object was created.
+ @discussion    iOS versions after 8.0 but prior to 8.2 are saved as 8.0, and iOS version after 8.2 but prior to 9.0
+                are saved as 8.2.
+ */
+@property (readonly, assign) NSOperatingSystemVersion operatingSystemVersion API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        initWithSource:version:productType:operatingSystemVersion:
+ @abstract      Initializes a new HKSourceRevision with the given source, version, product type, and operating system
+                version.
+ */
+- (instancetype)initWithSource:(HKSource *)source
+                       version:(nullable NSString *)version
+                   productType:(nullable NSString *)productType
+        operatingSystemVersion:(NSOperatingSystemVersion)operatingSystemVersion API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        initWithSource:version:
+ @abstract      Initializes a new HKSourceRevision with the given source and version.
+ */
+- (instancetype)initWithSource:(HKSource *)source version:(nullable NSString *)version;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+// Constants to match on any value of that property when querying for samples from an HKSourceRevision
+HK_EXTERN NSString * const HKSourceRevisionAnyVersion API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKSourceRevisionAnyProductType API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSOperatingSystemVersion const HKSourceRevisionAnyOperatingSystem API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatistics.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatistics.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatistics.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatistics.h	2022-05-31 15:02:17.000000000 -0400
@@ -0,0 +1,163 @@
+//
+//  HKStatistics.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+@class HKQuantityType;
+@class HKSource;
+
+/*!
+ @enum          HKStatisticsOptions
+ @abstract      Options for specifying which statistics to calculate
+ @discussion    When querying for HKStatistics objects, an options bitmask will specify which statistics will be 
+                calculated.
+ 
+                Statistics are classified as discrete or cumulative.  If a discrete statistics option is specified for a
+                cumulative HKQuantityType, an exception will be thrown.  If a cumulative statistics options is specified
+                for a discrete HKQuantityType, an exception will also be thrown.
+ 
+ @constant      HKStatisticsOptionNone
+ @constant      HKStatisticsOptionSeparateBySource
+ @constant      HKStatisticsOptionDiscreteAverage      Calculate averageQuantity when creating statistics.
+ @constant      HKStatisticsOptionDiscreteMin          Calculate minQuantity when creating statistics.
+ @constant      HKStatisticsOptionDiscreteMax          Calculate maxQuantity when creating statistics.
+ @constant      HKStatisticsOptionCumulativeSum        Calculate sumQuantity when creating statistics.
+ @constant      HKStatisticsOptionMostRecent           Calculate mostRecentQuantity when creating statistics.
+ @constant      HKStatisticsOptionDuration             Calculate duration when creating statistics.
+ */
+typedef NS_OPTIONS(NSUInteger, HKStatisticsOptions) {
+    HKStatisticsOptionNone              		= 0,
+    HKStatisticsOptionSeparateBySource          = 1 << 0,
+    HKStatisticsOptionDiscreteAverage           = 1 << 1,
+    HKStatisticsOptionDiscreteMin               = 1 << 2,
+    HKStatisticsOptionDiscreteMax               = 1 << 3,
+    HKStatisticsOptionCumulativeSum             = 1 << 4,
+    HKStatisticsOptionMostRecent API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))  = 1 << 5,
+    HKStatisticsOptionDiscreteMostRecent API_DEPRECATED_WITH_REPLACEMENT("HKStatisticsOptionMostRecent", ios(12.0, 13.0), watchos(5.0, 6.0))  = HKStatisticsOptionMostRecent,
+    HKStatisticsOptionDuration API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0))  = 1 << 6,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @class         HKStatistics
+ @abstract      Represents statistics for quantity samples over a period of time.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKStatistics : NSObject <NSSecureCoding, NSCopying>
+
+@property (readonly, strong) HKQuantityType *quantityType;
+@property (readonly, strong) NSDate *startDate;
+@property (readonly, strong) NSDate *endDate;
+@property (readonly, strong, nullable) NSArray<HKSource *> *sources;
+
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/* Discrete Quantities */
+
+/*!
+ @method        averageQuantityForSource:
+ @abstract      Returns the average quantity for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)averageQuantityForSource:(HKSource *)source;
+
+/*!
+ @method        averageQuantity
+ @abstract      Returns the average quantity in the time period represented by the receiver.
+ */
+- (nullable HKQuantity *)averageQuantity;
+
+/*!
+ @method        minimumQuantityForSource:
+ @abstract      Returns the minimum quantity for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)minimumQuantityForSource:(HKSource *)source;
+
+/*!
+ @method        minimumQuantity
+ @abstract      Returns the minimum quantity in the time period represented by the receiver.
+ */
+- (nullable HKQuantity *)minimumQuantity;
+
+/*!
+ @method        maximumQuantityForSource:
+ @abstract      Returns the maximum quantity for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)maximumQuantityForSource:(HKSource *)source;
+
+/*!
+ @method        maximumQuantity
+ @abstract      Returns the maximum quantity in the time period represented by the receiver.
+ */
+- (nullable HKQuantity *)maximumQuantity;
+
+/*!
+ @method        mostRecentQuantityForSource:
+ @abstract      Returns the most recent quantity for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)mostRecentQuantityForSource:(HKSource *)source API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        mostRecentQuantity
+ @abstract      Returns the most recent quantity in the time period represented by the receiver.
+ */
+- (nullable HKQuantity *)mostRecentQuantity API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        mostRecentQuantityDateIntervalForSource:
+ @abstract      Returns the date interval of the most recent quantity for the given source in the time period
+                represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable NSDateInterval *)mostRecentQuantityDateIntervalForSource:(HKSource *)source API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        mostRecentQuantityDateInterval
+ @abstract      Returns the date interval of the most recent quantity in the time period represented by the receiver.
+ */
+- (nullable NSDateInterval *)mostRecentQuantityDateInterval API_AVAILABLE(ios(12.0), watchos(5.0), macCatalyst(13.0), macos(13.0));
+
+/* Cumulative Quantities */
+
+/*!
+ @method        sumQuantityForSource:
+ @abstract      Returns the sum quantity for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)sumQuantityForSource:(HKSource *)source;
+
+/*!
+ @method        sumQuantity
+ @abstract      Returns the sum of quantities in the time period represented by the receiver.
+ */
+- (nullable HKQuantity *)sumQuantity;
+
+/// Total duration (in seconds) covered by the samples represented by these statistics.
+/// Only present if HKStatisticsOptionDuration is is specified.
+/*!
+ @method        duration
+ @abstract      Total duration, as a time-unit compatible quantity, covered by the samples represented by these statistics.
+ @discussion    Only present if HKStatisticsOptionDuration is is specified.
+ */
+- (nullable HKQuantity *)duration API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        durationForSource:
+ @abstract      Returns the duration, as a time-unit compatible quantity, for the given source in the time period represented by the receiver.
+ @discussion    If HKStatisticsOptionSeparateBySource is not specified, then this will always be nil.
+ */
+- (nullable HKQuantity *)durationForSource:(HKSource *)source API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsCollectionQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsCollectionQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsCollectionQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsCollectionQuery.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,75 @@
+//
+//  HKStatisticsCollectionQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKStatistics.h>
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKStatistics;
+
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKStatisticsCollection : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method        statisticsForDate:
+ @abstract      Returns the statistics object that this date is inside of
+ @discussion    If there are no samples for the given date, an HKStatistics instance with nil quantities will be returned.
+ */
+- (nullable HKStatistics *)statisticsForDate:(NSDate *)date;
+
+/*!
+ @method        enumerateStatisticsFromDate:toDate:withBlock:
+ @abstract      Enumerates all statistics objects from startDate to endDate.
+ @discussion    Statistics objects will be enumerated in chronological order. If there are no samples for an interval
+                between the start and end date, then the HKStatistics object for that interval will have nil quantities.
+ */
+- (void)enumerateStatisticsFromDate:(NSDate *)startDate toDate:(NSDate *)endDate withBlock:(void(^)(HKStatistics *result, BOOL *stop))block;
+
+/*!
+ @method        statistics
+ @abstract      Returns a copy of the populated statistics objects.
+ @discussion    The statistics objects are ordered chronologically.
+ */
+- (NSArray<HKStatistics *> *)statistics;
+
+/*!
+ @method        sources
+ @abstract      Returns all HKSources found in the contained HKStatistics objects.
+ @discussion    Sources will be empty unless HKStatisticsOptionSeparateBySource is specified in the
+                HKStatisticsCollectionQuery options.
+ */
+- (NSSet<HKSource *> *)sources;
+
+@end
+
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKStatisticsCollectionQueryDescriptor", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKStatisticsCollectionQuery : HKQuery
+
+@property (readonly, strong) NSDate *anchorDate;
+@property (readonly) HKStatisticsOptions options;
+@property (readonly, copy) NSDateComponents *intervalComponents;
+
+@property (nonatomic, copy, nullable) void(^initialResultsHandler)(HKStatisticsCollectionQuery *query, HKStatisticsCollection * _Nullable result, NSError * _Nullable error);
+@property (nonatomic, copy, nullable) void(^statisticsUpdateHandler)(HKStatisticsCollectionQuery *query, HKStatistics * _Nullable statistics, HKStatisticsCollection * _Nullable collection, NSError * _Nullable error);
+
+- (instancetype)initWithQuantityType:(HKQuantityType *)quantityType
+             quantitySamplePredicate:(nullable NSPredicate *)quantitySamplePredicate
+                             options:(HKStatisticsOptions)options
+                          anchorDate:(NSDate *)anchorDate
+                  intervalComponents:(NSDateComponents *)intervalComponents;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKStatisticsQuery.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,34 @@
+//
+//  HKStatisticsQuery.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKStatistics.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKStatistics;
+
+/*!
+ @class     HKStatisticsQuery
+ @abstract  Calculates statistics on quantity samples matching the given quantity type and predicate.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKStatisticsQueryDescriptor", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKStatisticsQuery : HKQuery
+
+- (instancetype)initWithQuantityType:(HKQuantityType *)quantityType
+             quantitySamplePredicate:(nullable NSPredicate *)quantitySamplePredicate
+                             options:(HKStatisticsOptions)options
+                   completionHandler:(void(^)(HKStatisticsQuery *query, HKStatistics * _Nullable result, NSError * _Nullable error))handler;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKTypeIdentifiers.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKTypeIdentifiers.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKTypeIdentifiers.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKTypeIdentifiers.h	2022-05-31 15:02:16.000000000 -0400
@@ -0,0 +1,260 @@
+//
+//  HKTypeIdentifiers
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+#import <objc/NSObjCRuntime.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*--------------------------------*/
+/*   HKQuantityType Identifiers   */
+/*--------------------------------*/
+
+typedef NSString * HKQuantityTypeIdentifier NS_STRING_ENUM;
+
+// Body Measurements
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBodyMassIndex API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Scalar(Count),               Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBodyFatPercentage API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierHeight API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                              // Length,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBodyMass API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                            // Mass,                        Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierLeanBodyMass API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Mass,                        Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWaistCircumference API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));                 // Length,                      Discrete
+
+// Fitness
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierStepCount API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                           // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDistanceWalkingRunning API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));              // Length,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDistanceCycling API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Length,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDistanceWheelchair API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));                 // Length,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBasalEnergyBurned API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Energy,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierActiveEnergyBurned API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                  // Energy,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierFlightsClimbed API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierNikeFuel API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                            // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierAppleExerciseTime API_AVAILABLE(ios(9.3), watchos(2.2), macCatalyst(13.0), macos(13.0));                   // Time                         Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierPushCount API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));                          // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDistanceSwimming API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));                   // Length,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierSwimmingStrokeCount API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));                // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierVO2Max API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));                             // ml/(kg*min)                  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDistanceDownhillSnowSports API_AVAILABLE(ios(11.2), watchos(4.2), macCatalyst(13.0), macos(13.0));         // Length,                      Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierAppleStandTime API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));                     // Time,                        Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWalkingSpeed API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                       // m/s,                         Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWalkingDoubleSupportPercentage API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));     // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWalkingAsymmetryPercentage API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));         // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWalkingStepLength API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                  // Length,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierSixMinuteWalkTestDistance API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));          // Length,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierStairAscentSpeed API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                   // m/s,                         Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierStairDescentSpeed API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                  // m/s),                        Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierAppleMoveTime API_AVAILABLE(ios(14.5), watchos(7.4), macCatalyst(14.5), macos(13.0));                      // Time,                        Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierAppleWalkingSteadiness API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));             // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRunningStrideLength API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));                // Length,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRunningVerticalOscillation API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));         // Length,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRunningGroundContactTime API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));           // Time,                        Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRunningPower API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));                       // Power                        Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRunningSpeed API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));                       // m/s,                         Discrete
+
+// Vitals
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierHeartRate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                           // Scalar(Count)/Time,          Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBodyTemperature API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Temperature,                 Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBasalBodyTemperature API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                // Basal Body Temperature,      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBloodPressureSystolic API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));               // Pressure,                    Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBloodPressureDiastolic API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));              // Pressure,                    Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRespiratoryRate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Scalar(Count)/Time,          Discrete
+// Beats per minute estimate of a user's lowest heart rate while at rest
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierRestingHeartRate API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));                   // Scalar(Count)/Time,          Discrete
+// Average heartbeats per minute captured by an Apple Watch while a user is walking
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierWalkingHeartRateAverage API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));            // Scalar(Count)/Time,          Discrete
+// The standard deviation of heart beat-to-beat intervals (Standard Deviation of Normal to Normal)
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierHeartRateVariabilitySDNN API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));           // Time (ms),                   Discrete
+// The decrease in heart rate from the rate at peak exercise to the rate 1 minute after the cessation of exercise. Always a positive value.
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierHeartRateRecoveryOneMinute API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));         // Scalar(Count)/Time,          Discrete
+
+// Results
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierOxygenSaturation API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                    // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierPeripheralPerfusionIndex API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));            // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBloodGlucose API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Mass/Volume,                 Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierNumberOfTimesFallen API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                 // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierElectrodermalActivity API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));               // Conductance,                 Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierInhalerUsage API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Scalar(Count),               Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierInsulinDelivery API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));                    // Pharmacology (IU)            Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierBloodAlcoholContent API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                 // Scalar(Percent, 0.0 - 1.0),  Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierForcedVitalCapacity API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                 // Volume,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierForcedExpiratoryVolume1 API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));             // Volume,                      Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierPeakExpiratoryFlowRate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));              // Volume/Time,                 Discrete
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierEnvironmentalAudioExposure API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));         // Pressure,                    DiscreteEquivalentContinuousLevel
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierHeadphoneAudioExposure API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));             // Pressure,                    DiscreteEquivalentContinuousLevel
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierNumberOfAlcoholicBeverages API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));         // Scalar(Count),               Cumulative
+
+
+// Nutrition
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFatTotal API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFatPolyunsaturated API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));           // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFatMonounsaturated API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));           // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFatSaturated API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                 // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryCholesterol API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                  // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietarySodium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryCarbohydrates API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFiber API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietarySugar API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Mass,   Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryEnergyConsumed API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));               // Energy, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryProtein API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // Mass,   Cumulative
+
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminA API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminB6 API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                    // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminB12 API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminC API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminD API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminE API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryVitaminK API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryCalcium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryIron API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                         // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryThiamin API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryRiboflavin API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryNiacin API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryFolate API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryBiotin API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryPantothenicAcid API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));              // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryPhosphorus API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryIodine API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryMagnesium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                    // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryZinc API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                         // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietarySelenium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryCopper API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryManganese API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                    // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryChromium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryMolybdenum API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                   // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryChloride API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryPotassium API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                    // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryCaffeine API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                     // Mass, Cumulative
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierDietaryWater API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                        // Volume, Cumulative
+
+HK_EXTERN HKQuantityTypeIdentifier const HKQuantityTypeIdentifierUVExposure API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                          // Scalar(Count), Discrete
+
+
+
+/*--------------------------------*/
+/*   HKCategoryType Identifiers   */
+/*--------------------------------*/
+
+typedef NSString * HKCategoryTypeIdentifier NS_STRING_ENUM;
+
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSleepAnalysis API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // HKCategoryValueSleepAnalysis
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAppleStandHour API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // HKCategoryValueAppleStandHour
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierCervicalMucusQuality API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                // HKCategoryValueCervicalMucusQuality
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierOvulationTestResult API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                 // HKCategoryValueOvulationTestResult
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierPregnancyTestResult API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));                // HKCategoryValuePregnancyTestResult
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierProgesteroneTestResult API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));             // HKCategoryValueProgesteroneTestResult
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierMenstrualFlow API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                       // HKCategoryValueMenstrualFlow
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierIntermenstrualBleeding API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));              // (Spotting) HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSexualActivity API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));                      // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierMindfulSession API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));                     // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHighHeartRateEvent API_AVAILABLE(ios(12.2), watchos(5.2), macCatalyst(13.0), macos(13.0));                 // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLowHeartRateEvent API_AVAILABLE(ios(12.2), watchos(5.2), macCatalyst(13.0), macos(13.0));                  // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierIrregularHeartRhythmEvent API_AVAILABLE(ios(12.2), watchos(5.2), macCatalyst(13.0), macos(13.0));          // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAudioExposureEvent                                                         // HKCategoryValueAudioExposureEvent
+    API_DEPRECATED_WITH_REPLACEMENT("HKCategoryTypeIdentifierEnvironmentalAudioExposureEvent", ios(13.0, 14.0), watchos(6.0, 7.0));
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierToothbrushingEvent API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));                 // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierPregnancy API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));                          // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLactation API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));                          // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierContraceptive API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(13.0), macos(13.0));                      // HKCategoryValueContraceptive
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierEnvironmentalAudioExposureEvent API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));    // HKCategoryValueEnvironmentalAudioExposureEvent
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHeadphoneAudioExposureEvent API_AVAILABLE(ios(14.2), watchos(7.1), macCatalyst(14.2), macos(13.0));        // HKCategoryValueHeadphoneAudioExposureEvent
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHandwashingEvent API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                   // HKCategoryValue
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLowCardioFitnessEvent API_AVAILABLE(ios(14.3), watchos(7.2), macCatalyst(14.3), macos(13.0));
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAppleWalkingSteadinessEvent API_AVAILABLE(ios(15.0), watchos(8.0), macCatalyst(15.0), macos(13.0));        // HKCategoryValueAppleWalkingSteadinessEvent
+
+// Symptoms
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAbdominalCramps API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                    // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAcne API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                               // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierAppetiteChanges API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                    // HKCategoryValueAppetiteChanges
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierBladderIncontinence API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierBloating API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierBreastPain API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                         // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierChestTightnessOrPain API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));               // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierChills API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                             // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierConstipation API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                       // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierCoughing API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierDiarrhea API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierDizziness API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                          // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierDrySkin API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                            // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierFainting API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierFatigue API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                            // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierFever API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                              // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierGeneralizedBodyAche API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHairLoss API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHeadache API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHeartburn API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                          // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierHotFlashes API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                         // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLossOfSmell API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                        // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLossOfTaste API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                        // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierLowerBackPain API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                      // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierMemoryLapse API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                        // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierMoodChanges API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                        // HKCategoryValuePresence
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierNausea API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                             // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierNightSweats API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                        // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierPelvicPain API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                         // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierRapidPoundingOrFlutteringHeartbeat API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0)); // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierRunnyNose API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                          // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierShortnessOfBreath API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                  // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSinusCongestion API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                    // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSkippedHeartbeat API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                   // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSleepChanges API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                       // HKCategoryValuePresence
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierSoreThroat API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                         // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierVaginalDryness API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));                     // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierVomiting API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+HK_EXTERN HKCategoryTypeIdentifier const HKCategoryTypeIdentifierWheezing API_AVAILABLE(ios(13.6), watchos(7.0), macCatalyst(13.6), macos(13.0));                           // HKCategoryValueSeverity
+
+
+/*--------------------------------------*/
+/*   HKCharacteristicType Identifiers   */
+/*--------------------------------------*/
+
+typedef NSString * HKCharacteristicTypeIdentifier NS_STRING_ENUM;
+
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierBiologicalSex API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));           // HKBiologicalSexObject
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierBloodType API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));               // HKBloodTypeObject
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierDateOfBirth API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));             // NSDateComponents
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierFitzpatrickSkinType API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));     // HKFitzpatrickSkinTypeObject
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierWheelchairUse API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));          // HKWheelchairUseObject
+HK_EXTERN HKCharacteristicTypeIdentifier const HKCharacteristicTypeIdentifierActivityMoveMode API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));       // HKActivityMoveModeObject
+
+/*-----------------------------------*/
+/*   HKCorrelationType Identifiers   */
+/*-----------------------------------*/
+
+typedef NSString * HKCorrelationTypeIdentifier NS_STRING_ENUM;
+
+HK_EXTERN HKCorrelationTypeIdentifier const HKCorrelationTypeIdentifierBloodPressure API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN HKCorrelationTypeIdentifier const HKCorrelationTypeIdentifierFood API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*--------------------------------*/
+/*   HKDocumentType Identifiers   */
+/*--------------------------------*/
+
+typedef NSString * HKDocumentTypeIdentifier NS_STRING_ENUM;
+
+HK_EXTERN HKDocumentTypeIdentifier const HKDocumentTypeIdentifierCDA API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*------------------------------*/
+/*   HKWorkoutType Identifier   */
+/*------------------------------*/
+
+HK_EXTERN NSString * const HKWorkoutTypeIdentifier API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*--------------------------------*/
+/*   HKSeriesSample Identifiers   */
+/*--------------------------------*/
+
+HK_EXTERN NSString * const HKWorkoutRouteTypeIdentifier API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKDataTypeIdentifierHeartbeatSeries API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));
+
+/*-----------------------------------*/
+/* HKVisionPrescription Identifier   */
+/*-----------------------------------*/
+
+HK_EXTERN NSString * const HKVisionPrescriptionTypeIdentifier API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKUnit.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKUnit.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKUnit.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKUnit.h	2022-05-31 15:02:17.000000000 -0400
@@ -0,0 +1,269 @@
+//
+//  HKUnit.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKUnit : NSObject <NSSecureCoding, NSCopying>
+
+/// Returns a unique string representation for the unit that could be used with +unitFromString:
+@property (readonly, strong) NSString *unitString;
+
+- (instancetype)init NS_UNAVAILABLE;
+
++ (instancetype)unitFromString:(NSString *)string;
+
+// Unit strings are composed of the following units:
+// International System of Units (SI) units:
+// g                (grams)   [Mass]
+// m                (meters)  [Length]
+// L,l              (liters)  [Volume]
+// Pa               (pascals) [Pressure]
+// s                (seconds) [Time]
+// J                (joules)  [Energy]
+// K                (kelvin)  [Temperature]
+// S                (siemens) [Electrical Conductance]
+// Hz               (hertz)   [Frequency]
+// mol<molar mass>  (moles)   [Mass] <molar mass> is the number of grams per mole. For example, mol<180.1558>
+// V                (volts)   [Electrical Potential Difference]
+// W                (watts)   [Power]
+// rad              (radians) [Angle]
+
+// SI units can be prefixed as follows:
+// da   (deca-)   = 10                 d    (deci-)   = 1/10
+// h    (hecto-)  = 100                c    (centi-)  = 1/100
+// k    (kilo-)   = 1000               m    (milli-)  = 1/1000
+// M    (mega-)   = 10^6               mc   (micro-)  = 10^-6
+// G    (giga-)   = 10^9               n    (nano-)   = 10^-9
+// T    (tera-)   = 10^12              p    (pico-)   = 10^-12
+//                                     f    (femto-)  = 10^-15
+
+// Non-SI units:
+//
+// [Mass]
+// oz   (ounces)  = 28.3495 g                           
+// lb   (pounds)  = 453.592 g                           
+// st   (stones)  = 6350.0 g
+//
+// [Length]
+// in   (inches)  = 0.0254 m                            
+// ft   (feet)    = 0.3048 m                            
+// mi   (miles)   = 1609.34 m                           
+//
+// [Pressure]
+// mmHg (millimeters of Mercury)    = 133.3224 Pa
+// cmAq (centimeters of water)      = 98.06650 Pa
+// atm  (atmospheres)               = 101325.0 Pa
+// dBASPL (sound pressure level)    = 10^(dBASPL/20) * 2.0E-05 Pa
+// inHg (inches of Mercury)         = 3386.38816 Pa
+//
+// [Volume]
+// fl_oz_us  (US customary fluid ounces)= 0.0295735295625 L
+// fl_oz_imp (Imperial fluid ounces)    = 0.0284130625 L
+// pt_us     (US customary pint)        = 0.473176473 L
+// pt_imp    (Imperial pint)            = 0.56826125 L
+// cup_us    (US customary cup)         = 0.2365882365 L
+// cup_imp   (Imperial cup)             = 0.284130625 L
+
+// [Time]
+// min  (minutes) = 60 s
+// hr   (hours)   = 3600 s
+// d    (days)    = 86400 s
+//
+// [Energy]
+// cal  (calories)     = 4.1840 J
+// kcal (kilocalories) = 4184.0 J
+//
+// [Temperature]
+// degC (degrees Celsius)    = 1.0 K - 273.15
+// degF (degrees Fahrenheit) = 1.8 K - 459.67
+//
+// [Pharmacology]
+// IU   (international unit)
+//
+// [Scalar]
+// count = 1
+// %     = 1/100
+//
+// [Hearing Sensitivity]
+// dBHL (decibel Hearing Level)
+//
+
+// Units can be combined using multiplication (. or *) and division (/), and raised to integral powers (^).
+// For simplicity, only a single '/' is allowed in a unit string, and multiplication is evaluated first.
+// So "kg/m.s^2" is equivalent to "kg/(m.s^2)" and "kg.m^-1.s^-2".
+
+// The following methods convert between HKUnit and Foundation formatter units for mass, length and energy.
+// When converting from Foundation formatter unit to HKUnit, if there's not a match, nil will be returned.
+// When converting from HKUnit to the Foundation formatter unit, if there's not a match, an exception will be thrown.
++ (instancetype)unitFromMassFormatterUnit:(NSMassFormatterUnit)massFormatterUnit;
++ (NSMassFormatterUnit)massFormatterUnitFromUnit:(HKUnit *)unit;
+
++ (instancetype)unitFromLengthFormatterUnit:(NSLengthFormatterUnit)lengthFormatterUnit;
++ (NSLengthFormatterUnit)lengthFormatterUnitFromUnit:(HKUnit *)unit;
+
++ (instancetype)unitFromEnergyFormatterUnit:(NSEnergyFormatterUnit)energyFormatterUnit;
++ (NSEnergyFormatterUnit)energyFormatterUnitFromUnit:(HKUnit *)unit;
+
+- (BOOL)isNull;
+
+@end
+
+typedef NS_ENUM(NSInteger, HKMetricPrefix) {
+    HKMetricPrefixNone      = 0,    //10^0
+    
+    HKMetricPrefixFemto     API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)) = 13, //10^-15
+    HKMetricPrefixPico      = 1,    //10^-12
+    HKMetricPrefixNano      = 2,    //10^-9
+    HKMetricPrefixMicro     = 3,    //10^-6
+    HKMetricPrefixMilli     = 4,    //10^-3
+    HKMetricPrefixCenti     = 5,    //10^-2
+    HKMetricPrefixDeci      = 6,    //10^-1
+    HKMetricPrefixDeca      = 7,    //10^1
+    HKMetricPrefixHecto     = 8,    //10^2
+    HKMetricPrefixKilo      = 9,    //10^3
+    HKMetricPrefixMega      = 10,   //10^6
+    HKMetricPrefixGiga      = 11,   //10^9
+    HKMetricPrefixTera      = 12,   //10^12
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/* Mass Units */
+@interface HKUnit (Mass)
++ (instancetype)gramUnitWithMetricPrefix:(HKMetricPrefix)prefix;       // g
++ (instancetype)gramUnit;   // g
++ (instancetype)ounceUnit;  // oz
++ (instancetype)poundUnit;  // lb
++ (instancetype)stoneUnit;  // st
++ (instancetype)moleUnitWithMetricPrefix:(HKMetricPrefix)prefix molarMass:(double)gramsPerMole;   // mol<double>
++ (instancetype)moleUnitWithMolarMass:(double)gramsPerMole; // mol<double>
+@end
+
+/* Length Units */
+@interface HKUnit (Length)
++ (instancetype)meterUnitWithMetricPrefix:(HKMetricPrefix)prefix;      // m
++ (instancetype)meterUnit;  // m
++ (instancetype)inchUnit;   // in
++ (instancetype)footUnit;   // ft
++ (instancetype)yardUnit API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));   // yd
++ (instancetype)mileUnit;   // mi
+@end
+
+/* Volume Units */
+@interface HKUnit (Volume)
++ (instancetype)literUnitWithMetricPrefix:(HKMetricPrefix)prefix;      // L
++ (instancetype)literUnit;              // L
++ (instancetype)fluidOunceUSUnit;       // fl_oz_us
++ (instancetype)fluidOunceImperialUnit; // fl_oz_imp
++ (instancetype)pintUSUnit;             // pt_us
++ (instancetype)pintImperialUnit;       // pt_imp
++ (instancetype)cupUSUnit API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));       // cup_us
++ (instancetype)cupImperialUnit API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0)); // cup_imp
+@end
+
+/* Pressure Units */
+@interface HKUnit (Pressure)
++ (instancetype)pascalUnitWithMetricPrefix:(HKMetricPrefix)prefix;     // Pa
++ (instancetype)pascalUnit;                 // Pa
++ (instancetype)millimeterOfMercuryUnit;    // mmHg
++ (instancetype)centimeterOfWaterUnit;      // cmAq
++ (instancetype)atmosphereUnit;             // atm
++ (instancetype)decibelAWeightedSoundPressureLevelUnit API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)); // dBASPL
++ (instancetype)inchesOfMercuryUnit API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)); // inHg
+@end
+
+/* Time Units */
+@interface HKUnit (Time)
++ (instancetype)secondUnitWithMetricPrefix:(HKMetricPrefix)prefix;     // s
++ (instancetype)secondUnit; // s
++ (instancetype)minuteUnit; // min
++ (instancetype)hourUnit;   // hr
++ (instancetype)dayUnit;    // d
+@end
+
+/* Energy Units */
+@interface HKUnit (Energy)
++ (instancetype)jouleUnitWithMetricPrefix:(HKMetricPrefix)prefix;      // J
++ (instancetype)jouleUnit;          // J
++ (instancetype)kilocalorieUnit;    // 1 kcal = 4184.0 J
++ (instancetype)smallCalorieUnit API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));    // 1 cal = 4.1840 J
++ (instancetype)largeCalorieUnit API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));    // 1 Cal = 4184.0 J
++ (instancetype)calorieUnit API_DEPRECATED("Use smallCalorieUnit or largeCalorieUnit, depending on which you mean", ios(8.0, 11.0), watchos(2.0, 4.0));
+@end
+
+/* Temperature Units */
+@interface HKUnit (Temperature)
++ (instancetype)degreeCelsiusUnit;          // degC
++ (instancetype)degreeFahrenheitUnit;       // degF
++ (instancetype)kelvinUnit;                 // K
+@end
+
+/* Electrical Conductance Units */
+@interface HKUnit (Conductance)
++ (instancetype)siemenUnitWithMetricPrefix:(HKMetricPrefix)prefix;     // S
++ (instancetype)siemenUnit; // S
+@end
+
+/* Pharmacology Units */
+@interface HKUnit (Pharmacology)
++ (instancetype)internationalUnit NS_SWIFT_NAME(internationalUnit()) API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));  // IU
+@end
+
+/* Scalar Units */
+@interface HKUnit (Scalar)
++ (instancetype)countUnit;      // count
++ (instancetype)percentUnit;    // % (0.0 - 1.0)
+@end
+
+/* Hearing Sensitivity */
+@interface HKUnit (HearingSensitivity)
++ (instancetype)decibelHearingLevelUnit API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));  // dBHL
+@end
+
+@interface HKUnit (Math)
+- (HKUnit *)unitMultipliedByUnit:(HKUnit *)unit;
+- (HKUnit *)unitDividedByUnit:(HKUnit *)unit;
+- (HKUnit *)unitRaisedToPower:(NSInteger)power;
+- (HKUnit *)reciprocalUnit;
+@end
+
+/* Frequency Units */
+@interface HKUnit (Frequency)
++ (instancetype)hertzUnitWithMetricPrefix:(HKMetricPrefix)prefix API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));      // Hz
++ (instancetype)hertzUnit API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0));  // Hz
+@end
+
+/* Electrical Potential Difference Units */
+@interface HKUnit (ElectricPotentialDifference)
++ (instancetype)voltUnitWithMetricPrefix:(HKMetricPrefix)prefix API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));      // V
++ (instancetype)voltUnit API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0));  // V
+@end
+
+/* Power Units */
+@interface HKUnit (Power)
++ (instancetype)wattUnitWithMetricPrefix:(HKMetricPrefix)prefix API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));      // W
++ (instancetype)wattUnit API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // W
+@end
+
+/* Optical Power */
+@interface HKUnit (OpticalPower)
++ (instancetype)diopterUnit API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // D
++ (instancetype)prismDiopterUnit API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // pD
+@end
+
+/* Angle Units */
+@interface HKUnit (Angle)
++ (instancetype)radianAngleUnitWithMetricPrefix:(HKMetricPrefix)prefix API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // rad
++ (instancetype)radianAngleUnit API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // rad
++ (instancetype)degreeAngleUnit API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));  // deg
+@end
+
+/* Mole Constants */
+#define HKUnitMolarMassBloodGlucose (180.15588000005408)
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecord.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecord.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecord.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecord.h	2022-05-31 14:49:27.000000000 -0400
@@ -0,0 +1,127 @@
+//
+//  HKVerifiableClinicalRecord.h
+//  HealthKit
+//
+//  Copyright © 2021-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+@class HKVerifiableClinicalRecordSubject;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NSString * HKVerifiableClinicalRecordSourceType NS_TYPED_ENUM API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordSourceTypeSMARTHealthCard
+ @abstract      Represents a SMART Health Card source type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordSourceType const HKVerifiableClinicalRecordSourceTypeSMARTHealthCard API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordSourceTypeEUDigitalCOVIDCertificate
+ @abstract      Represents a EU Digital COVID Certificate source type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordSourceType const HKVerifiableClinicalRecordSourceTypeEUDigitalCOVIDCertificate API_AVAILABLE(ios(15.4));
+
+typedef NSString * HKVerifiableClinicalRecordCredentialType NS_TYPED_ENUM API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordCredentialTypeCOVID19
+ @abstract      Represents the COVID-19 credential type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordCredentialType const HKVerifiableClinicalRecordCredentialTypeCOVID19 NS_SWIFT_NAME(covid19) API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordCredentialTypeImmunization
+ @abstract      Represents the immunization credential type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordCredentialType const HKVerifiableClinicalRecordCredentialTypeImmunization API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordCredentialTypeLaboratory
+ @abstract      Represents the laboratory credential type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordCredentialType const HKVerifiableClinicalRecordCredentialTypeLaboratory API_AVAILABLE(ios(15.4));
+
+/*!
+ @constant      HKVerifiableClinicalRecordCredentialTypeRecovery
+ @abstract      Represents the recovery credential type for a verifiable record.
+ */
+HK_EXTERN HKVerifiableClinicalRecordCredentialType const HKVerifiableClinicalRecordCredentialTypeRecovery API_AVAILABLE(ios(15.4));
+
+/*!
+ @class         HKVerifiableClinicalRecord
+ @abstract      An NSObject that represents a verifiable clinical record.
+ */
+HK_EXTERN API_AVAILABLE(ios(15.0), macCatalyst(15.0), macos(13.0)) __WATCHOS_PROHIBITED
+@interface HKVerifiableClinicalRecord : HKSample
+
+/*!
+ @property      recordTypes
+ @abstract      The types present in this record.
+ */
+@property (readonly, copy) NSArray<NSString *> *recordTypes;
+
+/*!
+ @property      issuerIdentifier
+ @abstract      The identifier for the issuer of this record.
+ */
+@property (readonly, copy) NSString *issuerIdentifier;
+
+/*!
+ @property      subject
+ @abstract      The subject of this record.
+ */
+@property (readonly, copy) HKVerifiableClinicalRecordSubject *subject;
+
+/*!
+ @property      issuedDate
+ @abstract      The date this record was issued.
+ */
+@property (readonly, copy) NSDate *issuedDate;
+
+/*!
+ @property      relevantDate
+ @abstract      A date most relevant to this record, like when a vaccine was
+ administered or a test was performed.
+ */
+@property (readonly, copy) NSDate *relevantDate;
+
+/*!
+ @property      expirationDate
+ @abstract      The date this record expires.
+ */
+@property (readonly, copy, nullable) NSDate *expirationDate;
+
+/*!
+ @property      itemNames
+ @abstract      A list of display names for each item contained in this record.
+ */
+@property (readonly, copy) NSArray<NSString *> *itemNames;
+
+/*!
+ @property      sourceType
+ @abstract      The type of the source leading to this verifiable record.
+ */
+@property (readonly, copy, nullable) HKVerifiableClinicalRecordSourceType sourceType API_AVAILABLE(ios(15.4));
+
+/*!
+ @property      dataRepresentation
+ @abstract      The record's data representation, determined by source type.
+ */
+@property (readonly, copy) NSData *dataRepresentation API_AVAILABLE(ios(15.4));
+
+/*!
+ @property      JWSRepresentation
+ @abstract      The record's entirety as JSON Web Signature (JWS) data.
+ */
+@property (readonly, copy) NSData *JWSRepresentation API_DEPRECATED_WITH_REPLACEMENT("dataRepresentation", ios(15.0, 15.4));
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordQuery.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,73 @@
+//
+//  HKVerifiableClinicalRecordQuery.h
+//  HealthKit
+//
+//  Copyright © 2021-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKVerifiableClinicalRecord.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class         HKVerifiableClinicalRecordQuery
+ @abstract      A one-time share query that returns user-selected verifiable clinical records.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKVerifiableClinicalRecordQueryDescriptor", ios(15.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(15.0), macCatalyst(15.0), macos(13.0))
+#endif
+API_UNAVAILABLE(watchos)
+@interface HKVerifiableClinicalRecordQuery : HKQuery
+
+/*!
+ @property      recordTypes
+ @abstract      The record types that need to be present on desired records.
+ */
+@property (readonly, copy) NSArray<NSString *> *recordTypes;
+
+/*!
+ @property      sourceTypes
+ @abstract      The source type(s) of the records.
+ */
+@property (readonly, copy) NSArray<HKVerifiableClinicalRecordSourceType> *sourceTypes API_AVAILABLE(ios(15.4));
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/*!
+ @method        initWithRecordTypes:predicate:resultsHandler:
+ @abstract      Returns an one-time query that will ask for access to verifiable clinical records that match the query.
+ 
+ @param         recordTypes     The record types that need to be present on a verifiable clinical record.
+ @param         predicate       The predicate which records should match.
+ @param         resultsHandler  The block to invoke with the verifiable clinical records from the query.
+*/
+- (instancetype)initWithRecordTypes:(NSArray<NSString *> *)recordTypes
+                          predicate:(nullable NSPredicate *)predicate
+                     resultsHandler:(void(^)(HKVerifiableClinicalRecordQuery *query,
+                                             NSArray<HKVerifiableClinicalRecord *> * _Nullable records,
+                                             NSError * _Nullable error))resultsHandler;
+
+/*!
+ @method        initWithRecordTypes:sourceTypes:predicate:resultsHandler:
+ @abstract      Returns a one-time query that will ask for access to and return verifiable clinical records that match the query.
+ 
+ @param         recordTypes     The record types that need to be present on a verifiable clinical record.
+ @param         sourceTypes     The source type(s) of the records.
+ @param         predicate       The predicate which records should match.
+ @param         resultsHandler  The block to invoke with the verifiable clinical records from the query.
+ */
+- (instancetype)initWithRecordTypes:(NSArray<NSString *> *)recordTypes
+                        sourceTypes:(NSArray<HKVerifiableClinicalRecordSourceType> *)sourceTypes
+                          predicate:(nullable NSPredicate *)predicate
+                     resultsHandler:(void(^)(HKVerifiableClinicalRecordQuery *query,
+                                             NSArray<HKVerifiableClinicalRecord *> * _Nullable records,
+                                             NSError * _Nullable error))resultsHandler API_AVAILABLE(ios(15.4));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordSubject.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordSubject.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordSubject.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVerifiableClinicalRecordSubject.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,36 @@
+//
+//  HKVerifiableClinicalRecordSubject.h
+//  HealthKit
+//
+//  Copyright © 2021-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class     HKVerifiableClinicalRecordSubject
+ @abstract  An NSObject that represents a verifiable clinical record subject.
+ */
+HK_EXTERN API_AVAILABLE(ios(15.0), macCatalyst(15.0), macos(13.0)) __WATCHOS_PROHIBITED
+@interface HKVerifiableClinicalRecordSubject : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property     fullName
+ @abstract     The subject's full name.
+ */
+@property (readonly, copy) NSString *fullName;
+
+/*!
+ @property     dateOfBirthComponents
+ @abstract     The subject's date of birth components.
+ */
+@property (readonly, copy, nullable) NSDateComponents *dateOfBirthComponents;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrescription.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrescription.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrescription.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrescription.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,69 @@
+//
+//  HKVisionPrescription.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKSample.h>
+
+@class HKDevice;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @enum          HKVisionPrescriptionType
+ @abstract      Represents a vision prescription type
+ */
+typedef NS_ENUM(NSUInteger, HKVisionPrescriptionType) {
+    HKVisionPrescriptionTypeGlasses = 1,
+    HKVisionPrescriptionTypeContacts,
+} API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @class         HKVisionPrescription
+ @abstract      An HKObject subclass representing a vision prescription
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKVisionPrescription : HKSample
+
+/*!
+ @property      prescriptionType
+ @abstract      A vision prescription type (glasses or contacts)
+ */
+@property (nonatomic, assign, readonly) HKVisionPrescriptionType prescriptionType;
+
+/*!
+ @property      dateIssued
+ @abstract      The date the prescription was issued
+ */
+@property (nonatomic, copy, readonly) NSDate *dateIssued;
+
+/*!
+ @property      expirationDate
+ @abstract      The date the prescription will expire
+ */
+@property (nonatomic, copy, readonly, nullable) NSDate *expirationDate;
+
+/*!
+ @method        prescriptionWithType:dateIssued:expirationDate:device:metadata
+
+ @param         type           The prescription type
+ @param         dateIssued     The date the prescription was issued
+ @param         expirationDate The date the prescription expires
+ @param         device         The device that generated the sample
+ @param         metadata       The metadata for the sample
+ */
++ (instancetype)prescriptionWithType:(HKVisionPrescriptionType)type
+                          dateIssued:(NSDate *)dateIssued
+                      expirationDate:(nullable NSDate *)expirationDate
+                              device:(nullable HKDevice *)device
+                            metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrism.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrism.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrism.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKVisionPrism.h	2022-05-31 15:02:40.000000000 -0400
@@ -0,0 +1,121 @@
+//
+//  HKVisionPrism.h
+//  HealthKit
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKDefines.h>
+
+@class HKQuantity;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @enum          HKPrismBase
+ @abstract      Represents the prism base for rectangular coordinates
+ */
+typedef NS_ENUM(NSInteger, HKPrismBase) {
+    HKPrismBaseNone = 0,
+    HKPrismBaseUp,
+    HKPrismBaseDown,
+    HKPrismBaseIn,
+    HKPrismBaseOut,
+} API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @enum          HKVisionEye
+ @abstract      Represents an eye
+ */
+typedef NS_ENUM(NSInteger, HKVisionEye) {
+    HKVisionEyeLeft = 1,
+    HKVisionEyeRight,
+} API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @class         HKVisionPrism
+ @abstract      An object subclass representing prism vision fields used in eye glasses to correct double vision.
+                The prism aligns the two images so only one is seen.
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKVisionPrism : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      amount
+ @abstract      The compensation in prism diopters to correct eye misalignment [polar coordinates]
+ */
+@property (nonatomic, copy, readonly) HKQuantity *amount;
+
+/*!
+ @property      angle
+ @abstract      The direction of the prism base [polar coordinates]
+ */
+@property (nonatomic, copy, readonly) HKQuantity *angle;
+
+/*!
+ @property      verticalAmount
+ @abstract      The vertical component of compensation in prism diopters [rectangular coordinates]
+ */
+@property (nonatomic, copy, readonly) HKQuantity *verticalAmount;
+
+/*!
+ @property      horizontalAmount
+ @abstract      The horizontal component of compensation in prism diopters [rectangular coordinates]
+ */
+@property (nonatomic, copy, readonly) HKQuantity *horizontalAmount;
+
+/*!
+ @property      verticalBase
+ @abstract      The direction of the prism base relative to the vertical axis of the lens;
+                base up or base down. [rectangular coordinates]
+ */
+@property (nonatomic, readonly) HKPrismBase verticalBase;
+
+/*!
+ @property      horizontalBase
+ @abstract      The direction of the prism base relative to the horizontal axis of the lens;
+                base in (toward the nose) or base out (away from the nose). [rectangular coordinates]
+ */
+@property (nonatomic, readonly) HKPrismBase horizontalBase;
+
+/*!
+ @property      eye
+ @abstract      Which eye (left or right)
+ */
+@property (nonatomic, assign, readonly) HKVisionEye eye;
+
+/*!
+ @method        initWithAmount:angle:eye
+
+ @param         amount    The compensation for amount eye misalignment
+ @param         angle     The angle of the lens required to correct diplopia
+ @param         eye       The eye associated with the prism values
+ */
+- (instancetype)initWithAmount:(HKQuantity *)amount
+                         angle:(HKQuantity *)angle
+                           eye:(HKVisionEye)eye;
+
+/*!
+ @method        initWithVerticalAmount:verticalBase:horizontalAmount:horizontalBase:eye
+
+ @param         verticalAmount      The vertical component of compensation in prism diopters
+ @param         verticalBase        The direction of the prism base relative to the vertical axis of the lens;
+                                    base up or base down.
+ @param         horizontalAmount    The horizontal component of compensation in prism diopters
+ @param         horizontalBase      The direction of the prism base relative to the horizontal axis of the lens;
+                                    base in (toward the nose) or base out (away from the nose).
+ @param         eye                 The eye associated with the prism values
+ */
+- (instancetype)initWithVerticalAmount:(HKQuantity *)verticalAmount
+                          verticalBase:(HKPrismBase)verticalBase
+                      horizontalAmount:(HKQuantity *)horizontalAmount
+                        horizontalBase:(HKPrismBase)horizontalBase
+                                   eye:(HKVisionEye)eye;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkout.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkout.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkout.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkout.h	2022-05-31 14:49:26.000000000 -0400
@@ -0,0 +1,426 @@
+//
+//  HKWorkout.h
+//  HealthKit
+//
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantity;
+@class HKQuantityType;
+@class HKStatistics;
+@class HKWorkoutActivity;
+
+/*!
+ @enum          HKWorkoutActivityType
+ @abstract      Represents a particular type of workout or exercise
+ */
+typedef NS_ENUM(NSUInteger, HKWorkoutActivityType) {
+    HKWorkoutActivityTypeAmericanFootball = 1,
+    HKWorkoutActivityTypeArchery,
+    HKWorkoutActivityTypeAustralianFootball,
+    HKWorkoutActivityTypeBadminton,
+    HKWorkoutActivityTypeBaseball,
+    HKWorkoutActivityTypeBasketball,
+    HKWorkoutActivityTypeBowling,
+    HKWorkoutActivityTypeBoxing, // See also HKWorkoutActivityTypeKickboxing.
+    HKWorkoutActivityTypeClimbing,
+    HKWorkoutActivityTypeCricket,
+    HKWorkoutActivityTypeCrossTraining, // Any mix of cardio and/or strength training. See also HKWorkoutActivityTypeCoreTraining and HKWorkoutActivityTypeFlexibility.
+    HKWorkoutActivityTypeCurling,
+    HKWorkoutActivityTypeCycling,
+    HKWorkoutActivityTypeDance API_DEPRECATED("Use HKWorkoutActivityTypeSocialDance or HKWorkoutActivityTypeCardioDance", ios(8.0, 14.0), watchos(2.0, 7.0)), // This enum remains available to access older data.
+    HKWorkoutActivityTypeDanceInspiredTraining API_DEPRECATED("Use HKWorkoutActivityTypeSocialDance, HKWorkoutActivityTypeCardioDance, HKWorkoutActivityTypeBarre or HKWorkoutActivityTypePilates", ios(8.0, 10.0), watchos(2.0, 3.0)), // This enum remains available to access older data.
+    HKWorkoutActivityTypeElliptical,
+    HKWorkoutActivityTypeEquestrianSports, // Polo, Horse Racing, Horse Riding, etc.
+    HKWorkoutActivityTypeFencing,
+    HKWorkoutActivityTypeFishing,
+    HKWorkoutActivityTypeFunctionalStrengthTraining, // Primarily free weights and/or body weight and/or accessories
+    HKWorkoutActivityTypeGolf,
+    HKWorkoutActivityTypeGymnastics,
+    HKWorkoutActivityTypeHandball,
+    HKWorkoutActivityTypeHiking,
+    HKWorkoutActivityTypeHockey, // Ice Hockey, Field Hockey, etc.
+    HKWorkoutActivityTypeHunting,
+    HKWorkoutActivityTypeLacrosse,
+    HKWorkoutActivityTypeMartialArts,
+    HKWorkoutActivityTypeMindAndBody, // Qigong, meditation, etc.
+    HKWorkoutActivityTypeMixedMetabolicCardioTraining API_DEPRECATED("Use HKWorkoutActivityTypeMixedCardio or HKWorkoutActivityTypeHighIntensityIntervalTraining", ios(8.0, 11.0), watchos(2.0, 4.0)), // This enum remains available to access older data.
+    HKWorkoutActivityTypePaddleSports, // Canoeing, Kayaking, Outrigger, Stand Up Paddle Board, etc.
+    HKWorkoutActivityTypePlay, // Dodge Ball, Hopscotch, Tetherball, Jungle Gym, etc.
+    HKWorkoutActivityTypePreparationAndRecovery, // Therapeutic activities like foam rolling, self massage and flexibility moves.
+    HKWorkoutActivityTypeRacquetball,
+    HKWorkoutActivityTypeRowing,
+    HKWorkoutActivityTypeRugby,
+    HKWorkoutActivityTypeRunning,
+    HKWorkoutActivityTypeSailing,
+    HKWorkoutActivityTypeSkatingSports, // Ice Skating, Speed Skating, Inline Skating, Skateboarding, etc.
+    HKWorkoutActivityTypeSnowSports, // Sledding, Snowmobiling, Building a Snowman, etc. See also HKWorkoutActivityTypeCrossCountrySkiing, HKWorkoutActivityTypeSnowboarding, and HKWorkoutActivityTypeDownhillSkiing.
+    HKWorkoutActivityTypeSoccer,
+    HKWorkoutActivityTypeSoftball,
+    HKWorkoutActivityTypeSquash,
+    HKWorkoutActivityTypeStairClimbing, // See also HKWorkoutActivityTypeStairs and HKWorkoutActivityTypeStepTraining.
+    HKWorkoutActivityTypeSurfingSports, // Traditional Surfing, Kite Surfing, Wind Surfing, etc.
+    HKWorkoutActivityTypeSwimming,
+    HKWorkoutActivityTypeTableTennis,
+    HKWorkoutActivityTypeTennis,
+    HKWorkoutActivityTypeTrackAndField, // Shot Put, Javelin, Pole Vaulting, etc.
+    HKWorkoutActivityTypeTraditionalStrengthTraining, // Primarily machines and/or free weights
+    HKWorkoutActivityTypeVolleyball,
+    HKWorkoutActivityTypeWalking,
+    HKWorkoutActivityTypeWaterFitness,
+    HKWorkoutActivityTypeWaterPolo,
+    HKWorkoutActivityTypeWaterSports, // Water Skiing, Wake Boarding, etc.
+    HKWorkoutActivityTypeWrestling,
+    HKWorkoutActivityTypeYoga,
+    
+    HKWorkoutActivityTypeBarre              API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),    // HKWorkoutActivityTypeDanceInspiredTraining
+    HKWorkoutActivityTypeCoreTraining       API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeCrossCountrySkiing API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeDownhillSkiing     API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeFlexibility        API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeHighIntensityIntervalTraining    API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeJumpRope           API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeKickboxing         API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypePilates            API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),    // HKWorkoutActivityTypeDanceInspiredTraining
+    HKWorkoutActivityTypeSnowboarding       API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeStairs             API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeStepTraining       API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeWheelchairWalkPace API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeWheelchairRunPace  API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeTaiChi             API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeMixedCardio        API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0)),    // HKWorkoutActivityTypeMixedMetabolicCardioTraining
+    HKWorkoutActivityTypeHandCycling        API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeDiscSports         API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeFitnessGaming      API_AVAILABLE(ios(13.0), watchos(6.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutActivityTypeCardioDance        API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)),
+    HKWorkoutActivityTypeSocialDance        API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)),    // Dances done in social settings like swing, salsa and folk dances from different world regions.
+    HKWorkoutActivityTypePickleball         API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)),
+    HKWorkoutActivityTypeCooldown           API_AVAILABLE(ios(14.0), watchos(7.0), macCatalyst(14.0), macos(13.0)),    // Low intensity stretching and mobility exercises following a more vigorous workout type
+    HKWorkoutActivityTypeSwimBikeRun        API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) = 82,
+    HKWorkoutActivityTypeTransition         API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)),
+    
+    HKWorkoutActivityTypeOther = 3000,
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+typedef NS_ENUM(NSInteger, HKWorkoutEventType) {
+    HKWorkoutEventTypePause = 1,
+    HKWorkoutEventTypeResume,
+    HKWorkoutEventTypeLap           API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutEventTypeMarker        API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutEventTypeMotionPaused  API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutEventTypeMotionResumed API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutEventTypeSegment       API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0)),
+    HKWorkoutEventTypePauseOrResumeRequest API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0)),
+} API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @class         HKWorkoutEvent
+ @abstract      Represents a particular event that occurred during a workout.
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkoutEvent : NSObject <NSSecureCoding, NSCopying>
+
+/*!
+ @property      workoutEventType
+ @abstract      Represents the type of event that occurred during a workout.
+ */
+@property (readonly, assign) HKWorkoutEventType type;
+
+@property (readonly, copy) NSDate *date API_DEPRECATED_WITH_REPLACEMENT("dateInterval", ios(8.0, 11.0), watchos(2.0, 4.0));
+
+/*!
+ @property      dateInterval
+ @abstract      Date interval representing the time period for which the event is valid.
+ @discussion    Most event types only support date intervals with zero duration. Events of type HKWorkoutEventTypeLap
+                and HKWorkoutEventTypeSegment are currently the only events that support a nonzero duration.
+ */
+@property (readonly, copy) NSDateInterval *dateInterval API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @property      metadata
+ @abstract      Extra information describing properties of the receiver.
+ @discussion    Keys must be NSString and values must be either NSString, NSNumber, NSDate, or
+                HKQuantity. See HKMetadata.h for potential metadata keys and values.
+ */
+@property (readonly, copy, nullable) NSDictionary<NSString *, id> *metadata API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
++ (instancetype)workoutEventWithType:(HKWorkoutEventType)type date:(NSDate *)date API_DEPRECATED_WITH_REPLACEMENT("workoutEventWithType:dateInterval:metadata:", ios(8.0, 11.0), watchos(2.0, 4.0));
+
++ (instancetype)workoutEventWithType:(HKWorkoutEventType)type date:(NSDate *)date metadata:(NSDictionary<NSString *, id> *)metadata API_DEPRECATED_WITH_REPLACEMENT("workoutEventWithType:dateInterval:metadata:", ios(10.0, 11.0), watchos(3.0, 4.0));
+
+/*!
+ @method        workoutEventWithType:dateInterval:metadata:
+ @discussion    Creates an event with a date interval with or without a duration.
+ @param         type                    The type of event to create
+ @param         dateInterval            The dateInterval over which the event occurs
+ @param         metadata                Dictionary of metadata associated with the event, nullable
+ */
++ (instancetype)workoutEventWithType:(HKWorkoutEventType)type dateInterval:(NSDateInterval *)dateInterval metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+- (instancetype)init NS_UNAVAILABLE;
+
+@end
+
+/*!
+ @class         HKWorkout
+ @abstract      An HKObject subclass representing a workout or activity
+ */
+HK_EXTERN API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkout : HKSample
+
+/*!
+ @property      workoutActivityType
+ @abstract      Represents the activity that the user was performing during a workout
+ */
+@property (readonly, assign) HKWorkoutActivityType workoutActivityType;
+
+/*!
+ @property      workoutEvents
+ @abstract      An array of HKWorkoutEvents that occurred during a workout.
+ @discussion    These events will be ordered by date in ascending order. All events must take place
+                between the start date and end date of the workout. The first workout event should never be a resume event
+                because it is assumed that the workout begins in a running state.
+ */
+@property (readonly, copy, nullable) NSArray<HKWorkoutEvent *> *workoutEvents;
+
+/*!
+ @property      workoutActivities
+ @abstract      An array of HKWorkoutActivities that were performed during a workout.
+ @discussion    These activities will be ordered by date in ascending order. All activities must take place
+                between the start date and end date of the workout.
+ */
+@property (readonly, copy) NSArray<HKWorkoutActivity *> *workoutActivities API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @property      duration
+ @abstract      The length of time that a workout was recording
+ @discussion    The duration is derived from the start and end dates of the workout and takes into account periods that the
+                workout was paused. Periods that the workout was paused are based off of the workoutEvents property.
+ */
+@property (readonly, assign) NSTimeInterval duration;
+
+/*!
+ @property      totalEnergyBurned
+ @abstract      The amount of energy that was burned during a workout
+ @discussion    This metric should represent the total active energy burned during the course of the workout. It should be a
+                quantity with a unit representing energy.
+ */
+@property (readonly, strong, nullable) HKQuantity *totalEnergyBurned API_DEPRECATED("Use statisticsForType: passing the HKQuantityType for HKQuantityTypeIdentifierActiveEnergyBurned", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+/*!
+ @property      totalDistance
+ @abstract      The total distance that was traveled during a workout
+ @discussion    This metric should represent the total distance traveled during the course of the workout. It should be a
+                quantity with a unit representing length.
+ */
+@property (readonly, strong, nullable) HKQuantity *totalDistance API_DEPRECATED("Use statisticsForType: passing the HKQuantityType for the desired distance type", ios(8.0, API_TO_BE_DEPRECATED), watchos(2.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+
+/*!
+ @property      totalSwimmingStrokeCount
+ @abstract      The total count of swimming strokes that was accumulated during a workout
+ @discussion    This metric should represent the total count of swimming strokes accumulated during the course of the
+                workout. It should be a quantity with a unit representing count.
+ */
+@property (readonly, strong, nullable) HKQuantity *totalSwimmingStrokeCount API_DEPRECATED("Use statisticsForType: passing the HKQuantityType for HKQuantityTypeIdentifierSwimmingStrokeCount", ios(10.0, API_TO_BE_DEPRECATED), watchos(3.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+
+/*!
+ @property      totalFlightsClimbed
+ @abstract      The total count of flights climbed during a workout
+ @discussion    This metric should represent the total count of flights accumulated during the course of the
+                workout. It should be a quantity with a unit representing count.
+ */
+@property (readonly, strong, nullable) HKQuantity *totalFlightsClimbed API_DEPRECATED("Use statisticsForType: passing the HKQuantityType for HKQuantityTypeIdentifierFlightClimbed", ios(11.0, API_TO_BE_DEPRECATED), watchos(4.0, API_TO_BE_DEPRECATED), macCatalyst(13.0, API_TO_BE_DEPRECATED), macos(13.0, API_TO_BE_DEPRECATED));
+
+/*!
+ @property      allStatistics
+ @abstract      A dictionary of statistics per quantity type during the workout
+ @discussion    This dictionary will contain HKStatistics objects containing the statistics by quantity
+                sample type for all of the samples that have been added to the workout.
+ */
+@property (readonly, copy) NSDictionary<HKQuantityType *, HKStatistics *> *allStatistics API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @method        statisticsForType:
+ @discussion    Returns an HKStatistics object containing the statistics for all the samples of the given type that
+                have been added to the workout. If there are no samples of the given type then nil is returned.
+ 
+ @param         quantityType    The quantity type to gather statistics about.
+ */
+- (nullable HKStatistics *)statisticsForType:(HKQuantityType *)quantityType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:
+
+ @param         workoutActivityType     The activity type of the workout
+ @param         startDate               The point in time that the workout was started
+ @param         endDate                 The point in time that the workout was ended
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate;
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:workoutEvents:totalEnergyBurned:totalDistance:metadata
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total quantities
+                should be associated with this workout using addSamples:toWorkout:completion: in HKHealthStore.
+ 
+ @param         workoutActivityType     The activity type of the workout
+ @param         startDate               The point in time that the workout was started
+ @param         endDate                 The point in time that the workout was ended
+ @param         workoutEvents           An array of HKWorkoutEvents. The workout's duration is derived from these events. (Optional)
+ @param         totalEnergyBurned       The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance           The total distance that was traveled during the workout. (Optional)
+ @param         metadata                Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                          workoutEvents:(nullable NSArray<HKWorkoutEvent *> *)workoutEvents
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:workoutEvents:totalEnergyBurned:totalDistance:metadata
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total quantities
+                should be associated with this workout using addSamples:toWorkout:completion: in HKHealthStore.
+ 
+ @param         workoutActivityType     The activity type of the workout
+ @param         startDate               The point in time that the workout was started
+ @param         endDate                 The point in time that the workout was ended
+ @param         workoutEvents           An array of HKWorkoutEvents. The workout's duration is derived from these events. (Optional)
+ @param         totalEnergyBurned       The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance           The total distance that was traveled during the workout. (Optional)
+ @param         device                  The HKDevice associated with the workout. (Optional)
+ @param         metadata                Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                          workoutEvents:(nullable NSArray<HKWorkoutEvent *> *)workoutEvents
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+                                 device:(nullable HKDevice *)device
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:duration:totalEnergyBurned:totalDistance:metadata:
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total quantities
+                should be associated with this workout using addSamples:toWorkout:completion: in HKHealthStore.
+ 
+ @param         workoutActivityType     The activity type of the workout
+ @param         startDate               The point in time that the workout was started
+ @param         endDate                 The point in time that the workout was ended
+ @param         duration                The duration of the workout. If 0, the difference between startDate and endDate is used.
+ @param         totalEnergyBurned       The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance           The total distance that was traveled during the workout. (Optional)
+ @param         metadata                Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                               duration:(NSTimeInterval)duration
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:duration:totalEnergyBurned:totalDistance:device:metadata:
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total quantities
+                should be associated with this workout using addSamples:toWorkout:completion: in HKHealthStore.
+ 
+ @param         workoutActivityType     The activity type of the workout
+ @param         startDate               The point in time that the workout was started
+ @param         endDate                 The point in time that the workout was ended
+ @param         duration                The duration of the workout. If 0, the difference between startDate and endDate is used.
+ @param         totalEnergyBurned       The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance           The total distance that was traveled during the workout. (Optional)
+ @param         device                  The HKDevice associated with the workout. (Optional)
+ @param         metadata                Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                               duration:(NSTimeInterval)duration
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+                                 device:(nullable HKDevice *)device
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(9.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:workoutEvents:totalEnergyBurned:totalDistance:totalSwimmingStrokeCount:device:metadata:
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total quantities
+                should be associated with this workout using addSamples:toWorkout:completion: in HKHealthStore.
+ 
+ @param         workoutActivityType         The activity type of the workout
+ @param         startDate                   The point in time that the workout was started
+ @param         endDate                     The point in time that the workout was ended
+ @param         workoutEvents               An array of HKWorkoutEvents. The workout's duration is derived from these events. (Optional)
+ @param         totalEnergyBurned           The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance               The total distance that was traveled during the workout. (Optional)
+ @param         totalSwimmingStrokeCount    The total count of swimming strokes that was accumulated during the workout. (Optional)
+ @param         device                      The HKDevice associated with the workout. (Optional)
+ @param         metadata                    Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                          workoutEvents:(nullable NSArray<HKWorkoutEvent *> *)workoutEvents
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+               totalSwimmingStrokeCount:(nullable HKQuantity *)totalSwimmingStrokeCount
+                                 device:(nullable HKDevice *)device
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @method        workoutWithActivityType:startDate:endDate:workoutEvents:totalEnergyBurned:totalDistance:totalFlightsClimbed:device:metadata:
+ @discussion    If the optional total parameters are specified, matching samples that add up to the calculated total
+                quantities should be associated with this workout using addSamples:toWorkout:completion: in
+                HKHealthStore.
+ 
+ @param         workoutActivityType         The activity type of the workout
+ @param         startDate                   The point in time that the workout was started
+ @param         endDate                     The point in time that the workout was ended
+ @param         workoutEvents               An array of HKWorkoutEvents. The workout's duration is derived from these events. (Optional)
+ @param         totalEnergyBurned           The amount of energy that was burned during the workout. (Optional)
+ @param         totalDistance               The total distance that was traveled during the workout. (Optional)
+ @param         totalFlightsClimbed         The total count of flights climbed that was accumulated during the workout. (Optional)
+ @param         device                      The HKDevice associated with the workout. (Optional)
+ @param         metadata                    Metadata for the workout. (Optional)
+ */
++ (instancetype)workoutWithActivityType:(HKWorkoutActivityType)workoutActivityType
+                              startDate:(NSDate *)startDate
+                                endDate:(NSDate *)endDate
+                          workoutEvents:(nullable NSArray<HKWorkoutEvent *> *)workoutEvents
+                      totalEnergyBurned:(nullable HKQuantity *)totalEnergyBurned
+                          totalDistance:(nullable HKQuantity *)totalDistance
+                    totalFlightsClimbed:(nullable HKQuantity *)totalFlightsClimbed
+                                 device:(nullable HKDevice *)device
+                               metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutDuration API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutTotalDistance API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutTotalEnergyBurned API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutType API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutTotalSwimmingStrokeCount API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutTotalFlightsClimbed API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutSumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutMinimumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutMaximumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutAverageQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+// Sort Identifiers
+HK_EXTERN NSString * const HKWorkoutSortIdentifierDuration API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKWorkoutSortIdentifierTotalDistance API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKWorkoutSortIdentifierTotalEnergyBurned API_AVAILABLE(ios(8.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKWorkoutSortIdentifierTotalSwimmingStrokeCount API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0));
+HK_EXTERN NSString * const HKWorkoutSortIdentifierTotalFlightsClimbed API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutActivity.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutActivity.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutActivity.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutActivity.h	2022-05-31 14:51:54.000000000 -0400
@@ -0,0 +1,124 @@
+//
+//  HKWorkoutActivity.h
+//  HKWorkoutActivity
+//
+//  Copyright © 2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKQuantityType;
+@class HKStatistics;
+@class HKWorkoutConfiguration;
+@class HKWorkoutEvent;
+
+/*!
+ @class         HKWorkoutActivity
+ @abstract      An HKWorkoutActivity is an object describing the properties of an activity within an HKWorkout.
+ */
+HK_EXTERN API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0))
+@interface HKWorkoutActivity : NSObject
+
+/*!
+ @property      UUID
+ @abstract      A unique identifier of the activity in the HealthKit database.
+ */
+@property (copy, readonly) NSUUID *UUID;
+
+/*!
+ @property      workoutConfiguration
+ @abstract      The configuration object describing the workout activity.
+ */
+@property (copy, readonly) HKWorkoutConfiguration *workoutConfiguration;
+
+/*!
+ @property      startDate
+ @abstract      The point in time when the workout activity was started.
+ */
+@property (copy, readonly) NSDate *startDate;
+
+/*!
+ @property      endDate
+ @abstract      The point in time when the workout activity was ended.
+ @discussion    This value is nil when a workout activity is in progress.
+ */
+@property (copy, readonly, nullable) NSDate *endDate;
+
+/*!
+ @property      metadata
+ @abstract      Extra information describing properties of the workout activity.
+ @discussion    Keys must be NSString and values must be either NSString, NSNumber, NSDate, or
+                HKQuantity. See HKMetadata.h for potential metadata keys and values.
+ */
+@property (copy, readonly, nullable) NSDictionary<NSString *, id> *metadata;
+
+/*!
+ @property      duration
+ @abstract      The length of time that the workout activity was recording
+ @discussion    The duration is derived from the start and end dates of the activity and takes
+                into account periods that the activity was paused. Periods that the activity was
+                paused are based off of the workoutEvents property of the parent workout object.
+ */
+@property (readonly, assign) NSTimeInterval duration;
+
+/*!
+ @property      workoutEvents
+ @abstract      An array of HKWorkoutEvents that occurred during the workout activity.
+ @discussion    These events will be ordered by date in ascending order. These events are a subset
+                of the workout events that take place between the start date and end date of the
+                activity. This includes any event that overlaps the activity, even partially.
+                Consequently, some events may be included in more than one activity.
+ */
+@property (readonly, copy) NSArray<HKWorkoutEvent *> *workoutEvents;
+
+/*!
+ @property      allStatistics
+ @abstract      A dictionary of statistics per quantity type during the activity
+ @discussion    This dictionary will contain HKStatistics objects containing the statistics by quantity
+                sample type for all of the samples that have been added to the workout within the date
+                interval of this activity.
+ */
+@property (readonly, copy) NSDictionary<HKQuantityType *, HKStatistics *> *allStatistics API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @method        statisticsForType:
+ @discussion    Returns an HKStatistics object containing the statistics for all the samples of the given type that
+                have been added to the workout within the date interval of this activity. If there are no samples of
+                the given type then nil is returned.
+  
+ @param         quantityType    The quantity type to gather statistics about.
+ */
+- (nullable HKStatistics *)statisticsForType:(HKQuantityType *)quantityType;
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/*!
+ @method        initWithWorkoutConfiguration:startDate:endDate:metadata:
+ @abstract      Initialize a new HKWorkoutActivity with the specified values.
+ 
+ @param     workoutConfiguration    The configuration object describing the workout activity.
+ @param     startDate               The point in time when the workout activity was started.
+ @param     endDate                 The point in time when the workout activity was ended.
+ @param     metadata                Metadata for the workout activity. (Optional)
+ */
+- (instancetype)initWithWorkoutConfiguration:(HKWorkoutConfiguration *)workoutConfiguration
+                                   startDate:(NSDate *)startDate
+                                     endDate:(nullable NSDate *)endDate
+                                    metadata:(nullable NSDictionary<NSString *, id> *)metadata;
+
+@end
+
+// Predicate Key Paths
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityType API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityDuration API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityStartDate API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityEndDate API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivitySumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityMinimumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityMaximumQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+HK_EXTERN NSString * const HKPredicateKeyPathWorkoutActivityAverageQuantity API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutBuilder.h	2022-05-31 15:04:04.000000000 -0400
@@ -0,0 +1,261 @@
+//
+//  HKWorkoutBuilder.h
+//  HealthKit
+//
+//  Copyright © 2017-2022 Apple. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <HealthKit/HKObjectType.h>
+#import <HealthKit/HKWorkout.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKHealthStore;
+@class HKSeriesBuilder;
+@class HKStatistics;
+@class HKWorkoutConfiguration;
+
+/*!
+ @class         HKWorkoutBuilder
+ @discussion    An HKWorkoutBuilder is used to incrementally create new workouts in the HealthKit database. Samples,
+                events, and metadata may be added to a builder either during a live workout session or to create a
+                workout that occurred in the past. Calling finishWorkoutWithCompletion: will create a new workout
+                with samples, events, and metadata that have been provided.
+ */
+HK_EXTERN API_AVAILABLE(ios(12.0), watchos(5.0))
+@interface HKWorkoutBuilder : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @property      device
+ @abstract      The HKDevice to be associated with the workout.
+ */
+@property (copy, nullable, readonly) HKDevice *device;
+
+/*!
+ @property      startDate
+ @abstract      The start date for the workout, as provided by beginCollectionWithStartDate:completion:
+ */
+@property (copy, nullable, readonly) NSDate *startDate;
+
+/*!
+ @property      endDate
+ @abstract      The end date for the workout, as provided by endCollectionWithEndDate:completion:
+ */
+@property (copy, nullable, readonly) NSDate *endDate;
+
+/*!
+ @property      workoutConfiguration
+ @abstract      The configuration for the workout being built.
+ */
+@property (copy, readonly) HKWorkoutConfiguration *workoutConfiguration;
+
+/*!
+ @property      metadata
+ @abstract      The metadata that will be used when the workout is finished.
+ */
+@property (copy, readonly) NSDictionary<NSString *, id> *metadata;
+
+/*!
+ @property      workoutEvents
+ @abstract      Workout events that have been added to the builder.
+ @discussion    New events that are added using addWorkoutEvents:completion: will be appended to this array once the
+                completion is called.
+ */
+@property (copy, readonly) NSArray<HKWorkoutEvent *> *workoutEvents;
+
+/*!
+ @property      workoutActivities
+ @abstract      Workout activities that have been added to the builder.
+ @discussion    New activities that are added using addWorkoutActivity:completion: will be appended to this array once the
+                completion is called.
+ */
+@property (copy, readonly) NSArray<HKWorkoutActivity *> *workoutActivities API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @property      allStatistics
+ @abstract      A dictionary of statistics per quantity type added to the builder
+ @discussion    This dictionary will contain HKStatistics objects containing the statistics by quantity
+                sample type for all of the samples that have been added to the builder.
+ */
+@property (readonly, copy) NSDictionary<HKQuantityType *, HKStatistics *> *allStatistics API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+/*!
+ @method        initWithHealthStore:configuration:device:
+ @abstract      The designated initializer to create an HKWorkoutBuilder.
+ @discussion    Creates a new HKWorkoutBuilder unconnected to any HKWorkoutSession or any sources of data.
+
+ @param         healthStore     Specifies the HKHealthStore object to use for building the workout. The store is retained
+                                until the builder is finished and a workout has been saved or discarded.
+ @param         configuration   The workout configuration to be used.
+ @param         device          The HKDevice to attach to the resulting HKWorkout.
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                      configuration:(HKWorkoutConfiguration *)configuration
+                             device:(nullable HKDevice *)device;
+
+/*!
+ @method        beginCollectionWithStartDate:error:
+ @abstract      Sets the workout start date and activates the workout builder.
+ @discussion    Calling this method is required before any samples, events or metadata can be added to the builder.
+ 
+ @param         startDate   The start date of the workout.
+ @param         completion  Called once data collection has started or has failed to start.
+ */
+- (void)beginCollectionWithStartDate:(NSDate *)startDate completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(beginCollection(at:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        addSamples:completion:
+ @discussion    Adds new samples to the builder instance. This method can be called multiple times to add samples
+                incrementally to the builder. The samples will be saved to the database if they have not already been
+                saved. The constraints of -[HKHealthStore saveObject:withCompletion:] apply to this method as well.
+                The start date of the samples must be later than the start date of the receiver. It is an error to call
+                this method after finishWorkoutWithCompletion: has been called. This operation is performed
+                asynchronously and the completion will be executed on an arbitrary background queue.
+
+ @param         samples     The samples to add to the workout.
+ @param         completion  Block to be called when the insertion is complete. If success is YES, the samples were added
+                            to the builder successfully. If success is NO, error will be non-nil and contain the error
+                            encountered while adding the new samples.
+ */
+- (void)addSamples:(NSArray<HKSample *> *)samples completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(addSamples(_:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        addWorkoutEvents:completion:
+ @discussion    Adds new workout events to the builder instance. This method can be called many times to add workout
+                events incrementally to the builder. It is an error to call this method after
+                finishWorkoutWithCompletion: has been called. This operation is performed asynchronously and the
+                completion will be executed on an arbitrary background queue.
+
+ @param         workoutEvents   The events to add to the builder.
+ @param         completion      Block to be called when the addition of events to the builder is complete. If success is
+                                YES, the events were added to the builder successfully. If success is NO, error will be
+                                non-null and will contain the error encountered during the insertion operation.
+ */
+- (void)addWorkoutEvents:(NSArray<HKWorkoutEvent *> *)workoutEvents completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(addWorkoutEvents(_:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        addMetadata:completion:
+ @discussion    Adds new metadata to the builder instance. This method can be called more than once; each time the newly
+                provided metadata will be merged with previously added metadata in the same manner as
+                -[NSMutableDictionary addEntriesFromDictionary:]. This operation is performed asynchronously and the
+                completion will be executed on an arbitrary background queue.
+
+ @param         metadata    The metadata to add to the workout.
+ @param         completion  Block to be called when the addition of metadata to the builder is complete. If success is
+                            YES, the metadata has been added to the builder successfully. If success is NO, error will
+                            be non-null and will contain the error encountered during the insertion operation. When an
+                            error occurs, the builder's metadata property will remain unchanged.
+ */
+- (void)addMetadata:(NSDictionary<NSString *, id> *)metadata completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(addMetadata(_:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        addWorkoutActivity:completion:
+ @discussion    Adds a new workout activity to the builder instance. This method can be called many times to add workout
+                activities incrementally to the builder. It is an error to call this method after
+                finishWorkoutWithCompletion: has been called. This operation is performed asynchronously and the
+                completion will be executed on an arbitrary background queue.
+ 
+ @param         workoutActivity     The activity to add to the builder.
+ @param         completion          Block to be called when the addition of the activity to the builder is complete. If success is
+                                    YES, the activity was added to the builder successfully. If success is NO, error will be
+                                    non-null and will contain the error encountered during the insertion operation.
+ */
+- (void)addWorkoutActivity:(HKWorkoutActivity *)workoutActivity
+                completion:(void (^)(BOOL success, NSError * _Nullable error))completion API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_ASYNC_NAME(addWorkoutActivity(_:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        updateActivityWithUUID:endDate:completion:
+ @discussion    Sets the end date on an already added activity. It is an error to call this method after
+                finishWorkoutWithCompletion: has been called. This operation is performed asynchronously and the
+                completion will be executed on an arbitrary background queue.
+ 
+ @param         UUID        The UUID of the workout activity to update.
+ @param         endDate     The end date to set on the activity
+ @param         completion  Block to be called when the update of the end date on the activity is complete. If success is
+                            YES, the end date was set to the actvity successfully. If success is NO, error will be
+                            non-null and will contain the error encountered during the update operation.
+ */
+- (void)updateActivityWithUUID:(NSUUID *)UUID
+                       endDate:(NSDate *)endDate
+                    completion:(void (^)(BOOL success, NSError * _Nullable error))completion API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(updateActivity(uuid:end:completion:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        updateActivityWithUUID:addMetadata:completion:
+ @discussion    Adds new metadata to an already added activity. This method can be called more than once; each time
+                the newly provided metadata will be merged with previously added metadata in the same manner as
+                -[NSMutableDictionary addEntriesFromDictionary:]. It is an error to call this method after
+                finishWorkoutWithCompletion: has been called. This operation is performed asynchronously and the
+                completion will be executed on an arbitrary background queue.
+ 
+ @param         UUID        The UUID of the workout activity to update.
+ @param         metadata    The metadata to add to the workout activity.
+ @param         completion  Block to be called when the addition of metadata to the activity is complete. If success is
+                            YES, the metadata has been added to the activity successfully. If success is NO, error will
+                            be non-null and will contain the error encountered during the insertion operation. When an
+                            error occurs, the activity's metadata property will remain unchanged.
+ */
+- (void)updateActivityWithUUID:(NSUUID *)UUID
+                   addMedatata:(NSDictionary<NSString *, id> *)metadata
+                    completion:(void (^)(BOOL success, NSError * _Nullable error))completion API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0)) NS_SWIFT_NAME(updateActivity(uuid:adding:completion:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        endCollectionWithEndDate:error:
+ @abstract      Sets the workout end date and deactivates the workout builer.
+ @discussion    Calling this method is required before you finish a workout builder.
+ 
+ @param         endDate     The end date of the workout.
+ @param         completion  Called once data collection has stopped or has failed to stop.
+ */
+- (void)endCollectionWithEndDate:(NSDate *)endDate completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_NAME(endCollection(at:)) NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method        finishWorkoutWithCompletion:
+ @discussion    Creates and saves an HKWorkout using samples and events that have been added to workout previously.
+ 
+ @param         completion  Block to be called after the HKWorkout object has been created and saved. If the returned
+                            workout is nil, an error may have occurred in which case error will be non-nil. If both
+                            workout and error are nil then finishing the workout succeeded but the workout sample
+                            is not available because the device is locked.
+ */
+- (void)finishWorkoutWithCompletion:(void (^)(HKWorkout * _Nullable_result workout, NSError * _Nullable error))completion;
+
+/*!
+ @method        discardWorkout
+ @discussion    Finishes building the workout and discards the result instead of saving it. Samples that were added to
+                the workout will not be deleted. Adding samples, events, and metadata to the receiver after
+                discardWorkout has been called is an error.
+ */
+- (void)discardWorkout;
+
+/*!
+ @method        elapsedTimeAtDate:
+ @abstract      The elapsed duration of the workout evaluated at the specified date. The duration does not include
+                periods when the workout was paused, which are the intervals between pause and resume events.
+ */
+- (NSTimeInterval)elapsedTimeAtDate:(NSDate *)date;
+
+/*!
+ @method        statisticsForType:
+ @discussion    Returns an HKStatistics object containing the statistics for all the samples of the given type that
+                have been added to the receiver. If there are no samples of the given type then nil is returned.
+ 
+ @param         quantityType    The quantity type to gather statistics about.
+ */
+- (nullable HKStatistics *)statisticsForType:(HKQuantityType *)quantityType;
+
+/*!
+ @method        seriesBuilderForType:
+ @abstract      Retrieves the associated series builder for the specified type.
+ @discussion    Retrieves, and creates if it does not already exist, the series builder for the specified type. The
+                series constructed with the returned builder will be associated with the workout when it is finished.
+ 
+ @param         seriesType  The series type for which the builder should be retrieved.
+ */
+- (nullable __kindof HKSeriesBuilder *)seriesBuilderForType:(HKSeriesType *)seriesType;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutConfiguration.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutConfiguration.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutConfiguration.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutConfiguration.h	2022-05-31 15:02:42.000000000 -0400
@@ -0,0 +1,59 @@
+//
+//  HKWorkoutConfiguration.h
+//  HealthKit
+//
+//  Copyright © 2018-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKMetadata.h>
+#import <HealthKit/HKWorkout.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @enum          HKWorkoutSessionLocationType
+ @abstract      This enumerated type is used to represent the location type of a workout session.
+ @discussion    This value represents whether a workout is performed indoors or outdoors.
+ */
+typedef NS_ENUM(NSInteger, HKWorkoutSessionLocationType) {
+    HKWorkoutSessionLocationTypeUnknown = 1,
+    HKWorkoutSessionLocationTypeIndoor,
+    HKWorkoutSessionLocationTypeOutdoor,
+} API_AVAILABLE(ios(10.0), watchos(2.0), macCatalyst(13.0), macos(13.0));
+
+/*!
+ @class         HKWorkoutConfiguration
+ @abstract      An HKWorkoutConfiguration is an object that can be used to describe the workout activity.
+ */
+HK_EXTERN API_AVAILABLE(ios(10.0), watchos(3.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkoutConfiguration : NSObject <NSCopying, NSSecureCoding>
+
+/*!
+ @property      activityType
+ @abstract      Indicates the type of workout for the configuration.
+ */
+@property (assign) HKWorkoutActivityType activityType;
+
+/*!
+ @property      locationType
+ @abstract      Indicates the type of location (indoors vs. outdoors) for the configuration.
+ */
+@property (assign) HKWorkoutSessionLocationType locationType;
+
+/*!
+ @property      swimmingLocationType
+ @abstract      Indicates the type of swimming location (pool vs. open water) where the workout will take place.
+ */
+@property (assign) HKWorkoutSwimmingLocationType swimmingLocationType;
+
+/*!
+ @property      lapLength
+ @abstract      Indicates the length of the pool, when the workout location type is pool.
+ @discussion    This metric represents the length of the pool where the workout takes place. It should be a quantity with
+                a unit representing length.
+ */
+@property (copy, nullable) HKQuantity *lapLength;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRoute.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRoute.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRoute.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRoute.h	2022-05-31 15:02:43.000000000 -0400
@@ -0,0 +1,16 @@
+//
+//  HKWorkoutRoute.h
+//  HealthKit
+//
+//  Copyright © 2017-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSeriesSample.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+HK_EXTERN API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkoutRoute : HKSeriesSample
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteBuilder.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteBuilder.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteBuilder.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteBuilder.h	2022-05-31 15:02:17.000000000 -0400
@@ -0,0 +1,99 @@
+//
+//  HKWorkoutRouteBuilder.h
+//  HealthKit
+//
+//  Copyright © 2017-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKSeriesBuilder.h>
+#import <HealthKit/HKDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKHealthStore;
+@class HKDevice;
+@class HKWorkout;
+@class HKWorkoutRoute;
+@class CLLocation;
+
+/*!
+ @class              HKWorkoutRouteBuilder
+ @abstract           An HKWorkoutRouteBuilder is used to generate an HKWorkoutRoute.
+ @discussion         This class is intended for generating long-running location data collection such as
+                     might be associated with a workout. If the discard method is called, collected data will be deleted.
+                     Calling finishRouteWithWorkout:metadata: will stop and complete the route. If the builder is deleted,
+                     or the client goes away before calling the finish method, data will be lost.
+ */
+HK_EXTERN API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0))
+@interface HKWorkoutRouteBuilder : HKSeriesBuilder
+
+/*!
+ @method             initWithHealthStore:device:
+ @abstract           The designated initializer to create an HKWorkoutRouteBuilder. If you are using an HKWorkoutBuilder , you
+                     should not create an HKWorkoutRouteBuilder, instead use -[HKWorkoutBuilder seriesBuilderForType:]
+ @discussion         The HKHealthStore is retained during the life of the object for the saving of the series data and final
+                     return of the series sample.
+ 
+ @param healthStore  Specifies the HKHealthStore object to use for building the series.
+ @param device       The optional device represents the HKDevice from which the data is provided.
+ */
+- (instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                             device:(nullable HKDevice *)device;
+
+/*!
+ @method             insertRouteData:completion:
+ @abstract           Associate CLLocation with the receiver.
+ @discussion         Use this method to asynchronously add one or more CLLocation to the
+                     series. Note that CLLocation may be inserted in any order but will be
+                     sorted according to date when the series is finalized.
+ 
+ @param routeData    An array of one or more CLLocation.
+ @param completion   The completion callback handler returns the status of the save. If the completion handler success is
+                     NO, then error is non-nil. An error here is considered fatal and the series builder will be complete.
+                     If data was previously saved, then the HKWorkoutRoute may be retrieved by the
+                     finishRouteWithMetadata: method.
+ */
+- (void)insertRouteData:(NSArray<CLLocation *> *)routeData
+             completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method             addMetadata:completion:
+ @discussion         Adds new metadata to the builder instance. This method can be called more than once; each time
+                     the newly provided metadata will be incorporated in the same manner as
+                     -[NSMutableDictionary addEntriesFromDictionary:].
+                     This operation is performed asynchronously and the completion will be executed on an arbitrary
+                     background queue.
+ 
+ @param metadata     The metadata to add to the builder.
+ @param completion   Block to be called when the addition of metadata to the builder is complete. If success is YES, the
+                     metadata has been added to the builder successfully. If success is NO, error will be non-null and
+                     will contain the error encountered during the insertion operation. When an error occurs, the builder's
+                     metadata will remain unchanged.
+ */
+- (void)addMetadata:(NSDictionary<NSString *, id> *)metadata completion:(void (^)(BOOL success, NSError * _Nullable error))completion NS_SWIFT_ASYNC_THROWS_ON_FALSE(1);
+
+/*!
+ @method             finishRouteWithWorkout:Metadata:completion:
+ @abstract           Method to stop data collection and return the associated HKWorkoutRoute. If you are using this route
+                     builder with a workout builder, you should never call this method. The route will be finished when you
+                     finish the workout builder.
+ @discussion         Call this method when the route has been completed. The completion handler will return the saved
+ HKWorkoutRoute.     If no series data was added, then workoutRoute will be nil and an error returned. The
+                     receiver will be considered invalid afterwards and any further calls to it will result in an error.
+ 
+ @param workout      The HKWorkout object to which the route will be associated. Must be saved to HealthKit
+ @param metadata     Optional metadata may be added to associate with the series. Predefined keys are found in
+                     HKMetadata.h, or private NSString keys used by the client are allowed. Acceptable metadata value
+                     types are NSString, NSDate, NSNumber and HKQuantity
+ @param completion   The completion callback handler returns the saved HKWorkoutRoute object. If workoutRoute is nil, an
+                     error will indicate why the series could not be returned including database inaccessibility during
+                     device lock. Subsequent requests for the HKWorkoutRoute can be made through HKSampleQuery or similar
+                     queries. workoutRoute cannot be associated to another workout.
+ */
+- (void)finishRouteWithWorkout:(HKWorkout *)workout
+                      metadata:(nullable NSDictionary<NSString *, id> *)metadata
+                    completion:(void (^)(HKWorkoutRoute * _Nullable workoutRoute, NSError * _Nullable error))completion;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteQuery.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteQuery.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteQuery.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutRouteQuery.h	2022-05-31 15:02:41.000000000 -0400
@@ -0,0 +1,64 @@
+//
+//  HKWorkoutRouteQuery.h
+//  HealthKit
+//
+//  Copyright © 2017-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKQuery.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKWorkoutRoute;
+@class CLLocation;
+
+/*!
+ @class         HKWorkoutRouteQuery
+ @abstract      An HKWorkoutRouteQuery is used to access data associated with an HKWorkoutRoute.
+ @discussion    Once instantiated, call HKHealthStore executeQuery to begin enumerating the route data. Call
+                HKHealthStore stopQuery to discontinue further route data reporting.
+ */
+HK_EXTERN
+#if defined(__swift__) && __swift__
+API_DEPRECATED("Use HKWorkoutRouteQueryDescriptor", ios(11.0, API_TO_BE_DEPRECATED), watchos(4.0, API_TO_BE_DEPRECATED));
+#else
+API_AVAILABLE(ios(11.0), watchos(4.0), macCatalyst(13.0), macos(13.0))
+#endif
+@interface HKWorkoutRouteQuery : HKQuery
+
+/*!
+ @method        initWithRoute:dataHandler:
+ @abstract      Returns a query that will retrieve CLLocation objects for the specified workoutRoute.
+
+ @param workoutRoute    The HKWorkoutRoute for which the location data will be returned.
+ @param dataHandler     The block to invoke with results from the query. It is called repeatedly with an array of
+                        CLLocation objects until all data is returned and the done parameter is YES or if HKHealthStore
+                        stopQuery: is called. The stopQuery call can be made within the dataHandler block. The number of
+                        objects returned in routeData per dataHandler call is unspecified. Once done is YES, or
+                        stopQuery called, the query is complete and no more calls to the handler will be made.
+ */
+- (instancetype)initWithRoute:(HKWorkoutRoute *)workoutRoute
+                  dataHandler:(void(^)(HKWorkoutRouteQuery *query, NSArray<CLLocation *> * _Nullable routeData, BOOL done, NSError * _Nullable error))dataHandler;
+
+/*!
+ @method        initWithRoute:dateInterval:dataHandler:
+ @abstract      Returns a query that will retrieve CLLocation objects for the specified workoutRoute and dateInterval.
+
+ @param workoutRoute    The HKWorkoutRoute for which the location data will be returned.
+ @param dateInterval    The date interval for which the location data will be returned. If the requested interval does
+                        not overlap with the specified workout route sample, an empty array of results is returned. If
+                        the requested interval partially overlaps with the specified workout route sample, only location
+                        data from within that overlapping time period is returned.
+ @param dataHandler     The block to invoke with results from the query. It is called repeatedly with an array of
+                        CLLocation objects until all data is returned and the done parameter is YES or if HKHealthStore
+                        stopQuery: is called. The stopQuery call can be made within the dataHandler block. The number of
+                        objects returned in routeData per dataHandler call is unspecified. Once done is YES, or
+                        stopQuery called, the query is complete and no more calls to the handler will be made.
+ */
+- (instancetype)initWithRoute:(HKWorkoutRoute *)workoutRoute
+                 dateInterval:(NSDateInterval *)dateInterval
+                  dataHandler:(void(^)(HKWorkoutRouteQuery *query, NSArray<CLLocation *> * _Nullable routeData, BOOL done, NSError * _Nullable error))dataHandler API_AVAILABLE(ios(16.0), watchos(9.0), macCatalyst(16.0), macos(13.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutSession.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutSession.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutSession.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HKWorkoutSession.h	2022-05-31 15:02:17.000000000 -0400
@@ -0,0 +1,292 @@
+//
+//  HKWorkoutSession.h
+//  HealthKit
+//
+//  Copyright (c) 2015-2022 Apple. All rights reserved.
+//
+
+#import <HealthKit/HKLiveWorkoutBuilder.h>
+#import <HealthKit/HKMetadata.h>
+#import <HealthKit/HKWorkout.h>
+#import <HealthKit/HKWorkoutActivity.h>
+#import <HealthKit/HKWorkoutBuilder.h>
+#import <HealthKit/HKWorkoutConfiguration.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class HKHealthStore;
+@class HKLiveWorkoutBuilder;
+@protocol HKWorkoutSessionDelegate;
+
+/*!
+ @enum          HKWorkoutSessionState
+ @abstract      This enumerated type is used to represent the state of a workout session.
+ */
+typedef NS_ENUM(NSInteger, HKWorkoutSessionState) {
+    HKWorkoutSessionStateNotStarted = 1,
+    HKWorkoutSessionStateRunning,
+    HKWorkoutSessionStateEnded,
+    HKWorkoutSessionStatePaused API_AVAILABLE(watchos(3.0)),
+    HKWorkoutSessionStatePrepared API_AVAILABLE(watchos(5.0)),
+    HKWorkoutSessionStateStopped API_AVAILABLE(watchos(5.0)),
+} API_AVAILABLE(watchos(2.0)) API_UNAVAILABLE(ios);
+
+
+/*!
+ @class         HKWorkoutSession
+ @abstract      An HKWorkoutSession is an object describing the properties of a workout activity session.
+ */
+HK_EXTERN API_AVAILABLE(watchos(2.0)) API_UNAVAILABLE(ios)
+@interface HKWorkoutSession : NSObject <NSSecureCoding>
+
+/*!
+ @property      activityType
+ @abstract      Indicates the type of workout that will be performed during the session.
+ */
+@property (readonly) HKWorkoutActivityType activityType API_DEPRECATED_WITH_REPLACEMENT("workoutConfiguration", watchos(2.0, 3.0));
+
+/*!
+ @property      locationType
+ @abstract      Indicates the type of location (indoors vs. outdoors) where the workout will take place.
+ @discussion    Knowing the location type allows for more accurate measurements and better performance.
+ */
+@property (readonly) HKWorkoutSessionLocationType locationType API_DEPRECATED_WITH_REPLACEMENT("workoutConfiguration", watchos(2.0, 3.0));
+
+/*!
+ @property      workoutConfiguration
+ @abstract      The configuration object describing the workout.
+ @discussion    This returns a copy of the configuration passed when creating the HKWorkoutSession. Changes made to
+                the returned object have no impact on the HKWorkoutSession.
+ */
+@property (readonly, copy) HKWorkoutConfiguration *workoutConfiguration API_AVAILABLE(watchos(3.0));
+
+/*!
+ @property      delegate
+ @abstract      The session delegate, which receives
+ @discussion    The session delegate object is the one implementing the methods that get called when the session
+                state changes or a failure occurs in the session.
+ */
+@property (weak, nullable) id<HKWorkoutSessionDelegate> delegate;
+
+/*!
+ @property      state
+ @abstract      Indicates the current state of the workout session.
+ @discussion    Each time this value is updated, the delegate method workoutSession:didChangeToState:fromState:date:
+                will be called.
+ */
+@property (readonly) HKWorkoutSessionState state;
+
+/*!
+ @property      startDate
+ @abstract      Indicates the date when the workout session started running.
+ @discussion    This value is nil when a workout session is initialized. It is set when the workout session state
+                changes to HKWorkoutSessionStateRunning.
+ */
+@property (readonly, nullable) NSDate *startDate;
+
+/*!
+ @property      endDate
+ @abstract      Indicates the date when the workout session ended.
+ @discussion    This value is nil when a workout session is initialized. It is set when the workout session state
+                changes to HKWorkoutSessionStateEnded.
+ */
+@property (readonly, nullable) NSDate *endDate;
+
+/*!
+ @property      currentActivity
+ @abstract      The current workout activity.
+ @discussion    This returns a copy of the session's current workout activity. It will return
+                a copy of the main workout activity if no new activity has begun. Changes made
+                to the returned object have no impact on the HKWorkoutSession.
+ */
+@property (readonly, copy) HKWorkoutActivity *currentActivity API_AVAILABLE(watchos(9.0));
+
+/*!
+ @method        initWithActivityType:locationType:
+
+ @param         activityType    The activity type of the workout session.
+ @param         locationType    The type of location where the workout will be performed.
+ */
+- (instancetype)initWithActivityType:(HKWorkoutActivityType)activityType
+                        locationType:(HKWorkoutSessionLocationType)locationType API_DEPRECATED_WITH_REPLACEMENT("initWithHealthStore:configuration:error:", watchos(2.0, 3.0));
+
+/*!
+ @method        initWithConfiguration:error:
+ 
+ @param         workoutConfiguration Configuration object describing the various properties of a workout.
+ @param         error                If the configuration does not specify valid configuration properties, an
+                                     an NSError describing the error is set and nil is returned.
+ */
+- (nullable instancetype)initWithConfiguration:(HKWorkoutConfiguration *)workoutConfiguration error:(NSError **)error API_DEPRECATED_WITH_REPLACEMENT("initWithHealthStore:configuration:error:", watchos(3.0, 5.0));
+
+/*!
+ @method        initWithHealthStore:configuration:error:
+ 
+ @param         healthStore          Specifies the HKHealthStore object to use.
+ @param         workoutConfiguration Configuration object describing the various properties of a workout.
+ @param         error                If the configuration does not specify valid configuration properties, an
+                                     an NSError describing the error is set and nil is returned.
+ */
+- (nullable instancetype)initWithHealthStore:(HKHealthStore *)healthStore
+                               configuration:(HKWorkoutConfiguration *)workoutConfiguration
+                                       error:(NSError **)error API_AVAILABLE(watchos(5.0));
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/*!
+ @method        prepare
+ @abstract      Prepares the workout session for starting.
+ @discussion    This method will asynchronously prepare the workout session for starting. The state of the workout session
+                will transition to HKWorkoutSessionStatePrepared. A prepared session will put the system in session mode,
+                but will not start the session activity.
+                You might call this methods, for example, prior to displaying a countdown on your application while waiting
+                for the activity to start.
+ */
+- (void)prepare API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        startActivityWithDate:
+
+ @param         date                Start date for the workout session activity
+ @abstract      Starts the workout session activity.
+ @discussion    This method will asynchronously begin the workout session activity. The state of the workout session will
+                transition to HKWorkoutSessionStateRunning. Once a session activity is started the system will be in session
+                mode and sensor algorithms will be applied to generate data for the workout activity.
+ */
+- (void)startActivityWithDate:(nullable NSDate *)date API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        stopActivityWithDate:
+ @param         date                Stop date for the workout session activity
+ @abstract      Stops the workout session activity.
+ @discussion    This method will asynchronously stop the session activity if it is currently running. The state of the workout
+                session will transition to HKWorkoutSessionStateStopped. Once a workout session is stopped, it cannot be reused to
+                start a new workout session. Sensor algorithms will be stopped and no new data will be generated for this session.
+                However, the system will remain in session mode.
+ */
+- (void)stopActivityWithDate:(nullable NSDate *)date API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        end
+ @abstract      Ends the workout session.
+ @discussion    This method will end the session if it is currently running or stopped. The state of the workout session will
+                transition to HKWorkoutSessionStateEnded. Once a workout session is ended, it cannot be reused to start a new
+                workout session. Sensor algorithms will be stopped, no new data will be generated for this session, and the
+                system will exit session mode.
+ */
+- (void)end API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        pause
+ @abstract      Pauses the workout session.
+ @discussion    This method will pause the session if it is currently running. The state of the workout session
+                will transition to HKWorkoutSessionStatePaused. An HKWorkoutEventTypePause will be generated and
+                delivered to the workout session's delegate.
+ */
+- (void)pause API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        resume
+ @abstract      Resumes the workout session.
+ @discussion    This method will resume the session if it is currently paused. The state of the workout session
+                will transition to HKWorkoutSessionStateRunning. An HKWorkoutEventTypeResume will be generated and
+                delivered to the workout session's delegate.
+ */
+- (void)resume API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        associatedWorkoutBuilder
+ @abstract      Retrieves (and creates if necessary) an HKLiveWorkoutBuilder associated with this session.
+ @discussion    A session may have associated with it an HKLiveWorkoutBuilder that will be used to record the workout
+                for this session. This method will return the session's associated builder, creating it if needed.
+                Calling this method more than once will return the previously-created builder. If this session was not
+                initialized with initWithHealthStore:configuration:error:, an exception will be thrown.
+ */
+- (HKLiveWorkoutBuilder *)associatedWorkoutBuilder API_AVAILABLE(watchos(5.0));
+
+/*!
+ @method        beginNewActivityWithConfiguration:date:metadata:
+ @abstract      Begins a new workout activity for this session.
+ @discussion    This method will asynchronously begin the workout activity. The delegate for this session would be
+                informed once the activity effectively begins.  Sensor algorithms to generate data would be updated
+                to match the new activity.
+ */
+- (void)beginNewActivityWithConfiguration:(HKWorkoutConfiguration *)workoutConfiguration
+                                     date:(NSDate *)date
+                                 metadata:(nullable NSDictionary<NSString *, id> *)metadata API_AVAILABLE(watchos(9.0)) NS_SWIFT_NAME(beginNewActivity(configuration:date:metadata:));
+
+/*!
+ @method        endCurrentActivityOnDate:
+ @abstract      Ends the current workout activity.
+ @discussion    This method will end the current activity, reverting to the main session activity. The delegate for this session
+                would be informed once the activity effectively ends. Sensor algorithms to generate data would be updated to
+                match the main session activity.
+ */
+- (void)endCurrentActivityOnDate:(NSDate *)date API_AVAILABLE(watchos(9.0));
+
+@end
+
+/*!
+ @enum          HKWorkoutSessionStateDelegate
+ @abstract      This protocol should be implemented to be notified when a workout session's state changes.
+ @discussion    The methods on this protocol are called on an anonymous serial background queue.
+ */
+API_AVAILABLE(watchos(2.0)) API_UNAVAILABLE(ios)
+@protocol HKWorkoutSessionDelegate <NSObject>
+
+/*!
+ @method        workoutSession:didChangeToState:fromState:date:
+ @abstract      This method is called when a workout session transitions to a new state.
+ @discussion    The date is provided to indicate when the state change actually happened.  If your application is
+                suspended then the delegate will receive this call once the application resumes, which may be much later
+                than when the original state change ocurred.
+ */
+- (void)workoutSession:(HKWorkoutSession *)workoutSession
+      didChangeToState:(HKWorkoutSessionState)toState
+             fromState:(HKWorkoutSessionState)fromState
+                  date:(NSDate *)date;
+
+/*!
+ @method        workoutSession:didFailWithError:
+ @abstract      This method is called when an error occurs that stops a workout session.
+ @discussion    When the state of the workout session changes due to an error occurring, this method is always called
+                before workoutSession:didChangeToState:fromState:date:.
+ */
+- (void)workoutSession:(HKWorkoutSession *)workoutSession didFailWithError:(NSError *)error;
+
+@optional
+
+/*!
+ @method        workoutSession:didGenerateEvent:
+ @abstract      This method is called whenever the system generates a workout event.
+ @discussion    Whenever a workout event is generated, such as pause or resume detection, the event will be passed
+                to the session delegate via this method. Clients may save the generated events to use when creating an
+                HKWorkout object.
+ */
+- (void)workoutSession:(HKWorkoutSession *)workoutSession didGenerateEvent:(HKWorkoutEvent *)event API_AVAILABLE(ios(10.0), watchos(3.0));
+
+/*!
+ @method        workoutSession:didBeginActivityWithConfiguration:date:
+ @abstract      This method is called whenever a new activity begins.
+ @discussion    Whenever a new workout activity begins, the new configuration would be passed to the session delegate
+                via this method. Clients may use this data to create a workout activity to save when building an HKWorkout
+                object.
+ */
+- (void)workoutSession:(HKWorkoutSession *)workoutSession
+didBeginActivityWithConfiguration:(HKWorkoutConfiguration *)workoutConfiguration
+                  date:(NSDate *)date API_AVAILABLE(watchos(9.0));
+
+/*!
+ @method        workoutSession:didEndActivityWithConfiguration:date:
+ @abstract      This method is called whenever the current workout activity ends.
+ @discussion    Whenever a new workout activity ends, the new configuration would be passed to the session delegate
+                via this method. Clients may use this data to create a workout activity to save when building an HKWorkout
+                object.
+ */
+- (void)workoutSession:(HKWorkoutSession *)workoutSession
+didEndActivityWithConfiguration:(HKWorkoutConfiguration *)workoutConfiguration
+                  date:(NSDate *)date API_AVAILABLE(watchos(9.0));
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.apinotes /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.apinotes
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.apinotes	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.apinotes	2022-05-25 21:39:59.000000000 -0400
@@ -0,0 +1,5 @@
+---
+Name:            HealthKit
+Tags:
+- Name: HKErrorCode
+  NSErrorDomain: HKErrorDomain
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/HealthKit.framework/Headers/HealthKit.h	2022-05-25 21:53:05.000000000 -0400
@@ -0,0 +1,81 @@
+//
+//  HealthKit.h
+//  HealthKit
+//
+//  Copyright (c) 2013-2018 Apple Inc. All rights reserved.
+//
+
+#import <HealthKit/HKActivitySummary.h>
+#import <HealthKit/HKActivitySummaryQuery.h>
+#import <HealthKit/HKAnchoredObjectQuery.h>
+#import <HealthKit/HKAppleWalkingSteadinessClassification.h>
+#import <HealthKit/HKAttachment.h>
+#import <HealthKit/HKAttachmentStore.h>
+#import <HealthKit/HKAudiogramSample.h>
+#import <HealthKit/HKCDADocumentSample.h>
+#import <HealthKit/HKCategorySample.h>
+#import <HealthKit/HKCharacteristicObjects.h>
+#import <HealthKit/HKClinicalRecord.h>
+#import <HealthKit/HKClinicalType.h>
+#import <HealthKit/HKContactsLensSpecification.h>
+#import <HealthKit/HKContactsPrescription.h>
+#import <HealthKit/HKCorrelation.h>
+#import <HealthKit/HKCorrelationQuery.h>
+#import <HealthKit/HKCumulativeQuantitySample.h>
+#import <HealthKit/HKCumulativeQuantitySeriesSample.h>
+#import <HealthKit/HKDefines.h>
+#import <HealthKit/HKDeletedObject.h>
+#import <HealthKit/HKDevice.h>
+#import <HealthKit/HKDiscreteQuantitySample.h>
+#import <HealthKit/HKDocumentQuery.h>
+#import <HealthKit/HKDocumentSample.h>
+#import <HealthKit/HKElectrocardiogram.h>
+#import <HealthKit/HKElectrocardiogramQuery.h>
+#import <HealthKit/HKFHIRRelease.h>
+#import <HealthKit/HKFHIRResource.h>
+#import <HealthKit/HKFHIRVersion.h>
+#import <HealthKit/HKGlassesLensSpecification.h>
+#import <HealthKit/HKGlassesPrescription.h>
+#import <HealthKit/HKHealthStore.h>
+#import <HealthKit/HKHeartbeatSeriesBuilder.h>
+#import <HealthKit/HKHeartbeatSeriesQuery.h>
+#import <HealthKit/HKHeartbeatSeriesSample.h>
+#import <HealthKit/HKLensSpecification.h>
+#import <HealthKit/HKLiveWorkoutBuilder.h>
+#import <HealthKit/HKLiveWorkoutDataSource.h>
+#import <HealthKit/HKMetadata.h>
+#import <HealthKit/HKObject.h>
+#import <HealthKit/HKObjectType.h>
+#import <HealthKit/HKObserverQuery.h>
+#import <HealthKit/HKQuantity.h>
+#import <HealthKit/HKQuantitySample.h>
+#import <HealthKit/HKQuantitySeriesSampleBuilder.h>
+#import <HealthKit/HKQuantitySeriesSampleQuery.h>
+#import <HealthKit/HKQuery.h>
+#import <HealthKit/HKQueryAnchor.h>
+#import <HealthKit/HKQueryDescriptor.h>
+#import <HealthKit/HKSample.h>
+#import <HealthKit/HKSampleQuery.h>
+#import <HealthKit/HKSeriesBuilder.h>
+#import <HealthKit/HKSeriesSample.h>
+#import <HealthKit/HKSource.h>
+#import <HealthKit/HKSourceQuery.h>
+#import <HealthKit/HKSourceRevision.h>
+#import <HealthKit/HKStatistics.h>
+#import <HealthKit/HKStatisticsCollectionQuery.h>
+#import <HealthKit/HKStatisticsQuery.h>
+#import <HealthKit/HKTypeIdentifiers.h>
+#import <HealthKit/HKUnit.h>
+#import <HealthKit/HKVisionPrescription.h>
+#import <HealthKit/HKVisionPrism.h>
+#import <HealthKit/HKVerifiableClinicalRecord.h>
+#import <HealthKit/HKVerifiableClinicalRecordQuery.h>
+#import <HealthKit/HKVerifiableClinicalRecordSubject.h>
+#import <HealthKit/HKWorkout.h>
+#import <HealthKit/HKWorkoutActivity.h>
+#import <HealthKit/HKWorkoutBuilder.h>
+#import <HealthKit/HKWorkoutConfiguration.h>
+#import <HealthKit/HKWorkoutRoute.h>
+#import <HealthKit/HKWorkoutRouteBuilder.h>
+#import <HealthKit/HKWorkoutRouteQuery.h>
+#import <HealthKit/HKWorkoutSession.h>
Clone this wiki locally