@kingstinct/react-native-healthkit 9.0.0 → 9.0.2

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 (441) hide show
  1. package/README.md +192 -0
  2. package/app.plugin.js +0 -1
  3. package/ios/Helpers.swift +33 -37
  4. package/ios/WorkoutProxy.swift +7 -0
  5. package/lib/commonjs/hooks/useCategorySampleById.js +36 -0
  6. package/lib/commonjs/hooks/useHealthkitAuthorization.js +34 -0
  7. package/lib/commonjs/hooks/useIsHealthDataAvailable.js +23 -0
  8. package/lib/commonjs/hooks/useMostRecentCategorySample.js +21 -0
  9. package/lib/commonjs/hooks/useMostRecentQuantitySample.js +22 -0
  10. package/lib/commonjs/hooks/useMostRecentWorkout.js +31 -0
  11. package/lib/commonjs/hooks/useQuantitySampleById.js +34 -0
  12. package/lib/commonjs/hooks/useSources.js +17 -0
  13. package/lib/commonjs/hooks/useStatisticsForQuantity.js +26 -0
  14. package/lib/commonjs/hooks/useSubscribeToChanges.js +20 -0
  15. package/lib/commonjs/hooks/useWorkoutById.js +46 -0
  16. package/lib/commonjs/index.ios.js +144 -0
  17. package/lib/commonjs/index.js +210 -0
  18. package/lib/commonjs/modules.js +12 -0
  19. package/lib/commonjs/specs/CategoryTypeModule.nitro.js +5 -0
  20. package/lib/commonjs/specs/CharacteristicTypeModule.nitro.js +2 -0
  21. package/lib/commonjs/specs/CoreModule.nitro.js +2 -0
  22. package/lib/commonjs/specs/CorrelationTypeModule.nitro.js +2 -0
  23. package/lib/commonjs/specs/HeartbeatSeriesModule.nitro.js +2 -0
  24. package/lib/commonjs/specs/QuantityTypeModule.nitro.js +2 -0
  25. package/lib/commonjs/specs/SourceProxy.nitro.js +2 -0
  26. package/lib/commonjs/specs/StateOfMindModule.nitro.js +2 -0
  27. package/lib/commonjs/specs/WorkoutProxy.nitro.js +2 -0
  28. package/lib/commonjs/specs/WorkoutSessionModule.nitro.js +19 -0
  29. package/lib/commonjs/specs/WorkoutsModule.nitro.js +2 -0
  30. package/lib/commonjs/types/Auth.js +21 -0
  31. package/lib/commonjs/types/Background.js +13 -0
  32. package/lib/commonjs/types/CategoryType.js +101 -0
  33. package/lib/commonjs/types/CategoryTypeIdentifier.js +2 -0
  34. package/lib/commonjs/types/Characteristics.js +48 -0
  35. package/lib/commonjs/types/Constants.js +23 -0
  36. package/lib/commonjs/types/CorrelationType.js +2 -0
  37. package/lib/commonjs/types/Device.js +2 -0
  38. package/lib/commonjs/types/HeartbeatSeries.js +2 -0
  39. package/lib/commonjs/types/InterfaceVerification.js +24 -0
  40. package/lib/commonjs/types/InterfaceVerificationExample.js +33 -0
  41. package/lib/commonjs/types/QuantitySample.js +2 -0
  42. package/lib/commonjs/types/QuantityType.js +17 -0
  43. package/lib/commonjs/types/QuantityTypeIdentifier.js +2 -0
  44. package/lib/commonjs/types/QueryOptions.js +2 -0
  45. package/lib/commonjs/types/Shared.js +13 -0
  46. package/lib/commonjs/types/Source.js +2 -0
  47. package/lib/commonjs/types/StateOfMind.js +90 -0
  48. package/lib/commonjs/types/Subscriptons.js +2 -0
  49. package/lib/commonjs/types/Units.js +2 -0
  50. package/lib/commonjs/types/WeatherCondition.js +35 -0
  51. package/lib/commonjs/types/WorkoutKit.js +12 -0
  52. package/lib/commonjs/types/Workouts.js +150 -0
  53. package/lib/commonjs/utils/getCategorySampleById.js +12 -0
  54. package/lib/commonjs/utils/getMostRecentCategorySample.js +12 -0
  55. package/lib/commonjs/utils/getMostRecentQuantitySample.js +11 -0
  56. package/lib/commonjs/utils/getMostRecentWorkout.js +13 -0
  57. package/lib/commonjs/utils/getPreferredUnit.js +12 -0
  58. package/lib/commonjs/utils/getQuantitySampleById.js +14 -0
  59. package/lib/commonjs/utils/getWorkoutById.js +15 -0
  60. package/lib/commonjs/utils/subscribeToChanges.js +11 -0
  61. package/lib/module/hooks/useCategorySampleById.js +30 -0
  62. package/lib/module/hooks/useHealthkitAuthorization.js +30 -0
  63. package/lib/module/hooks/useIsHealthDataAvailable.js +19 -0
  64. package/lib/module/hooks/useMostRecentCategorySample.js +15 -0
  65. package/lib/module/hooks/useMostRecentQuantitySample.js +16 -0
  66. package/lib/module/hooks/useMostRecentWorkout.js +25 -0
  67. package/lib/module/hooks/useQuantitySampleById.js +28 -0
  68. package/lib/module/hooks/useSources.js +14 -0
  69. package/lib/module/hooks/useStatisticsForQuantity.js +20 -0
  70. package/lib/module/hooks/useSubscribeToChanges.js +17 -0
  71. package/lib/module/hooks/useWorkoutById.js +40 -0
  72. package/lib/module/index.ios.js +126 -0
  73. package/lib/module/index.js +202 -0
  74. package/lib/module/modules.js +9 -0
  75. package/lib/module/specs/CategoryTypeModule.nitro.js +4 -0
  76. package/lib/module/specs/CharacteristicTypeModule.nitro.js +1 -0
  77. package/lib/module/specs/CoreModule.nitro.js +1 -0
  78. package/lib/module/specs/CorrelationTypeModule.nitro.js +1 -0
  79. package/lib/module/specs/HeartbeatSeriesModule.nitro.js +1 -0
  80. package/lib/module/specs/QuantityTypeModule.nitro.js +1 -0
  81. package/lib/module/specs/SourceProxy.nitro.js +1 -0
  82. package/lib/module/specs/StateOfMindModule.nitro.js +1 -0
  83. package/lib/module/specs/WorkoutProxy.nitro.js +1 -0
  84. package/lib/module/specs/WorkoutSessionModule.nitro.js +16 -0
  85. package/lib/module/specs/WorkoutsModule.nitro.js +1 -0
  86. package/lib/module/types/Auth.js +18 -0
  87. package/lib/module/types/Background.js +10 -0
  88. package/lib/module/types/CategoryType.js +98 -0
  89. package/lib/module/types/CategoryTypeIdentifier.js +1 -0
  90. package/lib/module/types/Characteristics.js +45 -0
  91. package/lib/module/types/Constants.js +20 -0
  92. package/lib/module/types/CorrelationType.js +1 -0
  93. package/lib/module/types/Device.js +1 -0
  94. package/lib/module/types/HeartbeatSeries.js +1 -0
  95. package/lib/module/types/InterfaceVerification.js +23 -0
  96. package/lib/module/types/InterfaceVerificationExample.js +32 -0
  97. package/lib/module/types/QuantitySample.js +1 -0
  98. package/lib/module/types/QuantityType.js +14 -0
  99. package/lib/module/types/QuantityTypeIdentifier.js +1 -0
  100. package/lib/module/types/QueryOptions.js +1 -0
  101. package/lib/module/types/Shared.js +10 -0
  102. package/lib/module/types/Source.js +1 -0
  103. package/lib/module/types/StateOfMind.js +87 -0
  104. package/lib/module/types/Subscriptons.js +1 -0
  105. package/lib/module/types/Units.js +1 -0
  106. package/lib/module/types/WeatherCondition.js +32 -0
  107. package/lib/module/types/WorkoutKit.js +9 -0
  108. package/lib/module/types/Workouts.js +147 -0
  109. package/lib/module/utils/getCategorySampleById.js +9 -0
  110. package/lib/module/utils/getMostRecentCategorySample.js +9 -0
  111. package/lib/module/utils/getMostRecentQuantitySample.js +9 -0
  112. package/lib/module/utils/getMostRecentWorkout.js +11 -0
  113. package/lib/module/utils/getPreferredUnit.js +10 -0
  114. package/lib/module/utils/getQuantitySampleById.js +12 -0
  115. package/lib/module/utils/getWorkoutById.js +13 -0
  116. package/lib/module/utils/subscribeToChanges.js +7 -0
  117. package/lib/typescript/hooks/useCategorySampleById.d.ts +11 -0
  118. package/lib/typescript/hooks/useHealthkitAuthorization.d.ts +9 -0
  119. package/lib/typescript/hooks/useIsHealthDataAvailable.d.ts +7 -0
  120. package/lib/typescript/hooks/useMostRecentCategorySample.d.ts +7 -0
  121. package/lib/typescript/hooks/useMostRecentQuantitySample.d.ts +7 -0
  122. package/lib/typescript/hooks/useMostRecentWorkout.d.ts +9 -0
  123. package/lib/typescript/hooks/useQuantitySampleById.d.ts +14 -0
  124. package/lib/typescript/hooks/useSources.d.ts +4 -0
  125. package/lib/typescript/hooks/useStatisticsForQuantity.d.ts +4 -0
  126. package/lib/typescript/hooks/useSubscribeToChanges.d.ts +4 -0
  127. package/lib/typescript/hooks/useWorkoutById.d.ts +13 -0
  128. package/lib/typescript/index.d.ts +74 -0
  129. package/lib/typescript/index.ios.d.ts +142 -0
  130. package/lib/typescript/modules.d.ts +16 -0
  131. package/lib/typescript/specs/CategoryTypeModule.nitro.d.ts +16 -0
  132. package/lib/typescript/specs/CharacteristicTypeModule.nitro.d.ts +16 -0
  133. package/lib/typescript/specs/CoreModule.nitro.d.ts +60 -0
  134. package/lib/typescript/specs/CorrelationTypeModule.nitro.d.ts +8 -0
  135. package/lib/typescript/specs/HeartbeatSeriesModule.nitro.d.ts +9 -0
  136. package/lib/typescript/specs/QuantityTypeModule.nitro.d.ts +16 -0
  137. package/lib/typescript/specs/SourceProxy.nitro.d.ts +14 -0
  138. package/lib/typescript/specs/StateOfMindModule.nitro.d.ts +9 -0
  139. package/lib/typescript/specs/WorkoutProxy.nitro.d.ts +10 -0
  140. package/lib/typescript/specs/WorkoutSessionModule.nitro.d.ts +47 -0
  141. package/lib/typescript/specs/WorkoutsModule.nitro.d.ts +13 -0
  142. package/lib/typescript/types/Auth.d.ts +16 -0
  143. package/lib/typescript/types/Background.d.ts +9 -0
  144. package/lib/typescript/types/CategoryType.d.ts +144 -0
  145. package/lib/typescript/types/CategoryTypeIdentifier.d.ts +31 -0
  146. package/lib/typescript/types/Characteristics.d.ts +41 -0
  147. package/lib/typescript/types/Constants.d.ts +20 -0
  148. package/lib/typescript/types/CorrelationType.d.ts +21 -0
  149. package/lib/typescript/types/Device.d.ts +13 -0
  150. package/lib/typescript/types/HeartbeatSeries.d.ts +25 -0
  151. package/lib/typescript/types/InterfaceVerification.d.ts +73 -0
  152. package/lib/typescript/types/InterfaceVerificationExample.d.ts +58 -0
  153. package/lib/typescript/types/QuantitySample.d.ts +27 -0
  154. package/lib/typescript/types/QuantityType.d.ts +63 -0
  155. package/lib/typescript/types/QuantityTypeIdentifier.d.ts +659 -0
  156. package/lib/typescript/types/QueryOptions.d.ts +47 -0
  157. package/lib/typescript/types/Shared.d.ts +39 -0
  158. package/lib/typescript/types/Source.d.ts +10 -0
  159. package/lib/typescript/types/StateOfMind.d.ts +103 -0
  160. package/lib/typescript/types/Subscriptons.d.ts +8 -0
  161. package/lib/typescript/types/Units.d.ts +97 -0
  162. package/lib/typescript/types/WeatherCondition.d.ts +30 -0
  163. package/lib/typescript/types/WorkoutKit.d.ts +16 -0
  164. package/lib/typescript/types/Workouts.d.ts +254 -0
  165. package/lib/typescript/utils/getCategorySampleById.d.ts +3 -0
  166. package/lib/typescript/utils/getMostRecentCategorySample.d.ts +3 -0
  167. package/lib/typescript/utils/getMostRecentQuantitySample.d.ts +3 -0
  168. package/lib/typescript/utils/getMostRecentWorkout.d.ts +3 -0
  169. package/lib/typescript/utils/getPreferredUnit.d.ts +3 -0
  170. package/lib/typescript/utils/getQuantitySampleById.d.ts +3 -0
  171. package/lib/typescript/utils/getWorkoutById.d.ts +3 -0
  172. package/lib/typescript/utils/subscribeToChanges.d.ts +5 -0
  173. package/nitrogen/generated/.gitattributes +1 -0
  174. package/nitrogen/generated/ios/ReactNativeHealthkit+autolinking.rb +60 -0
  175. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.cpp +450 -0
  176. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.hpp +2570 -0
  177. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Umbrella.hpp +326 -0
  178. package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.mm +89 -0
  179. package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.swift +130 -0
  180. package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.cpp +11 -0
  181. package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.hpp +146 -0
  182. package/nitrogen/generated/ios/c++/HybridCharacteristicTypeModuleSpecSwift.cpp +11 -0
  183. package/nitrogen/generated/ios/c++/HybridCharacteristicTypeModuleSpecSwift.hpp +155 -0
  184. package/nitrogen/generated/ios/c++/HybridCoreModuleSpecSwift.cpp +11 -0
  185. package/nitrogen/generated/ios/c++/HybridCoreModuleSpecSwift.hpp +300 -0
  186. package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.cpp +11 -0
  187. package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.hpp +120 -0
  188. package/nitrogen/generated/ios/c++/HybridHeartbeatSeriesModuleSpecSwift.cpp +11 -0
  189. package/nitrogen/generated/ios/c++/HybridHeartbeatSeriesModuleSpecSwift.hpp +138 -0
  190. package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.cpp +11 -0
  191. package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.hpp +196 -0
  192. package/nitrogen/generated/ios/c++/HybridSourceProxySpecSwift.cpp +11 -0
  193. package/nitrogen/generated/ios/c++/HybridSourceProxySpecSwift.hpp +77 -0
  194. package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.cpp +11 -0
  195. package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.hpp +138 -0
  196. package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.cpp +11 -0
  197. package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.hpp +196 -0
  198. package/nitrogen/generated/ios/c++/HybridWorkoutSessionModuleSpecSwift.cpp +11 -0
  199. package/nitrogen/generated/ios/c++/HybridWorkoutSessionModuleSpecSwift.hpp +107 -0
  200. package/nitrogen/generated/ios/c++/HybridWorkoutsModuleSpecSwift.cpp +11 -0
  201. package/nitrogen/generated/ios/c++/HybridWorkoutsModuleSpecSwift.hpp +172 -0
  202. package/nitrogen/generated/ios/swift/AuthorizationRequestStatus.swift +44 -0
  203. package/nitrogen/generated/ios/swift/AuthorizationStatus.swift +44 -0
  204. package/nitrogen/generated/ios/swift/BiologicalSex.swift +48 -0
  205. package/nitrogen/generated/ios/swift/BloodType.swift +68 -0
  206. package/nitrogen/generated/ios/swift/CategorySample.swift +148 -0
  207. package/nitrogen/generated/ios/swift/CategorySampleForSaving.swift +108 -0
  208. package/nitrogen/generated/ios/swift/CategorySamplesWithAnchorResponse.swift +81 -0
  209. package/nitrogen/generated/ios/swift/CategoryTypeIdentifier.swift +288 -0
  210. package/nitrogen/generated/ios/swift/ComparisonPredicateOperator.swift +88 -0
  211. package/nitrogen/generated/ios/swift/CorrelationObject.swift +16 -0
  212. package/nitrogen/generated/ios/swift/CorrelationSample.swift +117 -0
  213. package/nitrogen/generated/ios/swift/CorrelationTypeIdentifier.swift +40 -0
  214. package/nitrogen/generated/ios/swift/DeletedSample.swift +64 -0
  215. package/nitrogen/generated/ios/swift/Device.swift +256 -0
  216. package/nitrogen/generated/ios/swift/FilterForSamples.swift +21 -0
  217. package/nitrogen/generated/ios/swift/FilterForSamplesAnd.swift +94 -0
  218. package/nitrogen/generated/ios/swift/FilterForSamplesOr.swift +94 -0
  219. package/nitrogen/generated/ios/swift/FitzpatrickSkinType.swift +60 -0
  220. package/nitrogen/generated/ios/swift/Func_void_AuthorizationRequestStatus.swift +46 -0
  221. package/nitrogen/generated/ios/swift/Func_void_BiologicalSex.swift +46 -0
  222. package/nitrogen/generated/ios/swift/Func_void_BloodType.swift +46 -0
  223. package/nitrogen/generated/ios/swift/Func_void_CategorySamplesWithAnchorResponse.swift +46 -0
  224. package/nitrogen/generated/ios/swift/Func_void_FitzpatrickSkinType.swift +46 -0
  225. package/nitrogen/generated/ios/swift/Func_void_HeartbeatSeriesSamplesWithAnchorResponse.swift +46 -0
  226. package/nitrogen/generated/ios/swift/Func_void_OnChangeCallbackArgs.swift +46 -0
  227. package/nitrogen/generated/ios/swift/Func_void_QuantitySamplesWithAnchorResponse.swift +46 -0
  228. package/nitrogen/generated/ios/swift/Func_void_QueryStatisticsResponse.swift +46 -0
  229. package/nitrogen/generated/ios/swift/Func_void_QueryWorkoutSamplesWithAnchorResponse.swift +46 -0
  230. package/nitrogen/generated/ios/swift/Func_void_WheelchairUse.swift +46 -0
  231. package/nitrogen/generated/ios/swift/Func_void_WorkoutEventType.swift +46 -0
  232. package/nitrogen/generated/ios/swift/Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point.swift +46 -0
  233. package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
  234. package/nitrogen/generated/ios/swift/Func_void_double.swift +46 -0
  235. package/nitrogen/generated/ios/swift/Func_void_std__chrono__system_clock__time_point.swift +46 -0
  236. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  237. package/nitrogen/generated/ios/swift/Func_void_std__optional_WorkoutPlan_.swift +52 -0
  238. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
  239. package/nitrogen/generated/ios/swift/Func_void_std__unordered_map_std__string__bool_.swift +54 -0
  240. package/nitrogen/generated/ios/swift/Func_void_std__vector_CategorySample_.swift +46 -0
  241. package/nitrogen/generated/ios/swift/Func_void_std__vector_CorrelationSample_.swift +46 -0
  242. package/nitrogen/generated/ios/swift/Func_void_std__vector_HeartbeatSeriesSample_.swift +46 -0
  243. package/nitrogen/generated/ios/swift/Func_void_std__vector_IdentifierWithUnit_.swift +46 -0
  244. package/nitrogen/generated/ios/swift/Func_void_std__vector_QuantitySample_.swift +46 -0
  245. package/nitrogen/generated/ios/swift/Func_void_std__vector_QueryStatisticsResponse_.swift +46 -0
  246. package/nitrogen/generated/ios/swift/Func_void_std__vector_RemoteSessionSharableData_.swift +46 -0
  247. package/nitrogen/generated/ios/swift/Func_void_std__vector_StateOfMindSample_.swift +46 -0
  248. package/nitrogen/generated/ios/swift/Func_void_std__vector_WorkoutRoute_.swift +46 -0
  249. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_margelo__nitro__healthkit__HybridSourceProxySpec__.swift +50 -0
  250. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_margelo__nitro__healthkit__HybridWorkoutProxySpec__.swift +50 -0
  251. package/nitrogen/generated/ios/swift/Heartbeat.swift +46 -0
  252. package/nitrogen/generated/ios/swift/HeartbeatSeriesSample.swift +167 -0
  253. package/nitrogen/generated/ios/swift/HeartbeatSeriesSamplesWithAnchorResponse.swift +81 -0
  254. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec.swift +50 -0
  255. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec_cxx.swift +171 -0
  256. package/nitrogen/generated/ios/swift/HybridCharacteristicTypeModuleSpec.swift +57 -0
  257. package/nitrogen/generated/ios/swift/HybridCharacteristicTypeModuleSpec_cxx.swift +257 -0
  258. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec.swift +69 -0
  259. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec_cxx.swift +523 -0
  260. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec.swift +49 -0
  261. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec_cxx.swift +158 -0
  262. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec.swift +49 -0
  263. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec_cxx.swift +152 -0
  264. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec.swift +54 -0
  265. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec_cxx.swift +285 -0
  266. package/nitrogen/generated/ios/swift/HybridSourceProxySpec.swift +48 -0
  267. package/nitrogen/generated/ios/swift/HybridSourceProxySpec_cxx.swift +125 -0
  268. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec.swift +49 -0
  269. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec_cxx.swift +158 -0
  270. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +64 -0
  271. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +351 -0
  272. package/nitrogen/generated/ios/swift/HybridWorkoutSessionModuleSpec.swift +49 -0
  273. package/nitrogen/generated/ios/swift/HybridWorkoutSessionModuleSpec_cxx.swift +133 -0
  274. package/nitrogen/generated/ios/swift/HybridWorkoutsModuleSpec.swift +51 -0
  275. package/nitrogen/generated/ios/swift/HybridWorkoutsModuleSpec_cxx.swift +187 -0
  276. package/nitrogen/generated/ios/swift/IdentifierWithUnit.swift +46 -0
  277. package/nitrogen/generated/ios/swift/IntervalComponents.swift +139 -0
  278. package/nitrogen/generated/ios/swift/LocationForSaving.swift +112 -0
  279. package/nitrogen/generated/ios/swift/ObjectTypeIdentifier.swift +820 -0
  280. package/nitrogen/generated/ios/swift/OnChangeCallbackArgs.swift +64 -0
  281. package/nitrogen/generated/ios/swift/PredicateForSamples.swift +19 -0
  282. package/nitrogen/generated/ios/swift/PredicateForWorkouts.swift +21 -0
  283. package/nitrogen/generated/ios/swift/PredicateForWorkoutsAnd.swift +108 -0
  284. package/nitrogen/generated/ios/swift/PredicateForWorkoutsOr.swift +108 -0
  285. package/nitrogen/generated/ios/swift/PredicateFromWorkout.swift +45 -0
  286. package/nitrogen/generated/ios/swift/PredicateWithMetadataKey.swift +35 -0
  287. package/nitrogen/generated/ios/swift/PredicateWithStartAndEnd.swift +128 -0
  288. package/nitrogen/generated/ios/swift/PredicateWithUUID.swift +35 -0
  289. package/nitrogen/generated/ios/swift/PredicateWithUUIDs.swift +47 -0
  290. package/nitrogen/generated/ios/swift/Quantity.swift +46 -0
  291. package/nitrogen/generated/ios/swift/QuantityDateInterval.swift +46 -0
  292. package/nitrogen/generated/ios/swift/QuantitySample.swift +159 -0
  293. package/nitrogen/generated/ios/swift/QuantitySampleForSaving.swift +119 -0
  294. package/nitrogen/generated/ios/swift/QuantitySamplesWithAnchorResponse.swift +81 -0
  295. package/nitrogen/generated/ios/swift/QuantityTypeIdentifier.swift +508 -0
  296. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchor.swift +166 -0
  297. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchorAndUnit.swift +195 -0
  298. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrder.swift +160 -0
  299. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrderAndUnit.swift +189 -0
  300. package/nitrogen/generated/ios/swift/QueryStatisticsResponse.swift +227 -0
  301. package/nitrogen/generated/ios/swift/QueryWorkoutSamplesWithAnchorResponse.swift +91 -0
  302. package/nitrogen/generated/ios/swift/RemoteSessionSharableData.swift +46 -0
  303. package/nitrogen/generated/ios/swift/SampleForSaving.swift +16 -0
  304. package/nitrogen/generated/ios/swift/SampleTypeIdentifier.swift +792 -0
  305. package/nitrogen/generated/ios/swift/SampleTypeIdentifierWriteable.swift +772 -0
  306. package/nitrogen/generated/ios/swift/Source.swift +46 -0
  307. package/nitrogen/generated/ios/swift/SourceRevision.swift +150 -0
  308. package/nitrogen/generated/ios/swift/StateOfMindAssociation.swift +104 -0
  309. package/nitrogen/generated/ios/swift/StateOfMindKind.swift +40 -0
  310. package/nitrogen/generated/ios/swift/StateOfMindLabel.swift +184 -0
  311. package/nitrogen/generated/ios/swift/StateOfMindSample.swift +223 -0
  312. package/nitrogen/generated/ios/swift/StateOfMindValenceClassification.swift +60 -0
  313. package/nitrogen/generated/ios/swift/StatisticsOptions.swift +60 -0
  314. package/nitrogen/generated/ios/swift/StatisticsQueryOptions.swift +129 -0
  315. package/nitrogen/generated/ios/swift/UpdateFrequency.swift +48 -0
  316. package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout.swift +19 -0
  317. package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_FilterForSamplesAnd_FilterForSamplesOr.swift +21 -0
  318. package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_WorkoutActivityTypePredicate_WorkoutDurationPredicate_PredicateForWorkoutsOr_PredicateForWorkoutsAnd.swift +23 -0
  319. package/nitrogen/generated/ios/swift/WheelchairUse.swift +44 -0
  320. package/nitrogen/generated/ios/swift/WorkoutActivity.swift +68 -0
  321. package/nitrogen/generated/ios/swift/WorkoutActivityType.swift +368 -0
  322. package/nitrogen/generated/ios/swift/WorkoutActivityTypePredicate.swift +35 -0
  323. package/nitrogen/generated/ios/swift/WorkoutConfiguration.swift +58 -0
  324. package/nitrogen/generated/ios/swift/WorkoutDurationPredicate.swift +46 -0
  325. package/nitrogen/generated/ios/swift/WorkoutEvent.swift +57 -0
  326. package/nitrogen/generated/ios/swift/WorkoutEventType.swift +64 -0
  327. package/nitrogen/generated/ios/swift/WorkoutPlan.swift +46 -0
  328. package/nitrogen/generated/ios/swift/WorkoutQueryOptions.swift +232 -0
  329. package/nitrogen/generated/ios/swift/WorkoutQueryOptionsWithAnchor.swift +238 -0
  330. package/nitrogen/generated/ios/swift/WorkoutRoute.swift +99 -0
  331. package/nitrogen/generated/ios/swift/WorkoutRouteLocation.swift +146 -0
  332. package/nitrogen/generated/ios/swift/WorkoutSample.swift +364 -0
  333. package/nitrogen/generated/ios/swift/WorkoutSessionLocationType.swift +44 -0
  334. package/nitrogen/generated/ios/swift/WorkoutSessionMirroringStartHandlerOptions.swift +118 -0
  335. package/nitrogen/generated/ios/swift/WorkoutSessionState.swift +56 -0
  336. package/nitrogen/generated/ios/swift/WorkoutTotals.swift +70 -0
  337. package/nitrogen/generated/shared/c++/AuthorizationRequestStatus.hpp +65 -0
  338. package/nitrogen/generated/shared/c++/AuthorizationStatus.hpp +65 -0
  339. package/nitrogen/generated/shared/c++/BiologicalSex.hpp +66 -0
  340. package/nitrogen/generated/shared/c++/BloodType.hpp +71 -0
  341. package/nitrogen/generated/shared/c++/CategorySample.hpp +110 -0
  342. package/nitrogen/generated/shared/c++/CategorySampleForSaving.hpp +98 -0
  343. package/nitrogen/generated/shared/c++/CategorySamplesWithAnchorResponse.hpp +83 -0
  344. package/nitrogen/generated/shared/c++/CategoryTypeIdentifier.hpp +326 -0
  345. package/nitrogen/generated/shared/c++/ComparisonPredicateOperator.hpp +76 -0
  346. package/nitrogen/generated/shared/c++/CorrelationSample.hpp +98 -0
  347. package/nitrogen/generated/shared/c++/CorrelationTypeIdentifier.hpp +78 -0
  348. package/nitrogen/generated/shared/c++/DeletedSample.hpp +76 -0
  349. package/nitrogen/generated/shared/c++/Device.hpp +98 -0
  350. package/nitrogen/generated/shared/c++/FilterForSamplesAnd.hpp +84 -0
  351. package/nitrogen/generated/shared/c++/FilterForSamplesOr.hpp +84 -0
  352. package/nitrogen/generated/shared/c++/FitzpatrickSkinType.hpp +69 -0
  353. package/nitrogen/generated/shared/c++/Heartbeat.hpp +73 -0
  354. package/nitrogen/generated/shared/c++/HeartbeatSeriesSample.hpp +107 -0
  355. package/nitrogen/generated/shared/c++/HeartbeatSeriesSamplesWithAnchorResponse.hpp +83 -0
  356. package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.cpp +23 -0
  357. package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.hpp +84 -0
  358. package/nitrogen/generated/shared/c++/HybridCharacteristicTypeModuleSpec.cpp +30 -0
  359. package/nitrogen/generated/shared/c++/HybridCharacteristicTypeModuleSpec.hpp +83 -0
  360. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.cpp +42 -0
  361. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.hpp +140 -0
  362. package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.cpp +22 -0
  363. package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.hpp +80 -0
  364. package/nitrogen/generated/shared/c++/HybridHeartbeatSeriesModuleSpec.cpp +22 -0
  365. package/nitrogen/generated/shared/c++/HybridHeartbeatSeriesModuleSpec.hpp +76 -0
  366. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.cpp +27 -0
  367. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.hpp +123 -0
  368. package/nitrogen/generated/shared/c++/HybridSourceProxySpec.cpp +22 -0
  369. package/nitrogen/generated/shared/c++/HybridSourceProxySpec.hpp +65 -0
  370. package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.cpp +22 -0
  371. package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.hpp +83 -0
  372. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.cpp +38 -0
  373. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.hpp +114 -0
  374. package/nitrogen/generated/shared/c++/HybridWorkoutSessionModuleSpec.cpp +22 -0
  375. package/nitrogen/generated/shared/c++/HybridWorkoutSessionModuleSpec.hpp +68 -0
  376. package/nitrogen/generated/shared/c++/HybridWorkoutsModuleSpec.cpp +24 -0
  377. package/nitrogen/generated/shared/c++/HybridWorkoutsModuleSpec.hpp +95 -0
  378. package/nitrogen/generated/shared/c++/IdentifierWithUnit.hpp +73 -0
  379. package/nitrogen/generated/shared/c++/IntervalComponents.hpp +85 -0
  380. package/nitrogen/generated/shared/c++/LocationForSaving.hpp +97 -0
  381. package/nitrogen/generated/shared/c++/ObjectTypeIdentifier.hpp +858 -0
  382. package/nitrogen/generated/shared/c++/OnChangeCallbackArgs.hpp +76 -0
  383. package/nitrogen/generated/shared/c++/PredicateForWorkoutsAnd.hpp +90 -0
  384. package/nitrogen/generated/shared/c++/PredicateForWorkoutsOr.hpp +90 -0
  385. package/nitrogen/generated/shared/c++/PredicateFromWorkout.hpp +71 -0
  386. package/nitrogen/generated/shared/c++/PredicateWithMetadataKey.hpp +69 -0
  387. package/nitrogen/generated/shared/c++/PredicateWithStartAndEnd.hpp +82 -0
  388. package/nitrogen/generated/shared/c++/PredicateWithUUID.hpp +69 -0
  389. package/nitrogen/generated/shared/c++/PredicateWithUUIDs.hpp +70 -0
  390. package/nitrogen/generated/shared/c++/Quantity.hpp +73 -0
  391. package/nitrogen/generated/shared/c++/QuantityDateInterval.hpp +73 -0
  392. package/nitrogen/generated/shared/c++/QuantitySample.hpp +114 -0
  393. package/nitrogen/generated/shared/c++/QuantitySampleForSaving.hpp +103 -0
  394. package/nitrogen/generated/shared/c++/QuantitySamplesWithAnchorResponse.hpp +83 -0
  395. package/nitrogen/generated/shared/c++/QuantityTypeIdentifier.hpp +546 -0
  396. package/nitrogen/generated/shared/c++/QueryOptionsWithAnchor.hpp +99 -0
  397. package/nitrogen/generated/shared/c++/QueryOptionsWithAnchorAndUnit.hpp +103 -0
  398. package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrder.hpp +98 -0
  399. package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrderAndUnit.hpp +103 -0
  400. package/nitrogen/generated/shared/c++/QueryStatisticsResponse.hpp +98 -0
  401. package/nitrogen/generated/shared/c++/QueryWorkoutSamplesWithAnchorResponse.hpp +84 -0
  402. package/nitrogen/generated/shared/c++/RemoteSessionSharableData.hpp +75 -0
  403. package/nitrogen/generated/shared/c++/SampleTypeIdentifier.hpp +830 -0
  404. package/nitrogen/generated/shared/c++/SampleTypeIdentifierWriteable.hpp +810 -0
  405. package/nitrogen/generated/shared/c++/Source.hpp +73 -0
  406. package/nitrogen/generated/shared/c++/SourceRevision.hpp +85 -0
  407. package/nitrogen/generated/shared/c++/StateOfMindAssociation.hpp +80 -0
  408. package/nitrogen/generated/shared/c++/StateOfMindKind.hpp +64 -0
  409. package/nitrogen/generated/shared/c++/StateOfMindLabel.hpp +100 -0
  410. package/nitrogen/generated/shared/c++/StateOfMindSample.hpp +132 -0
  411. package/nitrogen/generated/shared/c++/StateOfMindValenceClassification.hpp +69 -0
  412. package/nitrogen/generated/shared/c++/StatisticsOptions.hpp +98 -0
  413. package/nitrogen/generated/shared/c++/StatisticsQueryOptions.hpp +89 -0
  414. package/nitrogen/generated/shared/c++/UpdateFrequency.hpp +66 -0
  415. package/nitrogen/generated/shared/c++/WheelchairUse.hpp +65 -0
  416. package/nitrogen/generated/shared/c++/WorkoutActivity.hpp +82 -0
  417. package/nitrogen/generated/shared/c++/WorkoutActivityType.hpp +146 -0
  418. package/nitrogen/generated/shared/c++/WorkoutActivityTypePredicate.hpp +70 -0
  419. package/nitrogen/generated/shared/c++/WorkoutConfiguration.hpp +78 -0
  420. package/nitrogen/generated/shared/c++/WorkoutDurationPredicate.hpp +74 -0
  421. package/nitrogen/generated/shared/c++/WorkoutEvent.hpp +79 -0
  422. package/nitrogen/generated/shared/c++/WorkoutEventType.hpp +70 -0
  423. package/nitrogen/generated/shared/c++/WorkoutPlan.hpp +75 -0
  424. package/nitrogen/generated/shared/c++/WorkoutQueryOptions.hpp +113 -0
  425. package/nitrogen/generated/shared/c++/WorkoutQueryOptionsWithAnchor.hpp +113 -0
  426. package/nitrogen/generated/shared/c++/WorkoutRoute.hpp +81 -0
  427. package/nitrogen/generated/shared/c++/WorkoutRouteLocation.hpp +106 -0
  428. package/nitrogen/generated/shared/c++/WorkoutSample.hpp +144 -0
  429. package/nitrogen/generated/shared/c++/WorkoutSessionLocationType.hpp +65 -0
  430. package/nitrogen/generated/shared/c++/WorkoutSessionMirroringStartHandlerOptions.hpp +92 -0
  431. package/nitrogen/generated/shared/c++/WorkoutSessionState.hpp +68 -0
  432. package/nitrogen/generated/shared/c++/WorkoutTotals.hpp +73 -0
  433. package/package.json +35 -12
  434. package/src/hooks/useCategorySampleById.ts +41 -0
  435. package/src/hooks/useQuantitySampleById.ts +44 -0
  436. package/src/hooks/useWorkoutById.ts +55 -0
  437. package/src/index.ios.ts +1 -9
  438. package/src/index.ts +4 -16
  439. package/src/utils/getCategorySampleById.ts +16 -0
  440. package/src/utils/getQuantitySampleById.ts +20 -0
  441. package/src/utils/getWorkoutById.ts +20 -0
@@ -0,0 +1,146 @@
1
+ ///
2
+ /// WorkoutRouteLocation.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `WorkoutRouteLocation`, backed by a C++ struct.
12
+ */
13
+ public typealias WorkoutRouteLocation = margelo.nitro.healthkit.WorkoutRouteLocation
14
+
15
+ public extension WorkoutRouteLocation {
16
+ private typealias bridge = margelo.nitro.healthkit.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `WorkoutRouteLocation`.
20
+ */
21
+ init(altitude: Double, course: Double, date: Date, distance: Double?, horizontalAccuracy: Double, latitude: Double, longitude: Double, speed: Double, speedAccuracy: Double, verticalAccuracy: Double) {
22
+ self.init(altitude, course, date.toCpp(), { () -> bridge.std__optional_double_ in
23
+ if let __unwrappedValue = distance {
24
+ return bridge.create_std__optional_double_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), horizontalAccuracy, latitude, longitude, speed, speedAccuracy, verticalAccuracy)
29
+ }
30
+
31
+ var altitude: Double {
32
+ @inline(__always)
33
+ get {
34
+ return self.__altitude
35
+ }
36
+ @inline(__always)
37
+ set {
38
+ self.__altitude = newValue
39
+ }
40
+ }
41
+
42
+ var course: Double {
43
+ @inline(__always)
44
+ get {
45
+ return self.__course
46
+ }
47
+ @inline(__always)
48
+ set {
49
+ self.__course = newValue
50
+ }
51
+ }
52
+
53
+ var date: Date {
54
+ @inline(__always)
55
+ get {
56
+ return Date(fromChrono: self.__date)
57
+ }
58
+ @inline(__always)
59
+ set {
60
+ self.__date = newValue.toCpp()
61
+ }
62
+ }
63
+
64
+ var distance: Double? {
65
+ @inline(__always)
66
+ get {
67
+ return self.__distance.value
68
+ }
69
+ @inline(__always)
70
+ set {
71
+ self.__distance = { () -> bridge.std__optional_double_ in
72
+ if let __unwrappedValue = newValue {
73
+ return bridge.create_std__optional_double_(__unwrappedValue)
74
+ } else {
75
+ return .init()
76
+ }
77
+ }()
78
+ }
79
+ }
80
+
81
+ var horizontalAccuracy: Double {
82
+ @inline(__always)
83
+ get {
84
+ return self.__horizontalAccuracy
85
+ }
86
+ @inline(__always)
87
+ set {
88
+ self.__horizontalAccuracy = newValue
89
+ }
90
+ }
91
+
92
+ var latitude: Double {
93
+ @inline(__always)
94
+ get {
95
+ return self.__latitude
96
+ }
97
+ @inline(__always)
98
+ set {
99
+ self.__latitude = newValue
100
+ }
101
+ }
102
+
103
+ var longitude: Double {
104
+ @inline(__always)
105
+ get {
106
+ return self.__longitude
107
+ }
108
+ @inline(__always)
109
+ set {
110
+ self.__longitude = newValue
111
+ }
112
+ }
113
+
114
+ var speed: Double {
115
+ @inline(__always)
116
+ get {
117
+ return self.__speed
118
+ }
119
+ @inline(__always)
120
+ set {
121
+ self.__speed = newValue
122
+ }
123
+ }
124
+
125
+ var speedAccuracy: Double {
126
+ @inline(__always)
127
+ get {
128
+ return self.__speedAccuracy
129
+ }
130
+ @inline(__always)
131
+ set {
132
+ self.__speedAccuracy = newValue
133
+ }
134
+ }
135
+
136
+ var verticalAccuracy: Double {
137
+ @inline(__always)
138
+ get {
139
+ return self.__verticalAccuracy
140
+ }
141
+ @inline(__always)
142
+ set {
143
+ self.__verticalAccuracy = newValue
144
+ }
145
+ }
146
+ }
@@ -0,0 +1,364 @@
1
+ ///
2
+ /// WorkoutSample.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `WorkoutSample`, backed by a C++ struct.
12
+ */
13
+ public typealias WorkoutSample = margelo.nitro.healthkit.WorkoutSample
14
+
15
+ public extension WorkoutSample {
16
+ private typealias bridge = margelo.nitro.healthkit.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `WorkoutSample`.
20
+ */
21
+ init(uuid: String, device: Device?, workoutActivityType: WorkoutActivityType, duration: Quantity, totalDistance: Quantity?, totalEnergyBurned: Quantity?, totalSwimmingStrokeCount: Quantity?, totalFlightsClimbed: Quantity?, startDate: Date, endDate: Date, metadata: AnyMapHolder?, sourceRevision: SourceRevision?, events: [WorkoutEvent]?, activities: [WorkoutActivity]?) {
22
+ self.init(std.string(uuid), { () -> bridge.std__optional_Device_ in
23
+ if let __unwrappedValue = device {
24
+ return bridge.create_std__optional_Device_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), workoutActivityType, duration, { () -> bridge.std__optional_Quantity_ in
29
+ if let __unwrappedValue = totalDistance {
30
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
31
+ } else {
32
+ return .init()
33
+ }
34
+ }(), { () -> bridge.std__optional_Quantity_ in
35
+ if let __unwrappedValue = totalEnergyBurned {
36
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
37
+ } else {
38
+ return .init()
39
+ }
40
+ }(), { () -> bridge.std__optional_Quantity_ in
41
+ if let __unwrappedValue = totalSwimmingStrokeCount {
42
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
43
+ } else {
44
+ return .init()
45
+ }
46
+ }(), { () -> bridge.std__optional_Quantity_ in
47
+ if let __unwrappedValue = totalFlightsClimbed {
48
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
49
+ } else {
50
+ return .init()
51
+ }
52
+ }(), startDate.toCpp(), endDate.toCpp(), { () -> bridge.std__optional_std__shared_ptr_AnyMap__ in
53
+ if let __unwrappedValue = metadata {
54
+ return bridge.create_std__optional_std__shared_ptr_AnyMap__(__unwrappedValue.cppPart)
55
+ } else {
56
+ return .init()
57
+ }
58
+ }(), { () -> bridge.std__optional_SourceRevision_ in
59
+ if let __unwrappedValue = sourceRevision {
60
+ return bridge.create_std__optional_SourceRevision_(__unwrappedValue)
61
+ } else {
62
+ return .init()
63
+ }
64
+ }(), { () -> bridge.std__optional_std__vector_WorkoutEvent__ in
65
+ if let __unwrappedValue = events {
66
+ return bridge.create_std__optional_std__vector_WorkoutEvent__({ () -> bridge.std__vector_WorkoutEvent_ in
67
+ var __vector = bridge.create_std__vector_WorkoutEvent_(__unwrappedValue.count)
68
+ for __item in __unwrappedValue {
69
+ __vector.push_back(__item)
70
+ }
71
+ return __vector
72
+ }())
73
+ } else {
74
+ return .init()
75
+ }
76
+ }(), { () -> bridge.std__optional_std__vector_WorkoutActivity__ in
77
+ if let __unwrappedValue = activities {
78
+ return bridge.create_std__optional_std__vector_WorkoutActivity__({ () -> bridge.std__vector_WorkoutActivity_ in
79
+ var __vector = bridge.create_std__vector_WorkoutActivity_(__unwrappedValue.count)
80
+ for __item in __unwrappedValue {
81
+ __vector.push_back(__item)
82
+ }
83
+ return __vector
84
+ }())
85
+ } else {
86
+ return .init()
87
+ }
88
+ }())
89
+ }
90
+
91
+ var uuid: String {
92
+ @inline(__always)
93
+ get {
94
+ return String(self.__uuid)
95
+ }
96
+ @inline(__always)
97
+ set {
98
+ self.__uuid = std.string(newValue)
99
+ }
100
+ }
101
+
102
+ var device: Device? {
103
+ @inline(__always)
104
+ get {
105
+ return { () -> Device? in
106
+ if let __unwrapped = self.__device.value {
107
+ return __unwrapped
108
+ } else {
109
+ return nil
110
+ }
111
+ }()
112
+ }
113
+ @inline(__always)
114
+ set {
115
+ self.__device = { () -> bridge.std__optional_Device_ in
116
+ if let __unwrappedValue = newValue {
117
+ return bridge.create_std__optional_Device_(__unwrappedValue)
118
+ } else {
119
+ return .init()
120
+ }
121
+ }()
122
+ }
123
+ }
124
+
125
+ var workoutActivityType: WorkoutActivityType {
126
+ @inline(__always)
127
+ get {
128
+ return self.__workoutActivityType
129
+ }
130
+ @inline(__always)
131
+ set {
132
+ self.__workoutActivityType = newValue
133
+ }
134
+ }
135
+
136
+ var duration: Quantity {
137
+ @inline(__always)
138
+ get {
139
+ return self.__duration
140
+ }
141
+ @inline(__always)
142
+ set {
143
+ self.__duration = newValue
144
+ }
145
+ }
146
+
147
+ var totalDistance: Quantity? {
148
+ @inline(__always)
149
+ get {
150
+ return { () -> Quantity? in
151
+ if let __unwrapped = self.__totalDistance.value {
152
+ return __unwrapped
153
+ } else {
154
+ return nil
155
+ }
156
+ }()
157
+ }
158
+ @inline(__always)
159
+ set {
160
+ self.__totalDistance = { () -> bridge.std__optional_Quantity_ in
161
+ if let __unwrappedValue = newValue {
162
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
163
+ } else {
164
+ return .init()
165
+ }
166
+ }()
167
+ }
168
+ }
169
+
170
+ var totalEnergyBurned: Quantity? {
171
+ @inline(__always)
172
+ get {
173
+ return { () -> Quantity? in
174
+ if let __unwrapped = self.__totalEnergyBurned.value {
175
+ return __unwrapped
176
+ } else {
177
+ return nil
178
+ }
179
+ }()
180
+ }
181
+ @inline(__always)
182
+ set {
183
+ self.__totalEnergyBurned = { () -> bridge.std__optional_Quantity_ in
184
+ if let __unwrappedValue = newValue {
185
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
186
+ } else {
187
+ return .init()
188
+ }
189
+ }()
190
+ }
191
+ }
192
+
193
+ var totalSwimmingStrokeCount: Quantity? {
194
+ @inline(__always)
195
+ get {
196
+ return { () -> Quantity? in
197
+ if let __unwrapped = self.__totalSwimmingStrokeCount.value {
198
+ return __unwrapped
199
+ } else {
200
+ return nil
201
+ }
202
+ }()
203
+ }
204
+ @inline(__always)
205
+ set {
206
+ self.__totalSwimmingStrokeCount = { () -> bridge.std__optional_Quantity_ in
207
+ if let __unwrappedValue = newValue {
208
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
209
+ } else {
210
+ return .init()
211
+ }
212
+ }()
213
+ }
214
+ }
215
+
216
+ var totalFlightsClimbed: Quantity? {
217
+ @inline(__always)
218
+ get {
219
+ return { () -> Quantity? in
220
+ if let __unwrapped = self.__totalFlightsClimbed.value {
221
+ return __unwrapped
222
+ } else {
223
+ return nil
224
+ }
225
+ }()
226
+ }
227
+ @inline(__always)
228
+ set {
229
+ self.__totalFlightsClimbed = { () -> bridge.std__optional_Quantity_ in
230
+ if let __unwrappedValue = newValue {
231
+ return bridge.create_std__optional_Quantity_(__unwrappedValue)
232
+ } else {
233
+ return .init()
234
+ }
235
+ }()
236
+ }
237
+ }
238
+
239
+ var startDate: Date {
240
+ @inline(__always)
241
+ get {
242
+ return Date(fromChrono: self.__startDate)
243
+ }
244
+ @inline(__always)
245
+ set {
246
+ self.__startDate = newValue.toCpp()
247
+ }
248
+ }
249
+
250
+ var endDate: Date {
251
+ @inline(__always)
252
+ get {
253
+ return Date(fromChrono: self.__endDate)
254
+ }
255
+ @inline(__always)
256
+ set {
257
+ self.__endDate = newValue.toCpp()
258
+ }
259
+ }
260
+
261
+ var metadata: AnyMapHolder? {
262
+ @inline(__always)
263
+ get {
264
+ return { () -> AnyMapHolder? in
265
+ if let __unwrapped = self.__metadata.value {
266
+ return AnyMapHolder(withCppPart: __unwrapped)
267
+ } else {
268
+ return nil
269
+ }
270
+ }()
271
+ }
272
+ @inline(__always)
273
+ set {
274
+ self.__metadata = { () -> bridge.std__optional_std__shared_ptr_AnyMap__ in
275
+ if let __unwrappedValue = newValue {
276
+ return bridge.create_std__optional_std__shared_ptr_AnyMap__(__unwrappedValue.cppPart)
277
+ } else {
278
+ return .init()
279
+ }
280
+ }()
281
+ }
282
+ }
283
+
284
+ var sourceRevision: SourceRevision? {
285
+ @inline(__always)
286
+ get {
287
+ return { () -> SourceRevision? in
288
+ if let __unwrapped = self.__sourceRevision.value {
289
+ return __unwrapped
290
+ } else {
291
+ return nil
292
+ }
293
+ }()
294
+ }
295
+ @inline(__always)
296
+ set {
297
+ self.__sourceRevision = { () -> bridge.std__optional_SourceRevision_ in
298
+ if let __unwrappedValue = newValue {
299
+ return bridge.create_std__optional_SourceRevision_(__unwrappedValue)
300
+ } else {
301
+ return .init()
302
+ }
303
+ }()
304
+ }
305
+ }
306
+
307
+ var events: [WorkoutEvent]? {
308
+ @inline(__always)
309
+ get {
310
+ return { () -> [WorkoutEvent]? in
311
+ if let __unwrapped = self.__events.value {
312
+ return __unwrapped.map({ __item in __item })
313
+ } else {
314
+ return nil
315
+ }
316
+ }()
317
+ }
318
+ @inline(__always)
319
+ set {
320
+ self.__events = { () -> bridge.std__optional_std__vector_WorkoutEvent__ in
321
+ if let __unwrappedValue = newValue {
322
+ return bridge.create_std__optional_std__vector_WorkoutEvent__({ () -> bridge.std__vector_WorkoutEvent_ in
323
+ var __vector = bridge.create_std__vector_WorkoutEvent_(__unwrappedValue.count)
324
+ for __item in __unwrappedValue {
325
+ __vector.push_back(__item)
326
+ }
327
+ return __vector
328
+ }())
329
+ } else {
330
+ return .init()
331
+ }
332
+ }()
333
+ }
334
+ }
335
+
336
+ var activities: [WorkoutActivity]? {
337
+ @inline(__always)
338
+ get {
339
+ return { () -> [WorkoutActivity]? in
340
+ if let __unwrapped = self.__activities.value {
341
+ return __unwrapped.map({ __item in __item })
342
+ } else {
343
+ return nil
344
+ }
345
+ }()
346
+ }
347
+ @inline(__always)
348
+ set {
349
+ self.__activities = { () -> bridge.std__optional_std__vector_WorkoutActivity__ in
350
+ if let __unwrappedValue = newValue {
351
+ return bridge.create_std__optional_std__vector_WorkoutActivity__({ () -> bridge.std__vector_WorkoutActivity_ in
352
+ var __vector = bridge.create_std__vector_WorkoutActivity_(__unwrappedValue.count)
353
+ for __item in __unwrappedValue {
354
+ __vector.push_back(__item)
355
+ }
356
+ return __vector
357
+ }())
358
+ } else {
359
+ return .init()
360
+ }
361
+ }()
362
+ }
363
+ }
364
+ }
@@ -0,0 +1,44 @@
1
+ ///
2
+ /// WorkoutSessionLocationType.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ /**
9
+ * Represents the JS enum `WorkoutSessionLocationType`, backed by a C++ enum.
10
+ */
11
+ public typealias WorkoutSessionLocationType = margelo.nitro.healthkit.WorkoutSessionLocationType
12
+
13
+ public extension WorkoutSessionLocationType {
14
+ /**
15
+ * Get a WorkoutSessionLocationType for the given String value, or
16
+ * return `nil` if the given value was invalid/unknown.
17
+ */
18
+ init?(fromString string: String) {
19
+ switch string {
20
+ case "unknown":
21
+ self = .unknown
22
+ case "indoor":
23
+ self = .indoor
24
+ case "outdoor":
25
+ self = .outdoor
26
+ default:
27
+ return nil
28
+ }
29
+ }
30
+
31
+ /**
32
+ * Get the String value this WorkoutSessionLocationType represents.
33
+ */
34
+ var stringValue: String {
35
+ switch self {
36
+ case .unknown:
37
+ return "unknown"
38
+ case .indoor:
39
+ return "indoor"
40
+ case .outdoor:
41
+ return "outdoor"
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,118 @@
1
+ ///
2
+ /// WorkoutSessionMirroringStartHandlerOptions.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `WorkoutSessionMirroringStartHandlerOptions`, backed by a C++ struct.
12
+ */
13
+ public typealias WorkoutSessionMirroringStartHandlerOptions = margelo.nitro.healthkit.WorkoutSessionMirroringStartHandlerOptions
14
+
15
+ public extension WorkoutSessionMirroringStartHandlerOptions {
16
+ private typealias bridge = margelo.nitro.healthkit.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `WorkoutSessionMirroringStartHandlerOptions`.
20
+ */
21
+ init(onError: @escaping (_ errorMessage: String) -> Void, onStateChange: @escaping (_ toState: WorkoutSessionState, _ fromState: WorkoutSessionState, _ date: Date) -> Void, onDataReceived: @escaping (_ data: [RemoteSessionSharableData]) -> Void, onEventReceived: @escaping (_ type: WorkoutEventType) -> Void) {
22
+ self.init({ () -> bridge.Func_void_std__string in
23
+ let __closureWrapper = Func_void_std__string(onError)
24
+ return bridge.create_Func_void_std__string(__closureWrapper.toUnsafe())
25
+ }(), { () -> bridge.Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point in
26
+ let __closureWrapper = Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point(onStateChange)
27
+ return bridge.create_Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point(__closureWrapper.toUnsafe())
28
+ }(), { () -> bridge.Func_void_std__vector_RemoteSessionSharableData_ in
29
+ let __closureWrapper = Func_void_std__vector_RemoteSessionSharableData_(onDataReceived)
30
+ return bridge.create_Func_void_std__vector_RemoteSessionSharableData_(__closureWrapper.toUnsafe())
31
+ }(), { () -> bridge.Func_void_WorkoutEventType in
32
+ let __closureWrapper = Func_void_WorkoutEventType(onEventReceived)
33
+ return bridge.create_Func_void_WorkoutEventType(__closureWrapper.toUnsafe())
34
+ }())
35
+ }
36
+
37
+ var onError: (_ errorMessage: String) -> Void {
38
+ @inline(__always)
39
+ get {
40
+ return { () -> (String) -> Void in
41
+ let __wrappedFunction = bridge.wrap_Func_void_std__string(self.__onError)
42
+ return { (__errorMessage: String) -> Void in
43
+ __wrappedFunction.call(std.string(__errorMessage))
44
+ }
45
+ }()
46
+ }
47
+ @inline(__always)
48
+ set {
49
+ self.__onError = { () -> bridge.Func_void_std__string in
50
+ let __closureWrapper = Func_void_std__string(newValue)
51
+ return bridge.create_Func_void_std__string(__closureWrapper.toUnsafe())
52
+ }()
53
+ }
54
+ }
55
+
56
+ var onStateChange: (_ toState: WorkoutSessionState, _ fromState: WorkoutSessionState, _ date: Date) -> Void {
57
+ @inline(__always)
58
+ get {
59
+ return { () -> (WorkoutSessionState, WorkoutSessionState, Date) -> Void in
60
+ let __wrappedFunction = bridge.wrap_Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point(self.__onStateChange)
61
+ return { (__toState: WorkoutSessionState, __fromState: WorkoutSessionState, __date: Date) -> Void in
62
+ __wrappedFunction.call(__toState.rawValue, __fromState.rawValue, __date.toCpp())
63
+ }
64
+ }()
65
+ }
66
+ @inline(__always)
67
+ set {
68
+ self.__onStateChange = { () -> bridge.Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point in
69
+ let __closureWrapper = Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point(newValue)
70
+ return bridge.create_Func_void_WorkoutSessionState_WorkoutSessionState_std__chrono__system_clock__time_point(__closureWrapper.toUnsafe())
71
+ }()
72
+ }
73
+ }
74
+
75
+ var onDataReceived: (_ data: [RemoteSessionSharableData]) -> Void {
76
+ @inline(__always)
77
+ get {
78
+ return { () -> ([RemoteSessionSharableData]) -> Void in
79
+ let __wrappedFunction = bridge.wrap_Func_void_std__vector_RemoteSessionSharableData_(self.__onDataReceived)
80
+ return { (__data: [RemoteSessionSharableData]) -> Void in
81
+ __wrappedFunction.call({ () -> bridge.std__vector_RemoteSessionSharableData_ in
82
+ var __vector = bridge.create_std__vector_RemoteSessionSharableData_(__data.count)
83
+ for __item in __data {
84
+ __vector.push_back(__item)
85
+ }
86
+ return __vector
87
+ }())
88
+ }
89
+ }()
90
+ }
91
+ @inline(__always)
92
+ set {
93
+ self.__onDataReceived = { () -> bridge.Func_void_std__vector_RemoteSessionSharableData_ in
94
+ let __closureWrapper = Func_void_std__vector_RemoteSessionSharableData_(newValue)
95
+ return bridge.create_Func_void_std__vector_RemoteSessionSharableData_(__closureWrapper.toUnsafe())
96
+ }()
97
+ }
98
+ }
99
+
100
+ var onEventReceived: (_ type: WorkoutEventType) -> Void {
101
+ @inline(__always)
102
+ get {
103
+ return { () -> (WorkoutEventType) -> Void in
104
+ let __wrappedFunction = bridge.wrap_Func_void_WorkoutEventType(self.__onEventReceived)
105
+ return { (__type: WorkoutEventType) -> Void in
106
+ __wrappedFunction.call(__type.rawValue)
107
+ }
108
+ }()
109
+ }
110
+ @inline(__always)
111
+ set {
112
+ self.__onEventReceived = { () -> bridge.Func_void_WorkoutEventType in
113
+ let __closureWrapper = Func_void_WorkoutEventType(newValue)
114
+ return bridge.create_Func_void_WorkoutEventType(__closureWrapper.toUnsafe())
115
+ }()
116
+ }
117
+ }
118
+ }