UNPKG

@kingstinct/react-native-healthkit

Version:
1,129 lines (1,008 loc) 85.9 kB
import { NativeEventEmitter, NativeModules } from 'react-native' import type { EmitterSubscription, NativeModule } from 'react-native' /** * Represents a workout type identifier. * @see {@link https://developer.apple.com/documentation/healthkit/hkworkouttypeidentifier Apple Docs HKWorkoutTypeIdentifier} */ export const HKWorkoutTypeIdentifier = 'HKWorkoutTypeIdentifier' as const /** * Represents a type that identifies activity summary objects. * @see {@link https://developer.apple.com/documentation/healthkit/hkactivitysummarytype Apple Docs HKActivitySummaryType} */ export const HKActivitySummaryTypeIdentifier = 'HKActivitySummaryTypeIdentifier' as const /** * Represents an audiogram type identifier. * @see {@link https://developer.apple.com/documentation/healthkit/HKAudiogramSampleType Apple Docs HKAudiogramSampleType} */ export const HKAudiogramTypeIdentifier = 'HKAudiogramSampleType' as const /** * Represents a workout route type identifier. * @see {@link https://developer.apple.com/documentation/healthkit/hkworkoutroutetypeidentifier Apple Docs HKWorkoutRouteTypeIdentifier} */ export const HKWorkoutRouteTypeIdentifier = 'HKWorkoutRouteTypeIdentifier' as const /** * Represents a series sample containing heartbeat data.. * @see {@link https://developer.apple.com/documentation/healthkit/HKDataTypeIdentifierHeartbeatSeries Apple Docs HKDataTypeIdentifierHeartbeatSeries} */ export declare const HKDataTypeIdentifierHeartbeatSeries: 'HKDataTypeIdentifierHeartbeatSeries' /** * Represents a quantity type identifier. * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifier Apple Docs HKQuantityTypeIdentifier} */ export enum HKQuantityTypeIdentifier { /** * Body Mass Index * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbodymassindex Apple Docs HKQuantityTypeIdentifierBodyMassIndex} */ bodyMassIndex = 'HKQuantityTypeIdentifierBodyMassIndex', /** * Body Fat Percentage * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbodyfatpercentage Apple Docs HKQuantityTypeIdentifierBodyFatPercentage} */ bodyFatPercentage = 'HKQuantityTypeIdentifierBodyFatPercentage', /** * Height * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierheight Apple Docs HKQuantityTypeIdentifierHeight} */ height = 'HKQuantityTypeIdentifierHeight', /** * Body Mass * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbodymass Apple Docs HKQuantityTypeIdentifierBodyMass} */ bodyMass = 'HKQuantityTypeIdentifierBodyMass', /** * Lean Body Mass * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierleanbodymass Apple Docs HKQuantityTypeIdentifierLeanBodyMass} */ leanBodyMass = 'HKQuantityTypeIdentifierLeanBodyMass', /** * Waist Circumference * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwaistcircumference Apple Docs HKQuantityTypeIdentifierWaistCircumference} */ waistCircumference = 'HKQuantityTypeIdentifierWaistCircumference', /** * Step Count * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierstepcount Apple Docs HKQuantityTypeIdentifierStepCount} */ stepCount = 'HKQuantityTypeIdentifierStepCount', /** * Distance Walking Running * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdistancewalkingrunning Apple Docs HKQuantityTypeIdentifierDistanceWalkingRunning} */ distanceWalkingRunning = 'HKQuantityTypeIdentifierDistanceWalkingRunning', /** * Distance Cycling * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdistancecycling Apple Docs HKQuantityTypeIdentifierDistanceCycling} */ distanceCycling = 'HKQuantityTypeIdentifierDistanceCycling', /** * Distance Wheelchair * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdistancewheelchair Apple Docs HKQuantityTypeIdentifierDistanceWheelchair} */ distanceWheelchair = 'HKQuantityTypeIdentifierDistanceWheelchair', /** * Basal Energy Burned * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbasalenergyburned Apple Docs HKQuantityTypeIdentifierBasalEnergyBurned} */ basalEnergyBurned = 'HKQuantityTypeIdentifierBasalEnergyBurned', // Energy, Cumulative /** * Active Energy Burned * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifieractiveenergyburned Apple Docs HKQuantityTypeIdentifierActiveEnergyBurned} */ activeEnergyBurned = 'HKQuantityTypeIdentifierActiveEnergyBurned', // Energy, Cumulative /** * Flights Climbed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierflightsclimbed Apple Docs HKQuantityTypeIdentifierFlightsClimbed} */ flightsClimbed = 'HKQuantityTypeIdentifierFlightsClimbed', // Scalar(Count), Cumulative /** * Nike Fuel * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiernikefuel Apple Docs HKQuantityTypeIdentifierNikeFuel} */ nikeFuel = 'HKQuantityTypeIdentifierNikeFuel', // Scalar(Count), Cumulative /** * Apple Exercise Time * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierappleexercisetime Apple Docs HKQuantityTypeIdentifierAppleExerciseTime} */ appleExerciseTime = 'HKQuantityTypeIdentifierAppleExerciseTime', // Time Cumulative /** * Push Count * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierpushcount Apple Docs HKQuantityTypeIdentifierPushCount} */ pushCount = 'HKQuantityTypeIdentifierPushCount', // Scalar(Count), Cumulative /** * Distance Swimming * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdistanceswimming Apple Docs HKQuantityTypeIdentifierDistanceSwimming} */ distanceSwimming = 'HKQuantityTypeIdentifierDistanceSwimming', // Length, Cumulative /** * Swimming Stroke Count * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierswimmingstrokecount Apple Docs HKQuantityTypeIdentifierSwimmingStrokeCount} */ swimmingStrokeCount = 'HKQuantityTypeIdentifierSwimmingStrokeCount', // Scalar(Count), Cumulative /** * VO2 Max * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiervo2max Apple Docs HKQuantityTypeIdentifierVO2Max} */ vo2Max = 'HKQuantityTypeIdentifierVO2Max', // ml/(kg*min) Discrete /** * Distance Downhill Snow Sports * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdistancedownhillsnowsports Apple Docs HKQuantityTypeIdentifierDistanceDownhillSnowSports} */ distanceDownhillSnowSports = 'HKQuantityTypeIdentifierDistanceDownhillSnowSports', // Length, Cumulative /** * Apple Stand Time * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierapplestandtime Apple Docs HKQuantityTypeIdentifierAppleStandTime} */ appleStandTime = 'HKQuantityTypeIdentifierAppleStandTime', // Time, Cumulative // Vitals /** * Heart Rate * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierheartrate Apple Docs HKQuantityTypeIdentifierHeartRate} */ heartRate = 'HKQuantityTypeIdentifierHeartRate', // Scalar(Count)/Time, Discrete /** * Body Temperature * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbodytemperature Apple Docs HKQuantityTypeIdentifierBodyTemperature} */ bodyTemperature = 'HKQuantityTypeIdentifierBodyTemperature', // Temperature, Discrete /** * Basal Body Temperature * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbasalbodytemperature Apple Docs HKQuantityTypeIdentifierBasalBodyTemperature} */ basalBodyTemperature = 'HKQuantityTypeIdentifierBasalBodyTemperature', // Basal Body Temperature, Discrete /** * Blood Pressure Systolic * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbloodpressuresystolic Apple Docs HKQuantityTypeIdentifierBloodPressureSystolic} */ bloodPressureSystolic = 'HKQuantityTypeIdentifierBloodPressureSystolic', // Pressure, Discrete /** * Blood Pressure Diastolic * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbloodpressurediastolic Apple Docs HKQuantityTypeIdentifierBloodPressureDiastolic} */ bloodPressureDiastolic = 'HKQuantityTypeIdentifierBloodPressureDiastolic', // Pressure, Discrete /** * Respiratory Rate * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrespiratoryrate Apple Docs HKQuantityTypeIdentifierRespiratoryRate} */ respiratoryRate = 'HKQuantityTypeIdentifierRespiratoryRate', // Scalar(Count)/Time, Discrete /** * Resting Heart Rate * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrestingheartrate Apple Docs HKQuantityTypeIdentifierRestingHeartRate} */ restingHeartRate = 'HKQuantityTypeIdentifierRestingHeartRate', // Scalar(Count)/Time, Discrete /** * Walking Heart Rate Average * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwalkingheartrateaverage Apple Docs HKQuantityTypeIdentifierWalkingHeartRateAverage} * @since iOS 11.0 */ walkingHeartRateAverage = 'HKQuantityTypeIdentifierWalkingHeartRateAverage', // Scalar(Count)/Time, Discrete /** * Heart Rate Variability SDNN * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierheartratevariabilitysdnn Apple Docs HKQuantityTypeIdentifierHeartRateVariabilitySDNN} * @since iOS 11.0 */ heartRateVariabilitySDNN = 'HKQuantityTypeIdentifierHeartRateVariabilitySDNN', // Time (ms), Discrete /** * Oxygen Saturation * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifieroxygensaturation Apple Docs HKQuantityTypeIdentifierOxygenSaturation} * @since iOS 8.0 */ oxygenSaturation = 'HKQuantityTypeIdentifierOxygenSaturation', /** * Peripheral Perfusion Index * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierperipheralperfusionindex Apple Docs HKQuantityTypeIdentifierPeripheralPerfusionIndex} * @since iOS 8.0 */ peripheralPerfusionIndex = 'HKQuantityTypeIdentifierPeripheralPerfusionIndex', // Scalar(Percent, 0.0 - 1.0), Discrete /** * Blood Glucose * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbloodglucose Apple Docs HKQuantityTypeIdentifierBloodGlucose} */ bloodGlucose = 'HKQuantityTypeIdentifierBloodGlucose', /** * Number Of Times Fallen * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiernumberoftimesfallen Apple Docs HKQuantityTypeIdentifierNumberOfTimesFallen} */ numberOfTimesFallen = 'HKQuantityTypeIdentifierNumberOfTimesFallen', /** * Electrodermal Activity * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierelectrodermalactivity Apple Docs HKQuantityTypeIdentifierElectrodermalActivity} */ electrodermalActivity = 'HKQuantityTypeIdentifierElectrodermalActivity', /** * Inhaler Usage * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierinhalerusage Apple Docs HKQuantityTypeIdentifierInhalerUsage} * @since iOS 8 */ inhalerUsage = 'HKQuantityTypeIdentifierInhalerUsage', /** * Insulin Delivery * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierinsulindelivery Apple Docs HKQuantityTypeIdentifierInsulinDelivery} * @since iOS 11 */ insulinDelivery = 'HKQuantityTypeIdentifierInsulinDelivery', /** * Blood Alcohol Content * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierbloodalcoholcontent Apple Docs HKQuantityTypeIdentifierBloodAlcoholContent} * @since iOS 8 */ bloodAlcoholContent = 'HKQuantityTypeIdentifierBloodAlcoholContent', /** * Forced Vital Capacity * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierforcedvitalcapacity Apple Docs HKQuantityTypeIdentifierForcedVitalCapacity} */ forcedVitalCapacity = 'HKQuantityTypeIdentifierForcedVitalCapacity', /** * Forced Expiratory Volume1 * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierforcedexpiratoryvolume1 Apple Docs HKQuantityTypeIdentifierForcedExpiratoryVolume1} * @since iOS 8 */ forcedExpiratoryVolume1 = 'HKQuantityTypeIdentifierForcedExpiratoryVolume1', /** * Peak Expiratory Flow Rate * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierpeakexpiratoryflowrate Apple Docs HKQuantityTypeIdentifierPeakExpiratoryFlowRate} * @since iOS 8 */ peakExpiratoryFlowRate = 'HKQuantityTypeIdentifierPeakExpiratoryFlowRate', /** * Environmental Audio Exposure * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierenvironmentalaudioexposure Apple Docs HKQuantityTypeIdentifierEnvironmentalAudioExposure} * @since iOS 13 */ environmentalAudioExposure = 'HKQuantityTypeIdentifierEnvironmentalAudioExposure', /** * Headphone Audio Exposure * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierheadphoneaudioexposure Apple Docs HKQuantityTypeIdentifierHeadphoneAudioExposure} * @since iOS 13 */ headphoneAudioExposure = 'HKQuantityTypeIdentifierHeadphoneAudioExposure', // Pressure, Cumulative // Nutrition /** * Dietary Fat Total * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfattotal Apple Docs HKQuantityTypeIdentifierDietaryFatTotal} * @since iOS 8 */ dietaryFatTotal = 'HKQuantityTypeIdentifierDietaryFatTotal', // Mass, Cumulative /** * Dietary Fat Polyunsaturated * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfatpolyunsaturated Apple Docs HKQuantityTypeIdentifierDietaryFatPolyunsaturated} */ dietaryFatPolyunsaturated = 'HKQuantityTypeIdentifierDietaryFatPolyunsaturated', // Mass, Cumulative /** * Dietary Fat Monounsaturated * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfatmonounsaturated Apple Docs HKQuantityTypeIdentifierDietaryFatMonounsaturated} */ dietaryFatMonounsaturated = 'HKQuantityTypeIdentifierDietaryFatMonounsaturated', // Mass, Cumulative /** * Dietary Fat Saturated * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfatsaturated Apple Docs HKQuantityTypeIdentifierDietaryFatSaturated} */ dietaryFatSaturated = 'HKQuantityTypeIdentifierDietaryFatSaturated', // Mass, Cumulative /** * Dietary Cholesterol * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarycholesterol Apple Docs HKQuantityTypeIdentifierDietaryCholesterol} */ dietaryCholesterol = 'HKQuantityTypeIdentifierDietaryCholesterol', // Mass, Cumulative /** * Dietary Sodium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarysodium Apple Docs HKQuantityTypeIdentifierDietarySodium} */ dietarySodium = 'HKQuantityTypeIdentifierDietarySodium', // Mass, Cumulative /** * Dietary Carbohydrates * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarycarbohydrates Apple Docs HKQuantityTypeIdentifierDietaryCarbohydrates} */ dietaryCarbohydrates = 'HKQuantityTypeIdentifierDietaryCarbohydrates', // Mass, Cumulative /** * Dietary Fiber * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfiber Apple Docs HKQuantityTypeIdentifierDietaryFiber} */ dietaryFiber = 'HKQuantityTypeIdentifierDietaryFiber', // Mass, Cumulative /** * Dietary Sugar * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarysugar Apple Docs HKQuantityTypeIdentifierDietarySugar} */ dietarySugar = 'HKQuantityTypeIdentifierDietarySugar', // Mass, Cumulative /** * Dietary Energy Consumed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryenergyconsumed Apple Docs HKQuantityTypeIdentifierDietaryEnergyConsumed} */ dietaryEnergyConsumed = 'HKQuantityTypeIdentifierDietaryEnergyConsumed', // Energy, Cumulative /** * Dietary Protein * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryprotein Apple Docs HKQuantityTypeIdentifierDietaryProtein} */ dietaryProtein = 'HKQuantityTypeIdentifierDietaryProtein', // Mass, Cumulative /** * Dietary Vitamin A * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitamina Apple Docs HKQuantityTypeIdentifierDietaryVitaminA} */ dietaryVitaminA = 'HKQuantityTypeIdentifierDietaryVitaminA', // Mass, Cumulative /** * Dietary Vitamin B6 * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitaminb6 Apple Docs HKQuantityTypeIdentifierDietaryVitaminB6} */ dietaryVitaminB6 = 'HKQuantityTypeIdentifierDietaryVitaminB6', // Mass, Cumulative /** * Dietary Vitamin B12 * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitaminb12 Apple Docs HKQuantityTypeIdentifierDietaryVitaminB12} */ dietaryVitaminB12 = 'HKQuantityTypeIdentifierDietaryVitaminB12', // Mass, Cumulative /** * Dietary Vitamin C * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitaminc Apple Docs HKQuantityTypeIdentifierDietaryVitaminC} */ dietaryVitaminC = 'HKQuantityTypeIdentifierDietaryVitaminC', // Mass, Cumulative /** * Dietary Vitamin D * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitamind Apple Docs HKQuantityTypeIdentifierDietaryVitaminD} */ dietaryVitaminD = 'HKQuantityTypeIdentifierDietaryVitaminD', // Mass, Cumulative /** * Dietary Vitamin E * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitamine Apple Docs HKQuantityTypeIdentifierDietaryVitaminE} */ dietaryVitaminE = 'HKQuantityTypeIdentifierDietaryVitaminE', // Mass, Cumulative /** * Dietary Vitamin K * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryvitamink Apple Docs HKQuantityTypeIdentifierDietaryVitaminK} */ dietaryVitaminK = 'HKQuantityTypeIdentifierDietaryVitaminK', // Mass, Cumulative /** * Dietary Calcium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarycalcium Apple Docs HKQuantityTypeIdentifierDietaryCalcium} */ dietaryCalcium = 'HKQuantityTypeIdentifierDietaryCalcium', // Mass, Cumulative /** * Dietary Iron * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryiron Apple Docs HKQuantityTypeIdentifierDietaryIron} */ dietaryIron = 'HKQuantityTypeIdentifierDietaryIron', // Mass, Cumulative /** * Dietary Thiamin * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarythiamin Apple Docs HKQuantityTypeIdentifierDietaryThiamin} */ dietaryThiamin = 'HKQuantityTypeIdentifierDietaryThiamin', // Mass, Cumulative /** * Dietary Riboflavin * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryriboflavin Apple Docs HKQuantityTypeIdentifierDietaryRiboflavin} */ dietaryRiboflavin = 'HKQuantityTypeIdentifierDietaryRiboflavin', // Mass, Cumulative /** * Dietary Niacin * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryniacin Apple Docs HKQuantityTypeIdentifierDietaryNiacin} */ dietaryNiacin = 'HKQuantityTypeIdentifierDietaryNiacin', // Mass, Cumulative /** * Dietary Folate * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryfolate Apple Docs HKQuantityTypeIdentifierDietaryFolate} */ dietaryFolate = 'HKQuantityTypeIdentifierDietaryFolate', // Mass, Cumulative /** * Dietary Biotin * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarybiotin Apple Docs HKQuantityTypeIdentifierDietaryBiotin} */ dietaryBiotin = 'HKQuantityTypeIdentifierDietaryBiotin', // Mass, Cumulative /** * Dietary Pantothenic Acid * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarypantothenicacid Apple Docs HKQuantityTypeIdentifierDietaryPantothenicAcid} */ dietaryPantothenicAcid = 'HKQuantityTypeIdentifierDietaryPantothenicAcid', // Mass, Cumulative /** * Dietary Phosphorus * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryphosphorus Apple Docs HKQuantityTypeIdentifierDietaryPhosphorus} */ dietaryPhosphorus = 'HKQuantityTypeIdentifierDietaryPhosphorus', // Mass, Cumulative /** * Dietary Iodine * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryiodine Apple Docs HKQuantityTypeIdentifierDietaryIodine} */ dietaryIodine = 'HKQuantityTypeIdentifierDietaryIodine', // Mass, Cumulative /** * Dietary Magnesium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarymagnesium Apple Docs HKQuantityTypeIdentifierDietaryMagnesium} */ dietaryMagnesium = 'HKQuantityTypeIdentifierDietaryMagnesium', // Mass, Cumulative /** * Dietary Zinc * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryzinc Apple Docs HKQuantityTypeIdentifierDietaryZinc} */ dietaryZinc = 'HKQuantityTypeIdentifierDietaryZinc', // Mass, Cumulative /** * Dietary Selenium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietaryselenium Apple Docs HKQuantityTypeIdentifierDietarySelenium} */ dietarySelenium = 'HKQuantityTypeIdentifierDietarySelenium', // Mass, Cumulative /** * Dietary Copper * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarycopper Apple Docs HKQuantityTypeIdentifierDietaryCopper} */ dietaryCopper = 'HKQuantityTypeIdentifierDietaryCopper', // Mass, Cumulative /** * Dietary Manganese * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarymanganese Apple Docs HKQuantityTypeIdentifierDietaryManganese} */ dietaryManganese = 'HKQuantityTypeIdentifierDietaryManganese', // Mass, Cumulative /** * Dietary Chromium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarychromium Apple Docs HKQuantityTypeIdentifierDietaryChromium} */ dietaryChromium = 'HKQuantityTypeIdentifierDietaryChromium', // Mass, Cumulative /** * Dietary Molybdenum * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarymolybdenum Apple Docs HKQuantityTypeIdentifierDietaryMolybdenum} */ dietaryMolybdenum = 'HKQuantityTypeIdentifierDietaryMolybdenum', // Mass, Cumulative /** * Dietary Chloride * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarychloride Apple Docs HKQuantityTypeIdentifierDietaryChloride} * @since iOS 8 */ dietaryChloride = 'HKQuantityTypeIdentifierDietaryChloride', // Mass, Cumulative /** * Dietary Potassium * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarypotassium Apple Docs HKQuantityTypeIdentifierDietaryPotassium} * @since iOS 8 */ dietaryPotassium = 'HKQuantityTypeIdentifierDietaryPotassium', // Mass, Cumulative /** * Dietary Caffeine * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarycaffeine Apple Docs HKQuantityTypeIdentifierDietaryCaffeine} * @since iOS 8 */ dietaryCaffeine = 'HKQuantityTypeIdentifierDietaryCaffeine', // Mass, Cumulative /** * Dietary Water * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierdietarywater Apple Docs HKQuantityTypeIdentifierDietaryWater} * @since iOS 9 */ dietaryWater = 'HKQuantityTypeIdentifierDietaryWater', // Volume, Cumulative // Mobility /** * Six Minute Walk Test Distance * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiersixminutewalktestdistance Apple Docs HKQuantityTypeIdentifierSixMinuteWalkTestDistance} * @since iOS 14 */ sixMinuteWalkTestDistance = 'HKQuantityTypeIdentifierSixMinuteWalkTestDistance', /** * Walking Speed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwalkingspeed Apple Docs HKQuantityTypeIdentifierWalkingSpeed} * @since iOS 14 */ walkingSpeed = 'HKQuantityTypeIdentifierWalkingSpeed', /** * Walking Step Length * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwalkingsteplength Apple Docs HKQuantityTypeIdentifierWalkingStepLength} * @since iOS 14 */ walkingStepLength = 'HKQuantityTypeIdentifierWalkingStepLength', /** * Walking Asymmetry Percentage * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwalkingasymmetrypercentage Apple Docs HKQuantityTypeIdentifierWalkingAsymmetryPercentage} * @since iOS 14 */ walkingAsymmetryPercentage = 'HKQuantityTypeIdentifierWalkingAsymmetryPercentage', /** * Walking Double Support Percentage * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwalkingdoublesupportpercentage Apple Docs HKQuantityTypeIdentifierWalkingDoubleSupportPercentage} * @since iOS 14 */ walkingDoubleSupportPercentage = 'HKQuantityTypeIdentifierWalkingDoubleSupportPercentage', /** * Stair Ascent Speed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierstairascentspeed Apple Docs HKQuantityTypeIdentifierStairAscentSpeed} * @since iOS 14 */ stairAscentSpeed = 'HKQuantityTypeIdentifierStairAscentSpeed', /** * Stair Descent Speed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierstairdescentspeed Apple Docs HKQuantityTypeIdentifierStairDescentSpeed} * @since iOS 14 */ stairDescentSpeed = 'HKQuantityTypeIdentifierStairDescentSpeed', /** * UV Exposure * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifieruvexposure Apple Docs HKQuantityTypeIdentifierUVExposure} * @since iOS 9 */ uvExposure = 'HKQuantityTypeIdentifierUVExposure', // Scalar (Count), Discrete /** * Apple Move Time * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierapplemovetime Apple Docs HKQuantityTypeIdentifierAppleMoveTime} * @since iOS 14.5 */ appleMoveTime = 'HKQuantityTypeIdentifierAppleMoveTime', // Time, Cumulative /** * Apple Walking Steadiness * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierapplewalkingsteadiness Apple Docs HKQuantityTypeIdentifierAppleWalkingSteadiness} * @since iOS 15 */ appleWalkingSteadiness = 'HKQuantityTypeIdentifierAppleWalkingSteadiness', // Scalar(Percent, 0.0 - 1.0), Discrete /** * Number Of Alcoholic Beverages * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiernumberofalcoholicbeverages Apple Docs HKQuantityTypeIdentifierNumberOfAlcoholicBeverages} * @since iOS 15 */ numberOfAlcoholicBeverages = 'HKQuantityTypeIdentifierNumberOfAlcoholicBeverages', // Scalar(Count), Cumulative /** * Atrial Fibrillation Burden * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifieratrialfibrillationburden Apple Docs HKQuantityTypeIdentifierAtrialFibrillationBurden} * @since iOS 16 */ atrialFibrillationBurden = 'HKQuantityTypeIdentifierAtrialFibrillationBurden', // Scalar(Percent, 0.0 - 1.0), Discrete /** * Underwater Depth * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierunderwaterdepth Apple Docs HKQuantityTypeIdentifierUnderwaterDepth} * @since iOS 16 */ underwaterDepth = 'HKQuantityTypeIdentifierUnderwaterDepth', // Length, Discrete /** * Water Temperature * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierwatertemperature Apple Docs HKQuantityTypeIdentifierWaterTemperature} * @since iOS 16 */ waterTemperature = 'HKQuantityTypeIdentifierWaterTemperature', // Temperature, Discrete /** * Apple Sleeping Wrist Temperature * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierapplesleepingwristtemperature Apple Docs HKQuantityTypeIdentifierAppleSleepingWristTemperature} * @since iOS 17 */ appleSleepingWristTemperature = 'HKQuantityTypeIdentifierAppleSleepingWristTemperature', // Temperature, Discrete /** * Time In Daylight * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiertimeindaylight Apple Docs HKQuantityTypeIdentifierTimeInDaylight} * @since iOS 17 */ timeInDaylight = 'HKQuantityTypeIdentifierTimeInDaylight', // Time, Cumulative /** * Physical Effort * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierphysicaleffort Apple Docs HKQuantityTypeIdentifierPhysicalEffort} * @since iOS 17 */ physicalEffort = 'HKQuantityTypeIdentifierPhysicalEffort', // Scalar (Percent, 0.0 - 1.0), Discrete /** * Cycling Speed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiercyclingspeed Apple Docs HKQuantityTypeIdentifierCyclingSpeed} * @since iOS 17 */ cyclingSpeed = 'HKQuantityTypeIdentifierCyclingSpeed', /** * Cycling Power * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiercyclingpower Apple Docs HKQuantityTypeIdentifierCyclingPower} * @since iOS 17 */ cyclingPower = 'HKQuantityTypeIdentifierCyclingPower', /** * Cycling Functional Threshold Power * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiercyclingfunctionalthresholdpower Apple Docs HKQuantityTypeIdentifierCyclingFunctionalThresholdPower} * @since iOS 17 */ cyclingFunctionalThresholdPower = 'HKQuantityTypeIdentifierCyclingFunctionalThresholdPower', /** * Cycling Cadence * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifiercyclingcadence Apple Docs HKQuantityTypeIdentifierCyclingCadence} * @since iOS 17 */ cyclingCadence = 'HKQuantityTypeIdentifierCyclingCadence', /** * Environmental Sound Reduction * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierenvironmentalsoundreduction Apple Docs HKQuantityTypeIdentifierEnvironmentalSoundReduction} * @since iOS 16 */ environmentalSoundReduction = 'HKQuantityTypeIdentifierEnvironmentalSoundReduction', /** * Heart Rate Recovery One Minute * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierheartraterecoveryoneminute Apple Docs HKQuantityTypeIdentifierHeartRateRecoveryOneMinute} * @since iOS 16 */ heartRateRecoveryOneMinute = 'HKQuantityTypeIdentifierHeartRateRecoveryOneMinute', /** * Running Ground Contact Time * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrunninggroundcontacttime Apple Docs HKQuantityTypeIdentifierRunningGroundContactTime} * @since iOS 16 */ runningGroundContactTime = 'HKQuantityTypeIdentifierRunningGroundContactTime', /** * Running Stride Length * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrunningstridelength Apple Docs HKQuantityTypeIdentifierRunningStrideLength} * @since iOS 16 */ runningStrideLength = 'HKQuantityTypeIdentifierRunningStrideLength', /** * Running Power * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrunningpower Apple Docs HKQuantityTypeIdentifierRunningPower} * @since iOS 16 */ runningPower = 'HKQuantityTypeIdentifierRunningPower', /** * Running Vertical Oscillation * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrunningverticaloscillation Apple Docs HKQuantityTypeIdentifierRunningVerticalOscillation} * @since iOS 16 */ runningVerticalOscillation = 'HKQuantityTypeIdentifierRunningVerticalOscillation', /** * Running Speed * @see {@link https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifierrunningspeed Apple Docs HKQuantityTypeIdentifierRunningSpeed} * @since iOS 16 */ runningSpeed = 'HKQuantityTypeIdentifierRunningSpeed', /** * Cross Country Skiing Speed * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierCrossCountrySkiingSpeed Apple Docs HKQuantityTypeIdentifierCrossCountrySkiingSpeed} * @since iOS 18 */ crossCountrySkiingSpeed = 'HKQuantityTypeIdentifierCrossCountrySkiingSpeed', /** * Cross Country Skiing Distance * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierDistanceCrossCountrySkiing Apple Docs HKQuantityTypeIdentifierCrossCountrySkiingDistance} * @since iOS 18 */ distanceCrossCountrySkiing = 'HKQuantityTypeIdentifierDistanceCrossCountrySkiing', /** * Paddle Sports Distance * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierDistancePaddleSports Apple Docs HKQuantityTypeIdentifierDistancePaddleSports} * @since iOS 18 */ distancePaddleSports = 'HKQuantityTypeIdentifierDistancePaddleSports', /** * Rowing Distance * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierDistanceRowing Apple Docs HKQuantityTypeIdentifierDistanceRowing} * @since iOS 18 */ distanceRowing = 'HKQuantityTypeIdentifierDistanceRowing', /** * Skating Sports Distance * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierDistanceSkatingSports Apple Docs HKQuantityTypeIdentifierDistanceSkatingSports} * @since iOS 18 */ distanceSkatingSports = 'HKQuantityTypeIdentifierDistanceSkatingSports', /** * Estimated Workout Effort Score * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierEstimatedWorkoutEffortScore Apple Docs HKQuantityTypeIdentifierEstimatedWorkoutEffortScore} * @since iOS 18 */ estimatedWorkoutEffortScore = 'HKQuantityTypeIdentifierEstimatedWorkoutEffortScore', /** * Paddle Sports Speed * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierPaddleSportsSpeed Apple Docs HKQuantityTypeIdentifierPaddleSportsSpeed} * @since iOS 18 */ paddleSportsSpeed = 'HKQuantityTypeIdentifierPaddleSportsSpeed', /** * Rowing Speed * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierRowingSpeed Apple Docs HKQuantityTypeIdentifierRowingSpeed} * @since iOS 18 */ rowingSpeed = 'HKQuantityTypeIdentifierRowingSpeed', /** * Workout Effort Score * @see {@link https://developer.apple.com/documentation/healthkit/HKQuantityTypeIdentifierWorkoutEffortScore Apple Docs HKQuantityTypeIdentifierWorkoutEffortScore} * @since iOS 18 */ workoutEffortScore = 'HKQuantityTypeIdentifierWorkoutEffortScore', } export type TypeToUnitMapping = { readonly [key in HKQuantityTypeIdentifier]: HKUnit; }; export enum HKCategoryValueLowCardioFitnessEvent { lowFitness = 1, } export enum HKHeartRateMotionContext { active = 2, notSet = 0, sedentary = 1, } /** * @see {@link https://developer.apple.com/documentation/healthkit/hkcorrelationtypeidentifier Apple Docs } */ export enum HKCorrelationTypeIdentifier { bloodPressure = 'HKCorrelationTypeIdentifierBloodPressure', food = 'HKCorrelationTypeIdentifierFood', } /** * @see {@link https://developer.apple.com/documentation/healthkit/hkcategorytypeidentifier Apple Docs } */ export enum HKCategoryTypeIdentifier { sleepAnalysis = 'HKCategoryTypeIdentifierSleepAnalysis', appleStandHour = 'HKCategoryTypeIdentifierAppleStandHour', cervicalMucusQuality = 'HKCategoryTypeIdentifierCervicalMucusQuality', ovulationTestResult = 'HKCategoryTypeIdentifierOvulationTestResult', /** * @deprecated In iOS 18 beta * @see {@link https://developer.apple.com/documentation/healthkit/hkcategorytypeidentifiermenstrualflow Apple Docs } */ menstrualFlow = 'HKCategoryTypeIdentifierMenstrualFlow', intermenstrualBleeding = 'HKCategoryTypeIdentifierIntermenstrualBleeding', sexualActivity = 'HKCategoryTypeIdentifierSexualActivity', mindfulSession = 'HKCategoryTypeIdentifierMindfulSession', highHeartRateEvent = 'HKCategoryTypeIdentifierHighHeartRateEvent', lowHeartRateEvent = 'HKCategoryTypeIdentifierLowHeartRateEvent', irregularHeartRhythmEvent = 'HKCategoryTypeIdentifierIrregularHeartRhythmEvent', /** * @deprecated Use environmentalAudioExposureEvent instead. */ audioExposureEvent = 'HKCategoryTypeIdentifierAudioExposureEvent', toothbrushingEvent = 'HKCategoryTypeIdentifierToothbrushingEvent', lowCardioFitnessEvent = 'HKCategoryTypeIdentifierLowCardioFitnessEvent', contraceptive = 'HKCategoryTypeIdentifierContraceptive', lactation = 'HKCategoryTypeIdentifierLactation', pregnancy = 'HKCategoryTypeIdentifierPregnancy', pregnancyTestResult = 'HKCategoryTypeIdentifierPregnancyTestResult', progesteroneTestResult = 'HKCategoryTypeIdentifierProgesteroneTestResult', environmentalAudioExposureEvent = 'HKCategoryTypeIdentifierEnvironmentalAudioExposureEvent', headphoneAudioExposureEvent = 'HKCategoryTypeIdentifierHeadphoneAudioExposureEvent', appleWalkingSteadinessEvent = 'HKCategoryTypeIdentifierAppleWalkingSteadinessEvent', handwashingEvent = 'HKCategoryTypeIdentifierHandwashingEvent', // HKCategoryValue // Symptoms abdominalCramps = 'HKCategoryTypeIdentifierAbdominalCramps', // HKCategoryValueSeverity acne = 'HKCategoryTypeIdentifierAcne', // HKCategoryValueSeverity appetiteChanges = 'HKCategoryTypeIdentifierAppetiteChanges', // HKCategoryValueAppetiteChanges bladderIncontinence = 'HKCategoryTypeIdentifierBladderIncontinence', // HKCategoryValueSeverity bloating = 'HKCategoryTypeIdentifierBloating', // HKCategoryValueSeverity breastPain = 'HKCategoryTypeIdentifierBreastPain', // HKCategoryValueSeverity chestTightnessOrPain = 'HKCategoryTypeIdentifierChestTightnessOrPain', // HKCategoryValueSeverity chills = 'HKCategoryTypeIdentifierChills', // HKCategoryValueSeverity constipation = 'HKCategoryTypeIdentifierConstipation', // HKCategoryValueSeverity coughing = 'HKCategoryTypeIdentifierCoughing', // HKCategoryValueSeverity diarrhea = 'HKCategoryTypeIdentifierDiarrhea', // HKCategoryValueSeverity dizziness = 'HKCategoryTypeIdentifierDizziness', // HKCategoryValueSeverity drySkin = 'HKCategoryTypeIdentifierDrySkin', // HKCategoryValueSeverity fainting = 'HKCategoryTypeIdentifierFainting', // HKCategoryValueSeverity fatigue = 'HKCategoryTypeIdentifierFatigue', // HKCategoryValueSeverity fever = 'HKCategoryTypeIdentifierFever', // HKCategoryValueSeverity generalizedBodyAche = 'HKCategoryTypeIdentifierGeneralizedBodyAche', // HKCategoryValueSeverity hairLoss = 'HKCategoryTypeIdentifierHairLoss', // HKCategoryValueSeverity headache = 'HKCategoryTypeIdentifierHeadache', // HKCategoryValueSeverity heartburn = 'HKCategoryTypeIdentifierHeartburn', // HKCategoryValueSeverity hotFlashes = 'HKCategoryTypeIdentifierHotFlashes', // HKCategoryValueSeverity lossOfSmell = 'HKCategoryTypeIdentifierLossOfSmell', // HKCategoryValueSeverity lossOfTaste = 'HKCategoryTypeIdentifierLossOfTaste', // HKCategoryValueSeverity lowerBackPain = 'HKCategoryTypeIdentifierLowerBackPain', // HKCategoryValueSeverity memoryLapse = 'HKCategoryTypeIdentifierMemoryLapse', // HKCategoryValueSeverity moodChanges = 'HKCategoryTypeIdentifierMoodChanges', // HKCategoryValuePresence nausea = 'HKCategoryTypeIdentifierNausea', // HKCategoryValueSeverity nightSweats = 'HKCategoryTypeIdentifierNightSweats', // HKCategoryValueSeverity pelvicPain = 'HKCategoryTypeIdentifierPelvicPain', // HKCategoryValueSeverity rapidPoundingOrFlutteringHeartbeat = 'HKCategoryTypeIdentifierRapidPoundingOrFlutteringHeartbeat', // HKCategoryValueSeverity runnyNose = 'HKCategoryTypeIdentifierRunnyNose', // HKCategoryValueSeverity shortnessOfBreath = 'HKCategoryTypeIdentifierShortnessOfBreath', // HKCategoryValueSeverity sinusCongestion = 'HKCategoryTypeIdentifierSinusCongestion', // HKCategoryValueSeverity skippedHeartbeat = 'HKCategoryTypeIdentifierSkippedHeartbeat', // HKCategoryValueSeverity sleepChanges = 'HKCategoryTypeIdentifierSleepChanges', // HKCategoryValuePresence soreThroat = 'HKCategoryTypeIdentifierSoreThroat', // HKCategoryValueSeverity vaginalDryness = 'HKCategoryTypeIdentifierVaginalDryness', // HKCategoryValueSeverity vomiting = 'HKCategoryTypeIdentifierVomiting', // HKCategoryValueSeverity wheezing = 'HKCategoryTypeIdentifierWheezing', // HKCategoryValueSeverity /** * Bleeding After Pregnancy * @see {@link https://developer.apple.com/documentation/healthkit/hkcategorytypeidentifierbleedingafterpregnancy Apple Docs } * @since iOS 18 */ bleedingAfterPregnancy = 'HKCategoryTypeIdentifierBleedingAfterPregnancy', // HKCategoryValueSeverity /** * Bleeding During Pregnancy * @see {@link https://developer.apple.com/documentation/healthkit/hkcategorytypeidentifierbleedingduringpregnancy Apple Docs } * @since iOS 18 */ bleedingDuringPregnancy = 'HKCategoryTypeIdentifierBleedingDuringPregnancy', // HKCategoryValueSeverity } export type HKSampleTypeIdentifier = | HKCategoryTypeIdentifier | HKCorrelationTypeIdentifier | HKQuantityTypeIdentifier | typeof HKActivitySummaryTypeIdentifier | typeof HKAudiogramTypeIdentifier | typeof HKDataTypeIdentifierHeartbeatSeries | typeof HKWorkoutRouteTypeIdentifier | typeof HKWorkoutTypeIdentifier | `${HKCategoryTypeIdentifier}` | `${HKCorrelationTypeIdentifier}` | `${HKQuantityTypeIdentifier}`; export type HealthkitReadAuthorization = | HKCharacteristicTypeIdentifier | HKSampleTypeIdentifier | `${HKCharacteristicTypeIdentifier}` | `${HKSampleTypeIdentifier}`; export type HealthkitWriteAuthorization = HKSampleTypeIdentifier; export enum HKCategoryValueAppleStandHour { stood = 0, idle = 1, } export enum HKWorkoutActivityType { americanFootball = 1, archery = 2, australianFootball = 3, badminton = 4, baseball = 5, basketball = 6, bowling = 7, boxing = 8, // See also HKWorkoutActivityTypeKickboxing., climbing = 9, cricket = 10, crossTraining = 11, // Any mix of cardio and/or strength training. See also HKWorkoutActivityTypeCoreTraining and HKWorkoutActivityTypeFlexibility., curling = 12, cycling = 13, dance = 14, danceInspiredTraining = 15, // This enum remains available to access older data., elliptical = 16, equestrianSports = 17, // Polo, Horse Racing, Horse Riding, etc., fencing = 18, fishing = 19, functionalStrengthTraining = 20, // Primarily free weights and/or body weight and/or accessories, golf = 21, gymnastics = 22, handball = 23, hiking = 24, hockey = 25, // Ice Hockey, Field Hockey, etc., hunting = 26, lacrosse = 27, martialArts = 28, mindAndBody = 29, // Qigong, meditation, etc., mixedMetabolicCardioTraining = 30, // This enum remains available to access older data., paddleSports = 31, // Canoeing, Kayaking, Outrigger, Stand Up Paddle Board, etc., play = 32, // Dodge Ball, Hopscotch, Tetherball, Jungle Gym, etc., preparationAndRecovery = 33, // Foam rolling, stretching, etc., racquetball = 34, rowing = 35, rugby = 36, running = 37, sailing = 38, skatingSports = 39, // Ice Skating, Speed Skating, Inline Skating, Skateboarding, etc., snowSports = 40, // Sledding, Snowmobiling, Building a Snowman, etc. See also HKWorkoutActivityTypeCrossCountrySkiing, HKWorkoutActivityTypeSnowboarding, and HKWorkoutActivityTypeDownhillSkiing., soccer = 41, softball = 42, squash = 43, stairClimbing = 44, // See also HKWorkoutActivityTypeStairs and HKWorkoutActivityTypeStepTraining., surfingSports = 45, // Traditional Surfing, Kite Surfing, Wind Surfing, etc., swimming = 46, tableTennis = 47, tennis = 48, trackAndField = 49, // Shot Put, Javelin, Pole Vaulting, etc., traditionalStrengthTraining = 50, // Primarily machines and/or free weights, volleyball = 51, walking = 52, waterFitness = 53, waterPolo = 54, waterSports = 55, // Water Skiing, Wake Boarding, etc., wrestling = 56, yoga = 57, barre = 58, // HKWorkoutActivityTypeDanceInspiredTraining, coreTraining = 59, crossCountrySkiing = 60, downhillSkiing = 61, flexibility = 62, highIntensityIntervalTraining = 63, jumpRope = 64, kickboxing = 65, pilates = 66, // HKWorkoutActivityTypeDanceInspiredTraining, snowboarding = 67, stairs = 68, stepTraining = 69, wheelchairWalkPace = 70, wheelchairRunPace = 71, taiChi = 72, mixedCardio = 73, // HKWorkoutActivityTypeMixedMetabolicCardioTraining, handCycling = 74, discSports = 75, fitnessGaming = 76, cardioDance = 77, socialDance = 78, pickleball = 79, cooldown = 80, swimBikeRun = 82, transition = 83, underwaterDiving = 84, other = 3000, } export type HKGenericMetadata = { readonly [key: string]: HKQuantity | boolean | number | string | undefined; readonly HKExternalUUID?: string; readonly HKTimeZone?: string; readonly HKWasUserEntered?: boolean; readonly HKDeviceSerialNumber?: string; readonly HKUDIDeviceIdentifier?: string; readonly HKUDIProductionIdentifier?: string; readonly HKDigitalSignature?: string; readonly HKDeviceName?: string; readonly HKDeviceManufacturerName?: string; readonly HKSyncIdentifier?: string; readonly HKSyncVersion?: number; readonly HKWasTakenInLab?: boolean; readonly HKReferenceRangeLowerLimit?: number; readonly HKReferenceRangeUpperLimit?: number; }; // documented at https://developer.apple.com/documentation/healthkit/hkweathercondition export enum HKWeatherCondition { none = 0, clear = 1, fair = 2, partlyCloudy = 3, mostlyCloudy = 4, cloudy = 5, foggy = 6, haze = 7, windy = 8, blustery = 9, smoky = 10, dust = 11, snow = 12, hail = 13, sleet = 14, freezingDrizzle = 15, freezingRain = 16, mixedRainAndHail = 17, mixedRainAndSnow = 18, mixedRainAndSleet = 19, mixedSnowAndSleet = 20, drizzle = 21, scatteredShowers = 22, showers = 23, thunderstorms = 24, tropicalStorm = 25, hurricane = 26, tornado = 27, } enum HKIndoorWorkout { false = 0, true = 1, } export interface HKWorkoutMetadata extends HKGenericMetadata /* <TTemperatureUnit extends HKUnit> */ { readonly HKWeatherCondition?: HKWeatherCondition; readonly HKWeatherHumidity?: HKQuantity< HKQuantityTypeIdentifier, HKUnits.Percent >; // HKWeatherTemperature: HKQuantity<TTemperatureUnit> readonly HKAverageMETs?: HKQuantity<HKQuantityTypeIdentifier, HKUnit>; readonly HKElevationAscended?: HKQuantity< HKQuantityTypeIdentifier, LengthUnit >; readonly HKIndoorWorkout?: HKIndoorWorkout; } /** * @see {@link https://developer.apple.com/documentation/healthkit/hkauthorizationrequeststatus Apple Docs } */ export enum HKAuthorizationRequestStatus { unknown = 0, shouldRequest = 1, unnecessary = 2, } /** * @see {@link https://developer.apple.com/documentation/healthkit/hkauthorizationstatus Apple Docs } */ export enum HKAuthorizationStatus { notDetermined = 0, sharingDenied = 1, sharingAuthorized = 2, } export type HKQuantity< TIdentifier extends HKQuantityTypeIdentifier = HKQuantityTypeIdentifier, TUnit extends UnitForIdentifier<TIdentifier> = UnitForIdentifier<TIdentifier> > = { readonly unit: TUnit; readonly quantity: number; }; /** * @see {@link https://developer.apple.com/documentation/healthkit/hkbloodtype Apple Docs } */ export enum HKBloodType { notSet = 0, aPositive = 1, aNegative = 2, bPositive = 3, bNegative = 4, abPositive = 5, abNegative = 6, oPositive = 7, oNegative = 8, } /** * @see {@link https://developer.apple.com/documentation/healthkit/hkbiologicalsex Apple Docs } */ export enum HKBiologicalSex { notSet = 0, female = 1, male = 2,