@iternio/react-native-auto-play 0.0.9 → 0.0.11

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 (113) hide show
  1. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridAutoPlay.kt +10 -9
  2. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridGridTemplate.kt +6 -3
  3. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridInformationTemplate.kt +7 -5
  4. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridListTemplate.kt +6 -3
  5. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridMapTemplate.kt +6 -3
  6. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridSearchTemplate.kt +6 -3
  7. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/MapTemplate.kt +10 -6
  8. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/Parser.kt +3 -0
  9. package/ios/hybrid/HybridAutoPlay.swift +48 -16
  10. package/ios/hybrid/HybridGridTemplate.swift +17 -10
  11. package/ios/hybrid/HybridInformationTemplate.swift +18 -10
  12. package/ios/hybrid/HybridListTemplate.swift +18 -10
  13. package/ios/hybrid/HybridMapTemplate.swift +26 -11
  14. package/ios/hybrid/HybridMessageTemplate.swift +4 -7
  15. package/ios/hybrid/HybridSearchTemplate.swift +20 -10
  16. package/ios/scenes/AutoPlayInterfaceController.swift +11 -14
  17. package/ios/scenes/AutoPlayScene.swift +1 -1
  18. package/ios/scenes/HeadUnitSceneDelegate.swift +5 -4
  19. package/ios/templates/AutoPlayTemplate.swift +3 -2
  20. package/ios/templates/GridTemplate.swift +1 -2
  21. package/ios/templates/InformationTemplate.swift +1 -2
  22. package/ios/templates/ListTemplate.swift +3 -2
  23. package/ios/templates/MapTemplate.swift +39 -33
  24. package/ios/templates/SearchTemplate.swift +11 -7
  25. package/ios/templates/TemplateStore.swift +8 -8
  26. package/ios/utils/RootModule.swift +13 -40
  27. package/lib/specs/AutoPlay.nitro.d.ts +1 -1
  28. package/lib/specs/GridTemplate.nitro.d.ts +1 -1
  29. package/lib/specs/InformationTemplate.nitro.d.ts +1 -1
  30. package/lib/specs/ListTemplate.nitro.d.ts +1 -1
  31. package/lib/specs/MapTemplate.nitro.d.ts +1 -1
  32. package/lib/specs/SearchTemplate.nitro.d.ts +1 -1
  33. package/lib/templates/GridTemplate.d.ts +1 -1
  34. package/lib/templates/GridTemplate.js +1 -1
  35. package/lib/templates/InformationTemplate.d.ts +1 -1
  36. package/lib/templates/InformationTemplate.js +1 -1
  37. package/lib/templates/ListTemplate.d.ts +1 -1
  38. package/lib/templates/ListTemplate.js +1 -1
  39. package/lib/templates/MapTemplate.d.ts +2 -2
  40. package/lib/templates/MapTemplate.js +6 -2
  41. package/lib/templates/SearchTemplate.d.ts +1 -1
  42. package/lib/templates/SearchTemplate.js +1 -1
  43. package/lib/templates/Template.d.ts +1 -1
  44. package/lib/templates/Template.js +1 -1
  45. package/lib/types/Maneuver.d.ts +5 -2
  46. package/lib/utils/NitroManeuver.d.ts +4 -1
  47. package/nitrogen/generated/android/c++/JHybridAutoPlaySpec.cpp +14 -3
  48. package/nitrogen/generated/android/c++/JHybridAutoPlaySpec.hpp +1 -1
  49. package/nitrogen/generated/android/c++/JHybridGridTemplateSpec.cpp +16 -3
  50. package/nitrogen/generated/android/c++/JHybridGridTemplateSpec.hpp +1 -1
  51. package/nitrogen/generated/android/c++/JHybridInformationTemplateSpec.cpp +16 -3
  52. package/nitrogen/generated/android/c++/JHybridInformationTemplateSpec.hpp +1 -1
  53. package/nitrogen/generated/android/c++/JHybridListTemplateSpec.cpp +16 -3
  54. package/nitrogen/generated/android/c++/JHybridListTemplateSpec.hpp +1 -1
  55. package/nitrogen/generated/android/c++/JHybridMapTemplateSpec.cpp +21 -4
  56. package/nitrogen/generated/android/c++/JHybridMapTemplateSpec.hpp +2 -2
  57. package/nitrogen/generated/android/c++/JHybridSearchTemplateSpec.cpp +16 -3
  58. package/nitrogen/generated/android/c++/JHybridSearchTemplateSpec.hpp +1 -1
  59. package/nitrogen/generated/android/c++/JNitroLoadingManeuver.hpp +57 -0
  60. package/nitrogen/generated/android/c++/JNitroManeuver.cpp +6 -2
  61. package/nitrogen/generated/android/c++/JNitroManeuver.hpp +19 -2
  62. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridAutoPlaySpec.kt +1 -1
  63. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridGridTemplateSpec.kt +2 -1
  64. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridInformationTemplateSpec.kt +2 -1
  65. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridListTemplateSpec.kt +2 -1
  66. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridMapTemplateSpec.kt +2 -1
  67. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridSearchTemplateSpec.kt +2 -1
  68. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroLoadingManeuver.kt +38 -0
  69. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroManeuver.kt +15 -2
  70. package/nitrogen/generated/ios/ReactNativeAutoPlay-Swift-Cxx-Bridge.hpp +28 -19
  71. package/nitrogen/generated/ios/ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp +3 -0
  72. package/nitrogen/generated/ios/c++/HybridAutoPlaySpecSwift.hpp +3 -1
  73. package/nitrogen/generated/ios/c++/HybridGridTemplateSpecSwift.hpp +4 -1
  74. package/nitrogen/generated/ios/c++/HybridInformationTemplateSpecSwift.hpp +4 -1
  75. package/nitrogen/generated/ios/c++/HybridListTemplateSpecSwift.hpp +4 -1
  76. package/nitrogen/generated/ios/c++/HybridMapTemplateSpecSwift.hpp +8 -2
  77. package/nitrogen/generated/ios/c++/HybridSearchTemplateSpecSwift.hpp +4 -1
  78. package/nitrogen/generated/ios/swift/HybridAutoPlaySpec.swift +1 -1
  79. package/nitrogen/generated/ios/swift/HybridAutoPlaySpec_cxx.swift +12 -4
  80. package/nitrogen/generated/ios/swift/HybridGridTemplateSpec.swift +2 -1
  81. package/nitrogen/generated/ios/swift/HybridGridTemplateSpec_cxx.swift +13 -4
  82. package/nitrogen/generated/ios/swift/HybridInformationTemplateSpec.swift +2 -1
  83. package/nitrogen/generated/ios/swift/HybridInformationTemplateSpec_cxx.swift +13 -4
  84. package/nitrogen/generated/ios/swift/HybridListTemplateSpec.swift +2 -1
  85. package/nitrogen/generated/ios/swift/HybridListTemplateSpec_cxx.swift +13 -4
  86. package/nitrogen/generated/ios/swift/HybridMapTemplateSpec.swift +2 -1
  87. package/nitrogen/generated/ios/swift/HybridMapTemplateSpec_cxx.swift +17 -5
  88. package/nitrogen/generated/ios/swift/HybridSearchTemplateSpec.swift +2 -1
  89. package/nitrogen/generated/ios/swift/HybridSearchTemplateSpec_cxx.swift +13 -4
  90. package/nitrogen/generated/ios/swift/NitroLoadingManeuver.swift +35 -0
  91. package/nitrogen/generated/ios/swift/NitroManeuver.swift +2 -1
  92. package/nitrogen/generated/shared/c++/HybridAutoPlaySpec.hpp +1 -1
  93. package/nitrogen/generated/shared/c++/HybridGridTemplateSpec.hpp +2 -1
  94. package/nitrogen/generated/shared/c++/HybridInformationTemplateSpec.hpp +2 -1
  95. package/nitrogen/generated/shared/c++/HybridListTemplateSpec.hpp +2 -1
  96. package/nitrogen/generated/shared/c++/HybridMapTemplateSpec.hpp +6 -2
  97. package/nitrogen/generated/shared/c++/HybridSearchTemplateSpec.hpp +2 -1
  98. package/nitrogen/generated/shared/c++/NitroLoadingManeuver.hpp +75 -0
  99. package/package.json +1 -1
  100. package/src/specs/AutoPlay.nitro.ts +1 -1
  101. package/src/specs/GridTemplate.nitro.ts +1 -1
  102. package/src/specs/InformationTemplate.nitro.ts +1 -1
  103. package/src/specs/ListTemplate.nitro.ts +1 -1
  104. package/src/specs/MapTemplate.nitro.ts +1 -1
  105. package/src/specs/SearchTemplate.nitro.ts +4 -1
  106. package/src/templates/GridTemplate.ts +1 -1
  107. package/src/templates/InformationTemplate.ts +1 -1
  108. package/src/templates/ListTemplate.ts +1 -1
  109. package/src/templates/MapTemplate.ts +7 -2
  110. package/src/templates/SearchTemplate.ts +1 -1
  111. package/src/templates/Template.ts +1 -1
  112. package/src/types/Maneuver.ts +8 -1
  113. package/src/utils/NitroManeuver.ts +8 -1
@@ -11,7 +11,7 @@ import com.facebook.proguard.annotations.DoNotStrip
11
11
 
12
12
 
13
13
  /**
14
- * Represents the TypeScript variant "Array<NitroRoutingManeuver> | NitroMessageManeuver".
14
+ * Represents the TypeScript variant "Array<NitroRoutingManeuver> | NitroMessageManeuver | NitroLoadingManeuver".
15
15
  */
16
16
  @Suppress("ClassName")
17
17
  @DoNotStrip
@@ -20,17 +20,22 @@ sealed class NitroManeuver {
20
20
  data class First(@DoNotStrip val value: Array<NitroRoutingManeuver>): NitroManeuver()
21
21
  @DoNotStrip
22
22
  data class Second(@DoNotStrip val value: NitroMessageManeuver): NitroManeuver()
23
+ @DoNotStrip
24
+ data class Third(@DoNotStrip val value: NitroLoadingManeuver): NitroManeuver()
23
25
 
24
26
  @Deprecated("getAs() is not type-safe. Use fold/asFirstOrNull/asSecondOrNull instead.", level = DeprecationLevel.ERROR)
25
27
  inline fun <reified T> getAs(): T? = when (this) {
26
28
  is First -> value as? T
27
29
  is Second -> value as? T
30
+ is Third -> value as? T
28
31
  }
29
32
 
30
33
  val isFirst: Boolean
31
34
  get() = this is First
32
35
  val isSecond: Boolean
33
36
  get() = this is Second
37
+ val isThird: Boolean
38
+ get() = this is Third
34
39
 
35
40
  fun asFirstOrNull(): Array<NitroRoutingManeuver>? {
36
41
  val value = (this as? First)?.value ?: return null
@@ -40,11 +45,16 @@ sealed class NitroManeuver {
40
45
  val value = (this as? Second)?.value ?: return null
41
46
  return value
42
47
  }
48
+ fun asThirdOrNull(): NitroLoadingManeuver? {
49
+ val value = (this as? Third)?.value ?: return null
50
+ return value
51
+ }
43
52
 
44
- inline fun <R> match(first: (Array<NitroRoutingManeuver>) -> R, second: (NitroMessageManeuver) -> R): R {
53
+ inline fun <R> match(first: (Array<NitroRoutingManeuver>) -> R, second: (NitroMessageManeuver) -> R, third: (NitroLoadingManeuver) -> R): R {
45
54
  return when (this) {
46
55
  is First -> first(value)
47
56
  is Second -> second(value)
57
+ is Third -> third(value)
48
58
  }
49
59
  }
50
60
 
@@ -55,5 +65,8 @@ sealed class NitroManeuver {
55
65
  @JvmStatic
56
66
  @DoNotStrip
57
67
  fun create(value: NitroMessageManeuver): NitroManeuver = Second(value)
68
+ @JvmStatic
69
+ @DoNotStrip
70
+ fun create(value: NitroLoadingManeuver): NitroManeuver = Third(value)
58
71
  }
59
72
  }
@@ -76,6 +76,8 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroCarPla
76
76
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroColor; }
77
77
  // Forward declaration of `NitroGridButton` to properly resolve imports.
78
78
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroGridButton; }
79
+ // Forward declaration of `NitroLoadingManeuver` to properly resolve imports.
80
+ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroLoadingManeuver; }
79
81
  // Forward declaration of `NitroMapButtonType` to properly resolve imports.
80
82
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroMapButtonType; }
81
83
  // Forward declaration of `NitroMapButton` to properly resolve imports.
@@ -176,6 +178,7 @@ namespace ReactNativeAutoPlay { class HybridSearchTemplateSpec_cxx; }
176
178
  #include "NitroCarPlayDashboardButton.hpp"
177
179
  #include "NitroColor.hpp"
178
180
  #include "NitroGridButton.hpp"
181
+ #include "NitroLoadingManeuver.hpp"
179
182
  #include "NitroMapButton.hpp"
180
183
  #include "NitroMapButtonType.hpp"
181
184
  #include "NitroMessageManeuver.hpp"
@@ -505,15 +508,6 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay::bridge::swift {
505
508
  return Result<std::shared_ptr<Promise<void>>>::withError(error);
506
509
  }
507
510
 
508
- // pragma MARK: Result<void>
509
- using Result_void_ = Result<void>;
510
- inline Result_void_ create_Result_void_() noexcept {
511
- return Result<void>::withValue();
512
- }
513
- inline Result_void_ create_Result_void_(const std::exception_ptr& error) noexcept {
514
- return Result<void>::withError(error);
515
- }
516
-
517
511
  // pragma MARK: Result<bool>
518
512
  using Result_bool_ = Result<bool>;
519
513
  inline Result_bool_ create_Result_bool_(bool value) noexcept {
@@ -579,6 +573,15 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay::bridge::swift {
579
573
  using std__weak_ptr_HybridCarPlayDashboardSpec_ = std::weak_ptr<HybridCarPlayDashboardSpec>;
580
574
  inline std__weak_ptr_HybridCarPlayDashboardSpec_ weakify_std__shared_ptr_HybridCarPlayDashboardSpec_(const std::shared_ptr<HybridCarPlayDashboardSpec>& strong) noexcept { return strong; }
581
575
 
576
+ // pragma MARK: Result<void>
577
+ using Result_void_ = Result<void>;
578
+ inline Result_void_ create_Result_void_() noexcept {
579
+ return Result<void>::withValue();
580
+ }
581
+ inline Result_void_ create_Result_void_(const std::exception_ptr& error) noexcept {
582
+ return Result<void>::withError(error);
583
+ }
584
+
582
585
  // pragma MARK: std::function<void(const std::string& /* clusterId */)>
583
586
  /**
584
587
  * Specialized version of `std::function<void(const std::string&)>`.
@@ -1435,16 +1438,16 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay::bridge::swift {
1435
1438
  return vector;
1436
1439
  }
1437
1440
 
1438
- // pragma MARK: std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver>
1441
+ // pragma MARK: std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver>
1439
1442
  /**
1440
- * Wrapper struct for `std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver>`.
1443
+ * Wrapper struct for `std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver>`.
1441
1444
  * std::variant cannot be used in Swift because of a Swift bug.
1442
1445
  * Not even specializing it works. So we create a wrapper struct.
1443
1446
  */
1444
- struct std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_ {
1445
- std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver> variant;
1446
- std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_(std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver> variant): variant(variant) { }
1447
- operator std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver>() const noexcept {
1447
+ struct std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_ {
1448
+ std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver> variant;
1449
+ std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver> variant): variant(variant) { }
1450
+ operator std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver>() const noexcept {
1448
1451
  return variant;
1449
1452
  }
1450
1453
  inline size_t index() const noexcept {
@@ -1456,12 +1459,18 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay::bridge::swift {
1456
1459
  inline NitroMessageManeuver get_1() const noexcept {
1457
1460
  return std::get<1>(variant);
1458
1461
  }
1462
+ inline NitroLoadingManeuver get_2() const noexcept {
1463
+ return std::get<2>(variant);
1464
+ }
1459
1465
  };
1460
- inline std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_ create_std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_(const std::vector<NitroRoutingManeuver>& value) noexcept {
1461
- return std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_(value);
1466
+ inline std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_ create_std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(const std::vector<NitroRoutingManeuver>& value) noexcept {
1467
+ return std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(value);
1468
+ }
1469
+ inline std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_ create_std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(const NitroMessageManeuver& value) noexcept {
1470
+ return std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(value);
1462
1471
  }
1463
- inline std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_ create_std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_(const NitroMessageManeuver& value) noexcept {
1464
- return std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_(value);
1472
+ inline std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_ create_std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(const NitroLoadingManeuver& value) noexcept {
1473
+ return std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_(value);
1465
1474
  }
1466
1475
 
1467
1476
  // pragma MARK: std::shared_ptr<HybridMapTemplateSpec>
@@ -90,6 +90,8 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroCarPla
90
90
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroColor; }
91
91
  // Forward declaration of `NitroGridButton` to properly resolve imports.
92
92
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroGridButton; }
93
+ // Forward declaration of `NitroLoadingManeuver` to properly resolve imports.
94
+ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroLoadingManeuver; }
93
95
  // Forward declaration of `NitroMapButtonType` to properly resolve imports.
94
96
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroMapButtonType; }
95
97
  // Forward declaration of `NitroMapButton` to properly resolve imports.
@@ -185,6 +187,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class ZoomEve
185
187
  #include "NitroCarPlayDashboardButton.hpp"
186
188
  #include "NitroColor.hpp"
187
189
  #include "NitroGridButton.hpp"
190
+ #include "NitroLoadingManeuver.hpp"
188
191
  #include "NitroMapButton.hpp"
189
192
  #include "NitroMapButtonType.hpp"
190
193
  #include "NitroMessageManeuver.hpp"
@@ -158,11 +158,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
158
158
  auto __value = std::move(__result.value());
159
159
  return __value;
160
160
  }
161
- inline void setTemplateHeaderActions(const std::string& templateId, const std::optional<std::vector<NitroAction>>& headerActions) override {
161
+ inline std::shared_ptr<Promise<void>> setTemplateHeaderActions(const std::string& templateId, const std::optional<std::vector<NitroAction>>& headerActions) override {
162
162
  auto __result = _swiftPart.setTemplateHeaderActions(templateId, headerActions);
163
163
  if (__result.hasError()) [[unlikely]] {
164
164
  std::rethrow_exception(__result.error());
165
165
  }
166
+ auto __value = std::move(__result.value());
167
+ return __value;
166
168
  }
167
169
  inline bool isConnected() override {
168
170
  auto __result = _swiftPart.isConnected();
@@ -63,6 +63,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroMa
63
63
  #include "NitroBaseMapTemplateConfig.hpp"
64
64
  #include "NitroMapButton.hpp"
65
65
  #include "NitroMapButtonType.hpp"
66
+ #include <NitroModules/Promise.hpp>
66
67
 
67
68
  #include "ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp"
68
69
 
@@ -114,11 +115,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
114
115
  std::rethrow_exception(__result.error());
115
116
  }
116
117
  }
117
- inline void updateGridTemplateButtons(const std::string& templateId, const std::vector<NitroGridButton>& buttons) override {
118
+ inline std::shared_ptr<Promise<void>> updateGridTemplateButtons(const std::string& templateId, const std::vector<NitroGridButton>& buttons) override {
118
119
  auto __result = _swiftPart.updateGridTemplateButtons(templateId, buttons);
119
120
  if (__result.hasError()) [[unlikely]] {
120
121
  std::rethrow_exception(__result.error());
121
122
  }
123
+ auto __value = std::move(__result.value());
124
+ return __value;
122
125
  }
123
126
 
124
127
  private:
@@ -69,6 +69,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroMa
69
69
  #include "NitroBaseMapTemplateConfig.hpp"
70
70
  #include "NitroMapButton.hpp"
71
71
  #include "NitroMapButtonType.hpp"
72
+ #include <NitroModules/Promise.hpp>
72
73
 
73
74
  #include "ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp"
74
75
 
@@ -120,11 +121,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
120
121
  std::rethrow_exception(__result.error());
121
122
  }
122
123
  }
123
- inline void updateInformationTemplateSections(const std::string& templateId, const NitroSection& section) override {
124
+ inline std::shared_ptr<Promise<void>> updateInformationTemplateSections(const std::string& templateId, const NitroSection& section) override {
124
125
  auto __result = _swiftPart.updateInformationTemplateSections(templateId, std::forward<decltype(section)>(section));
125
126
  if (__result.hasError()) [[unlikely]] {
126
127
  std::rethrow_exception(__result.error());
127
128
  }
129
+ auto __value = std::move(__result.value());
130
+ return __value;
128
131
  }
129
132
 
130
133
  private:
@@ -69,6 +69,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroMa
69
69
  #include "NitroBaseMapTemplateConfig.hpp"
70
70
  #include "NitroMapButton.hpp"
71
71
  #include "NitroMapButtonType.hpp"
72
+ #include <NitroModules/Promise.hpp>
72
73
 
73
74
  #include "ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp"
74
75
 
@@ -120,11 +121,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
120
121
  std::rethrow_exception(__result.error());
121
122
  }
122
123
  }
123
- inline void updateListTemplateSections(const std::string& templateId, const std::optional<std::vector<NitroSection>>& sections) override {
124
+ inline std::shared_ptr<Promise<void>> updateListTemplateSections(const std::string& templateId, const std::optional<std::vector<NitroSection>>& sections) override {
124
125
  auto __result = _swiftPart.updateListTemplateSections(templateId, sections);
125
126
  if (__result.hasError()) [[unlikely]] {
126
127
  std::rethrow_exception(__result.error());
127
128
  }
129
+ auto __value = std::move(__result.value());
130
+ return __value;
128
131
  }
129
132
 
130
133
  private:
@@ -70,6 +70,8 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct TripPreview
70
70
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroRoutingManeuver; }
71
71
  // Forward declaration of `NitroMessageManeuver` to properly resolve imports.
72
72
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroMessageManeuver; }
73
+ // Forward declaration of `NitroLoadingManeuver` to properly resolve imports.
74
+ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroLoadingManeuver; }
73
75
  // Forward declaration of `NitroAttributedString` to properly resolve imports.
74
76
  namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct NitroAttributedString; }
75
77
  // Forward declaration of `NitroAttributedStringImage` to properly resolve imports.
@@ -129,8 +131,10 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { struct TripConfig;
129
131
  #include "TravelEstimates.hpp"
130
132
  #include "DurationWithTimeZone.hpp"
131
133
  #include "TripPreviewTextConfiguration.hpp"
134
+ #include <NitroModules/Promise.hpp>
132
135
  #include "NitroRoutingManeuver.hpp"
133
136
  #include "NitroMessageManeuver.hpp"
137
+ #include "NitroLoadingManeuver.hpp"
134
138
  #include "NitroAttributedString.hpp"
135
139
  #include "NitroAttributedStringImage.hpp"
136
140
  #include "TurnType.hpp"
@@ -227,11 +231,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
227
231
  std::rethrow_exception(__result.error());
228
232
  }
229
233
  }
230
- inline void setTemplateMapButtons(const std::string& templateId, const std::optional<std::vector<NitroMapButton>>& buttons) override {
234
+ inline std::shared_ptr<Promise<void>> setTemplateMapButtons(const std::string& templateId, const std::optional<std::vector<NitroMapButton>>& buttons) override {
231
235
  auto __result = _swiftPart.setTemplateMapButtons(templateId, buttons);
232
236
  if (__result.hasError()) [[unlikely]] {
233
237
  std::rethrow_exception(__result.error());
234
238
  }
239
+ auto __value = std::move(__result.value());
240
+ return __value;
235
241
  }
236
242
  inline void updateVisibleTravelEstimate(const std::string& templateId, VisibleTravelEstimate visibleTravelEstimate) override {
237
243
  auto __result = _swiftPart.updateVisibleTravelEstimate(templateId, static_cast<int>(visibleTravelEstimate));
@@ -245,7 +251,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
245
251
  std::rethrow_exception(__result.error());
246
252
  }
247
253
  }
248
- inline void updateManeuvers(const std::string& templateId, const std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver>& maneuvers) override {
254
+ inline void updateManeuvers(const std::string& templateId, const std::variant<std::vector<NitroRoutingManeuver>, NitroMessageManeuver, NitroLoadingManeuver>& maneuvers) override {
249
255
  auto __result = _swiftPart.updateManeuvers(templateId, maneuvers);
250
256
  if (__result.hasError()) [[unlikely]] {
251
257
  std::rethrow_exception(__result.error());
@@ -60,6 +60,7 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay { enum class NitroSe
60
60
  #include "NitroSection.hpp"
61
61
  #include "NitroRow.hpp"
62
62
  #include "NitroSectionType.hpp"
63
+ #include <NitroModules/Promise.hpp>
63
64
 
64
65
  #include "ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp"
65
66
 
@@ -111,11 +112,13 @@ namespace margelo::nitro::swe::iternio::reactnativeautoplay {
111
112
  std::rethrow_exception(__result.error());
112
113
  }
113
114
  }
114
- inline void updateSearchResults(const std::string& templateId, const NitroSection& results) override {
115
+ inline std::shared_ptr<Promise<void>> updateSearchResults(const std::string& templateId, const NitroSection& results) override {
115
116
  auto __result = _swiftPart.updateSearchResults(templateId, std::forward<decltype(results)>(results));
116
117
  if (__result.hasError()) [[unlikely]] {
117
118
  std::rethrow_exception(__result.error());
118
119
  }
120
+ auto __value = std::move(__result.value());
121
+ return __value;
119
122
  }
120
123
 
121
124
  private:
@@ -23,7 +23,7 @@ public protocol HybridAutoPlaySpec_protocol: HybridObject {
23
23
  func popToRootTemplate(animate: Bool?) throws -> Promise<Void>
24
24
  func popToTemplate(templateId: String, animate: Bool?) throws -> Promise<Void>
25
25
  func addSafeAreaInsetsListener(moduleName: String, callback: @escaping (_ insets: SafeAreaInsets) -> Void) throws -> () -> Void
26
- func setTemplateHeaderActions(templateId: String, headerActions: [NitroAction]?) throws -> Void
26
+ func setTemplateHeaderActions(templateId: String, headerActions: [NitroAction]?) throws -> Promise<Void>
27
27
  func isConnected() throws -> Bool
28
28
  }
29
29
 
@@ -295,9 +295,9 @@ open class HybridAutoPlaySpec_cxx {
295
295
  }
296
296
 
297
297
  @inline(__always)
298
- public final func setTemplateHeaderActions(templateId: std.string, headerActions: bridge.std__optional_std__vector_NitroAction__) -> bridge.Result_void_ {
298
+ public final func setTemplateHeaderActions(templateId: std.string, headerActions: bridge.std__optional_std__vector_NitroAction__) -> bridge.Result_std__shared_ptr_Promise_void___ {
299
299
  do {
300
- try self.__implementation.setTemplateHeaderActions(templateId: String(templateId), headerActions: { () -> [NitroAction]? in
300
+ let __result = try self.__implementation.setTemplateHeaderActions(templateId: String(templateId), headerActions: { () -> [NitroAction]? in
301
301
  if bridge.has_value_std__optional_std__vector_NitroAction__(headerActions) {
302
302
  let __unwrapped = bridge.get_std__optional_std__vector_NitroAction__(headerActions)
303
303
  return __unwrapped.map({ __item in __item })
@@ -305,10 +305,18 @@ open class HybridAutoPlaySpec_cxx {
305
305
  return nil
306
306
  }
307
307
  }())
308
- return bridge.create_Result_void_()
308
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
309
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
310
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
311
+ __result
312
+ .then({ __result in __promiseHolder.resolve() })
313
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
314
+ return __promise
315
+ }()
316
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
309
317
  } catch (let __error) {
310
318
  let __exceptionPtr = __error.toCpp()
311
- return bridge.create_Result_void_(__exceptionPtr)
319
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
312
320
  }
313
321
  }
314
322
 
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /// See ``HybridGridTemplateSpec``
12
13
  public protocol HybridGridTemplateSpec_protocol: HybridObject {
@@ -15,7 +16,7 @@ public protocol HybridGridTemplateSpec_protocol: HybridObject {
15
16
 
16
17
  // Methods
17
18
  func createGridTemplate(config: GridTemplateConfig) throws -> Void
18
- func updateGridTemplateButtons(templateId: String, buttons: [NitroGridButton]) throws -> Void
19
+ func updateGridTemplateButtons(templateId: String, buttons: [NitroGridButton]) throws -> Promise<Void>
19
20
  }
20
21
 
21
22
  public extension HybridGridTemplateSpec_protocol {
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /**
12
13
  * A class implementation that bridges HybridGridTemplateSpec over to C++.
@@ -129,13 +130,21 @@ open class HybridGridTemplateSpec_cxx {
129
130
  }
130
131
 
131
132
  @inline(__always)
132
- public final func updateGridTemplateButtons(templateId: std.string, buttons: bridge.std__vector_NitroGridButton_) -> bridge.Result_void_ {
133
+ public final func updateGridTemplateButtons(templateId: std.string, buttons: bridge.std__vector_NitroGridButton_) -> bridge.Result_std__shared_ptr_Promise_void___ {
133
134
  do {
134
- try self.__implementation.updateGridTemplateButtons(templateId: String(templateId), buttons: buttons.map({ __item in __item }))
135
- return bridge.create_Result_void_()
135
+ let __result = try self.__implementation.updateGridTemplateButtons(templateId: String(templateId), buttons: buttons.map({ __item in __item }))
136
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
137
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
138
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
139
+ __result
140
+ .then({ __result in __promiseHolder.resolve() })
141
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
142
+ return __promise
143
+ }()
144
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
136
145
  } catch (let __error) {
137
146
  let __exceptionPtr = __error.toCpp()
138
- return bridge.create_Result_void_(__exceptionPtr)
147
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
139
148
  }
140
149
  }
141
150
  }
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /// See ``HybridInformationTemplateSpec``
12
13
  public protocol HybridInformationTemplateSpec_protocol: HybridObject {
@@ -15,7 +16,7 @@ public protocol HybridInformationTemplateSpec_protocol: HybridObject {
15
16
 
16
17
  // Methods
17
18
  func createInformationTemplate(config: InformationTemplateConfig) throws -> Void
18
- func updateInformationTemplateSections(templateId: String, section: NitroSection) throws -> Void
19
+ func updateInformationTemplateSections(templateId: String, section: NitroSection) throws -> Promise<Void>
19
20
  }
20
21
 
21
22
  public extension HybridInformationTemplateSpec_protocol {
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /**
12
13
  * A class implementation that bridges HybridInformationTemplateSpec over to C++.
@@ -129,13 +130,21 @@ open class HybridInformationTemplateSpec_cxx {
129
130
  }
130
131
 
131
132
  @inline(__always)
132
- public final func updateInformationTemplateSections(templateId: std.string, section: NitroSection) -> bridge.Result_void_ {
133
+ public final func updateInformationTemplateSections(templateId: std.string, section: NitroSection) -> bridge.Result_std__shared_ptr_Promise_void___ {
133
134
  do {
134
- try self.__implementation.updateInformationTemplateSections(templateId: String(templateId), section: section)
135
- return bridge.create_Result_void_()
135
+ let __result = try self.__implementation.updateInformationTemplateSections(templateId: String(templateId), section: section)
136
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
137
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
138
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
139
+ __result
140
+ .then({ __result in __promiseHolder.resolve() })
141
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
142
+ return __promise
143
+ }()
144
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
136
145
  } catch (let __error) {
137
146
  let __exceptionPtr = __error.toCpp()
138
- return bridge.create_Result_void_(__exceptionPtr)
147
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
139
148
  }
140
149
  }
141
150
  }
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /// See ``HybridListTemplateSpec``
12
13
  public protocol HybridListTemplateSpec_protocol: HybridObject {
@@ -15,7 +16,7 @@ public protocol HybridListTemplateSpec_protocol: HybridObject {
15
16
 
16
17
  // Methods
17
18
  func createListTemplate(config: ListTemplateConfig) throws -> Void
18
- func updateListTemplateSections(templateId: String, sections: [NitroSection]?) throws -> Void
19
+ func updateListTemplateSections(templateId: String, sections: [NitroSection]?) throws -> Promise<Void>
19
20
  }
20
21
 
21
22
  public extension HybridListTemplateSpec_protocol {
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /**
12
13
  * A class implementation that bridges HybridListTemplateSpec over to C++.
@@ -129,9 +130,9 @@ open class HybridListTemplateSpec_cxx {
129
130
  }
130
131
 
131
132
  @inline(__always)
132
- public final func updateListTemplateSections(templateId: std.string, sections: bridge.std__optional_std__vector_NitroSection__) -> bridge.Result_void_ {
133
+ public final func updateListTemplateSections(templateId: std.string, sections: bridge.std__optional_std__vector_NitroSection__) -> bridge.Result_std__shared_ptr_Promise_void___ {
133
134
  do {
134
- try self.__implementation.updateListTemplateSections(templateId: String(templateId), sections: { () -> [NitroSection]? in
135
+ let __result = try self.__implementation.updateListTemplateSections(templateId: String(templateId), sections: { () -> [NitroSection]? in
135
136
  if bridge.has_value_std__optional_std__vector_NitroSection__(sections) {
136
137
  let __unwrapped = bridge.get_std__optional_std__vector_NitroSection__(sections)
137
138
  return __unwrapped.map({ __item in __item })
@@ -139,10 +140,18 @@ open class HybridListTemplateSpec_cxx {
139
140
  return nil
140
141
  }
141
142
  }())
142
- return bridge.create_Result_void_()
143
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
144
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
145
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
146
+ __result
147
+ .then({ __result in __promiseHolder.resolve() })
148
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
149
+ return __promise
150
+ }()
151
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
143
152
  } catch (let __error) {
144
153
  let __exceptionPtr = __error.toCpp()
145
- return bridge.create_Result_void_(__exceptionPtr)
154
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
146
155
  }
147
156
  }
148
157
  }
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /// See ``HybridMapTemplateSpec``
12
13
  public protocol HybridMapTemplateSpec_protocol: HybridObject {
@@ -20,7 +21,7 @@ public protocol HybridMapTemplateSpec_protocol: HybridObject {
20
21
  func dismissNavigationAlert(templateId: String, navigationAlertId: Double) throws -> Void
21
22
  func showTripSelector(templateId: String, trips: [TripsConfig], selectedTripId: String?, textConfig: TripPreviewTextConfiguration, onTripSelected: @escaping (_ tripId: String, _ routeId: String) -> Void, onTripStarted: @escaping (_ tripId: String, _ routeId: String) -> Void, onBackPressed: @escaping () -> Void, mapButtons: [NitroMapButton]) throws -> TripSelectorCallback
22
23
  func hideTripSelector(templateId: String) throws -> Void
23
- func setTemplateMapButtons(templateId: String, buttons: [NitroMapButton]?) throws -> Void
24
+ func setTemplateMapButtons(templateId: String, buttons: [NitroMapButton]?) throws -> Promise<Void>
24
25
  func updateVisibleTravelEstimate(templateId: String, visibleTravelEstimate: VisibleTravelEstimate) throws -> Void
25
26
  func updateTravelEstimates(templateId: String, steps: [TripPoint]) throws -> Void
26
27
  func updateManeuvers(templateId: String, maneuvers: NitroManeuver) throws -> Void
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /**
12
13
  * A class implementation that bridges HybridMapTemplateSpec over to C++.
@@ -207,9 +208,9 @@ open class HybridMapTemplateSpec_cxx {
207
208
  }
208
209
 
209
210
  @inline(__always)
210
- public final func setTemplateMapButtons(templateId: std.string, buttons: bridge.std__optional_std__vector_NitroMapButton__) -> bridge.Result_void_ {
211
+ public final func setTemplateMapButtons(templateId: std.string, buttons: bridge.std__optional_std__vector_NitroMapButton__) -> bridge.Result_std__shared_ptr_Promise_void___ {
211
212
  do {
212
- try self.__implementation.setTemplateMapButtons(templateId: String(templateId), buttons: { () -> [NitroMapButton]? in
213
+ let __result = try self.__implementation.setTemplateMapButtons(templateId: String(templateId), buttons: { () -> [NitroMapButton]? in
213
214
  if bridge.has_value_std__optional_std__vector_NitroMapButton__(buttons) {
214
215
  let __unwrapped = bridge.get_std__optional_std__vector_NitroMapButton__(buttons)
215
216
  return __unwrapped.map({ __item in __item })
@@ -217,10 +218,18 @@ open class HybridMapTemplateSpec_cxx {
217
218
  return nil
218
219
  }
219
220
  }())
220
- return bridge.create_Result_void_()
221
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
222
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
223
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
224
+ __result
225
+ .then({ __result in __promiseHolder.resolve() })
226
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
227
+ return __promise
228
+ }()
229
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
221
230
  } catch (let __error) {
222
231
  let __exceptionPtr = __error.toCpp()
223
- return bridge.create_Result_void_(__exceptionPtr)
232
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
224
233
  }
225
234
  }
226
235
 
@@ -247,7 +256,7 @@ open class HybridMapTemplateSpec_cxx {
247
256
  }
248
257
 
249
258
  @inline(__always)
250
- public final func updateManeuvers(templateId: std.string, maneuvers: bridge.std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver_) -> bridge.Result_void_ {
259
+ public final func updateManeuvers(templateId: std.string, maneuvers: bridge.std__variant_std__vector_NitroRoutingManeuver___NitroMessageManeuver__NitroLoadingManeuver_) -> bridge.Result_void_ {
251
260
  do {
252
261
  try self.__implementation.updateManeuvers(templateId: String(templateId), maneuvers: { () -> NitroManeuver in
253
262
  let __variant = maneuvers
@@ -258,6 +267,9 @@ open class HybridMapTemplateSpec_cxx {
258
267
  case 1:
259
268
  let __actual = __variant.get_1()
260
269
  return .second(__actual)
270
+ case 2:
271
+ let __actual = __variant.get_2()
272
+ return .third(__actual)
261
273
  default:
262
274
  fatalError("Variant can never have index \(__variant.index())!")
263
275
  }
@@ -7,6 +7,7 @@
7
7
 
8
8
  import Foundation
9
9
  import NitroModules
10
+ import NitroModules
10
11
 
11
12
  /// See ``HybridSearchTemplateSpec``
12
13
  public protocol HybridSearchTemplateSpec_protocol: HybridObject {
@@ -15,7 +16,7 @@ public protocol HybridSearchTemplateSpec_protocol: HybridObject {
15
16
 
16
17
  // Methods
17
18
  func createSearchTemplate(config: SearchTemplateConfig) throws -> Void
18
- func updateSearchResults(templateId: String, results: NitroSection) throws -> Void
19
+ func updateSearchResults(templateId: String, results: NitroSection) throws -> Promise<Void>
19
20
  }
20
21
 
21
22
  public extension HybridSearchTemplateSpec_protocol {