@appeeky/expo-healthkit 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +92 -0
  3. package/README.md +453 -0
  4. package/android/build.gradle +22 -0
  5. package/android/src/main/AndroidManifest.xml +74 -0
  6. package/android/src/main/java/expo/modules/healthkit/ExpoHealthKitModule.kt +228 -0
  7. package/android/src/main/java/expo/modules/healthkit/HealthConnectMapping.kt +129 -0
  8. package/android/src/main/java/expo/modules/healthkit/HealthConnectNutrition.kt +152 -0
  9. package/android/src/main/java/expo/modules/healthkit/HealthConnectRationaleActivity.kt +62 -0
  10. package/android/src/main/java/expo/modules/healthkit/HealthConnectService.kt +1054 -0
  11. package/android/src/main/java/expo/modules/healthkit/HealthConnectUnits.kt +133 -0
  12. package/android/src/main/java/expo/modules/healthkit/HealthConnectWorkouts.kt +105 -0
  13. package/android/src/main/java/expo/modules/healthkit/HealthKitExceptions.kt +30 -0
  14. package/app.plugin.js +1 -0
  15. package/build/ExpoHealthKitModule.d.ts +39 -0
  16. package/build/ExpoHealthKitModule.d.ts.map +1 -0
  17. package/build/ExpoHealthKitModule.js +35 -0
  18. package/build/ExpoHealthKitModule.js.map +1 -0
  19. package/build/ExpoHealthKitModule.web.d.ts +39 -0
  20. package/build/ExpoHealthKitModule.web.d.ts.map +1 -0
  21. package/build/ExpoHealthKitModule.web.js +105 -0
  22. package/build/ExpoHealthKitModule.web.js.map +1 -0
  23. package/build/dates.d.ts +6 -0
  24. package/build/dates.d.ts.map +1 -0
  25. package/build/dates.js +13 -0
  26. package/build/dates.js.map +1 -0
  27. package/build/errors.d.ts +9 -0
  28. package/build/errors.d.ts.map +1 -0
  29. package/build/errors.js +18 -0
  30. package/build/errors.js.map +1 -0
  31. package/build/identifiers.d.ts +418 -0
  32. package/build/identifiers.d.ts.map +1 -0
  33. package/build/identifiers.js +402 -0
  34. package/build/identifiers.js.map +1 -0
  35. package/build/index.d.ts +454 -0
  36. package/build/index.d.ts.map +1 -0
  37. package/build/index.js +418 -0
  38. package/build/index.js.map +1 -0
  39. package/build/types.d.ts +542 -0
  40. package/build/types.d.ts.map +1 -0
  41. package/build/types.js +2 -0
  42. package/build/types.js.map +1 -0
  43. package/docs/banner.jpg +0 -0
  44. package/expo-module.config.json +9 -0
  45. package/ios/ExpoHealthKit.podspec +30 -0
  46. package/ios/ExpoHealthKitModule.swift +155 -0
  47. package/ios/HealthKitAdvancedQueries.swift +458 -0
  48. package/ios/HealthKitExceptions.swift +109 -0
  49. package/ios/HealthKitIdentifiers.swift +183 -0
  50. package/ios/HealthKitRecords.swift +214 -0
  51. package/ios/HealthKitService.swift +626 -0
  52. package/ios/PrivacyInfo.xcprivacy +14 -0
  53. package/package.json +105 -0
  54. package/plugin/build/index.d.ts +30 -0
  55. package/plugin/build/index.js +138 -0
  56. package/src/ExpoHealthKitModule.ts +116 -0
  57. package/src/ExpoHealthKitModule.web.ts +140 -0
  58. package/src/dates.ts +17 -0
  59. package/src/errors.ts +22 -0
  60. package/src/identifiers.ts +494 -0
  61. package/src/index.ts +563 -0
  62. package/src/types.ts +625 -0
@@ -0,0 +1,402 @@
1
+ /**
2
+ * HealthKit type identifiers.
3
+ *
4
+ * Values match Apple's `HK*TypeIdentifier` raw strings so they can be passed
5
+ * straight through to native APIs. Unknown identifiers are still accepted at
6
+ * runtime if HealthKit recognizes them — add a constant here when you want
7
+ * typed autocomplete.
8
+ */
9
+ /* eslint-disable @typescript-eslint/no-redeclare */
10
+ export const QuantityType = {
11
+ // Activity
12
+ stepCount: 'HKQuantityTypeIdentifierStepCount',
13
+ distanceWalkingRunning: 'HKQuantityTypeIdentifierDistanceWalkingRunning',
14
+ distanceCycling: 'HKQuantityTypeIdentifierDistanceCycling',
15
+ distanceSwimming: 'HKQuantityTypeIdentifierDistanceSwimming',
16
+ distanceWheelchair: 'HKQuantityTypeIdentifierDistanceWheelchair',
17
+ distanceDownhillSnowSports: 'HKQuantityTypeIdentifierDistanceDownhillSnowSports',
18
+ basalEnergyBurned: 'HKQuantityTypeIdentifierBasalEnergyBurned',
19
+ activeEnergyBurned: 'HKQuantityTypeIdentifierActiveEnergyBurned',
20
+ flightsClimbed: 'HKQuantityTypeIdentifierFlightsClimbed',
21
+ appleExerciseTime: 'HKQuantityTypeIdentifierAppleExerciseTime',
22
+ appleMoveTime: 'HKQuantityTypeIdentifierAppleMoveTime',
23
+ appleStandTime: 'HKQuantityTypeIdentifierAppleStandTime',
24
+ nikeFuel: 'HKQuantityTypeIdentifierNikeFuel',
25
+ pushCount: 'HKQuantityTypeIdentifierPushCount',
26
+ swimmingStrokeCount: 'HKQuantityTypeIdentifierSwimmingStrokeCount',
27
+ vo2Max: 'HKQuantityTypeIdentifierVO2Max',
28
+ appleSleepingBreathingDisturbances: 'HKQuantityTypeIdentifierAppleSleepingBreathingDisturbances',
29
+ physicalEffort: 'HKQuantityTypeIdentifierPhysicalEffort',
30
+ estimatedWorkoutEffortScore: 'HKQuantityTypeIdentifierEstimatedWorkoutEffortScore',
31
+ workoutEffortScore: 'HKQuantityTypeIdentifierWorkoutEffortScore',
32
+ // Running / cycling
33
+ runningStrideLength: 'HKQuantityTypeIdentifierRunningStrideLength',
34
+ runningVerticalOscillation: 'HKQuantityTypeIdentifierRunningVerticalOscillation',
35
+ runningGroundContactTime: 'HKQuantityTypeIdentifierRunningGroundContactTime',
36
+ runningPower: 'HKQuantityTypeIdentifierRunningPower',
37
+ runningSpeed: 'HKQuantityTypeIdentifierRunningSpeed',
38
+ cyclingPower: 'HKQuantityTypeIdentifierCyclingPower',
39
+ cyclingCadence: 'HKQuantityTypeIdentifierCyclingCadence',
40
+ cyclingFunctionalThresholdPower: 'HKQuantityTypeIdentifierCyclingFunctionalThresholdPower',
41
+ cyclingSpeed: 'HKQuantityTypeIdentifierCyclingSpeed',
42
+ // Vitals
43
+ heartRate: 'HKQuantityTypeIdentifierHeartRate',
44
+ restingHeartRate: 'HKQuantityTypeIdentifierRestingHeartRate',
45
+ walkingHeartRateAverage: 'HKQuantityTypeIdentifierWalkingHeartRateAverage',
46
+ heartRateVariabilitySDNN: 'HKQuantityTypeIdentifierHeartRateVariabilitySDNN',
47
+ heartRateRecoveryOneMinute: 'HKQuantityTypeIdentifierHeartRateRecoveryOneMinute',
48
+ atrialFibrillationBurden: 'HKQuantityTypeIdentifierAtrialFibrillationBurden',
49
+ oxygenSaturation: 'HKQuantityTypeIdentifierOxygenSaturation',
50
+ peripheralPerfusionIndex: 'HKQuantityTypeIdentifierPeripheralPerfusionIndex',
51
+ respiratoryRate: 'HKQuantityTypeIdentifierRespiratoryRate',
52
+ bodyTemperature: 'HKQuantityTypeIdentifierBodyTemperature',
53
+ basalBodyTemperature: 'HKQuantityTypeIdentifierBasalBodyTemperature',
54
+ bloodPressureSystolic: 'HKQuantityTypeIdentifierBloodPressureSystolic',
55
+ bloodPressureDiastolic: 'HKQuantityTypeIdentifierBloodPressureDiastolic',
56
+ bloodGlucose: 'HKQuantityTypeIdentifierBloodGlucose',
57
+ bloodAlcoholContent: 'HKQuantityTypeIdentifierBloodAlcoholContent',
58
+ electrodermalActivity: 'HKQuantityTypeIdentifierElectrodermalActivity',
59
+ insulinDelivery: 'HKQuantityTypeIdentifierInsulinDelivery',
60
+ numberOfTimesFallen: 'HKQuantityTypeIdentifierNumberOfTimesFallen',
61
+ inhalerUsage: 'HKQuantityTypeIdentifierInhalerUsage',
62
+ forcedVitalCapacity: 'HKQuantityTypeIdentifierForcedVitalCapacity',
63
+ forcedExpiratoryVolume1: 'HKQuantityTypeIdentifierForcedExpiratoryVolume1',
64
+ peakExpiratoryFlowRate: 'HKQuantityTypeIdentifierPeakExpiratoryFlowRate',
65
+ // Body
66
+ height: 'HKQuantityTypeIdentifierHeight',
67
+ bodyMass: 'HKQuantityTypeIdentifierBodyMass',
68
+ bodyMassIndex: 'HKQuantityTypeIdentifierBodyMassIndex',
69
+ leanBodyMass: 'HKQuantityTypeIdentifierLeanBodyMass',
70
+ bodyFatPercentage: 'HKQuantityTypeIdentifierBodyFatPercentage',
71
+ waistCircumference: 'HKQuantityTypeIdentifierWaistCircumference',
72
+ appleSleepingWristTemperature: 'HKQuantityTypeIdentifierAppleSleepingWristTemperature',
73
+ // Mobility
74
+ sixMinuteWalkTestDistance: 'HKQuantityTypeIdentifierSixMinuteWalkTestDistance',
75
+ walkingSpeed: 'HKQuantityTypeIdentifierWalkingSpeed',
76
+ walkingStepLength: 'HKQuantityTypeIdentifierWalkingStepLength',
77
+ walkingAsymmetryPercentage: 'HKQuantityTypeIdentifierWalkingAsymmetryPercentage',
78
+ walkingDoubleSupportPercentage: 'HKQuantityTypeIdentifierWalkingDoubleSupportPercentage',
79
+ stairAscentSpeed: 'HKQuantityTypeIdentifierStairAscentSpeed',
80
+ stairDescentSpeed: 'HKQuantityTypeIdentifierStairDescentSpeed',
81
+ appleWalkingSteadiness: 'HKQuantityTypeIdentifierAppleWalkingSteadiness',
82
+ // Hearing
83
+ environmentalAudioExposure: 'HKQuantityTypeIdentifierEnvironmentalAudioExposure',
84
+ headphoneAudioExposure: 'HKQuantityTypeIdentifierHeadphoneAudioExposure',
85
+ // Nutrition
86
+ dietaryEnergyConsumed: 'HKQuantityTypeIdentifierDietaryEnergyConsumed',
87
+ dietaryWater: 'HKQuantityTypeIdentifierDietaryWater',
88
+ dietaryCarbohydrates: 'HKQuantityTypeIdentifierDietaryCarbohydrates',
89
+ dietaryProtein: 'HKQuantityTypeIdentifierDietaryProtein',
90
+ dietaryFatTotal: 'HKQuantityTypeIdentifierDietaryFatTotal',
91
+ dietaryFatSaturated: 'HKQuantityTypeIdentifierDietaryFatSaturated',
92
+ dietaryFatMonounsaturated: 'HKQuantityTypeIdentifierDietaryFatMonounsaturated',
93
+ dietaryFatPolyunsaturated: 'HKQuantityTypeIdentifierDietaryFatPolyunsaturated',
94
+ dietaryCholesterol: 'HKQuantityTypeIdentifierDietaryCholesterol',
95
+ dietarySodium: 'HKQuantityTypeIdentifierDietarySodium',
96
+ dietarySugar: 'HKQuantityTypeIdentifierDietarySugar',
97
+ dietaryFiber: 'HKQuantityTypeIdentifierDietaryFiber',
98
+ dietaryCaffeine: 'HKQuantityTypeIdentifierDietaryCaffeine',
99
+ dietaryCalcium: 'HKQuantityTypeIdentifierDietaryCalcium',
100
+ dietaryIron: 'HKQuantityTypeIdentifierDietaryIron',
101
+ dietaryPotassium: 'HKQuantityTypeIdentifierDietaryPotassium',
102
+ dietaryVitaminA: 'HKQuantityTypeIdentifierDietaryVitaminA',
103
+ dietaryVitaminC: 'HKQuantityTypeIdentifierDietaryVitaminC',
104
+ dietaryVitaminD: 'HKQuantityTypeIdentifierDietaryVitaminD',
105
+ dietaryVitaminE: 'HKQuantityTypeIdentifierDietaryVitaminE',
106
+ dietaryVitaminK: 'HKQuantityTypeIdentifierDietaryVitaminK',
107
+ dietaryVitaminB6: 'HKQuantityTypeIdentifierDietaryVitaminB6',
108
+ dietaryVitaminB12: 'HKQuantityTypeIdentifierDietaryVitaminB12',
109
+ dietaryBiotin: 'HKQuantityTypeIdentifierDietaryBiotin',
110
+ dietaryFolate: 'HKQuantityTypeIdentifierDietaryFolate',
111
+ dietaryNiacin: 'HKQuantityTypeIdentifierDietaryNiacin',
112
+ dietaryPantothenicAcid: 'HKQuantityTypeIdentifierDietaryPantothenicAcid',
113
+ dietaryRiboflavin: 'HKQuantityTypeIdentifierDietaryRiboflavin',
114
+ dietaryThiamin: 'HKQuantityTypeIdentifierDietaryThiamin',
115
+ dietaryMagnesium: 'HKQuantityTypeIdentifierDietaryMagnesium',
116
+ dietaryManganese: 'HKQuantityTypeIdentifierDietaryManganese',
117
+ dietaryPhosphorus: 'HKQuantityTypeIdentifierDietaryPhosphorus',
118
+ dietarySelenium: 'HKQuantityTypeIdentifierDietarySelenium',
119
+ dietaryZinc: 'HKQuantityTypeIdentifierDietaryZinc',
120
+ dietaryIodine: 'HKQuantityTypeIdentifierDietaryIodine',
121
+ dietaryChromium: 'HKQuantityTypeIdentifierDietaryChromium',
122
+ dietaryCopper: 'HKQuantityTypeIdentifierDietaryCopper',
123
+ dietaryMolybdenum: 'HKQuantityTypeIdentifierDietaryMolybdenum',
124
+ dietaryChloride: 'HKQuantityTypeIdentifierDietaryChloride',
125
+ };
126
+ export const CategoryType = {
127
+ sleepAnalysis: 'HKCategoryTypeIdentifierSleepAnalysis',
128
+ appleStandHour: 'HKCategoryTypeIdentifierAppleStandHour',
129
+ cervicalMucusQuality: 'HKCategoryTypeIdentifierCervicalMucusQuality',
130
+ ovulationTestResult: 'HKCategoryTypeIdentifierOvulationTestResult',
131
+ menstrualFlow: 'HKCategoryTypeIdentifierMenstrualFlow',
132
+ intermenstrualBleeding: 'HKCategoryTypeIdentifierIntermenstrualBleeding',
133
+ sexualActivity: 'HKCategoryTypeIdentifierSexualActivity',
134
+ mindfulSession: 'HKCategoryTypeIdentifierMindfulSession',
135
+ highHeartRateEvent: 'HKCategoryTypeIdentifierHighHeartRateEvent',
136
+ lowHeartRateEvent: 'HKCategoryTypeIdentifierLowHeartRateEvent',
137
+ irregularHeartRhythmEvent: 'HKCategoryTypeIdentifierIrregularHeartRhythmEvent',
138
+ toothbrushingEvent: 'HKCategoryTypeIdentifierToothbrushingEvent',
139
+ pregnancy: 'HKCategoryTypeIdentifierPregnancy',
140
+ lactation: 'HKCategoryTypeIdentifierLactation',
141
+ contraceptive: 'HKCategoryTypeIdentifierContraceptive',
142
+ audioExposureEvent: 'HKCategoryTypeIdentifierAudioExposureEvent',
143
+ environmentalAudioExposureEvent: 'HKCategoryTypeIdentifierEnvironmentalAudioExposureEvent',
144
+ headphoneAudioExposureEvent: 'HKCategoryTypeIdentifierHeadphoneAudioExposureEvent',
145
+ appleWalkingSteadinessEvent: 'HKCategoryTypeIdentifierAppleWalkingSteadinessEvent',
146
+ lowCardioFitnessEvent: 'HKCategoryTypeIdentifierLowCardioFitnessEvent',
147
+ handwashingEvent: 'HKCategoryTypeIdentifierHandwashingEvent',
148
+ pregnancyTestResult: 'HKCategoryTypeIdentifierPregnancyTestResult',
149
+ progesteroneTestResult: 'HKCategoryTypeIdentifierProgesteroneTestResult',
150
+ };
151
+ export const CharacteristicType = {
152
+ biologicalSex: 'HKCharacteristicTypeIdentifierBiologicalSex',
153
+ bloodType: 'HKCharacteristicTypeIdentifierBloodType',
154
+ dateOfBirth: 'HKCharacteristicTypeIdentifierDateOfBirth',
155
+ fitzpatrickSkinType: 'HKCharacteristicTypeIdentifierFitzpatrickSkinType',
156
+ wheelchairUse: 'HKCharacteristicTypeIdentifierWheelchairUse',
157
+ activityMoveMode: 'HKCharacteristicTypeIdentifierActivityMoveMode',
158
+ };
159
+ export const CorrelationType = {
160
+ bloodPressure: 'HKCorrelationTypeIdentifierBloodPressure',
161
+ food: 'HKCorrelationTypeIdentifierFood',
162
+ };
163
+ export const WorkoutType = {
164
+ workout: 'HKWorkoutTypeIdentifier',
165
+ };
166
+ export const ElectrocardiogramType = {
167
+ electrocardiogram: 'HKElectrocardiogramTypeIdentifier',
168
+ };
169
+ export const AudiogramType = {
170
+ audiogram: 'HKAudiogramSampleTypeIdentifier',
171
+ };
172
+ export const SeriesType = {
173
+ workoutRoute: 'HKWorkoutRouteTypeIdentifier',
174
+ heartbeat: 'HKDataTypeIdentifierHeartbeatSeries',
175
+ };
176
+ export const ActivitySummaryType = {
177
+ activitySummary: 'HKActivitySummaryTypeIdentifier',
178
+ };
179
+ export const ClinicalType = {
180
+ allergyRecord: 'HKClinicalTypeIdentifierAllergyRecord',
181
+ conditionRecord: 'HKClinicalTypeIdentifierConditionRecord',
182
+ immunizationRecord: 'HKClinicalTypeIdentifierImmunizationRecord',
183
+ labResultRecord: 'HKClinicalTypeIdentifierLabResultRecord',
184
+ medicationRecord: 'HKClinicalTypeIdentifierMedicationRecord',
185
+ procedureRecord: 'HKClinicalTypeIdentifierProcedureRecord',
186
+ vitalSignRecord: 'HKClinicalTypeIdentifierVitalSignRecord',
187
+ coverageRecord: 'HKClinicalTypeIdentifierCoverageRecord',
188
+ };
189
+ export const Unit = {
190
+ count: 'count',
191
+ countPerMinute: 'count/min',
192
+ countPerSecond: 'count/s',
193
+ percent: '%',
194
+ kilogram: 'kg',
195
+ gram: 'g',
196
+ milligram: 'mg',
197
+ pound: 'lb',
198
+ meter: 'm',
199
+ kilometer: 'km',
200
+ centimeter: 'cm',
201
+ mile: 'mi',
202
+ foot: 'ft',
203
+ inch: 'in',
204
+ meterPerSecond: 'm/s',
205
+ kilometerPerHour: 'km/hr',
206
+ milePerHour: 'mi/hr',
207
+ kilocalorie: 'kcal',
208
+ joule: 'J',
209
+ degreeCelsius: 'degC',
210
+ degreeFahrenheit: 'degF',
211
+ millimeterOfMercury: 'mmHg',
212
+ milliliter: 'mL',
213
+ liter: 'L',
214
+ milligramPerDeciliter: 'mg/dL',
215
+ millimolePerLiter: 'mmol<mol>/L',
216
+ second: 's',
217
+ minute: 'min',
218
+ hour: 'hr',
219
+ watt: 'W',
220
+ decibelAWeightedSoundPressureLevel: 'dBASPL',
221
+ hertz: 'Hz',
222
+ decibelHearingLevel: 'dBHL',
223
+ volt: 'V',
224
+ microvolt: 'uV',
225
+ };
226
+ /** Matches `HKWorkoutActivityType` raw values. */
227
+ export const WorkoutActivityType = {
228
+ americanFootball: 1,
229
+ archery: 2,
230
+ australianFootball: 3,
231
+ badminton: 4,
232
+ baseball: 5,
233
+ basketball: 6,
234
+ bowling: 7,
235
+ boxing: 8,
236
+ climbing: 9,
237
+ cricket: 10,
238
+ crossTraining: 11,
239
+ curling: 12,
240
+ cycling: 13,
241
+ dance: 14,
242
+ danceInspiredTraining: 15,
243
+ elliptical: 16,
244
+ equestrianSports: 17,
245
+ fencing: 18,
246
+ fishing: 19,
247
+ functionalStrengthTraining: 20,
248
+ golf: 21,
249
+ gymnastics: 22,
250
+ handball: 23,
251
+ hiking: 24,
252
+ hockey: 25,
253
+ hunting: 26,
254
+ lacrosse: 27,
255
+ martialArts: 28,
256
+ mindAndBody: 29,
257
+ mixedMetabolicCardioTraining: 30,
258
+ paddleSports: 31,
259
+ play: 32,
260
+ preparationAndRecovery: 33,
261
+ racquetball: 34,
262
+ rowing: 35,
263
+ rugby: 36,
264
+ running: 37,
265
+ sailing: 38,
266
+ skatingSports: 39,
267
+ snowSports: 40,
268
+ soccer: 41,
269
+ softball: 42,
270
+ squash: 43,
271
+ stairClimbing: 44,
272
+ surfingSports: 45,
273
+ swimming: 46,
274
+ tableTennis: 47,
275
+ tennis: 48,
276
+ trackAndField: 49,
277
+ traditionalStrengthTraining: 50,
278
+ volleyball: 51,
279
+ walking: 52,
280
+ waterFitness: 53,
281
+ waterPolo: 54,
282
+ waterSports: 55,
283
+ wrestling: 56,
284
+ yoga: 57,
285
+ barre: 58,
286
+ coreTraining: 59,
287
+ crossCountrySkiing: 60,
288
+ downhillSkiing: 61,
289
+ flexibility: 62,
290
+ highIntensityIntervalTraining: 63,
291
+ jumpRope: 64,
292
+ kickboxing: 65,
293
+ pilates: 66,
294
+ snowboarding: 67,
295
+ stairs: 68,
296
+ stepTraining: 69,
297
+ wheelchairWalkPace: 70,
298
+ wheelchairRunPace: 71,
299
+ taiChi: 72,
300
+ mixedCardio: 73,
301
+ handCycling: 74,
302
+ discSports: 75,
303
+ fitnessGaming: 76,
304
+ cardioDance: 77,
305
+ socialDance: 78,
306
+ pickleball: 79,
307
+ cooldown: 80,
308
+ swimBikeRun: 82,
309
+ transition: 83,
310
+ underwaterDiving: 84,
311
+ other: 3000,
312
+ };
313
+ /** Matches `HKCategoryValueSleepAnalysis`. */
314
+ export const SleepAnalysisValue = {
315
+ inBed: 0,
316
+ asleepUnspecified: 1,
317
+ awake: 2,
318
+ asleepCore: 3,
319
+ asleepDeep: 4,
320
+ asleepREM: 5,
321
+ };
322
+ /** Matches `HKUpdateFrequency`. */
323
+ export const UpdateFrequency = {
324
+ immediate: 1,
325
+ hourly: 2,
326
+ daily: 3,
327
+ weekly: 4,
328
+ };
329
+ /** Matches `HKStatisticsOptions` bitmask values used by this module. */
330
+ export const StatisticsOption = {
331
+ none: 0,
332
+ discreteAverage: 1,
333
+ discreteMin: 2,
334
+ discreteMax: 4,
335
+ cumulativeSum: 8,
336
+ discreteMostRecent: 32,
337
+ };
338
+ /** Matches `HKAuthorizationStatus`. */
339
+ export const AuthorizationStatus = {
340
+ notDetermined: 0,
341
+ sharingDenied: 1,
342
+ sharingAuthorized: 2,
343
+ };
344
+ /** Matches `HKAuthorizationRequestStatus`. */
345
+ export const AuthorizationRequestStatus = {
346
+ unknown: 0,
347
+ shouldRequest: 1,
348
+ unnecessary: 2,
349
+ };
350
+ /** Matches `HKBiologicalSex`. */
351
+ export const BiologicalSex = {
352
+ notSet: 0,
353
+ female: 1,
354
+ male: 2,
355
+ other: 3,
356
+ };
357
+ /** Matches `HKBloodType`. */
358
+ export const BloodType = {
359
+ notSet: 0,
360
+ aPositive: 1,
361
+ aNegative: 2,
362
+ bPositive: 3,
363
+ bNegative: 4,
364
+ abPositive: 5,
365
+ abNegative: 6,
366
+ oPositive: 7,
367
+ oNegative: 8,
368
+ };
369
+ /** Matches `HKFitzpatrickSkinType`. */
370
+ export const FitzpatrickSkinType = {
371
+ notSet: 0,
372
+ I: 1,
373
+ II: 2,
374
+ III: 3,
375
+ IV: 4,
376
+ V: 5,
377
+ VI: 6,
378
+ };
379
+ /** Matches `HKWheelchairUse`. */
380
+ export const WheelchairUse = {
381
+ notSet: 0,
382
+ no: 1,
383
+ yes: 2,
384
+ };
385
+ /** Matches `HKElectrocardiogram.Classification`. */
386
+ export const ElectrocardiogramClassification = {
387
+ notSet: 0,
388
+ sinusRhythm: 1,
389
+ atrialFibrillation: 2,
390
+ inconclusiveLowHeartRate: 3,
391
+ inconclusiveHighHeartRate: 4,
392
+ inconclusivePoorReading: 5,
393
+ inconclusiveOther: 6,
394
+ unrecognized: 100,
395
+ };
396
+ /** Matches `HKElectrocardiogram.SymptomsStatus`. */
397
+ export const ElectrocardiogramSymptomsStatus = {
398
+ notSet: 0,
399
+ none: 1,
400
+ present: 2,
401
+ };
402
+ //# sourceMappingURL=identifiers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../src/identifiers.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * HealthKit type identifiers.\n *\n * Values match Apple's `HK*TypeIdentifier` raw strings so they can be passed\n * straight through to native APIs. Unknown identifiers are still accepted at\n * runtime if HealthKit recognizes them — add a constant here when you want\n * typed autocomplete.\n */\n\n/* eslint-disable @typescript-eslint/no-redeclare */\n\nexport const QuantityType = {\n // Activity\n stepCount: 'HKQuantityTypeIdentifierStepCount',\n distanceWalkingRunning: 'HKQuantityTypeIdentifierDistanceWalkingRunning',\n distanceCycling: 'HKQuantityTypeIdentifierDistanceCycling',\n distanceSwimming: 'HKQuantityTypeIdentifierDistanceSwimming',\n distanceWheelchair: 'HKQuantityTypeIdentifierDistanceWheelchair',\n distanceDownhillSnowSports: 'HKQuantityTypeIdentifierDistanceDownhillSnowSports',\n basalEnergyBurned: 'HKQuantityTypeIdentifierBasalEnergyBurned',\n activeEnergyBurned: 'HKQuantityTypeIdentifierActiveEnergyBurned',\n flightsClimbed: 'HKQuantityTypeIdentifierFlightsClimbed',\n appleExerciseTime: 'HKQuantityTypeIdentifierAppleExerciseTime',\n appleMoveTime: 'HKQuantityTypeIdentifierAppleMoveTime',\n appleStandTime: 'HKQuantityTypeIdentifierAppleStandTime',\n nikeFuel: 'HKQuantityTypeIdentifierNikeFuel',\n pushCount: 'HKQuantityTypeIdentifierPushCount',\n swimmingStrokeCount: 'HKQuantityTypeIdentifierSwimmingStrokeCount',\n vo2Max: 'HKQuantityTypeIdentifierVO2Max',\n appleSleepingBreathingDisturbances: 'HKQuantityTypeIdentifierAppleSleepingBreathingDisturbances',\n physicalEffort: 'HKQuantityTypeIdentifierPhysicalEffort',\n estimatedWorkoutEffortScore: 'HKQuantityTypeIdentifierEstimatedWorkoutEffortScore',\n workoutEffortScore: 'HKQuantityTypeIdentifierWorkoutEffortScore',\n\n // Running / cycling\n runningStrideLength: 'HKQuantityTypeIdentifierRunningStrideLength',\n runningVerticalOscillation: 'HKQuantityTypeIdentifierRunningVerticalOscillation',\n runningGroundContactTime: 'HKQuantityTypeIdentifierRunningGroundContactTime',\n runningPower: 'HKQuantityTypeIdentifierRunningPower',\n runningSpeed: 'HKQuantityTypeIdentifierRunningSpeed',\n cyclingPower: 'HKQuantityTypeIdentifierCyclingPower',\n cyclingCadence: 'HKQuantityTypeIdentifierCyclingCadence',\n cyclingFunctionalThresholdPower: 'HKQuantityTypeIdentifierCyclingFunctionalThresholdPower',\n cyclingSpeed: 'HKQuantityTypeIdentifierCyclingSpeed',\n\n // Vitals\n heartRate: 'HKQuantityTypeIdentifierHeartRate',\n restingHeartRate: 'HKQuantityTypeIdentifierRestingHeartRate',\n walkingHeartRateAverage: 'HKQuantityTypeIdentifierWalkingHeartRateAverage',\n heartRateVariabilitySDNN: 'HKQuantityTypeIdentifierHeartRateVariabilitySDNN',\n heartRateRecoveryOneMinute: 'HKQuantityTypeIdentifierHeartRateRecoveryOneMinute',\n atrialFibrillationBurden: 'HKQuantityTypeIdentifierAtrialFibrillationBurden',\n oxygenSaturation: 'HKQuantityTypeIdentifierOxygenSaturation',\n peripheralPerfusionIndex: 'HKQuantityTypeIdentifierPeripheralPerfusionIndex',\n respiratoryRate: 'HKQuantityTypeIdentifierRespiratoryRate',\n bodyTemperature: 'HKQuantityTypeIdentifierBodyTemperature',\n basalBodyTemperature: 'HKQuantityTypeIdentifierBasalBodyTemperature',\n bloodPressureSystolic: 'HKQuantityTypeIdentifierBloodPressureSystolic',\n bloodPressureDiastolic: 'HKQuantityTypeIdentifierBloodPressureDiastolic',\n bloodGlucose: 'HKQuantityTypeIdentifierBloodGlucose',\n bloodAlcoholContent: 'HKQuantityTypeIdentifierBloodAlcoholContent',\n electrodermalActivity: 'HKQuantityTypeIdentifierElectrodermalActivity',\n insulinDelivery: 'HKQuantityTypeIdentifierInsulinDelivery',\n numberOfTimesFallen: 'HKQuantityTypeIdentifierNumberOfTimesFallen',\n inhalerUsage: 'HKQuantityTypeIdentifierInhalerUsage',\n forcedVitalCapacity: 'HKQuantityTypeIdentifierForcedVitalCapacity',\n forcedExpiratoryVolume1: 'HKQuantityTypeIdentifierForcedExpiratoryVolume1',\n peakExpiratoryFlowRate: 'HKQuantityTypeIdentifierPeakExpiratoryFlowRate',\n\n // Body\n height: 'HKQuantityTypeIdentifierHeight',\n bodyMass: 'HKQuantityTypeIdentifierBodyMass',\n bodyMassIndex: 'HKQuantityTypeIdentifierBodyMassIndex',\n leanBodyMass: 'HKQuantityTypeIdentifierLeanBodyMass',\n bodyFatPercentage: 'HKQuantityTypeIdentifierBodyFatPercentage',\n waistCircumference: 'HKQuantityTypeIdentifierWaistCircumference',\n appleSleepingWristTemperature: 'HKQuantityTypeIdentifierAppleSleepingWristTemperature',\n\n // Mobility\n sixMinuteWalkTestDistance: 'HKQuantityTypeIdentifierSixMinuteWalkTestDistance',\n walkingSpeed: 'HKQuantityTypeIdentifierWalkingSpeed',\n walkingStepLength: 'HKQuantityTypeIdentifierWalkingStepLength',\n walkingAsymmetryPercentage: 'HKQuantityTypeIdentifierWalkingAsymmetryPercentage',\n walkingDoubleSupportPercentage: 'HKQuantityTypeIdentifierWalkingDoubleSupportPercentage',\n stairAscentSpeed: 'HKQuantityTypeIdentifierStairAscentSpeed',\n stairDescentSpeed: 'HKQuantityTypeIdentifierStairDescentSpeed',\n appleWalkingSteadiness: 'HKQuantityTypeIdentifierAppleWalkingSteadiness',\n\n // Hearing\n environmentalAudioExposure: 'HKQuantityTypeIdentifierEnvironmentalAudioExposure',\n headphoneAudioExposure: 'HKQuantityTypeIdentifierHeadphoneAudioExposure',\n\n // Nutrition\n dietaryEnergyConsumed: 'HKQuantityTypeIdentifierDietaryEnergyConsumed',\n dietaryWater: 'HKQuantityTypeIdentifierDietaryWater',\n dietaryCarbohydrates: 'HKQuantityTypeIdentifierDietaryCarbohydrates',\n dietaryProtein: 'HKQuantityTypeIdentifierDietaryProtein',\n dietaryFatTotal: 'HKQuantityTypeIdentifierDietaryFatTotal',\n dietaryFatSaturated: 'HKQuantityTypeIdentifierDietaryFatSaturated',\n dietaryFatMonounsaturated: 'HKQuantityTypeIdentifierDietaryFatMonounsaturated',\n dietaryFatPolyunsaturated: 'HKQuantityTypeIdentifierDietaryFatPolyunsaturated',\n dietaryCholesterol: 'HKQuantityTypeIdentifierDietaryCholesterol',\n dietarySodium: 'HKQuantityTypeIdentifierDietarySodium',\n dietarySugar: 'HKQuantityTypeIdentifierDietarySugar',\n dietaryFiber: 'HKQuantityTypeIdentifierDietaryFiber',\n dietaryCaffeine: 'HKQuantityTypeIdentifierDietaryCaffeine',\n dietaryCalcium: 'HKQuantityTypeIdentifierDietaryCalcium',\n dietaryIron: 'HKQuantityTypeIdentifierDietaryIron',\n dietaryPotassium: 'HKQuantityTypeIdentifierDietaryPotassium',\n dietaryVitaminA: 'HKQuantityTypeIdentifierDietaryVitaminA',\n dietaryVitaminC: 'HKQuantityTypeIdentifierDietaryVitaminC',\n dietaryVitaminD: 'HKQuantityTypeIdentifierDietaryVitaminD',\n dietaryVitaminE: 'HKQuantityTypeIdentifierDietaryVitaminE',\n dietaryVitaminK: 'HKQuantityTypeIdentifierDietaryVitaminK',\n dietaryVitaminB6: 'HKQuantityTypeIdentifierDietaryVitaminB6',\n dietaryVitaminB12: 'HKQuantityTypeIdentifierDietaryVitaminB12',\n dietaryBiotin: 'HKQuantityTypeIdentifierDietaryBiotin',\n dietaryFolate: 'HKQuantityTypeIdentifierDietaryFolate',\n dietaryNiacin: 'HKQuantityTypeIdentifierDietaryNiacin',\n dietaryPantothenicAcid: 'HKQuantityTypeIdentifierDietaryPantothenicAcid',\n dietaryRiboflavin: 'HKQuantityTypeIdentifierDietaryRiboflavin',\n dietaryThiamin: 'HKQuantityTypeIdentifierDietaryThiamin',\n dietaryMagnesium: 'HKQuantityTypeIdentifierDietaryMagnesium',\n dietaryManganese: 'HKQuantityTypeIdentifierDietaryManganese',\n dietaryPhosphorus: 'HKQuantityTypeIdentifierDietaryPhosphorus',\n dietarySelenium: 'HKQuantityTypeIdentifierDietarySelenium',\n dietaryZinc: 'HKQuantityTypeIdentifierDietaryZinc',\n dietaryIodine: 'HKQuantityTypeIdentifierDietaryIodine',\n dietaryChromium: 'HKQuantityTypeIdentifierDietaryChromium',\n dietaryCopper: 'HKQuantityTypeIdentifierDietaryCopper',\n dietaryMolybdenum: 'HKQuantityTypeIdentifierDietaryMolybdenum',\n dietaryChloride: 'HKQuantityTypeIdentifierDietaryChloride',\n} as const;\n\nexport type QuantityType = (typeof QuantityType)[keyof typeof QuantityType];\n\nexport const CategoryType = {\n sleepAnalysis: 'HKCategoryTypeIdentifierSleepAnalysis',\n appleStandHour: 'HKCategoryTypeIdentifierAppleStandHour',\n cervicalMucusQuality: 'HKCategoryTypeIdentifierCervicalMucusQuality',\n ovulationTestResult: 'HKCategoryTypeIdentifierOvulationTestResult',\n menstrualFlow: 'HKCategoryTypeIdentifierMenstrualFlow',\n intermenstrualBleeding: 'HKCategoryTypeIdentifierIntermenstrualBleeding',\n sexualActivity: 'HKCategoryTypeIdentifierSexualActivity',\n mindfulSession: 'HKCategoryTypeIdentifierMindfulSession',\n highHeartRateEvent: 'HKCategoryTypeIdentifierHighHeartRateEvent',\n lowHeartRateEvent: 'HKCategoryTypeIdentifierLowHeartRateEvent',\n irregularHeartRhythmEvent: 'HKCategoryTypeIdentifierIrregularHeartRhythmEvent',\n toothbrushingEvent: 'HKCategoryTypeIdentifierToothbrushingEvent',\n pregnancy: 'HKCategoryTypeIdentifierPregnancy',\n lactation: 'HKCategoryTypeIdentifierLactation',\n contraceptive: 'HKCategoryTypeIdentifierContraceptive',\n audioExposureEvent: 'HKCategoryTypeIdentifierAudioExposureEvent',\n environmentalAudioExposureEvent: 'HKCategoryTypeIdentifierEnvironmentalAudioExposureEvent',\n headphoneAudioExposureEvent: 'HKCategoryTypeIdentifierHeadphoneAudioExposureEvent',\n appleWalkingSteadinessEvent: 'HKCategoryTypeIdentifierAppleWalkingSteadinessEvent',\n lowCardioFitnessEvent: 'HKCategoryTypeIdentifierLowCardioFitnessEvent',\n handwashingEvent: 'HKCategoryTypeIdentifierHandwashingEvent',\n pregnancyTestResult: 'HKCategoryTypeIdentifierPregnancyTestResult',\n progesteroneTestResult: 'HKCategoryTypeIdentifierProgesteroneTestResult',\n} as const;\n\nexport type CategoryType = (typeof CategoryType)[keyof typeof CategoryType];\n\nexport const CharacteristicType = {\n biologicalSex: 'HKCharacteristicTypeIdentifierBiologicalSex',\n bloodType: 'HKCharacteristicTypeIdentifierBloodType',\n dateOfBirth: 'HKCharacteristicTypeIdentifierDateOfBirth',\n fitzpatrickSkinType: 'HKCharacteristicTypeIdentifierFitzpatrickSkinType',\n wheelchairUse: 'HKCharacteristicTypeIdentifierWheelchairUse',\n activityMoveMode: 'HKCharacteristicTypeIdentifierActivityMoveMode',\n} as const;\n\nexport type CharacteristicType = (typeof CharacteristicType)[keyof typeof CharacteristicType];\n\nexport const CorrelationType = {\n bloodPressure: 'HKCorrelationTypeIdentifierBloodPressure',\n food: 'HKCorrelationTypeIdentifierFood',\n} as const;\n\nexport type CorrelationType = (typeof CorrelationType)[keyof typeof CorrelationType];\n\nexport const WorkoutType = {\n workout: 'HKWorkoutTypeIdentifier',\n} as const;\n\nexport type WorkoutType = (typeof WorkoutType)[keyof typeof WorkoutType];\n\nexport const ElectrocardiogramType = {\n electrocardiogram: 'HKElectrocardiogramTypeIdentifier',\n} as const;\n\nexport type ElectrocardiogramType =\n (typeof ElectrocardiogramType)[keyof typeof ElectrocardiogramType];\n\nexport const AudiogramType = {\n audiogram: 'HKAudiogramSampleTypeIdentifier',\n} as const;\n\nexport type AudiogramType = (typeof AudiogramType)[keyof typeof AudiogramType];\n\nexport const SeriesType = {\n workoutRoute: 'HKWorkoutRouteTypeIdentifier',\n heartbeat: 'HKDataTypeIdentifierHeartbeatSeries',\n} as const;\n\nexport type SeriesType = (typeof SeriesType)[keyof typeof SeriesType];\n\nexport const ActivitySummaryType = {\n activitySummary: 'HKActivitySummaryTypeIdentifier',\n} as const;\n\nexport type ActivitySummaryType = (typeof ActivitySummaryType)[keyof typeof ActivitySummaryType];\n\nexport const ClinicalType = {\n allergyRecord: 'HKClinicalTypeIdentifierAllergyRecord',\n conditionRecord: 'HKClinicalTypeIdentifierConditionRecord',\n immunizationRecord: 'HKClinicalTypeIdentifierImmunizationRecord',\n labResultRecord: 'HKClinicalTypeIdentifierLabResultRecord',\n medicationRecord: 'HKClinicalTypeIdentifierMedicationRecord',\n procedureRecord: 'HKClinicalTypeIdentifierProcedureRecord',\n vitalSignRecord: 'HKClinicalTypeIdentifierVitalSignRecord',\n coverageRecord: 'HKClinicalTypeIdentifierCoverageRecord',\n} as const;\n\nexport type ClinicalType = (typeof ClinicalType)[keyof typeof ClinicalType];\n\nexport type ObjectType =\n | QuantityType\n | CategoryType\n | CharacteristicType\n | CorrelationType\n | WorkoutType\n | ElectrocardiogramType\n | AudiogramType\n | SeriesType\n | ActivitySummaryType\n | ClinicalType\n | (string & {});\n\nexport const Unit = {\n count: 'count',\n countPerMinute: 'count/min',\n countPerSecond: 'count/s',\n percent: '%',\n kilogram: 'kg',\n gram: 'g',\n milligram: 'mg',\n pound: 'lb',\n meter: 'm',\n kilometer: 'km',\n centimeter: 'cm',\n mile: 'mi',\n foot: 'ft',\n inch: 'in',\n meterPerSecond: 'm/s',\n kilometerPerHour: 'km/hr',\n milePerHour: 'mi/hr',\n kilocalorie: 'kcal',\n joule: 'J',\n degreeCelsius: 'degC',\n degreeFahrenheit: 'degF',\n millimeterOfMercury: 'mmHg',\n milliliter: 'mL',\n liter: 'L',\n milligramPerDeciliter: 'mg/dL',\n millimolePerLiter: 'mmol<mol>/L',\n second: 's',\n minute: 'min',\n hour: 'hr',\n watt: 'W',\n decibelAWeightedSoundPressureLevel: 'dBASPL',\n hertz: 'Hz',\n decibelHearingLevel: 'dBHL',\n volt: 'V',\n microvolt: 'uV',\n} as const;\n\nexport type Unit = (typeof Unit)[keyof typeof Unit];\n\n/** Matches `HKWorkoutActivityType` raw values. */\nexport const WorkoutActivityType = {\n americanFootball: 1,\n archery: 2,\n australianFootball: 3,\n badminton: 4,\n baseball: 5,\n basketball: 6,\n bowling: 7,\n boxing: 8,\n climbing: 9,\n cricket: 10,\n crossTraining: 11,\n curling: 12,\n cycling: 13,\n dance: 14,\n danceInspiredTraining: 15,\n elliptical: 16,\n equestrianSports: 17,\n fencing: 18,\n fishing: 19,\n functionalStrengthTraining: 20,\n golf: 21,\n gymnastics: 22,\n handball: 23,\n hiking: 24,\n hockey: 25,\n hunting: 26,\n lacrosse: 27,\n martialArts: 28,\n mindAndBody: 29,\n mixedMetabolicCardioTraining: 30,\n paddleSports: 31,\n play: 32,\n preparationAndRecovery: 33,\n racquetball: 34,\n rowing: 35,\n rugby: 36,\n running: 37,\n sailing: 38,\n skatingSports: 39,\n snowSports: 40,\n soccer: 41,\n softball: 42,\n squash: 43,\n stairClimbing: 44,\n surfingSports: 45,\n swimming: 46,\n tableTennis: 47,\n tennis: 48,\n trackAndField: 49,\n traditionalStrengthTraining: 50,\n volleyball: 51,\n walking: 52,\n waterFitness: 53,\n waterPolo: 54,\n waterSports: 55,\n wrestling: 56,\n yoga: 57,\n barre: 58,\n coreTraining: 59,\n crossCountrySkiing: 60,\n downhillSkiing: 61,\n flexibility: 62,\n highIntensityIntervalTraining: 63,\n jumpRope: 64,\n kickboxing: 65,\n pilates: 66,\n snowboarding: 67,\n stairs: 68,\n stepTraining: 69,\n wheelchairWalkPace: 70,\n wheelchairRunPace: 71,\n taiChi: 72,\n mixedCardio: 73,\n handCycling: 74,\n discSports: 75,\n fitnessGaming: 76,\n cardioDance: 77,\n socialDance: 78,\n pickleball: 79,\n cooldown: 80,\n swimBikeRun: 82,\n transition: 83,\n underwaterDiving: 84,\n other: 3000,\n} as const;\n\nexport type WorkoutActivityType = (typeof WorkoutActivityType)[keyof typeof WorkoutActivityType];\n\n/** Matches `HKCategoryValueSleepAnalysis`. */\nexport const SleepAnalysisValue = {\n inBed: 0,\n asleepUnspecified: 1,\n awake: 2,\n asleepCore: 3,\n asleepDeep: 4,\n asleepREM: 5,\n} as const;\n\nexport type SleepAnalysisValue = (typeof SleepAnalysisValue)[keyof typeof SleepAnalysisValue];\n\n/** Matches `HKUpdateFrequency`. */\nexport const UpdateFrequency = {\n immediate: 1,\n hourly: 2,\n daily: 3,\n weekly: 4,\n} as const;\n\nexport type UpdateFrequency = (typeof UpdateFrequency)[keyof typeof UpdateFrequency];\n\n/** Matches `HKStatisticsOptions` bitmask values used by this module. */\nexport const StatisticsOption = {\n none: 0,\n discreteAverage: 1,\n discreteMin: 2,\n discreteMax: 4,\n cumulativeSum: 8,\n discreteMostRecent: 32,\n} as const;\n\nexport type StatisticsOption = (typeof StatisticsOption)[keyof typeof StatisticsOption];\n\n/** Matches `HKAuthorizationStatus`. */\nexport const AuthorizationStatus = {\n notDetermined: 0,\n sharingDenied: 1,\n sharingAuthorized: 2,\n} as const;\n\nexport type AuthorizationStatus = (typeof AuthorizationStatus)[keyof typeof AuthorizationStatus];\n\n/** Matches `HKAuthorizationRequestStatus`. */\nexport const AuthorizationRequestStatus = {\n unknown: 0,\n shouldRequest: 1,\n unnecessary: 2,\n} as const;\n\nexport type AuthorizationRequestStatus =\n (typeof AuthorizationRequestStatus)[keyof typeof AuthorizationRequestStatus];\n\n/** Matches `HKBiologicalSex`. */\nexport const BiologicalSex = {\n notSet: 0,\n female: 1,\n male: 2,\n other: 3,\n} as const;\n\nexport type BiologicalSex = (typeof BiologicalSex)[keyof typeof BiologicalSex];\n\n/** Matches `HKBloodType`. */\nexport const BloodType = {\n notSet: 0,\n aPositive: 1,\n aNegative: 2,\n bPositive: 3,\n bNegative: 4,\n abPositive: 5,\n abNegative: 6,\n oPositive: 7,\n oNegative: 8,\n} as const;\n\nexport type BloodType = (typeof BloodType)[keyof typeof BloodType];\n\n/** Matches `HKFitzpatrickSkinType`. */\nexport const FitzpatrickSkinType = {\n notSet: 0,\n I: 1,\n II: 2,\n III: 3,\n IV: 4,\n V: 5,\n VI: 6,\n} as const;\n\nexport type FitzpatrickSkinType = (typeof FitzpatrickSkinType)[keyof typeof FitzpatrickSkinType];\n\n/** Matches `HKWheelchairUse`. */\nexport const WheelchairUse = {\n notSet: 0,\n no: 1,\n yes: 2,\n} as const;\n\nexport type WheelchairUse = (typeof WheelchairUse)[keyof typeof WheelchairUse];\n\n/** Matches `HKElectrocardiogram.Classification`. */\nexport const ElectrocardiogramClassification = {\n notSet: 0,\n sinusRhythm: 1,\n atrialFibrillation: 2,\n inconclusiveLowHeartRate: 3,\n inconclusiveHighHeartRate: 4,\n inconclusivePoorReading: 5,\n inconclusiveOther: 6,\n unrecognized: 100,\n} as const;\n\nexport type ElectrocardiogramClassification =\n (typeof ElectrocardiogramClassification)[keyof typeof ElectrocardiogramClassification];\n\n/** Matches `HKElectrocardiogram.SymptomsStatus`. */\nexport const ElectrocardiogramSymptomsStatus = {\n notSet: 0,\n none: 1,\n present: 2,\n} as const;\n\nexport type ElectrocardiogramSymptomsStatus =\n (typeof ElectrocardiogramSymptomsStatus)[keyof typeof ElectrocardiogramSymptomsStatus];\n"]}