@kingstinct/react-native-healthkit 12.2.0 → 13.0.1

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 (178) hide show
  1. package/ReactNativeHealthkit.podspec +2 -0
  2. package/ios/CategoryTypeModule.swift +6 -4
  3. package/ios/CoreModule.swift +1 -1
  4. package/ios/CorrelationTypeModule.swift +16 -7
  5. package/ios/ExceptionCatcher.h +17 -0
  6. package/ios/Helpers.swift +62 -33
  7. package/ios/PredicateHelpers.swift +1 -1
  8. package/ios/QuantityTypeModule.swift +252 -128
  9. package/ios/StateOfMindModule.swift +4 -2
  10. package/ios/WorkoutsModule.swift +1 -1
  11. package/lib/commonjs/healthkit.ios.js +6 -2
  12. package/lib/commonjs/healthkit.js +13 -7
  13. package/lib/module/healthkit.ios.js +4 -0
  14. package/lib/module/healthkit.js +11 -5
  15. package/lib/typescript/healthkit.d.ts +6 -4
  16. package/lib/typescript/healthkit.ios.d.ts +12 -8
  17. package/lib/typescript/specs/CategoryTypeModule.nitro.d.ts +2 -2
  18. package/lib/typescript/specs/CorrelationTypeModule.nitro.d.ts +1 -1
  19. package/lib/typescript/specs/QuantityTypeModule.nitro.d.ts +4 -2
  20. package/lib/typescript/specs/StateOfMindModule.nitro.d.ts +1 -1
  21. package/lib/typescript/types/QuantitySample.d.ts +1 -1
  22. package/lib/typescript/types/QuantityType.d.ts +6 -1
  23. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.cpp +57 -16
  24. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.hpp +406 -117
  25. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Umbrella.hpp +3 -0
  26. package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.hpp +8 -8
  27. package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.hpp +28 -28
  28. package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.hpp +25 -6
  29. package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.hpp +1 -1
  30. package/nitrogen/generated/ios/c++/HybridWorkoutsModuleSpecSwift.hpp +1 -1
  31. package/nitrogen/generated/ios/swift/AuthDataTypes.swift +1 -0
  32. package/nitrogen/generated/ios/swift/CategorySample.swift +1 -0
  33. package/nitrogen/generated/ios/swift/CategorySampleForSaving.swift +1 -0
  34. package/nitrogen/generated/ios/swift/CategorySamplesWithAnchorResponse.swift +1 -0
  35. package/nitrogen/generated/ios/swift/CorrelationSample.swift +1 -0
  36. package/nitrogen/generated/ios/swift/DateFilter.swift +1 -0
  37. package/nitrogen/generated/ios/swift/DeletedSample.swift +1 -0
  38. package/nitrogen/generated/ios/swift/Device.swift +1 -0
  39. package/nitrogen/generated/ios/swift/ECGQueryOptionsWithAnchor.swift +1 -0
  40. package/nitrogen/generated/ios/swift/ECGQueryOptionsWithSortOrder.swift +1 -0
  41. package/nitrogen/generated/ios/swift/ElectrocardiogramSample.swift +1 -0
  42. package/nitrogen/generated/ios/swift/ElectrocardiogramSamplesWithAnchorResponse.swift +1 -0
  43. package/nitrogen/generated/ios/swift/ElectrocardiogramVoltage.swift +1 -0
  44. package/nitrogen/generated/ios/swift/FilterForSamples.swift +1 -0
  45. package/nitrogen/generated/ios/swift/FilterForSamplesBase.swift +1 -0
  46. package/nitrogen/generated/ios/swift/FilterForWorkouts.swift +54 -53
  47. package/nitrogen/generated/ios/swift/FilterForWorkoutsBase.swift +54 -53
  48. package/nitrogen/generated/ios/swift/Func_void_AuthorizationRequestStatus.swift +1 -1
  49. package/nitrogen/generated/ios/swift/Func_void_BiologicalSex.swift +1 -1
  50. package/nitrogen/generated/ios/swift/Func_void_BloodType.swift +1 -1
  51. package/nitrogen/generated/ios/swift/Func_void_CategorySamplesWithAnchorResponse.swift +1 -1
  52. package/nitrogen/generated/ios/swift/Func_void_ElectrocardiogramSamplesWithAnchorResponse.swift +1 -1
  53. package/nitrogen/generated/ios/swift/Func_void_FitzpatrickSkinType.swift +1 -1
  54. package/nitrogen/generated/ios/swift/Func_void_HeartbeatSeriesSamplesWithAnchorResponse.swift +1 -1
  55. package/nitrogen/generated/ios/swift/Func_void_MedicationDoseEventsWithAnchorResponse.swift +1 -1
  56. package/nitrogen/generated/ios/swift/Func_void_OnChangeCallbackArgs.swift +1 -1
  57. package/nitrogen/generated/ios/swift/Func_void_QuantitySamplesWithAnchorResponse.swift +1 -1
  58. package/nitrogen/generated/ios/swift/Func_void_QueryCorrelationSamplesWithAnchorResponse.swift +1 -1
  59. package/nitrogen/generated/ios/swift/Func_void_QueryStatisticsResponse.swift +1 -1
  60. package/nitrogen/generated/ios/swift/Func_void_QueryWorkoutSamplesWithAnchorResponse.swift +1 -1
  61. package/nitrogen/generated/ios/swift/Func_void_StateOfMindSamplesWithAnchorResponse.swift +1 -1
  62. package/nitrogen/generated/ios/swift/Func_void_WheelchairUse.swift +1 -1
  63. package/nitrogen/generated/ios/swift/Func_void_bool.swift +1 -1
  64. package/nitrogen/generated/ios/swift/Func_void_double.swift +1 -1
  65. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -1
  66. package/nitrogen/generated/ios/swift/Func_void_std__optional_CategorySample_.swift +47 -0
  67. package/nitrogen/generated/ios/swift/Func_void_std__optional_CorrelationSample_.swift +47 -0
  68. package/nitrogen/generated/ios/swift/Func_void_std__optional_QuantitySample_.swift +47 -0
  69. package/nitrogen/generated/ios/swift/Func_void_std__optional_QueryStatisticsResponse_.swift +1 -1
  70. package/nitrogen/generated/ios/swift/Func_void_std__optional_StateOfMindSample_.swift +47 -0
  71. package/nitrogen/generated/ios/swift/Func_void_std__optional_WorkoutPlan_.swift +1 -1
  72. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__chrono__system_clock__time_point_.swift +1 -1
  73. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridWorkoutProxySpec_.swift +1 -1
  74. package/nitrogen/generated/ios/swift/Func_void_std__unordered_map_std__string__QueryStatisticsResponse_.swift +1 -1
  75. package/nitrogen/generated/ios/swift/Func_void_std__unordered_map_std__string__bool_.swift +1 -1
  76. package/nitrogen/generated/ios/swift/Func_void_std__vector_CategorySample_.swift +1 -1
  77. package/nitrogen/generated/ios/swift/Func_void_std__vector_CorrelationSample_.swift +1 -1
  78. package/nitrogen/generated/ios/swift/Func_void_std__vector_ElectrocardiogramSample_.swift +1 -1
  79. package/nitrogen/generated/ios/swift/Func_void_std__vector_HeartbeatSeriesSample_.swift +1 -1
  80. package/nitrogen/generated/ios/swift/Func_void_std__vector_IdentifierWithUnit_.swift +1 -1
  81. package/nitrogen/generated/ios/swift/Func_void_std__vector_MedicationDoseEvent_.swift +1 -1
  82. package/nitrogen/generated/ios/swift/Func_void_std__vector_QuantitySample_.swift +1 -1
  83. package/nitrogen/generated/ios/swift/Func_void_std__vector_QueryStatisticsResponseFromSingleSource_.swift +47 -0
  84. package/nitrogen/generated/ios/swift/Func_void_std__vector_QueryStatisticsResponse_.swift +1 -1
  85. package/nitrogen/generated/ios/swift/Func_void_std__vector_StateOfMindSample_.swift +1 -1
  86. package/nitrogen/generated/ios/swift/Func_void_std__vector_UserAnnotatedMedication_.swift +1 -1
  87. package/nitrogen/generated/ios/swift/Func_void_std__vector_WorkoutRoute_.swift +1 -1
  88. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_HybridSourceProxySpec__.swift +1 -1
  89. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_HybridWorkoutProxySpec__.swift +1 -1
  90. package/nitrogen/generated/ios/swift/Heartbeat.swift +1 -0
  91. package/nitrogen/generated/ios/swift/HeartbeatSeriesSample.swift +1 -0
  92. package/nitrogen/generated/ios/swift/HeartbeatSeriesSamplesWithAnchorResponse.swift +1 -0
  93. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec.swift +1 -2
  94. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec_cxx.swift +21 -9
  95. package/nitrogen/generated/ios/swift/HybridCharacteristicTypeModuleSpec.swift +0 -1
  96. package/nitrogen/generated/ios/swift/HybridCharacteristicTypeModuleSpec_cxx.swift +0 -1
  97. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec.swift +0 -1
  98. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec_cxx.swift +0 -1
  99. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec.swift +1 -2
  100. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec_cxx.swift +21 -9
  101. package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec.swift +0 -1
  102. package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec_cxx.swift +0 -1
  103. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec.swift +0 -1
  104. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec_cxx.swift +0 -1
  105. package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec.swift +0 -1
  106. package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec_cxx.swift +0 -1
  107. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec.swift +3 -2
  108. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec_cxx.swift +71 -9
  109. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec.swift +1 -2
  110. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec_cxx.swift +13 -8
  111. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +0 -1
  112. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +0 -1
  113. package/nitrogen/generated/ios/swift/HybridWorkoutsModuleSpec.swift +0 -1
  114. package/nitrogen/generated/ios/swift/HybridWorkoutsModuleSpec_cxx.swift +0 -1
  115. package/nitrogen/generated/ios/swift/IdentifierWithUnit.swift +1 -0
  116. package/nitrogen/generated/ios/swift/IntervalComponents.swift +1 -0
  117. package/nitrogen/generated/ios/swift/LocationForSaving.swift +1 -0
  118. package/nitrogen/generated/ios/swift/MedicationConcept.swift +1 -0
  119. package/nitrogen/generated/ios/swift/MedicationDoseEvent.swift +1 -0
  120. package/nitrogen/generated/ios/swift/MedicationDoseEventsWithAnchorResponse.swift +1 -0
  121. package/nitrogen/generated/ios/swift/OnChangeCallbackArgs.swift +1 -0
  122. package/nitrogen/generated/ios/swift/PredicateWithMetadataKey.swift +1 -0
  123. package/nitrogen/generated/ios/swift/Quantity.swift +1 -0
  124. package/nitrogen/generated/ios/swift/QuantityDateInterval.swift +1 -0
  125. package/nitrogen/generated/ios/swift/QuantitySample.swift +1 -0
  126. package/nitrogen/generated/ios/swift/QuantitySampleForSaving.swift +25 -5
  127. package/nitrogen/generated/ios/swift/QuantitySamplesWithAnchorResponse.swift +1 -0
  128. package/nitrogen/generated/ios/swift/QueryCorrelationSamplesWithAnchorResponse.swift +1 -0
  129. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchor.swift +1 -0
  130. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchorAndUnit.swift +1 -0
  131. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrder.swift +1 -0
  132. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrderAndUnit.swift +1 -0
  133. package/nitrogen/generated/ios/swift/QueryStatisticsResponse.swift +35 -1
  134. package/nitrogen/generated/ios/swift/QueryStatisticsResponseFromSingleSource.swift +267 -0
  135. package/nitrogen/generated/ios/swift/QueryWorkoutSamplesWithAnchorResponse.swift +1 -0
  136. package/nitrogen/generated/ios/swift/RelatedCoding.swift +1 -0
  137. package/nitrogen/generated/ios/swift/SampleType.swift +1 -0
  138. package/nitrogen/generated/ios/swift/Source.swift +1 -0
  139. package/nitrogen/generated/ios/swift/SourceRevision.swift +1 -0
  140. package/nitrogen/generated/ios/swift/StateOfMindSample.swift +1 -0
  141. package/nitrogen/generated/ios/swift/StateOfMindSamplesWithAnchorResponse.swift +1 -0
  142. package/nitrogen/generated/ios/swift/StatisticsOptions.swift +0 -4
  143. package/nitrogen/generated/ios/swift/StatisticsQueryOptions.swift +1 -0
  144. package/nitrogen/generated/ios/swift/UserAnnotatedMedication.swift +1 -0
  145. package/nitrogen/generated/ios/swift/WorkoutActivity.swift +1 -0
  146. package/nitrogen/generated/ios/swift/WorkoutConfiguration.swift +1 -0
  147. package/nitrogen/generated/ios/swift/WorkoutDurationPredicate.swift +1 -0
  148. package/nitrogen/generated/ios/swift/WorkoutEvent.swift +1 -0
  149. package/nitrogen/generated/ios/swift/WorkoutPlan.swift +1 -0
  150. package/nitrogen/generated/ios/swift/WorkoutQueryOptions.swift +1 -0
  151. package/nitrogen/generated/ios/swift/WorkoutQueryOptionsWithAnchor.swift +1 -0
  152. package/nitrogen/generated/ios/swift/WorkoutRoute.swift +1 -0
  153. package/nitrogen/generated/ios/swift/WorkoutRouteLocation.swift +1 -0
  154. package/nitrogen/generated/ios/swift/WorkoutSample.swift +1 -0
  155. package/nitrogen/generated/ios/swift/WorkoutTotals.swift +1 -0
  156. package/nitrogen/generated/shared/c++/FilterForWorkouts.hpp +10 -10
  157. package/nitrogen/generated/shared/c++/FilterForWorkoutsBase.hpp +11 -11
  158. package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.hpp +5 -4
  159. package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.hpp +5 -4
  160. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.cpp +2 -0
  161. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.hpp +8 -3
  162. package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.hpp +2 -2
  163. package/nitrogen/generated/shared/c++/QuantitySampleForSaving.hpp +6 -6
  164. package/nitrogen/generated/shared/c++/QueryStatisticsResponse.hpp +11 -2
  165. package/nitrogen/generated/shared/c++/QueryStatisticsResponseFromSingleSource.hpp +121 -0
  166. package/nitrogen/generated/shared/c++/StatisticsOptions.hpp +0 -4
  167. package/package.json +4 -4
  168. package/src/healthkit.ios.ts +8 -0
  169. package/src/healthkit.ts +20 -5
  170. package/src/hooks/queryStatisticsForQuantity.test.ts +4 -1
  171. package/src/specs/CategoryTypeModule.nitro.ts +4 -4
  172. package/src/specs/CorrelationTypeModule.nitro.ts +2 -2
  173. package/src/specs/MedicationModule.nitro.ts +2 -7
  174. package/src/specs/QuantityTypeModule.nitro.ts +17 -2
  175. package/src/specs/StateOfMindModule.nitro.ts +1 -1
  176. package/src/types/QuantitySample.ts +1 -1
  177. package/src/types/QuantityType.ts +8 -1
  178. package/src/types/Subscriptions.ts +1 -1
@@ -130,6 +130,8 @@ namespace margelo::nitro::healthkit { enum class QuantityTypeIdentifier; }
130
130
  namespace margelo::nitro::healthkit { struct Quantity; }
131
131
  // Forward declaration of `QueryCorrelationSamplesWithAnchorResponse` to properly resolve imports.
132
132
  namespace margelo::nitro::healthkit { struct QueryCorrelationSamplesWithAnchorResponse; }
133
+ // Forward declaration of `QueryStatisticsResponseFromSingleSource` to properly resolve imports.
134
+ namespace margelo::nitro::healthkit { struct QueryStatisticsResponseFromSingleSource; }
133
135
  // Forward declaration of `QueryStatisticsResponse` to properly resolve imports.
134
136
  namespace margelo::nitro::healthkit { struct QueryStatisticsResponse; }
135
137
  // Forward declaration of `QueryWorkoutSamplesWithAnchorResponse` to properly resolve imports.
@@ -280,6 +282,7 @@ namespace ReactNativeHealthkit { class HybridWorkoutsModuleSpec_cxx; }
280
282
  #include "QuantityTypeIdentifier.hpp"
281
283
  #include "QueryCorrelationSamplesWithAnchorResponse.hpp"
282
284
  #include "QueryStatisticsResponse.hpp"
285
+ #include "QueryStatisticsResponseFromSingleSource.hpp"
283
286
  #include "QueryWorkoutSamplesWithAnchorResponse.hpp"
284
287
  #include "RelatedCoding.hpp"
285
288
  #include "SampleType.hpp"
@@ -329,62 +332,6 @@ namespace ReactNativeHealthkit { class HybridWorkoutsModuleSpec_cxx; }
329
332
  */
330
333
  namespace margelo::nitro::healthkit::bridge::swift {
331
334
 
332
- // pragma MARK: std::shared_ptr<Promise<bool>>
333
- /**
334
- * Specialized version of `std::shared_ptr<Promise<bool>>`.
335
- */
336
- using std__shared_ptr_Promise_bool__ = std::shared_ptr<Promise<bool>>;
337
- inline std::shared_ptr<Promise<bool>> create_std__shared_ptr_Promise_bool__() noexcept {
338
- return Promise<bool>::create();
339
- }
340
- inline PromiseHolder<bool> wrap_std__shared_ptr_Promise_bool__(std::shared_ptr<Promise<bool>> promise) noexcept {
341
- return PromiseHolder<bool>(std::move(promise));
342
- }
343
-
344
- // pragma MARK: std::function<void(bool /* result */)>
345
- /**
346
- * Specialized version of `std::function<void(bool)>`.
347
- */
348
- using Func_void_bool = std::function<void(bool /* result */)>;
349
- /**
350
- * Wrapper class for a `std::function<void(bool / * result * /)>`, this can be used from Swift.
351
- */
352
- class Func_void_bool_Wrapper final {
353
- public:
354
- explicit Func_void_bool_Wrapper(std::function<void(bool /* result */)>&& func): _function(std::make_unique<std::function<void(bool /* result */)>>(std::move(func))) {}
355
- inline void call(bool result) const noexcept {
356
- _function->operator()(result);
357
- }
358
- private:
359
- std::unique_ptr<std::function<void(bool /* result */)>> _function;
360
- } SWIFT_NONCOPYABLE;
361
- Func_void_bool create_Func_void_bool(void* NON_NULL swiftClosureWrapper) noexcept;
362
- inline Func_void_bool_Wrapper wrap_Func_void_bool(Func_void_bool value) noexcept {
363
- return Func_void_bool_Wrapper(std::move(value));
364
- }
365
-
366
- // pragma MARK: std::function<void(const std::exception_ptr& /* error */)>
367
- /**
368
- * Specialized version of `std::function<void(const std::exception_ptr&)>`.
369
- */
370
- using Func_void_std__exception_ptr = std::function<void(const std::exception_ptr& /* error */)>;
371
- /**
372
- * Wrapper class for a `std::function<void(const std::exception_ptr& / * error * /)>`, this can be used from Swift.
373
- */
374
- class Func_void_std__exception_ptr_Wrapper final {
375
- public:
376
- explicit Func_void_std__exception_ptr_Wrapper(std::function<void(const std::exception_ptr& /* error */)>&& func): _function(std::make_unique<std::function<void(const std::exception_ptr& /* error */)>>(std::move(func))) {}
377
- inline void call(std::exception_ptr error) const noexcept {
378
- _function->operator()(error);
379
- }
380
- private:
381
- std::unique_ptr<std::function<void(const std::exception_ptr& /* error */)>> _function;
382
- } SWIFT_NONCOPYABLE;
383
- Func_void_std__exception_ptr create_Func_void_std__exception_ptr(void* NON_NULL swiftClosureWrapper) noexcept;
384
- inline Func_void_std__exception_ptr_Wrapper wrap_Func_void_std__exception_ptr(Func_void_std__exception_ptr value) noexcept {
385
- return Func_void_std__exception_ptr_Wrapper(std::move(value));
386
- }
387
-
388
335
  // pragma MARK: std::optional<WeatherCondition>
389
336
  /**
390
337
  * Specialized version of `std::optional<WeatherCondition>`.
@@ -532,6 +479,92 @@ namespace margelo::nitro::healthkit::bridge::swift {
532
479
  return *optional;
533
480
  }
534
481
 
482
+ // pragma MARK: std::optional<CategorySample>
483
+ /**
484
+ * Specialized version of `std::optional<CategorySample>`.
485
+ */
486
+ using std__optional_CategorySample_ = std::optional<CategorySample>;
487
+ inline std::optional<CategorySample> create_std__optional_CategorySample_(const CategorySample& value) noexcept {
488
+ return std::optional<CategorySample>(value);
489
+ }
490
+ inline bool has_value_std__optional_CategorySample_(const std::optional<CategorySample>& optional) noexcept {
491
+ return optional.has_value();
492
+ }
493
+ inline CategorySample get_std__optional_CategorySample_(const std::optional<CategorySample>& optional) noexcept {
494
+ return *optional;
495
+ }
496
+
497
+ // pragma MARK: std::shared_ptr<Promise<std::optional<CategorySample>>>
498
+ /**
499
+ * Specialized version of `std::shared_ptr<Promise<std::optional<CategorySample>>>`.
500
+ */
501
+ using std__shared_ptr_Promise_std__optional_CategorySample___ = std::shared_ptr<Promise<std::optional<CategorySample>>>;
502
+ inline std::shared_ptr<Promise<std::optional<CategorySample>>> create_std__shared_ptr_Promise_std__optional_CategorySample___() noexcept {
503
+ return Promise<std::optional<CategorySample>>::create();
504
+ }
505
+ inline PromiseHolder<std::optional<CategorySample>> wrap_std__shared_ptr_Promise_std__optional_CategorySample___(std::shared_ptr<Promise<std::optional<CategorySample>>> promise) noexcept {
506
+ return PromiseHolder<std::optional<CategorySample>>(std::move(promise));
507
+ }
508
+
509
+ // pragma MARK: std::function<void(const std::optional<CategorySample>& /* result */)>
510
+ /**
511
+ * Specialized version of `std::function<void(const std::optional<CategorySample>&)>`.
512
+ */
513
+ using Func_void_std__optional_CategorySample_ = std::function<void(const std::optional<CategorySample>& /* result */)>;
514
+ /**
515
+ * Wrapper class for a `std::function<void(const std::optional<CategorySample>& / * result * /)>`, this can be used from Swift.
516
+ */
517
+ class Func_void_std__optional_CategorySample__Wrapper final {
518
+ public:
519
+ explicit Func_void_std__optional_CategorySample__Wrapper(std::function<void(const std::optional<CategorySample>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<CategorySample>& /* result */)>>(std::move(func))) {}
520
+ inline void call(std::optional<CategorySample> result) const noexcept {
521
+ _function->operator()(result);
522
+ }
523
+ private:
524
+ std::unique_ptr<std::function<void(const std::optional<CategorySample>& /* result */)>> _function;
525
+ } SWIFT_NONCOPYABLE;
526
+ Func_void_std__optional_CategorySample_ create_Func_void_std__optional_CategorySample_(void* NON_NULL swiftClosureWrapper) noexcept;
527
+ inline Func_void_std__optional_CategorySample__Wrapper wrap_Func_void_std__optional_CategorySample_(Func_void_std__optional_CategorySample_ value) noexcept {
528
+ return Func_void_std__optional_CategorySample__Wrapper(std::move(value));
529
+ }
530
+
531
+ // pragma MARK: std::function<void(const std::exception_ptr& /* error */)>
532
+ /**
533
+ * Specialized version of `std::function<void(const std::exception_ptr&)>`.
534
+ */
535
+ using Func_void_std__exception_ptr = std::function<void(const std::exception_ptr& /* error */)>;
536
+ /**
537
+ * Wrapper class for a `std::function<void(const std::exception_ptr& / * error * /)>`, this can be used from Swift.
538
+ */
539
+ class Func_void_std__exception_ptr_Wrapper final {
540
+ public:
541
+ explicit Func_void_std__exception_ptr_Wrapper(std::function<void(const std::exception_ptr& /* error */)>&& func): _function(std::make_unique<std::function<void(const std::exception_ptr& /* error */)>>(std::move(func))) {}
542
+ inline void call(std::exception_ptr error) const noexcept {
543
+ _function->operator()(error);
544
+ }
545
+ private:
546
+ std::unique_ptr<std::function<void(const std::exception_ptr& /* error */)>> _function;
547
+ } SWIFT_NONCOPYABLE;
548
+ Func_void_std__exception_ptr create_Func_void_std__exception_ptr(void* NON_NULL swiftClosureWrapper) noexcept;
549
+ inline Func_void_std__exception_ptr_Wrapper wrap_Func_void_std__exception_ptr(Func_void_std__exception_ptr value) noexcept {
550
+ return Func_void_std__exception_ptr_Wrapper(std::move(value));
551
+ }
552
+
553
+ // pragma MARK: std::optional<std::shared_ptr<AnyMap>>
554
+ /**
555
+ * Specialized version of `std::optional<std::shared_ptr<AnyMap>>`.
556
+ */
557
+ using std__optional_std__shared_ptr_AnyMap__ = std::optional<std::shared_ptr<AnyMap>>;
558
+ inline std::optional<std::shared_ptr<AnyMap>> create_std__optional_std__shared_ptr_AnyMap__(const std::shared_ptr<AnyMap>& value) noexcept {
559
+ return std::optional<std::shared_ptr<AnyMap>>(value);
560
+ }
561
+ inline bool has_value_std__optional_std__shared_ptr_AnyMap__(const std::optional<std::shared_ptr<AnyMap>>& optional) noexcept {
562
+ return optional.has_value();
563
+ }
564
+ inline std::shared_ptr<AnyMap> get_std__optional_std__shared_ptr_AnyMap__(const std::optional<std::shared_ptr<AnyMap>>& optional) noexcept {
565
+ return *optional;
566
+ }
567
+
535
568
  // pragma MARK: std::vector<CategorySample>
536
569
  /**
537
570
  * Specialized version of `std::vector<CategorySample>`.
@@ -813,21 +846,6 @@ namespace margelo::nitro::healthkit::bridge::swift {
813
846
  return *optional;
814
847
  }
815
848
 
816
- // pragma MARK: std::optional<std::shared_ptr<AnyMap>>
817
- /**
818
- * Specialized version of `std::optional<std::shared_ptr<AnyMap>>`.
819
- */
820
- using std__optional_std__shared_ptr_AnyMap__ = std::optional<std::shared_ptr<AnyMap>>;
821
- inline std::optional<std::shared_ptr<AnyMap>> create_std__optional_std__shared_ptr_AnyMap__(const std::shared_ptr<AnyMap>& value) noexcept {
822
- return std::optional<std::shared_ptr<AnyMap>>(value);
823
- }
824
- inline bool has_value_std__optional_std__shared_ptr_AnyMap__(const std::optional<std::shared_ptr<AnyMap>>& optional) noexcept {
825
- return optional.has_value();
826
- }
827
- inline std::shared_ptr<AnyMap> get_std__optional_std__shared_ptr_AnyMap__(const std::optional<std::shared_ptr<AnyMap>>& optional) noexcept {
828
- return *optional;
829
- }
830
-
831
849
  // pragma MARK: std::vector<DeletedSample>
832
850
  /**
833
851
  * Specialized version of `std::vector<DeletedSample>`.
@@ -885,13 +903,13 @@ namespace margelo::nitro::healthkit::bridge::swift {
885
903
  using std__weak_ptr_HybridCategoryTypeModuleSpec_ = std::weak_ptr<HybridCategoryTypeModuleSpec>;
886
904
  inline std__weak_ptr_HybridCategoryTypeModuleSpec_ weakify_std__shared_ptr_HybridCategoryTypeModuleSpec_(const std::shared_ptr<HybridCategoryTypeModuleSpec>& strong) noexcept { return strong; }
887
905
 
888
- // pragma MARK: Result<std::shared_ptr<Promise<bool>>>
889
- using Result_std__shared_ptr_Promise_bool___ = Result<std::shared_ptr<Promise<bool>>>;
890
- inline Result_std__shared_ptr_Promise_bool___ create_Result_std__shared_ptr_Promise_bool___(const std::shared_ptr<Promise<bool>>& value) noexcept {
891
- return Result<std::shared_ptr<Promise<bool>>>::withValue(value);
906
+ // pragma MARK: Result<std::shared_ptr<Promise<std::optional<CategorySample>>>>
907
+ using Result_std__shared_ptr_Promise_std__optional_CategorySample____ = Result<std::shared_ptr<Promise<std::optional<CategorySample>>>>;
908
+ inline Result_std__shared_ptr_Promise_std__optional_CategorySample____ create_Result_std__shared_ptr_Promise_std__optional_CategorySample____(const std::shared_ptr<Promise<std::optional<CategorySample>>>& value) noexcept {
909
+ return Result<std::shared_ptr<Promise<std::optional<CategorySample>>>>::withValue(value);
892
910
  }
893
- inline Result_std__shared_ptr_Promise_bool___ create_Result_std__shared_ptr_Promise_bool___(const std::exception_ptr& error) noexcept {
894
- return Result<std::shared_ptr<Promise<bool>>>::withError(error);
911
+ inline Result_std__shared_ptr_Promise_std__optional_CategorySample____ create_Result_std__shared_ptr_Promise_std__optional_CategorySample____(const std::exception_ptr& error) noexcept {
912
+ return Result<std::shared_ptr<Promise<std::optional<CategorySample>>>>::withError(error);
895
913
  }
896
914
 
897
915
  // pragma MARK: Result<std::shared_ptr<Promise<std::vector<CategorySample>>>>
@@ -1184,6 +1202,40 @@ namespace margelo::nitro::healthkit::bridge::swift {
1184
1202
  return Result<std::shared_ptr<Promise<WheelchairUse>>>::withError(error);
1185
1203
  }
1186
1204
 
1205
+ // pragma MARK: std::shared_ptr<Promise<bool>>
1206
+ /**
1207
+ * Specialized version of `std::shared_ptr<Promise<bool>>`.
1208
+ */
1209
+ using std__shared_ptr_Promise_bool__ = std::shared_ptr<Promise<bool>>;
1210
+ inline std::shared_ptr<Promise<bool>> create_std__shared_ptr_Promise_bool__() noexcept {
1211
+ return Promise<bool>::create();
1212
+ }
1213
+ inline PromiseHolder<bool> wrap_std__shared_ptr_Promise_bool__(std::shared_ptr<Promise<bool>> promise) noexcept {
1214
+ return PromiseHolder<bool>(std::move(promise));
1215
+ }
1216
+
1217
+ // pragma MARK: std::function<void(bool /* result */)>
1218
+ /**
1219
+ * Specialized version of `std::function<void(bool)>`.
1220
+ */
1221
+ using Func_void_bool = std::function<void(bool /* result */)>;
1222
+ /**
1223
+ * Wrapper class for a `std::function<void(bool / * result * /)>`, this can be used from Swift.
1224
+ */
1225
+ class Func_void_bool_Wrapper final {
1226
+ public:
1227
+ explicit Func_void_bool_Wrapper(std::function<void(bool /* result */)>&& func): _function(std::make_unique<std::function<void(bool /* result */)>>(std::move(func))) {}
1228
+ inline void call(bool result) const noexcept {
1229
+ _function->operator()(result);
1230
+ }
1231
+ private:
1232
+ std::unique_ptr<std::function<void(bool /* result */)>> _function;
1233
+ } SWIFT_NONCOPYABLE;
1234
+ Func_void_bool create_Func_void_bool(void* NON_NULL swiftClosureWrapper) noexcept;
1235
+ inline Func_void_bool_Wrapper wrap_Func_void_bool(Func_void_bool value) noexcept {
1236
+ return Func_void_bool_Wrapper(std::move(value));
1237
+ }
1238
+
1187
1239
  // pragma MARK: std::vector<IdentifierWithUnit>
1188
1240
  /**
1189
1241
  * Specialized version of `std::vector<IdentifierWithUnit>`.
@@ -1487,6 +1539,15 @@ namespace margelo::nitro::healthkit::bridge::swift {
1487
1539
  using std__weak_ptr_HybridCoreModuleSpec_ = std::weak_ptr<HybridCoreModuleSpec>;
1488
1540
  inline std__weak_ptr_HybridCoreModuleSpec_ weakify_std__shared_ptr_HybridCoreModuleSpec_(const std::shared_ptr<HybridCoreModuleSpec>& strong) noexcept { return strong; }
1489
1541
 
1542
+ // pragma MARK: Result<std::shared_ptr<Promise<bool>>>
1543
+ using Result_std__shared_ptr_Promise_bool___ = Result<std::shared_ptr<Promise<bool>>>;
1544
+ inline Result_std__shared_ptr_Promise_bool___ create_Result_std__shared_ptr_Promise_bool___(const std::shared_ptr<Promise<bool>>& value) noexcept {
1545
+ return Result<std::shared_ptr<Promise<bool>>>::withValue(value);
1546
+ }
1547
+ inline Result_std__shared_ptr_Promise_bool___ create_Result_std__shared_ptr_Promise_bool___(const std::exception_ptr& error) noexcept {
1548
+ return Result<std::shared_ptr<Promise<bool>>>::withError(error);
1549
+ }
1550
+
1490
1551
  // pragma MARK: Result<bool>
1491
1552
  using Result_bool_ = Result<bool>;
1492
1553
  inline Result_bool_ create_Result_bool_(bool value) noexcept {
@@ -1586,6 +1647,95 @@ namespace margelo::nitro::healthkit::bridge::swift {
1586
1647
  return Result<std::shared_ptr<Promise<std::unordered_map<std::string, bool>>>>::withError(error);
1587
1648
  }
1588
1649
 
1650
+ // pragma MARK: std::variant<CategorySample, QuantitySample>
1651
+ /**
1652
+ * Wrapper struct for `std::variant<CategorySample, QuantitySample>`.
1653
+ * std::variant cannot be used in Swift because of a Swift bug.
1654
+ * Not even specializing it works. So we create a wrapper struct.
1655
+ */
1656
+ struct std__variant_CategorySample__QuantitySample_ {
1657
+ std::variant<CategorySample, QuantitySample> variant;
1658
+ std__variant_CategorySample__QuantitySample_(std::variant<CategorySample, QuantitySample> variant): variant(variant) { }
1659
+ operator std::variant<CategorySample, QuantitySample>() const noexcept {
1660
+ return variant;
1661
+ }
1662
+ inline size_t index() const noexcept {
1663
+ return variant.index();
1664
+ }
1665
+ inline CategorySample get_0() const noexcept {
1666
+ return std::get<0>(variant);
1667
+ }
1668
+ inline QuantitySample get_1() const noexcept {
1669
+ return std::get<1>(variant);
1670
+ }
1671
+ };
1672
+ inline std__variant_CategorySample__QuantitySample_ create_std__variant_CategorySample__QuantitySample_(const CategorySample& value) noexcept {
1673
+ return std__variant_CategorySample__QuantitySample_(value);
1674
+ }
1675
+ inline std__variant_CategorySample__QuantitySample_ create_std__variant_CategorySample__QuantitySample_(const QuantitySample& value) noexcept {
1676
+ return std__variant_CategorySample__QuantitySample_(value);
1677
+ }
1678
+
1679
+ // pragma MARK: std::vector<std::variant<CategorySample, QuantitySample>>
1680
+ /**
1681
+ * Specialized version of `std::vector<std::variant<CategorySample, QuantitySample>>`.
1682
+ */
1683
+ using std__vector_std__variant_CategorySample__QuantitySample__ = std::vector<std::variant<CategorySample, QuantitySample>>;
1684
+ inline std::vector<std::variant<CategorySample, QuantitySample>> create_std__vector_std__variant_CategorySample__QuantitySample__(size_t size) noexcept {
1685
+ std::vector<std::variant<CategorySample, QuantitySample>> vector;
1686
+ vector.reserve(size);
1687
+ return vector;
1688
+ }
1689
+
1690
+ // pragma MARK: std::optional<CorrelationSample>
1691
+ /**
1692
+ * Specialized version of `std::optional<CorrelationSample>`.
1693
+ */
1694
+ using std__optional_CorrelationSample_ = std::optional<CorrelationSample>;
1695
+ inline std::optional<CorrelationSample> create_std__optional_CorrelationSample_(const CorrelationSample& value) noexcept {
1696
+ return std::optional<CorrelationSample>(value);
1697
+ }
1698
+ inline bool has_value_std__optional_CorrelationSample_(const std::optional<CorrelationSample>& optional) noexcept {
1699
+ return optional.has_value();
1700
+ }
1701
+ inline CorrelationSample get_std__optional_CorrelationSample_(const std::optional<CorrelationSample>& optional) noexcept {
1702
+ return *optional;
1703
+ }
1704
+
1705
+ // pragma MARK: std::shared_ptr<Promise<std::optional<CorrelationSample>>>
1706
+ /**
1707
+ * Specialized version of `std::shared_ptr<Promise<std::optional<CorrelationSample>>>`.
1708
+ */
1709
+ using std__shared_ptr_Promise_std__optional_CorrelationSample___ = std::shared_ptr<Promise<std::optional<CorrelationSample>>>;
1710
+ inline std::shared_ptr<Promise<std::optional<CorrelationSample>>> create_std__shared_ptr_Promise_std__optional_CorrelationSample___() noexcept {
1711
+ return Promise<std::optional<CorrelationSample>>::create();
1712
+ }
1713
+ inline PromiseHolder<std::optional<CorrelationSample>> wrap_std__shared_ptr_Promise_std__optional_CorrelationSample___(std::shared_ptr<Promise<std::optional<CorrelationSample>>> promise) noexcept {
1714
+ return PromiseHolder<std::optional<CorrelationSample>>(std::move(promise));
1715
+ }
1716
+
1717
+ // pragma MARK: std::function<void(const std::optional<CorrelationSample>& /* result */)>
1718
+ /**
1719
+ * Specialized version of `std::function<void(const std::optional<CorrelationSample>&)>`.
1720
+ */
1721
+ using Func_void_std__optional_CorrelationSample_ = std::function<void(const std::optional<CorrelationSample>& /* result */)>;
1722
+ /**
1723
+ * Wrapper class for a `std::function<void(const std::optional<CorrelationSample>& / * result * /)>`, this can be used from Swift.
1724
+ */
1725
+ class Func_void_std__optional_CorrelationSample__Wrapper final {
1726
+ public:
1727
+ explicit Func_void_std__optional_CorrelationSample__Wrapper(std::function<void(const std::optional<CorrelationSample>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<CorrelationSample>& /* result */)>>(std::move(func))) {}
1728
+ inline void call(std::optional<CorrelationSample> result) const noexcept {
1729
+ _function->operator()(result);
1730
+ }
1731
+ private:
1732
+ std::unique_ptr<std::function<void(const std::optional<CorrelationSample>& /* result */)>> _function;
1733
+ } SWIFT_NONCOPYABLE;
1734
+ Func_void_std__optional_CorrelationSample_ create_Func_void_std__optional_CorrelationSample_(void* NON_NULL swiftClosureWrapper) noexcept;
1735
+ inline Func_void_std__optional_CorrelationSample__Wrapper wrap_Func_void_std__optional_CorrelationSample_(Func_void_std__optional_CorrelationSample_ value) noexcept {
1736
+ return Func_void_std__optional_CorrelationSample__Wrapper(std::move(value));
1737
+ }
1738
+
1589
1739
  // pragma MARK: std::optional<SourceRevision>
1590
1740
  /**
1591
1741
  * Specialized version of `std::optional<SourceRevision>`.
@@ -1641,46 +1791,6 @@ namespace margelo::nitro::healthkit::bridge::swift {
1641
1791
  return vector;
1642
1792
  }
1643
1793
 
1644
- // pragma MARK: std::variant<CategorySample, QuantitySample>
1645
- /**
1646
- * Wrapper struct for `std::variant<CategorySample, QuantitySample>`.
1647
- * std::variant cannot be used in Swift because of a Swift bug.
1648
- * Not even specializing it works. So we create a wrapper struct.
1649
- */
1650
- struct std__variant_CategorySample__QuantitySample_ {
1651
- std::variant<CategorySample, QuantitySample> variant;
1652
- std__variant_CategorySample__QuantitySample_(std::variant<CategorySample, QuantitySample> variant): variant(variant) { }
1653
- operator std::variant<CategorySample, QuantitySample>() const noexcept {
1654
- return variant;
1655
- }
1656
- inline size_t index() const noexcept {
1657
- return variant.index();
1658
- }
1659
- inline CategorySample get_0() const noexcept {
1660
- return std::get<0>(variant);
1661
- }
1662
- inline QuantitySample get_1() const noexcept {
1663
- return std::get<1>(variant);
1664
- }
1665
- };
1666
- inline std__variant_CategorySample__QuantitySample_ create_std__variant_CategorySample__QuantitySample_(const CategorySample& value) noexcept {
1667
- return std__variant_CategorySample__QuantitySample_(value);
1668
- }
1669
- inline std__variant_CategorySample__QuantitySample_ create_std__variant_CategorySample__QuantitySample_(const QuantitySample& value) noexcept {
1670
- return std__variant_CategorySample__QuantitySample_(value);
1671
- }
1672
-
1673
- // pragma MARK: std::vector<std::variant<CategorySample, QuantitySample>>
1674
- /**
1675
- * Specialized version of `std::vector<std::variant<CategorySample, QuantitySample>>`.
1676
- */
1677
- using std__vector_std__variant_CategorySample__QuantitySample__ = std::vector<std::variant<CategorySample, QuantitySample>>;
1678
- inline std::vector<std::variant<CategorySample, QuantitySample>> create_std__vector_std__variant_CategorySample__QuantitySample__(size_t size) noexcept {
1679
- std::vector<std::variant<CategorySample, QuantitySample>> vector;
1680
- vector.reserve(size);
1681
- return vector;
1682
- }
1683
-
1684
1794
  // pragma MARK: std::vector<CorrelationSample>
1685
1795
  /**
1686
1796
  * Specialized version of `std::vector<CorrelationSample>`.
@@ -1772,6 +1882,15 @@ namespace margelo::nitro::healthkit::bridge::swift {
1772
1882
  using std__weak_ptr_HybridCorrelationTypeModuleSpec_ = std::weak_ptr<HybridCorrelationTypeModuleSpec>;
1773
1883
  inline std__weak_ptr_HybridCorrelationTypeModuleSpec_ weakify_std__shared_ptr_HybridCorrelationTypeModuleSpec_(const std::shared_ptr<HybridCorrelationTypeModuleSpec>& strong) noexcept { return strong; }
1774
1884
 
1885
+ // pragma MARK: Result<std::shared_ptr<Promise<std::optional<CorrelationSample>>>>
1886
+ using Result_std__shared_ptr_Promise_std__optional_CorrelationSample____ = Result<std::shared_ptr<Promise<std::optional<CorrelationSample>>>>;
1887
+ inline Result_std__shared_ptr_Promise_std__optional_CorrelationSample____ create_Result_std__shared_ptr_Promise_std__optional_CorrelationSample____(const std::shared_ptr<Promise<std::optional<CorrelationSample>>>& value) noexcept {
1888
+ return Result<std::shared_ptr<Promise<std::optional<CorrelationSample>>>>::withValue(value);
1889
+ }
1890
+ inline Result_std__shared_ptr_Promise_std__optional_CorrelationSample____ create_Result_std__shared_ptr_Promise_std__optional_CorrelationSample____(const std::exception_ptr& error) noexcept {
1891
+ return Result<std::shared_ptr<Promise<std::optional<CorrelationSample>>>>::withError(error);
1892
+ }
1893
+
1775
1894
  // pragma MARK: Result<std::shared_ptr<Promise<std::vector<CorrelationSample>>>>
1776
1895
  using Result_std__shared_ptr_Promise_std__vector_CorrelationSample____ = Result<std::shared_ptr<Promise<std::vector<CorrelationSample>>>>;
1777
1896
  inline Result_std__shared_ptr_Promise_std__vector_CorrelationSample____ create_Result_std__shared_ptr_Promise_std__vector_CorrelationSample____(const std::shared_ptr<Promise<std::vector<CorrelationSample>>>& value) noexcept {
@@ -2219,6 +2338,55 @@ namespace margelo::nitro::healthkit::bridge::swift {
2219
2338
  return Result<std::shared_ptr<Promise<MedicationDoseEventsWithAnchorResponse>>>::withError(error);
2220
2339
  }
2221
2340
 
2341
+ // pragma MARK: std::optional<QuantitySample>
2342
+ /**
2343
+ * Specialized version of `std::optional<QuantitySample>`.
2344
+ */
2345
+ using std__optional_QuantitySample_ = std::optional<QuantitySample>;
2346
+ inline std::optional<QuantitySample> create_std__optional_QuantitySample_(const QuantitySample& value) noexcept {
2347
+ return std::optional<QuantitySample>(value);
2348
+ }
2349
+ inline bool has_value_std__optional_QuantitySample_(const std::optional<QuantitySample>& optional) noexcept {
2350
+ return optional.has_value();
2351
+ }
2352
+ inline QuantitySample get_std__optional_QuantitySample_(const std::optional<QuantitySample>& optional) noexcept {
2353
+ return *optional;
2354
+ }
2355
+
2356
+ // pragma MARK: std::shared_ptr<Promise<std::optional<QuantitySample>>>
2357
+ /**
2358
+ * Specialized version of `std::shared_ptr<Promise<std::optional<QuantitySample>>>`.
2359
+ */
2360
+ using std__shared_ptr_Promise_std__optional_QuantitySample___ = std::shared_ptr<Promise<std::optional<QuantitySample>>>;
2361
+ inline std::shared_ptr<Promise<std::optional<QuantitySample>>> create_std__shared_ptr_Promise_std__optional_QuantitySample___() noexcept {
2362
+ return Promise<std::optional<QuantitySample>>::create();
2363
+ }
2364
+ inline PromiseHolder<std::optional<QuantitySample>> wrap_std__shared_ptr_Promise_std__optional_QuantitySample___(std::shared_ptr<Promise<std::optional<QuantitySample>>> promise) noexcept {
2365
+ return PromiseHolder<std::optional<QuantitySample>>(std::move(promise));
2366
+ }
2367
+
2368
+ // pragma MARK: std::function<void(const std::optional<QuantitySample>& /* result */)>
2369
+ /**
2370
+ * Specialized version of `std::function<void(const std::optional<QuantitySample>&)>`.
2371
+ */
2372
+ using Func_void_std__optional_QuantitySample_ = std::function<void(const std::optional<QuantitySample>& /* result */)>;
2373
+ /**
2374
+ * Wrapper class for a `std::function<void(const std::optional<QuantitySample>& / * result * /)>`, this can be used from Swift.
2375
+ */
2376
+ class Func_void_std__optional_QuantitySample__Wrapper final {
2377
+ public:
2378
+ explicit Func_void_std__optional_QuantitySample__Wrapper(std::function<void(const std::optional<QuantitySample>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<QuantitySample>& /* result */)>>(std::move(func))) {}
2379
+ inline void call(std::optional<QuantitySample> result) const noexcept {
2380
+ _function->operator()(result);
2381
+ }
2382
+ private:
2383
+ std::unique_ptr<std::function<void(const std::optional<QuantitySample>& /* result */)>> _function;
2384
+ } SWIFT_NONCOPYABLE;
2385
+ Func_void_std__optional_QuantitySample_ create_Func_void_std__optional_QuantitySample_(void* NON_NULL swiftClosureWrapper) noexcept;
2386
+ inline Func_void_std__optional_QuantitySample__Wrapper wrap_Func_void_std__optional_QuantitySample_(Func_void_std__optional_QuantitySample_ value) noexcept {
2387
+ return Func_void_std__optional_QuantitySample__Wrapper(std::move(value));
2388
+ }
2389
+
2222
2390
  // pragma MARK: std::vector<QuantitySample>
2223
2391
  /**
2224
2392
  * Specialized version of `std::vector<QuantitySample>`.
@@ -2384,6 +2552,51 @@ namespace margelo::nitro::healthkit::bridge::swift {
2384
2552
  return Func_void_std__vector_QueryStatisticsResponse__Wrapper(std::move(value));
2385
2553
  }
2386
2554
 
2555
+ // pragma MARK: std::vector<QueryStatisticsResponseFromSingleSource>
2556
+ /**
2557
+ * Specialized version of `std::vector<QueryStatisticsResponseFromSingleSource>`.
2558
+ */
2559
+ using std__vector_QueryStatisticsResponseFromSingleSource_ = std::vector<QueryStatisticsResponseFromSingleSource>;
2560
+ inline std::vector<QueryStatisticsResponseFromSingleSource> create_std__vector_QueryStatisticsResponseFromSingleSource_(size_t size) noexcept {
2561
+ std::vector<QueryStatisticsResponseFromSingleSource> vector;
2562
+ vector.reserve(size);
2563
+ return vector;
2564
+ }
2565
+
2566
+ // pragma MARK: std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>
2567
+ /**
2568
+ * Specialized version of `std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>`.
2569
+ */
2570
+ using std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource___ = std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>;
2571
+ inline std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>> create_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource___() noexcept {
2572
+ return Promise<std::vector<QueryStatisticsResponseFromSingleSource>>::create();
2573
+ }
2574
+ inline PromiseHolder<std::vector<QueryStatisticsResponseFromSingleSource>> wrap_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource___(std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>> promise) noexcept {
2575
+ return PromiseHolder<std::vector<QueryStatisticsResponseFromSingleSource>>(std::move(promise));
2576
+ }
2577
+
2578
+ // pragma MARK: std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& /* result */)>
2579
+ /**
2580
+ * Specialized version of `std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>&)>`.
2581
+ */
2582
+ using Func_void_std__vector_QueryStatisticsResponseFromSingleSource_ = std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& /* result */)>;
2583
+ /**
2584
+ * Wrapper class for a `std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& / * result * /)>`, this can be used from Swift.
2585
+ */
2586
+ class Func_void_std__vector_QueryStatisticsResponseFromSingleSource__Wrapper final {
2587
+ public:
2588
+ explicit Func_void_std__vector_QueryStatisticsResponseFromSingleSource__Wrapper(std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& /* result */)>>(std::move(func))) {}
2589
+ inline void call(std::vector<QueryStatisticsResponseFromSingleSource> result) const noexcept {
2590
+ _function->operator()(result);
2591
+ }
2592
+ private:
2593
+ std::unique_ptr<std::function<void(const std::vector<QueryStatisticsResponseFromSingleSource>& /* result */)>> _function;
2594
+ } SWIFT_NONCOPYABLE;
2595
+ Func_void_std__vector_QueryStatisticsResponseFromSingleSource_ create_Func_void_std__vector_QueryStatisticsResponseFromSingleSource_(void* NON_NULL swiftClosureWrapper) noexcept;
2596
+ inline Func_void_std__vector_QueryStatisticsResponseFromSingleSource__Wrapper wrap_Func_void_std__vector_QueryStatisticsResponseFromSingleSource_(Func_void_std__vector_QueryStatisticsResponseFromSingleSource_ value) noexcept {
2597
+ return Func_void_std__vector_QueryStatisticsResponseFromSingleSource__Wrapper(std::move(value));
2598
+ }
2599
+
2387
2600
  // pragma MARK: std::shared_ptr<Promise<QuantitySamplesWithAnchorResponse>>
2388
2601
  /**
2389
2602
  * Specialized version of `std::shared_ptr<Promise<QuantitySamplesWithAnchorResponse>>`.
@@ -2439,6 +2652,15 @@ namespace margelo::nitro::healthkit::bridge::swift {
2439
2652
  return Result<AggregationStyle>::withError(error);
2440
2653
  }
2441
2654
 
2655
+ // pragma MARK: Result<std::shared_ptr<Promise<std::optional<QuantitySample>>>>
2656
+ using Result_std__shared_ptr_Promise_std__optional_QuantitySample____ = Result<std::shared_ptr<Promise<std::optional<QuantitySample>>>>;
2657
+ inline Result_std__shared_ptr_Promise_std__optional_QuantitySample____ create_Result_std__shared_ptr_Promise_std__optional_QuantitySample____(const std::shared_ptr<Promise<std::optional<QuantitySample>>>& value) noexcept {
2658
+ return Result<std::shared_ptr<Promise<std::optional<QuantitySample>>>>::withValue(value);
2659
+ }
2660
+ inline Result_std__shared_ptr_Promise_std__optional_QuantitySample____ create_Result_std__shared_ptr_Promise_std__optional_QuantitySample____(const std::exception_ptr& error) noexcept {
2661
+ return Result<std::shared_ptr<Promise<std::optional<QuantitySample>>>>::withError(error);
2662
+ }
2663
+
2442
2664
  // pragma MARK: Result<std::shared_ptr<Promise<std::vector<QuantitySample>>>>
2443
2665
  using Result_std__shared_ptr_Promise_std__vector_QuantitySample____ = Result<std::shared_ptr<Promise<std::vector<QuantitySample>>>>;
2444
2666
  inline Result_std__shared_ptr_Promise_std__vector_QuantitySample____ create_Result_std__shared_ptr_Promise_std__vector_QuantitySample____(const std::shared_ptr<Promise<std::vector<QuantitySample>>>& value) noexcept {
@@ -2466,6 +2688,15 @@ namespace margelo::nitro::healthkit::bridge::swift {
2466
2688
  return Result<std::shared_ptr<Promise<std::vector<QueryStatisticsResponse>>>>::withError(error);
2467
2689
  }
2468
2690
 
2691
+ // pragma MARK: Result<std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>>
2692
+ using Result_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource____ = Result<std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>>;
2693
+ inline Result_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource____ create_Result_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource____(const std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>& value) noexcept {
2694
+ return Result<std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>>::withValue(value);
2695
+ }
2696
+ inline Result_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource____ create_Result_std__shared_ptr_Promise_std__vector_QueryStatisticsResponseFromSingleSource____(const std::exception_ptr& error) noexcept {
2697
+ return Result<std::shared_ptr<Promise<std::vector<QueryStatisticsResponseFromSingleSource>>>>::withError(error);
2698
+ }
2699
+
2469
2700
  // pragma MARK: Result<std::shared_ptr<Promise<QuantitySamplesWithAnchorResponse>>>
2470
2701
  using Result_std__shared_ptr_Promise_QuantitySamplesWithAnchorResponse___ = Result<std::shared_ptr<Promise<QuantitySamplesWithAnchorResponse>>>;
2471
2702
  inline Result_std__shared_ptr_Promise_QuantitySamplesWithAnchorResponse___ create_Result_std__shared_ptr_Promise_QuantitySamplesWithAnchorResponse___(const std::shared_ptr<Promise<QuantitySamplesWithAnchorResponse>>& value) noexcept {
@@ -2585,6 +2816,55 @@ namespace margelo::nitro::healthkit::bridge::swift {
2585
2816
  return Func_void_StateOfMindSamplesWithAnchorResponse_Wrapper(std::move(value));
2586
2817
  }
2587
2818
 
2819
+ // pragma MARK: std::optional<StateOfMindSample>
2820
+ /**
2821
+ * Specialized version of `std::optional<StateOfMindSample>`.
2822
+ */
2823
+ using std__optional_StateOfMindSample_ = std::optional<StateOfMindSample>;
2824
+ inline std::optional<StateOfMindSample> create_std__optional_StateOfMindSample_(const StateOfMindSample& value) noexcept {
2825
+ return std::optional<StateOfMindSample>(value);
2826
+ }
2827
+ inline bool has_value_std__optional_StateOfMindSample_(const std::optional<StateOfMindSample>& optional) noexcept {
2828
+ return optional.has_value();
2829
+ }
2830
+ inline StateOfMindSample get_std__optional_StateOfMindSample_(const std::optional<StateOfMindSample>& optional) noexcept {
2831
+ return *optional;
2832
+ }
2833
+
2834
+ // pragma MARK: std::shared_ptr<Promise<std::optional<StateOfMindSample>>>
2835
+ /**
2836
+ * Specialized version of `std::shared_ptr<Promise<std::optional<StateOfMindSample>>>`.
2837
+ */
2838
+ using std__shared_ptr_Promise_std__optional_StateOfMindSample___ = std::shared_ptr<Promise<std::optional<StateOfMindSample>>>;
2839
+ inline std::shared_ptr<Promise<std::optional<StateOfMindSample>>> create_std__shared_ptr_Promise_std__optional_StateOfMindSample___() noexcept {
2840
+ return Promise<std::optional<StateOfMindSample>>::create();
2841
+ }
2842
+ inline PromiseHolder<std::optional<StateOfMindSample>> wrap_std__shared_ptr_Promise_std__optional_StateOfMindSample___(std::shared_ptr<Promise<std::optional<StateOfMindSample>>> promise) noexcept {
2843
+ return PromiseHolder<std::optional<StateOfMindSample>>(std::move(promise));
2844
+ }
2845
+
2846
+ // pragma MARK: std::function<void(const std::optional<StateOfMindSample>& /* result */)>
2847
+ /**
2848
+ * Specialized version of `std::function<void(const std::optional<StateOfMindSample>&)>`.
2849
+ */
2850
+ using Func_void_std__optional_StateOfMindSample_ = std::function<void(const std::optional<StateOfMindSample>& /* result */)>;
2851
+ /**
2852
+ * Wrapper class for a `std::function<void(const std::optional<StateOfMindSample>& / * result * /)>`, this can be used from Swift.
2853
+ */
2854
+ class Func_void_std__optional_StateOfMindSample__Wrapper final {
2855
+ public:
2856
+ explicit Func_void_std__optional_StateOfMindSample__Wrapper(std::function<void(const std::optional<StateOfMindSample>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<StateOfMindSample>& /* result */)>>(std::move(func))) {}
2857
+ inline void call(std::optional<StateOfMindSample> result) const noexcept {
2858
+ _function->operator()(result);
2859
+ }
2860
+ private:
2861
+ std::unique_ptr<std::function<void(const std::optional<StateOfMindSample>& /* result */)>> _function;
2862
+ } SWIFT_NONCOPYABLE;
2863
+ Func_void_std__optional_StateOfMindSample_ create_Func_void_std__optional_StateOfMindSample_(void* NON_NULL swiftClosureWrapper) noexcept;
2864
+ inline Func_void_std__optional_StateOfMindSample__Wrapper wrap_Func_void_std__optional_StateOfMindSample_(Func_void_std__optional_StateOfMindSample_ value) noexcept {
2865
+ return Func_void_std__optional_StateOfMindSample__Wrapper(std::move(value));
2866
+ }
2867
+
2588
2868
  // pragma MARK: std::shared_ptr<HybridStateOfMindModuleSpec>
2589
2869
  /**
2590
2870
  * Specialized version of `std::shared_ptr<HybridStateOfMindModuleSpec>`.
@@ -2615,6 +2895,15 @@ namespace margelo::nitro::healthkit::bridge::swift {
2615
2895
  return Result<std::shared_ptr<Promise<StateOfMindSamplesWithAnchorResponse>>>::withError(error);
2616
2896
  }
2617
2897
 
2898
+ // pragma MARK: Result<std::shared_ptr<Promise<std::optional<StateOfMindSample>>>>
2899
+ using Result_std__shared_ptr_Promise_std__optional_StateOfMindSample____ = Result<std::shared_ptr<Promise<std::optional<StateOfMindSample>>>>;
2900
+ inline Result_std__shared_ptr_Promise_std__optional_StateOfMindSample____ create_Result_std__shared_ptr_Promise_std__optional_StateOfMindSample____(const std::shared_ptr<Promise<std::optional<StateOfMindSample>>>& value) noexcept {
2901
+ return Result<std::shared_ptr<Promise<std::optional<StateOfMindSample>>>>::withValue(value);
2902
+ }
2903
+ inline Result_std__shared_ptr_Promise_std__optional_StateOfMindSample____ create_Result_std__shared_ptr_Promise_std__optional_StateOfMindSample____(const std::exception_ptr& error) noexcept {
2904
+ return Result<std::shared_ptr<Promise<std::optional<StateOfMindSample>>>>::withError(error);
2905
+ }
2906
+
2618
2907
  // pragma MARK: std::vector<WorkoutEvent>
2619
2908
  /**
2620
2909
  * Specialized version of `std::vector<WorkoutEvent>`.
@@ -146,6 +146,8 @@ namespace margelo::nitro::healthkit { struct QueryOptionsWithAnchor; }
146
146
  namespace margelo::nitro::healthkit { struct QueryOptionsWithSortOrderAndUnit; }
147
147
  // Forward declaration of `QueryOptionsWithSortOrder` to properly resolve imports.
148
148
  namespace margelo::nitro::healthkit { struct QueryOptionsWithSortOrder; }
149
+ // Forward declaration of `QueryStatisticsResponseFromSingleSource` to properly resolve imports.
150
+ namespace margelo::nitro::healthkit { struct QueryStatisticsResponseFromSingleSource; }
149
151
  // Forward declaration of `QueryStatisticsResponse` to properly resolve imports.
150
152
  namespace margelo::nitro::healthkit { struct QueryStatisticsResponse; }
151
153
  // Forward declaration of `QueryWorkoutSamplesWithAnchorResponse` to properly resolve imports.
@@ -286,6 +288,7 @@ namespace margelo::nitro::healthkit { struct WorkoutTotals; }
286
288
  #include "QueryOptionsWithSortOrder.hpp"
287
289
  #include "QueryOptionsWithSortOrderAndUnit.hpp"
288
290
  #include "QueryStatisticsResponse.hpp"
291
+ #include "QueryStatisticsResponseFromSingleSource.hpp"
289
292
  #include "QueryWorkoutSamplesWithAnchorResponse.hpp"
290
293
  #include "RelatedCoding.hpp"
291
294
  #include "SampleType.hpp"