react-native-iap 14.7.13 → 14.7.15

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 (521) hide show
  1. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +151 -120
  2. package/ios/HybridRnIap.swift +113 -69
  3. package/ios/RnIapHelper.swift +256 -165
  4. package/nitrogen/generated/android/NitroIap+autolinking.cmake +40 -1
  5. package/nitrogen/generated/android/NitroIap+autolinking.gradle +1 -1
  6. package/nitrogen/generated/android/NitroIapOnLoad.cpp +32 -22
  7. package/nitrogen/generated/android/NitroIapOnLoad.hpp +14 -5
  8. package/nitrogen/generated/android/c++/JAlternativeBillingModeAndroid.hpp +4 -5
  9. package/nitrogen/generated/android/c++/JAndroidSubscriptionOfferInput.hpp +1 -1
  10. package/nitrogen/generated/android/c++/JBillingProgramAndroid.hpp +6 -7
  11. package/nitrogen/generated/android/c++/JDeveloperProvidedBillingDetailsAndroid.hpp +1 -1
  12. package/nitrogen/generated/android/c++/JExternalLinkLaunchModeAndroid.hpp +4 -5
  13. package/nitrogen/generated/android/c++/JExternalLinkTypeAndroid.hpp +4 -5
  14. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeResultIOS.hpp +10 -6
  15. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeTypeIOS.hpp +3 -4
  16. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenResultIOS.hpp +14 -10
  17. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenTypeIOS.hpp +3 -4
  18. package/nitrogen/generated/android/c++/JExternalPurchaseLinkResultIOS.hpp +10 -6
  19. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeAction.hpp +3 -4
  20. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeResultIOS.hpp +14 -10
  21. package/nitrogen/generated/android/c++/JFunc_void_DeveloperProvidedBillingDetailsAndroid.hpp +3 -2
  22. package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +16 -2
  23. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +10 -2
  24. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +3 -2
  25. package/nitrogen/generated/android/c++/JFunc_void_UserChoiceBillingDetails.hpp +3 -2
  26. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +168 -124
  27. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +31 -32
  28. package/nitrogen/generated/android/c++/JIapPlatform.hpp +3 -4
  29. package/nitrogen/generated/android/c++/JIapStore.hpp +5 -6
  30. package/nitrogen/generated/android/c++/JIapkitPurchaseState.hpp +10 -11
  31. package/nitrogen/generated/android/c++/JInitConnectionConfig.hpp +1 -1
  32. package/nitrogen/generated/android/c++/JNitroActiveSubscription.hpp +48 -41
  33. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +10 -6
  34. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidType.hpp +3 -4
  35. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +26 -22
  36. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +14 -8
  37. package/nitrogen/generated/android/c++/JNitroBillingProgramAvailabilityResultAndroid.hpp +1 -1
  38. package/nitrogen/generated/android/c++/JNitroBillingProgramReportingDetailsAndroid.hpp +1 -1
  39. package/nitrogen/generated/android/c++/JNitroDeepLinkOptionsAndroid.hpp +14 -10
  40. package/nitrogen/generated/android/c++/JNitroDiscountAmountAndroid.hpp +1 -1
  41. package/nitrogen/generated/android/c++/JNitroDiscountDisplayInfoAndroid.hpp +14 -9
  42. package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +10 -6
  43. package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +1 -1
  44. package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +14 -8
  45. package/nitrogen/generated/android/c++/JNitroLaunchExternalLinkParamsAndroid.hpp +1 -1
  46. package/nitrogen/generated/android/c++/JNitroLimitedQuantityInfoAndroid.hpp +1 -1
  47. package/nitrogen/generated/android/c++/JNitroOneTimePurchaseOfferDetail.hpp +38 -26
  48. package/nitrogen/generated/android/c++/JNitroPreorderDetailsAndroid.hpp +1 -1
  49. package/nitrogen/generated/android/c++/JNitroProduct.hpp +115 -119
  50. package/nitrogen/generated/android/c++/JNitroPurchase.hpp +144 -137
  51. package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +27 -14
  52. package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +1 -1
  53. package/nitrogen/generated/android/c++/JNitroReceiptValidationAppleOptions.hpp +1 -1
  54. package/nitrogen/generated/android/c++/JNitroReceiptValidationGoogleOptions.hpp +10 -6
  55. package/nitrogen/generated/android/c++/JNitroReceiptValidationHorizonOptions.hpp +1 -1
  56. package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +18 -11
  57. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +23 -18
  58. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +13 -5
  59. package/nitrogen/generated/android/c++/JNitroRenewalInfoIOS.hpp +48 -42
  60. package/nitrogen/generated/android/c++/JNitroRentalDetailsAndroid.hpp +10 -6
  61. package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +43 -51
  62. package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +41 -45
  63. package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +23 -18
  64. package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +11 -5
  65. package/nitrogen/generated/android/c++/JNitroValidTimeWindowAndroid.hpp +1 -1
  66. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAppleProps.hpp +1 -1
  67. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitGoogleProps.hpp +1 -1
  68. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitProps.hpp +18 -12
  69. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitResult.hpp +1 -1
  70. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderError.hpp +10 -6
  71. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderProps.hpp +12 -5
  72. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderResult.hpp +15 -26
  73. package/nitrogen/generated/android/c++/JPaymentModeIOS.hpp +5 -6
  74. package/nitrogen/generated/android/c++/JPendingPurchaseUpdateAndroid.hpp +3 -2
  75. package/nitrogen/generated/android/c++/JPromotionalOfferJwsInputIOS.hpp +1 -1
  76. package/nitrogen/generated/android/c++/JPurchase.cpp +1 -1
  77. package/nitrogen/generated/android/c++/JPurchase.hpp +12 -3
  78. package/nitrogen/generated/android/c++/JPurchaseAndroid.hpp +64 -74
  79. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +109 -117
  80. package/nitrogen/generated/android/c++/JPurchaseOfferIOS.hpp +1 -1
  81. package/nitrogen/generated/android/c++/JPurchaseState.hpp +4 -5
  82. package/nitrogen/generated/android/c++/JPurchaseVerificationProvider.hpp +3 -4
  83. package/nitrogen/generated/android/c++/JRenewalInfoIOS.hpp +48 -42
  84. package/nitrogen/generated/android/c++/JRequestPurchaseResult.cpp +20 -16
  85. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +42 -17
  86. package/nitrogen/generated/android/c++/JSubscriptionProductReplacementParamsAndroid.hpp +1 -1
  87. package/nitrogen/generated/android/c++/JSubscriptionReplacementModeAndroid.hpp +8 -9
  88. package/nitrogen/generated/android/c++/JUserChoiceBillingDetails.hpp +3 -2
  89. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.cpp +1 -1
  90. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +3 -3
  91. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.cpp +1 -1
  92. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +10 -3
  93. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.cpp +35 -0
  94. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.hpp +82 -0
  95. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.cpp +35 -0
  96. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.hpp +103 -0
  97. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.cpp +35 -0
  98. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.hpp +88 -0
  99. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.cpp +35 -0
  100. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.hpp +84 -0
  101. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.cpp +35 -0
  102. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.hpp +80 -0
  103. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.cpp +26 -0
  104. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.hpp +69 -0
  105. package/nitrogen/generated/android/c++/JVariant_NullType_Double.cpp +26 -0
  106. package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +69 -0
  107. package/nitrogen/generated/android/c++/JVariant_NullType_InitConnectionConfig.cpp +26 -0
  108. package/nitrogen/generated/android/c++/JVariant_NullType_InitConnectionConfig.hpp +76 -0
  109. package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.cpp +33 -0
  110. package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.hpp +77 -0
  111. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesAndroidOptions.cpp +26 -0
  112. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesAndroidOptions.hpp +75 -0
  113. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesIosOptions.cpp +26 -0
  114. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesIosOptions.hpp +73 -0
  115. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountAmountAndroid.cpp +26 -0
  116. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountAmountAndroid.hpp +72 -0
  117. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountDisplayInfoAndroid.cpp +26 -0
  118. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountDisplayInfoAndroid.hpp +77 -0
  119. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionAndroidParams.cpp +26 -0
  120. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionAndroidParams.hpp +74 -0
  121. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionIosParams.cpp +26 -0
  122. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionIosParams.hpp +72 -0
  123. package/nitrogen/generated/android/c++/JVariant_NullType_NitroLimitedQuantityInfoAndroid.cpp +26 -0
  124. package/nitrogen/generated/android/c++/JVariant_NullType_NitroLimitedQuantityInfoAndroid.hpp +71 -0
  125. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPreorderDetailsAndroid.cpp +26 -0
  126. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPreorderDetailsAndroid.hpp +72 -0
  127. package/nitrogen/generated/android/c++/JVariant_NullType_NitroProduct.cpp +26 -0
  128. package/nitrogen/generated/android/c++/JVariant_NullType_NitroProduct.hpp +102 -0
  129. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPurchase.cpp +26 -0
  130. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPurchase.hpp +85 -0
  131. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationAppleOptions.cpp +26 -0
  132. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationAppleOptions.hpp +72 -0
  133. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationGoogleOptions.cpp +26 -0
  134. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationGoogleOptions.hpp +74 -0
  135. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationHorizonOptions.cpp +26 -0
  136. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationHorizonOptions.hpp +72 -0
  137. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRenewalInfoIOS.cpp +26 -0
  138. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRenewalInfoIOS.hpp +76 -0
  139. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRentalDetailsAndroid.cpp +26 -0
  140. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRentalDetailsAndroid.hpp +74 -0
  141. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseAndroid.cpp +26 -0
  142. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseAndroid.hpp +85 -0
  143. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseIos.cpp +26 -0
  144. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseIos.hpp +84 -0
  145. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.cpp +26 -0
  146. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.hpp +75 -0
  147. package/nitrogen/generated/android/c++/JVariant_NullType_NitroValidTimeWindowAndroid.cpp +26 -0
  148. package/nitrogen/generated/android/c++/JVariant_NullType_NitroValidTimeWindowAndroid.hpp +72 -0
  149. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.cpp +26 -0
  150. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.hpp +72 -0
  151. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.cpp +26 -0
  152. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.hpp +72 -0
  153. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitProps.cpp +26 -0
  154. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitProps.hpp +80 -0
  155. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitResult.cpp +26 -0
  156. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitResult.hpp +75 -0
  157. package/nitrogen/generated/android/c++/JVariant_NullType_PendingPurchaseUpdateAndroid.cpp +26 -0
  158. package/nitrogen/generated/android/c++/JVariant_NullType_PendingPurchaseUpdateAndroid.hpp +73 -0
  159. package/nitrogen/generated/android/c++/JVariant_NullType_PromotionalOfferJwsInputIOS.cpp +26 -0
  160. package/nitrogen/generated/android/c++/JVariant_NullType_PromotionalOfferJwsInputIOS.hpp +72 -0
  161. package/nitrogen/generated/android/c++/JVariant_NullType_PurchaseOfferIOS.cpp +26 -0
  162. package/nitrogen/generated/android/c++/JVariant_NullType_PurchaseOfferIOS.hpp +72 -0
  163. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalInfoIOS.cpp +26 -0
  164. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalInfoIOS.hpp +76 -0
  165. package/nitrogen/generated/android/c++/JVariant_NullType_String.cpp +26 -0
  166. package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +70 -0
  167. package/nitrogen/generated/android/c++/JVariant_NullType_SubscriptionProductReplacementParamsAndroid.cpp +26 -0
  168. package/nitrogen/generated/android/c++/JVariant_NullType_SubscriptionProductReplacementParamsAndroid.hpp +74 -0
  169. package/nitrogen/generated/android/c++/JVariant_NullType_WinBackOfferInputIOS.cpp +26 -0
  170. package/nitrogen/generated/android/c++/JVariant_NullType_WinBackOfferInputIOS.hpp +72 -0
  171. package/nitrogen/generated/android/c++/JWinBackOfferInputIOS.hpp +1 -1
  172. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AlternativeBillingModeAndroid.kt +3 -1
  173. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AndroidSubscriptionOfferInput.kt +4 -2
  174. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingProgramAndroid.kt +3 -1
  175. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingDetailsAndroid.kt +4 -2
  176. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalLinkLaunchModeAndroid.kt +3 -1
  177. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalLinkTypeAndroid.kt +3 -1
  178. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkNoticeResultIOS.kt +7 -5
  179. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkNoticeTypeIOS.kt +3 -1
  180. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkTokenResultIOS.kt +8 -6
  181. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkTokenTypeIOS.kt +3 -1
  182. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseLinkResultIOS.kt +7 -5
  183. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseNoticeAction.kt +3 -1
  184. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseNoticeResultIOS.kt +8 -6
  185. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_DeveloperProvidedBillingDetailsAndroid.kt +1 -1
  186. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroProduct.kt +1 -1
  187. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchase.kt +1 -1
  188. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchaseResult.kt +1 -1
  189. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_UserChoiceBillingDetails.kt +1 -1
  190. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +28 -25
  191. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/IapPlatform.kt +3 -1
  192. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/IapStore.kt +3 -1
  193. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/IapkitPurchaseState.kt +3 -1
  194. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InitConnectionConfig.kt +4 -2
  195. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroActiveSubscription.kt +16 -14
  196. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +7 -5
  197. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidType.kt +3 -1
  198. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +11 -9
  199. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +8 -6
  200. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramAvailabilityResultAndroid.kt +4 -2
  201. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramReportingDetailsAndroid.kt +4 -2
  202. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDeepLinkOptionsAndroid.kt +8 -6
  203. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountAmountAndroid.kt +4 -2
  204. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountDisplayInfoAndroid.kt +8 -6
  205. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +7 -5
  206. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +4 -2
  207. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +8 -6
  208. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroIapOnLoad.kt +1 -1
  209. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLaunchExternalLinkParamsAndroid.kt +4 -2
  210. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLimitedQuantityInfoAndroid.kt +4 -2
  211. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroOneTimePurchaseOfferDetail.kt +13 -11
  212. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPreorderDetailsAndroid.kt +4 -2
  213. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +31 -29
  214. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +40 -38
  215. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +10 -8
  216. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +4 -2
  217. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationAppleOptions.kt +4 -2
  218. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationGoogleOptions.kt +7 -5
  219. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationHorizonOptions.kt +4 -2
  220. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +9 -7
  221. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +10 -8
  222. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +7 -5
  223. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRenewalInfoIOS.kt +16 -14
  224. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRentalDetailsAndroid.kt +7 -5
  225. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +14 -12
  226. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +14 -12
  227. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +10 -8
  228. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +7 -5
  229. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroValidTimeWindowAndroid.kt +4 -2
  230. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAppleProps.kt +4 -2
  231. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitGoogleProps.kt +4 -2
  232. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitProps.kt +9 -7
  233. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitResult.kt +4 -2
  234. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderError.kt +7 -5
  235. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderProps.kt +7 -5
  236. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderResult.kt +8 -6
  237. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PaymentModeIOS.kt +3 -1
  238. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PendingPurchaseUpdateAndroid.kt +4 -2
  239. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PromotionalOfferJwsInputIOS.kt +4 -2
  240. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Purchase.kt +1 -7
  241. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseAndroid.kt +20 -18
  242. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +31 -29
  243. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseOfferIOS.kt +4 -2
  244. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseState.kt +3 -1
  245. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseVerificationProvider.kt +3 -1
  246. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalInfoIOS.kt +16 -14
  247. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RequestPurchaseResult.kt +25 -20
  248. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionProductReplacementParamsAndroid.kt +4 -2
  249. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionReplacementModeAndroid.kt +3 -1
  250. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/UserChoiceBillingDetails.kt +4 -2
  251. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +1 -7
  252. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +1 -7
  253. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AndroidSubscriptionOfferInput_.kt +53 -0
  254. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroOneTimePurchaseOfferDetail_.kt +53 -0
  255. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroSubscriptionStatus_.kt +53 -0
  256. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroVerifyPurchaseWithProviderError_.kt +53 -0
  257. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_String_.kt +53 -0
  258. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Boolean.kt +53 -0
  259. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Double.kt +53 -0
  260. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_InitConnectionConfig.kt +53 -0
  261. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Map_String__String_.kt +53 -0
  262. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesAndroidOptions.kt +53 -0
  263. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesIosOptions.kt +53 -0
  264. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountAmountAndroid.kt +53 -0
  265. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountDisplayInfoAndroid.kt +53 -0
  266. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionAndroidParams.kt +53 -0
  267. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionIosParams.kt +53 -0
  268. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroLimitedQuantityInfoAndroid.kt +53 -0
  269. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPreorderDetailsAndroid.kt +53 -0
  270. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroProduct.kt +53 -0
  271. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPurchase.kt +53 -0
  272. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationAppleOptions.kt +53 -0
  273. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationGoogleOptions.kt +53 -0
  274. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationHorizonOptions.kt +53 -0
  275. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRenewalInfoIOS.kt +53 -0
  276. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRentalDetailsAndroid.kt +53 -0
  277. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseAndroid.kt +53 -0
  278. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseIos.kt +53 -0
  279. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroSubscriptionRenewalInfo.kt +53 -0
  280. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroValidTimeWindowAndroid.kt +53 -0
  281. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.kt +53 -0
  282. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.kt +53 -0
  283. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.kt +53 -0
  284. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.kt +53 -0
  285. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PendingPurchaseUpdateAndroid.kt +53 -0
  286. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PromotionalOfferJwsInputIOS.kt +53 -0
  287. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PurchaseOfferIOS.kt +53 -0
  288. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalInfoIOS.kt +53 -0
  289. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_String.kt +53 -0
  290. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_SubscriptionProductReplacementParamsAndroid.kt +53 -0
  291. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_WinBackOfferInputIOS.kt +53 -0
  292. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/WinBackOfferInputIOS.kt +4 -2
  293. package/nitrogen/generated/ios/NitroIap+autolinking.rb +2 -2
  294. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +22 -21
  295. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +1592 -470
  296. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +2 -1
  297. package/nitrogen/generated/ios/NitroIapAutolinking.mm +1 -1
  298. package/nitrogen/generated/ios/NitroIapAutolinking.swift +9 -8
  299. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.cpp +1 -1
  300. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +23 -13
  301. package/nitrogen/generated/ios/swift/AlternativeBillingModeAndroid.swift +1 -1
  302. package/nitrogen/generated/ios/swift/AndroidSubscriptionOfferInput.swift +5 -17
  303. package/nitrogen/generated/ios/swift/BillingProgramAndroid.swift +1 -1
  304. package/nitrogen/generated/ios/swift/DeveloperProvidedBillingDetailsAndroid.swift +3 -9
  305. package/nitrogen/generated/ios/swift/ExternalLinkLaunchModeAndroid.swift +1 -1
  306. package/nitrogen/generated/ios/swift/ExternalLinkTypeAndroid.swift +1 -1
  307. package/nitrogen/generated/ios/swift/ExternalPurchaseCustomLinkNoticeResultIOS.swift +35 -34
  308. package/nitrogen/generated/ios/swift/ExternalPurchaseCustomLinkNoticeTypeIOS.swift +1 -1
  309. package/nitrogen/generated/ios/swift/ExternalPurchaseCustomLinkTokenResultIOS.swift +64 -50
  310. package/nitrogen/generated/ios/swift/ExternalPurchaseCustomLinkTokenTypeIOS.swift +1 -1
  311. package/nitrogen/generated/ios/swift/ExternalPurchaseLinkResultIOS.swift +35 -34
  312. package/nitrogen/generated/ios/swift/ExternalPurchaseNoticeAction.swift +1 -1
  313. package/nitrogen/generated/ios/swift/ExternalPurchaseNoticeResultIOS.swift +66 -58
  314. package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
  315. package/nitrogen/generated/ios/swift/Func_void_DeveloperProvidedBillingDetailsAndroid.swift +1 -2
  316. package/nitrogen/generated/ios/swift/Func_void_ExternalPurchaseCustomLinkNoticeResultIOS.swift +1 -2
  317. package/nitrogen/generated/ios/swift/Func_void_ExternalPurchaseCustomLinkTokenResultIOS.swift +1 -2
  318. package/nitrogen/generated/ios/swift/Func_void_ExternalPurchaseLinkResultIOS.swift +1 -2
  319. package/nitrogen/generated/ios/swift/Func_void_ExternalPurchaseNoticeResultIOS.swift +1 -2
  320. package/nitrogen/generated/ios/swift/Func_void_NitroBillingProgramAvailabilityResultAndroid.swift +1 -2
  321. package/nitrogen/generated/ios/swift/Func_void_NitroBillingProgramReportingDetailsAndroid.swift +1 -2
  322. package/nitrogen/generated/ios/swift/Func_void_NitroProduct.swift +1 -2
  323. package/nitrogen/generated/ios/swift/Func_void_NitroPurchase.swift +1 -2
  324. package/nitrogen/generated/ios/swift/Func_void_NitroPurchaseResult.swift +1 -2
  325. package/nitrogen/generated/ios/swift/Func_void_NitroVerifyPurchaseWithProviderResult.swift +1 -2
  326. package/nitrogen/generated/ios/swift/Func_void_UserChoiceBillingDetails.swift +1 -2
  327. package/nitrogen/generated/ios/swift/Func_void_bool.swift +1 -2
  328. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -2
  329. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +1 -2
  330. package/nitrogen/generated/ios/swift/Func_void_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_.swift +1 -2
  331. package/nitrogen/generated/ios/swift/Func_void_std__variant_bool__NitroPurchaseResult_.swift +1 -2
  332. package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__NitroProduct_.swift +58 -0
  333. package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__NitroPurchase_.swift +58 -0
  334. package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___.swift +76 -0
  335. package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__string_.swift +58 -0
  336. package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__.swift +58 -0
  337. package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroActiveSubscription_.swift +1 -2
  338. package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroProduct_.swift +1 -2
  339. package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroPurchase_.swift +1 -2
  340. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +21 -16
  341. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +207 -157
  342. package/nitrogen/generated/ios/swift/IapPlatform.swift +1 -1
  343. package/nitrogen/generated/ios/swift/IapStore.swift +1 -1
  344. package/nitrogen/generated/ios/swift/IapkitPurchaseState.swift +1 -1
  345. package/nitrogen/generated/ios/swift/InitConnectionConfig.swift +5 -29
  346. package/nitrogen/generated/ios/swift/NitroActiveSubscription.swift +320 -253
  347. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesAndroidOptions.swift +35 -40
  348. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesAndroidType.swift +1 -1
  349. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesIosOptions.swift +157 -122
  350. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesOptions.swift +64 -36
  351. package/nitrogen/generated/ios/swift/NitroBillingProgramAvailabilityResultAndroid.swift +5 -17
  352. package/nitrogen/generated/ios/swift/NitroBillingProgramReportingDetailsAndroid.swift +5 -17
  353. package/nitrogen/generated/ios/swift/NitroDeepLinkOptionsAndroid.swift +64 -50
  354. package/nitrogen/generated/ios/swift/NitroDiscountAmountAndroid.swift +5 -17
  355. package/nitrogen/generated/ios/swift/NitroDiscountDisplayInfoAndroid.swift +64 -36
  356. package/nitrogen/generated/ios/swift/NitroFinishTransactionAndroidParams.swift +35 -34
  357. package/nitrogen/generated/ios/swift/NitroFinishTransactionIosParams.swift +3 -9
  358. package/nitrogen/generated/ios/swift/NitroFinishTransactionParams.swift +64 -36
  359. package/nitrogen/generated/ios/swift/NitroLaunchExternalLinkParamsAndroid.swift +9 -33
  360. package/nitrogen/generated/ios/swift/NitroLimitedQuantityInfoAndroid.swift +5 -17
  361. package/nitrogen/generated/ios/swift/NitroOneTimePurchaseOfferDetail.swift +229 -181
  362. package/nitrogen/generated/ios/swift/NitroPreorderDetailsAndroid.swift +5 -17
  363. package/nitrogen/generated/ios/swift/NitroProduct.swift +862 -704
  364. package/nitrogen/generated/ios/swift/NitroPurchase.swift +1072 -840
  365. package/nitrogen/generated/ios/swift/NitroPurchaseRequest.swift +126 -70
  366. package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +25 -67
  367. package/nitrogen/generated/ios/swift/NitroReceiptValidationAppleOptions.swift +3 -9
  368. package/nitrogen/generated/ios/swift/NitroReceiptValidationGoogleOptions.swift +41 -58
  369. package/nitrogen/generated/ios/swift/NitroReceiptValidationHorizonOptions.swift +7 -25
  370. package/nitrogen/generated/ios/swift/NitroReceiptValidationParams.swift +95 -53
  371. package/nitrogen/generated/ios/swift/NitroReceiptValidationResultAndroid.swift +162 -204
  372. package/nitrogen/generated/ios/swift/NitroReceiptValidationResultIOS.swift +39 -43
  373. package/nitrogen/generated/ios/swift/NitroRenewalInfoIOS.swift +314 -236
  374. package/nitrogen/generated/ios/swift/NitroRentalDetailsAndroid.swift +35 -34
  375. package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +257 -205
  376. package/nitrogen/generated/ios/swift/NitroRequestPurchaseIos.swift +265 -200
  377. package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +130 -100
  378. package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +37 -35
  379. package/nitrogen/generated/ios/swift/NitroValidTimeWindowAndroid.swift +5 -17
  380. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithIapkitAppleProps.swift +3 -9
  381. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithIapkitGoogleProps.swift +3 -9
  382. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithIapkitProps.swift +95 -60
  383. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithIapkitResult.swift +7 -25
  384. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithProviderError.swift +35 -34
  385. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithProviderProps.swift +35 -27
  386. package/nitrogen/generated/ios/swift/NitroVerifyPurchaseWithProviderResult.swift +71 -62
  387. package/nitrogen/generated/ios/swift/PaymentModeIOS.swift +1 -1
  388. package/nitrogen/generated/ios/swift/PendingPurchaseUpdateAndroid.swift +5 -23
  389. package/nitrogen/generated/ios/swift/PromotionalOfferJwsInputIOS.swift +5 -17
  390. package/nitrogen/generated/ios/swift/Purchase.swift +1 -1
  391. package/nitrogen/generated/ios/swift/PurchaseAndroid.swift +457 -406
  392. package/nitrogen/generated/ios/swift/PurchaseIOS.swift +848 -691
  393. package/nitrogen/generated/ios/swift/PurchaseOfferIOS.swift +7 -25
  394. package/nitrogen/generated/ios/swift/PurchaseState.swift +1 -1
  395. package/nitrogen/generated/ios/swift/PurchaseVerificationProvider.swift +1 -1
  396. package/nitrogen/generated/ios/swift/RenewalInfoIOS.swift +314 -236
  397. package/nitrogen/generated/ios/swift/RequestPurchaseResult.swift +7 -6
  398. package/nitrogen/generated/ios/swift/SubscriptionProductReplacementParamsAndroid.swift +5 -17
  399. package/nitrogen/generated/ios/swift/SubscriptionReplacementModeAndroid.swift +1 -1
  400. package/nitrogen/generated/ios/swift/UserChoiceBillingDetails.swift +5 -23
  401. package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +1 -1
  402. package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +1 -1
  403. package/nitrogen/generated/ios/swift/Variant_NullType_Bool.swift +18 -0
  404. package/nitrogen/generated/ios/swift/Variant_NullType_Dictionary_String__String_.swift +18 -0
  405. package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +18 -0
  406. package/nitrogen/generated/ios/swift/Variant_NullType_InitConnectionConfig.swift +18 -0
  407. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesAndroidOptions.swift +18 -0
  408. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesIosOptions.swift +18 -0
  409. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountAmountAndroid.swift +18 -0
  410. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountDisplayInfoAndroid.swift +18 -0
  411. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionAndroidParams.swift +18 -0
  412. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionIosParams.swift +18 -0
  413. package/nitrogen/generated/ios/swift/Variant_NullType_NitroLimitedQuantityInfoAndroid.swift +18 -0
  414. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPreorderDetailsAndroid.swift +18 -0
  415. package/nitrogen/generated/ios/swift/Variant_NullType_NitroProduct.swift +18 -0
  416. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPurchase.swift +18 -0
  417. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationAppleOptions.swift +18 -0
  418. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationGoogleOptions.swift +18 -0
  419. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationHorizonOptions.swift +18 -0
  420. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRenewalInfoIOS.swift +18 -0
  421. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRentalDetailsAndroid.swift +18 -0
  422. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseAndroid.swift +18 -0
  423. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseIos.swift +18 -0
  424. package/nitrogen/generated/ios/swift/Variant_NullType_NitroSubscriptionRenewalInfo.swift +18 -0
  425. package/nitrogen/generated/ios/swift/Variant_NullType_NitroValidTimeWindowAndroid.swift +18 -0
  426. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.swift +18 -0
  427. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.swift +18 -0
  428. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.swift +18 -0
  429. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.swift +18 -0
  430. package/nitrogen/generated/ios/swift/Variant_NullType_PendingPurchaseUpdateAndroid.swift +18 -0
  431. package/nitrogen/generated/ios/swift/Variant_NullType_PromotionalOfferJwsInputIOS.swift +18 -0
  432. package/nitrogen/generated/ios/swift/Variant_NullType_PurchaseOfferIOS.swift +18 -0
  433. package/nitrogen/generated/ios/swift/Variant_NullType_RenewalInfoIOS.swift +18 -0
  434. package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +18 -0
  435. package/nitrogen/generated/ios/swift/Variant_NullType_SubscriptionProductReplacementParamsAndroid.swift +18 -0
  436. package/nitrogen/generated/ios/swift/Variant_NullType_WinBackOfferInputIOS.swift +18 -0
  437. package/nitrogen/generated/ios/swift/Variant_NullType__AndroidSubscriptionOfferInput_.swift +18 -0
  438. package/nitrogen/generated/ios/swift/Variant_NullType__NitroOneTimePurchaseOfferDetail_.swift +18 -0
  439. package/nitrogen/generated/ios/swift/Variant_NullType__NitroSubscriptionStatus_.swift +18 -0
  440. package/nitrogen/generated/ios/swift/Variant_NullType__NitroVerifyPurchaseWithProviderError_.swift +18 -0
  441. package/nitrogen/generated/ios/swift/Variant_NullType__String_.swift +18 -0
  442. package/nitrogen/generated/ios/swift/WinBackOfferInputIOS.swift +3 -9
  443. package/nitrogen/generated/shared/c++/AlternativeBillingModeAndroid.hpp +1 -1
  444. package/nitrogen/generated/shared/c++/AndroidSubscriptionOfferInput.hpp +16 -8
  445. package/nitrogen/generated/shared/c++/BillingProgramAndroid.hpp +1 -1
  446. package/nitrogen/generated/shared/c++/DeveloperProvidedBillingDetailsAndroid.hpp +13 -5
  447. package/nitrogen/generated/shared/c++/ExternalLinkLaunchModeAndroid.hpp +1 -1
  448. package/nitrogen/generated/shared/c++/ExternalLinkTypeAndroid.hpp +1 -1
  449. package/nitrogen/generated/shared/c++/ExternalPurchaseCustomLinkNoticeResultIOS.hpp +20 -10
  450. package/nitrogen/generated/shared/c++/ExternalPurchaseCustomLinkNoticeTypeIOS.hpp +1 -1
  451. package/nitrogen/generated/shared/c++/ExternalPurchaseCustomLinkTokenResultIOS.hpp +21 -11
  452. package/nitrogen/generated/shared/c++/ExternalPurchaseCustomLinkTokenTypeIOS.hpp +1 -1
  453. package/nitrogen/generated/shared/c++/ExternalPurchaseLinkResultIOS.hpp +20 -10
  454. package/nitrogen/generated/shared/c++/ExternalPurchaseNoticeAction.hpp +1 -1
  455. package/nitrogen/generated/shared/c++/ExternalPurchaseNoticeResultIOS.hpp +24 -14
  456. package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +1 -1
  457. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +14 -13
  458. package/nitrogen/generated/shared/c++/IapPlatform.hpp +1 -1
  459. package/nitrogen/generated/shared/c++/IapStore.hpp +1 -1
  460. package/nitrogen/generated/shared/c++/IapkitPurchaseState.hpp +1 -1
  461. package/nitrogen/generated/shared/c++/InitConnectionConfig.hpp +16 -8
  462. package/nitrogen/generated/shared/c++/NitroActiveSubscription.hpp +65 -55
  463. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesAndroidOptions.hpp +20 -10
  464. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesAndroidType.hpp +1 -1
  465. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesIosOptions.hpp +33 -23
  466. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesOptions.hpp +21 -11
  467. package/nitrogen/generated/shared/c++/NitroBillingProgramAvailabilityResultAndroid.hpp +16 -8
  468. package/nitrogen/generated/shared/c++/NitroBillingProgramReportingDetailsAndroid.hpp +16 -8
  469. package/nitrogen/generated/shared/c++/NitroDeepLinkOptionsAndroid.hpp +21 -11
  470. package/nitrogen/generated/shared/c++/NitroDiscountAmountAndroid.hpp +16 -8
  471. package/nitrogen/generated/shared/c++/NitroDiscountDisplayInfoAndroid.hpp +21 -11
  472. package/nitrogen/generated/shared/c++/NitroFinishTransactionAndroidParams.hpp +20 -10
  473. package/nitrogen/generated/shared/c++/NitroFinishTransactionIosParams.hpp +13 -5
  474. package/nitrogen/generated/shared/c++/NitroFinishTransactionParams.hpp +21 -11
  475. package/nitrogen/generated/shared/c++/NitroLaunchExternalLinkParamsAndroid.hpp +22 -14
  476. package/nitrogen/generated/shared/c++/NitroLimitedQuantityInfoAndroid.hpp +16 -8
  477. package/nitrogen/generated/shared/c++/NitroOneTimePurchaseOfferDetail.hpp +56 -46
  478. package/nitrogen/generated/shared/c++/NitroPreorderDetailsAndroid.hpp +16 -8
  479. package/nitrogen/generated/shared/c++/NitroProduct.hpp +137 -127
  480. package/nitrogen/generated/shared/c++/NitroPurchase.hpp +173 -163
  481. package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +29 -19
  482. package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +25 -17
  483. package/nitrogen/generated/shared/c++/NitroReceiptValidationAppleOptions.hpp +13 -5
  484. package/nitrogen/generated/shared/c++/NitroReceiptValidationGoogleOptions.hpp +29 -19
  485. package/nitrogen/generated/shared/c++/NitroReceiptValidationHorizonOptions.hpp +19 -11
  486. package/nitrogen/generated/shared/c++/NitroReceiptValidationParams.hpp +25 -15
  487. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultAndroid.hpp +71 -61
  488. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +26 -16
  489. package/nitrogen/generated/shared/c++/NitroRenewalInfoIOS.hpp +56 -46
  490. package/nitrogen/generated/shared/c++/NitroRentalDetailsAndroid.hpp +20 -10
  491. package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +48 -38
  492. package/nitrogen/generated/shared/c++/NitroRequestPurchaseIos.hpp +48 -38
  493. package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +35 -25
  494. package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +23 -13
  495. package/nitrogen/generated/shared/c++/NitroValidTimeWindowAndroid.hpp +16 -8
  496. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithIapkitAppleProps.hpp +13 -5
  497. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithIapkitGoogleProps.hpp +13 -5
  498. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithIapkitProps.hpp +25 -15
  499. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithIapkitResult.hpp +19 -11
  500. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderError.hpp +20 -10
  501. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderProps.hpp +20 -10
  502. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderResult.hpp +24 -14
  503. package/nitrogen/generated/shared/c++/PaymentModeIOS.hpp +1 -1
  504. package/nitrogen/generated/shared/c++/PendingPurchaseUpdateAndroid.hpp +16 -8
  505. package/nitrogen/generated/shared/c++/PromotionalOfferJwsInputIOS.hpp +16 -8
  506. package/nitrogen/generated/shared/c++/PurchaseAndroid.hpp +93 -83
  507. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +140 -130
  508. package/nitrogen/generated/shared/c++/PurchaseOfferIOS.hpp +19 -11
  509. package/nitrogen/generated/shared/c++/PurchaseState.hpp +1 -1
  510. package/nitrogen/generated/shared/c++/PurchaseVerificationProvider.hpp +1 -1
  511. package/nitrogen/generated/shared/c++/RenewalInfoIOS.hpp +56 -46
  512. package/nitrogen/generated/shared/c++/SubscriptionProductReplacementParamsAndroid.hpp +16 -8
  513. package/nitrogen/generated/shared/c++/SubscriptionReplacementModeAndroid.hpp +1 -1
  514. package/nitrogen/generated/shared/c++/UserChoiceBillingDetails.hpp +16 -8
  515. package/nitrogen/generated/shared/c++/WinBackOfferInputIOS.hpp +13 -5
  516. package/package.json +6 -6
  517. package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroProduct_.swift +0 -47
  518. package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroPurchase_.swift +0 -47
  519. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +0 -54
  520. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____.swift +0 -81
  521. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__vector_NitroSubscriptionStatus__.swift +0 -54
@@ -2,7 +2,7 @@
2
2
  /// NitroIap-Swift-Cxx-Bridge.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -200,7 +200,7 @@ namespace NitroIap { class HybridRnIapSpec_cxx; }
200
200
  #include "SubscriptionReplacementModeAndroid.hpp"
201
201
  #include "UserChoiceBillingDetails.hpp"
202
202
  #include "WinBackOfferInputIOS.hpp"
203
- #include <NitroModules/FastVectorCopy.hpp>
203
+ #include <NitroModules/Null.hpp>
204
204
  #include <NitroModules/Promise.hpp>
205
205
  #include <NitroModules/PromiseHolder.hpp>
206
206
  #include <NitroModules/Result.hpp>
@@ -287,7 +287,7 @@ namespace margelo::nitro::iap::bridge::swift {
287
287
  return optional.has_value();
288
288
  }
289
289
  inline AlternativeBillingModeAndroid get_std__optional_AlternativeBillingModeAndroid_(const std::optional<AlternativeBillingModeAndroid>& optional) noexcept {
290
- return *optional;
290
+ return optional.value();
291
291
  }
292
292
 
293
293
  // pragma MARK: std::optional<BillingProgramAndroid>
@@ -302,22 +302,95 @@ namespace margelo::nitro::iap::bridge::swift {
302
302
  return optional.has_value();
303
303
  }
304
304
  inline BillingProgramAndroid get_std__optional_BillingProgramAndroid_(const std::optional<BillingProgramAndroid>& optional) noexcept {
305
- return *optional;
305
+ return optional.value();
306
306
  }
307
307
 
308
- // pragma MARK: std::optional<InitConnectionConfig>
308
+ // pragma MARK: std::variant<nitro::NullType, InitConnectionConfig>
309
309
  /**
310
- * Specialized version of `std::optional<InitConnectionConfig>`.
310
+ * Wrapper struct for `std::variant<nitro::NullType, InitConnectionConfig>`.
311
+ * std::variant cannot be used in Swift because of a Swift bug.
312
+ * Not even specializing it works. So we create a wrapper struct.
313
+ */
314
+ struct std__variant_nitro__NullType__InitConnectionConfig_ final {
315
+ std::variant<nitro::NullType, InitConnectionConfig> variant;
316
+ std__variant_nitro__NullType__InitConnectionConfig_(std::variant<nitro::NullType, InitConnectionConfig> variant): variant(variant) { }
317
+ operator std::variant<nitro::NullType, InitConnectionConfig>() const noexcept {
318
+ return variant;
319
+ }
320
+ inline size_t index() const noexcept {
321
+ return variant.index();
322
+ }
323
+ inline nitro::NullType get_0() const noexcept {
324
+ return std::get<0>(variant);
325
+ }
326
+ inline InitConnectionConfig get_1() const noexcept {
327
+ return std::get<1>(variant);
328
+ }
329
+ };
330
+ inline std__variant_nitro__NullType__InitConnectionConfig_ create_std__variant_nitro__NullType__InitConnectionConfig_(nitro::NullType value) noexcept {
331
+ return std__variant_nitro__NullType__InitConnectionConfig_(value);
332
+ }
333
+ inline std__variant_nitro__NullType__InitConnectionConfig_ create_std__variant_nitro__NullType__InitConnectionConfig_(const InitConnectionConfig& value) noexcept {
334
+ return std__variant_nitro__NullType__InitConnectionConfig_(value);
335
+ }
336
+
337
+ // pragma MARK: std::optional<std::variant<nitro::NullType, InitConnectionConfig>>
338
+ /**
339
+ * Specialized version of `std::optional<std::variant<nitro::NullType, InitConnectionConfig>>`.
340
+ */
341
+ using std__optional_std__variant_nitro__NullType__InitConnectionConfig__ = std::optional<std::variant<nitro::NullType, InitConnectionConfig>>;
342
+ inline std::optional<std::variant<nitro::NullType, InitConnectionConfig>> create_std__optional_std__variant_nitro__NullType__InitConnectionConfig__(const std::variant<nitro::NullType, InitConnectionConfig>& value) noexcept {
343
+ return std::optional<std::variant<nitro::NullType, InitConnectionConfig>>(value);
344
+ }
345
+ inline bool has_value_std__optional_std__variant_nitro__NullType__InitConnectionConfig__(const std::optional<std::variant<nitro::NullType, InitConnectionConfig>>& optional) noexcept {
346
+ return optional.has_value();
347
+ }
348
+ inline std::variant<nitro::NullType, InitConnectionConfig> get_std__optional_std__variant_nitro__NullType__InitConnectionConfig__(const std::optional<std::variant<nitro::NullType, InitConnectionConfig>>& optional) noexcept {
349
+ return optional.value();
350
+ }
351
+
352
+ // pragma MARK: std::variant<nitro::NullType, std::string>
353
+ /**
354
+ * Wrapper struct for `std::variant<nitro::NullType, std::string>`.
355
+ * std::variant cannot be used in Swift because of a Swift bug.
356
+ * Not even specializing it works. So we create a wrapper struct.
357
+ */
358
+ struct std__variant_nitro__NullType__std__string_ final {
359
+ std::variant<nitro::NullType, std::string> variant;
360
+ std__variant_nitro__NullType__std__string_(std::variant<nitro::NullType, std::string> variant): variant(variant) { }
361
+ operator std::variant<nitro::NullType, std::string>() const noexcept {
362
+ return variant;
363
+ }
364
+ inline size_t index() const noexcept {
365
+ return variant.index();
366
+ }
367
+ inline nitro::NullType get_0() const noexcept {
368
+ return std::get<0>(variant);
369
+ }
370
+ inline std::string get_1() const noexcept {
371
+ return std::get<1>(variant);
372
+ }
373
+ };
374
+ inline std__variant_nitro__NullType__std__string_ create_std__variant_nitro__NullType__std__string_(nitro::NullType value) noexcept {
375
+ return std__variant_nitro__NullType__std__string_(value);
376
+ }
377
+ inline std__variant_nitro__NullType__std__string_ create_std__variant_nitro__NullType__std__string_(const std::string& value) noexcept {
378
+ return std__variant_nitro__NullType__std__string_(value);
379
+ }
380
+
381
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::string>>
382
+ /**
383
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::string>>`.
311
384
  */
312
- using std__optional_InitConnectionConfig_ = std::optional<InitConnectionConfig>;
313
- inline std::optional<InitConnectionConfig> create_std__optional_InitConnectionConfig_(const InitConnectionConfig& value) noexcept {
314
- return std::optional<InitConnectionConfig>(value);
385
+ using std__optional_std__variant_nitro__NullType__std__string__ = std::optional<std::variant<nitro::NullType, std::string>>;
386
+ inline std::optional<std::variant<nitro::NullType, std::string>> create_std__optional_std__variant_nitro__NullType__std__string__(const std::variant<nitro::NullType, std::string>& value) noexcept {
387
+ return std::optional<std::variant<nitro::NullType, std::string>>(value);
315
388
  }
316
- inline bool has_value_std__optional_InitConnectionConfig_(const std::optional<InitConnectionConfig>& optional) noexcept {
389
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__string__(const std::optional<std::variant<nitro::NullType, std::string>>& optional) noexcept {
317
390
  return optional.has_value();
318
391
  }
319
- inline InitConnectionConfig get_std__optional_InitConnectionConfig_(const std::optional<InitConnectionConfig>& optional) noexcept {
320
- return *optional;
392
+ inline std::variant<nitro::NullType, std::string> get_std__optional_std__variant_nitro__NullType__std__string__(const std::optional<std::variant<nitro::NullType, std::string>>& optional) noexcept {
393
+ return optional.value();
321
394
  }
322
395
 
323
396
  // pragma MARK: std::optional<std::string>
@@ -332,82 +405,227 @@ namespace margelo::nitro::iap::bridge::swift {
332
405
  return optional.has_value();
333
406
  }
334
407
  inline std::string get_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
335
- return *optional;
408
+ return optional.value();
336
409
  }
337
410
 
338
- // pragma MARK: std::optional<double>
411
+ // pragma MARK: std::variant<nitro::NullType, double>
339
412
  /**
340
- * Specialized version of `std::optional<double>`.
413
+ * Wrapper struct for `std::variant<nitro::NullType, double>`.
414
+ * std::variant cannot be used in Swift because of a Swift bug.
415
+ * Not even specializing it works. So we create a wrapper struct.
341
416
  */
342
- using std__optional_double_ = std::optional<double>;
343
- inline std::optional<double> create_std__optional_double_(const double& value) noexcept {
344
- return std::optional<double>(value);
417
+ struct std__variant_nitro__NullType__double_ final {
418
+ std::variant<nitro::NullType, double> variant;
419
+ std__variant_nitro__NullType__double_(std::variant<nitro::NullType, double> variant): variant(variant) { }
420
+ operator std::variant<nitro::NullType, double>() const noexcept {
421
+ return variant;
422
+ }
423
+ inline size_t index() const noexcept {
424
+ return variant.index();
425
+ }
426
+ inline nitro::NullType get_0() const noexcept {
427
+ return std::get<0>(variant);
428
+ }
429
+ inline double get_1() const noexcept {
430
+ return std::get<1>(variant);
431
+ }
432
+ };
433
+ inline std__variant_nitro__NullType__double_ create_std__variant_nitro__NullType__double_(nitro::NullType value) noexcept {
434
+ return std__variant_nitro__NullType__double_(value);
345
435
  }
346
- inline bool has_value_std__optional_double_(const std::optional<double>& optional) noexcept {
436
+ inline std__variant_nitro__NullType__double_ create_std__variant_nitro__NullType__double_(double value) noexcept {
437
+ return std__variant_nitro__NullType__double_(value);
438
+ }
439
+
440
+ // pragma MARK: std::optional<std::variant<nitro::NullType, double>>
441
+ /**
442
+ * Specialized version of `std::optional<std::variant<nitro::NullType, double>>`.
443
+ */
444
+ using std__optional_std__variant_nitro__NullType__double__ = std::optional<std::variant<nitro::NullType, double>>;
445
+ inline std::optional<std::variant<nitro::NullType, double>> create_std__optional_std__variant_nitro__NullType__double__(const std::variant<nitro::NullType, double>& value) noexcept {
446
+ return std::optional<std::variant<nitro::NullType, double>>(value);
447
+ }
448
+ inline bool has_value_std__optional_std__variant_nitro__NullType__double__(const std::optional<std::variant<nitro::NullType, double>>& optional) noexcept {
347
449
  return optional.has_value();
348
450
  }
349
- inline double get_std__optional_double_(const std::optional<double>& optional) noexcept {
350
- return *optional;
451
+ inline std::variant<nitro::NullType, double> get_std__optional_std__variant_nitro__NullType__double__(const std::optional<std::variant<nitro::NullType, double>>& optional) noexcept {
452
+ return optional.value();
453
+ }
454
+
455
+ // pragma MARK: std::variant<nitro::NullType, bool>
456
+ /**
457
+ * Wrapper struct for `std::variant<nitro::NullType, bool>`.
458
+ * std::variant cannot be used in Swift because of a Swift bug.
459
+ * Not even specializing it works. So we create a wrapper struct.
460
+ */
461
+ struct std__variant_nitro__NullType__bool_ final {
462
+ std::variant<nitro::NullType, bool> variant;
463
+ std__variant_nitro__NullType__bool_(std::variant<nitro::NullType, bool> variant): variant(variant) { }
464
+ operator std::variant<nitro::NullType, bool>() const noexcept {
465
+ return variant;
466
+ }
467
+ inline size_t index() const noexcept {
468
+ return variant.index();
469
+ }
470
+ inline nitro::NullType get_0() const noexcept {
471
+ return std::get<0>(variant);
472
+ }
473
+ inline bool get_1() const noexcept {
474
+ return std::get<1>(variant);
475
+ }
476
+ };
477
+ inline std__variant_nitro__NullType__bool_ create_std__variant_nitro__NullType__bool_(nitro::NullType value) noexcept {
478
+ return std__variant_nitro__NullType__bool_(value);
479
+ }
480
+ inline std__variant_nitro__NullType__bool_ create_std__variant_nitro__NullType__bool_(bool value) noexcept {
481
+ return std__variant_nitro__NullType__bool_(value);
351
482
  }
352
483
 
353
- // pragma MARK: std::optional<bool>
484
+ // pragma MARK: std::optional<std::variant<nitro::NullType, bool>>
354
485
  /**
355
- * Specialized version of `std::optional<bool>`.
486
+ * Specialized version of `std::optional<std::variant<nitro::NullType, bool>>`.
356
487
  */
357
- using std__optional_bool_ = std::optional<bool>;
358
- inline std::optional<bool> create_std__optional_bool_(const bool& value) noexcept {
359
- return std::optional<bool>(value);
488
+ using std__optional_std__variant_nitro__NullType__bool__ = std::optional<std::variant<nitro::NullType, bool>>;
489
+ inline std::optional<std::variant<nitro::NullType, bool>> create_std__optional_std__variant_nitro__NullType__bool__(const std::variant<nitro::NullType, bool>& value) noexcept {
490
+ return std::optional<std::variant<nitro::NullType, bool>>(value);
360
491
  }
361
- inline bool has_value_std__optional_bool_(const std::optional<bool>& optional) noexcept {
492
+ inline bool has_value_std__optional_std__variant_nitro__NullType__bool__(const std::optional<std::variant<nitro::NullType, bool>>& optional) noexcept {
362
493
  return optional.has_value();
363
494
  }
364
- inline bool get_std__optional_bool_(const std::optional<bool>& optional) noexcept {
365
- return *optional;
495
+ inline std::variant<nitro::NullType, bool> get_std__optional_std__variant_nitro__NullType__bool__(const std::optional<std::variant<nitro::NullType, bool>>& optional) noexcept {
496
+ return optional.value();
366
497
  }
367
498
 
368
- // pragma MARK: std::optional<NitroDiscountAmountAndroid>
499
+ // pragma MARK: std::variant<nitro::NullType, NitroDiscountAmountAndroid>
369
500
  /**
370
- * Specialized version of `std::optional<NitroDiscountAmountAndroid>`.
501
+ * Wrapper struct for `std::variant<nitro::NullType, NitroDiscountAmountAndroid>`.
502
+ * std::variant cannot be used in Swift because of a Swift bug.
503
+ * Not even specializing it works. So we create a wrapper struct.
371
504
  */
372
- using std__optional_NitroDiscountAmountAndroid_ = std::optional<NitroDiscountAmountAndroid>;
373
- inline std::optional<NitroDiscountAmountAndroid> create_std__optional_NitroDiscountAmountAndroid_(const NitroDiscountAmountAndroid& value) noexcept {
374
- return std::optional<NitroDiscountAmountAndroid>(value);
505
+ struct std__variant_nitro__NullType__NitroDiscountAmountAndroid_ final {
506
+ std::variant<nitro::NullType, NitroDiscountAmountAndroid> variant;
507
+ std__variant_nitro__NullType__NitroDiscountAmountAndroid_(std::variant<nitro::NullType, NitroDiscountAmountAndroid> variant): variant(variant) { }
508
+ operator std::variant<nitro::NullType, NitroDiscountAmountAndroid>() const noexcept {
509
+ return variant;
510
+ }
511
+ inline size_t index() const noexcept {
512
+ return variant.index();
513
+ }
514
+ inline nitro::NullType get_0() const noexcept {
515
+ return std::get<0>(variant);
516
+ }
517
+ inline NitroDiscountAmountAndroid get_1() const noexcept {
518
+ return std::get<1>(variant);
519
+ }
520
+ };
521
+ inline std__variant_nitro__NullType__NitroDiscountAmountAndroid_ create_std__variant_nitro__NullType__NitroDiscountAmountAndroid_(nitro::NullType value) noexcept {
522
+ return std__variant_nitro__NullType__NitroDiscountAmountAndroid_(value);
523
+ }
524
+ inline std__variant_nitro__NullType__NitroDiscountAmountAndroid_ create_std__variant_nitro__NullType__NitroDiscountAmountAndroid_(const NitroDiscountAmountAndroid& value) noexcept {
525
+ return std__variant_nitro__NullType__NitroDiscountAmountAndroid_(value);
526
+ }
527
+
528
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>
529
+ /**
530
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>`.
531
+ */
532
+ using std__optional_std__variant_nitro__NullType__NitroDiscountAmountAndroid__ = std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>;
533
+ inline std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>> create_std__optional_std__variant_nitro__NullType__NitroDiscountAmountAndroid__(const std::variant<nitro::NullType, NitroDiscountAmountAndroid>& value) noexcept {
534
+ return std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>(value);
375
535
  }
376
- inline bool has_value_std__optional_NitroDiscountAmountAndroid_(const std::optional<NitroDiscountAmountAndroid>& optional) noexcept {
536
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroDiscountAmountAndroid__(const std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>& optional) noexcept {
377
537
  return optional.has_value();
378
538
  }
379
- inline NitroDiscountAmountAndroid get_std__optional_NitroDiscountAmountAndroid_(const std::optional<NitroDiscountAmountAndroid>& optional) noexcept {
380
- return *optional;
539
+ inline std::variant<nitro::NullType, NitroDiscountAmountAndroid> get_std__optional_std__variant_nitro__NullType__NitroDiscountAmountAndroid__(const std::optional<std::variant<nitro::NullType, NitroDiscountAmountAndroid>>& optional) noexcept {
540
+ return optional.value();
381
541
  }
382
542
 
383
- // pragma MARK: std::optional<NitroDiscountDisplayInfoAndroid>
543
+ // pragma MARK: std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>
384
544
  /**
385
- * Specialized version of `std::optional<NitroDiscountDisplayInfoAndroid>`.
545
+ * Wrapper struct for `std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>`.
546
+ * std::variant cannot be used in Swift because of a Swift bug.
547
+ * Not even specializing it works. So we create a wrapper struct.
386
548
  */
387
- using std__optional_NitroDiscountDisplayInfoAndroid_ = std::optional<NitroDiscountDisplayInfoAndroid>;
388
- inline std::optional<NitroDiscountDisplayInfoAndroid> create_std__optional_NitroDiscountDisplayInfoAndroid_(const NitroDiscountDisplayInfoAndroid& value) noexcept {
389
- return std::optional<NitroDiscountDisplayInfoAndroid>(value);
549
+ struct std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_ final {
550
+ std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid> variant;
551
+ std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_(std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid> variant): variant(variant) { }
552
+ operator std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>() const noexcept {
553
+ return variant;
554
+ }
555
+ inline size_t index() const noexcept {
556
+ return variant.index();
557
+ }
558
+ inline nitro::NullType get_0() const noexcept {
559
+ return std::get<0>(variant);
560
+ }
561
+ inline NitroDiscountDisplayInfoAndroid get_1() const noexcept {
562
+ return std::get<1>(variant);
563
+ }
564
+ };
565
+ inline std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_ create_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_(nitro::NullType value) noexcept {
566
+ return std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_(value);
567
+ }
568
+ inline std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_ create_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_(const NitroDiscountDisplayInfoAndroid& value) noexcept {
569
+ return std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid_(value);
390
570
  }
391
- inline bool has_value_std__optional_NitroDiscountDisplayInfoAndroid_(const std::optional<NitroDiscountDisplayInfoAndroid>& optional) noexcept {
571
+
572
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>
573
+ /**
574
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>`.
575
+ */
576
+ using std__optional_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid__ = std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>;
577
+ inline std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>> create_std__optional_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid__(const std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>& value) noexcept {
578
+ return std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>(value);
579
+ }
580
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid__(const std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>& optional) noexcept {
392
581
  return optional.has_value();
393
582
  }
394
- inline NitroDiscountDisplayInfoAndroid get_std__optional_NitroDiscountDisplayInfoAndroid_(const std::optional<NitroDiscountDisplayInfoAndroid>& optional) noexcept {
395
- return *optional;
583
+ inline std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid> get_std__optional_std__variant_nitro__NullType__NitroDiscountDisplayInfoAndroid__(const std::optional<std::variant<nitro::NullType, NitroDiscountDisplayInfoAndroid>>& optional) noexcept {
584
+ return optional.value();
585
+ }
586
+
587
+ // pragma MARK: std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>
588
+ /**
589
+ * Wrapper struct for `std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>`.
590
+ * std::variant cannot be used in Swift because of a Swift bug.
591
+ * Not even specializing it works. So we create a wrapper struct.
592
+ */
593
+ struct std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_ final {
594
+ std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid> variant;
595
+ std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_(std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid> variant): variant(variant) { }
596
+ operator std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>() const noexcept {
597
+ return variant;
598
+ }
599
+ inline size_t index() const noexcept {
600
+ return variant.index();
601
+ }
602
+ inline nitro::NullType get_0() const noexcept {
603
+ return std::get<0>(variant);
604
+ }
605
+ inline NitroLimitedQuantityInfoAndroid get_1() const noexcept {
606
+ return std::get<1>(variant);
607
+ }
608
+ };
609
+ inline std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_ create_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_(nitro::NullType value) noexcept {
610
+ return std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_(value);
611
+ }
612
+ inline std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_ create_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_(const NitroLimitedQuantityInfoAndroid& value) noexcept {
613
+ return std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid_(value);
396
614
  }
397
615
 
398
- // pragma MARK: std::optional<NitroLimitedQuantityInfoAndroid>
616
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>
399
617
  /**
400
- * Specialized version of `std::optional<NitroLimitedQuantityInfoAndroid>`.
618
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>`.
401
619
  */
402
- using std__optional_NitroLimitedQuantityInfoAndroid_ = std::optional<NitroLimitedQuantityInfoAndroid>;
403
- inline std::optional<NitroLimitedQuantityInfoAndroid> create_std__optional_NitroLimitedQuantityInfoAndroid_(const NitroLimitedQuantityInfoAndroid& value) noexcept {
404
- return std::optional<NitroLimitedQuantityInfoAndroid>(value);
620
+ using std__optional_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid__ = std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>;
621
+ inline std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>> create_std__optional_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid__(const std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>& value) noexcept {
622
+ return std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>(value);
405
623
  }
406
- inline bool has_value_std__optional_NitroLimitedQuantityInfoAndroid_(const std::optional<NitroLimitedQuantityInfoAndroid>& optional) noexcept {
624
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid__(const std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>& optional) noexcept {
407
625
  return optional.has_value();
408
626
  }
409
- inline NitroLimitedQuantityInfoAndroid get_std__optional_NitroLimitedQuantityInfoAndroid_(const std::optional<NitroLimitedQuantityInfoAndroid>& optional) noexcept {
410
- return *optional;
627
+ inline std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid> get_std__optional_std__variant_nitro__NullType__NitroLimitedQuantityInfoAndroid__(const std::optional<std::variant<nitro::NullType, NitroLimitedQuantityInfoAndroid>>& optional) noexcept {
628
+ return optional.value();
411
629
  }
412
630
 
413
631
  // pragma MARK: std::vector<std::string>
@@ -421,49 +639,136 @@ namespace margelo::nitro::iap::bridge::swift {
421
639
  return vector;
422
640
  }
423
641
 
424
- // pragma MARK: std::optional<NitroPreorderDetailsAndroid>
642
+ // pragma MARK: std::variant<nitro::NullType, NitroPreorderDetailsAndroid>
643
+ /**
644
+ * Wrapper struct for `std::variant<nitro::NullType, NitroPreorderDetailsAndroid>`.
645
+ * std::variant cannot be used in Swift because of a Swift bug.
646
+ * Not even specializing it works. So we create a wrapper struct.
647
+ */
648
+ struct std__variant_nitro__NullType__NitroPreorderDetailsAndroid_ final {
649
+ std::variant<nitro::NullType, NitroPreorderDetailsAndroid> variant;
650
+ std__variant_nitro__NullType__NitroPreorderDetailsAndroid_(std::variant<nitro::NullType, NitroPreorderDetailsAndroid> variant): variant(variant) { }
651
+ operator std::variant<nitro::NullType, NitroPreorderDetailsAndroid>() const noexcept {
652
+ return variant;
653
+ }
654
+ inline size_t index() const noexcept {
655
+ return variant.index();
656
+ }
657
+ inline nitro::NullType get_0() const noexcept {
658
+ return std::get<0>(variant);
659
+ }
660
+ inline NitroPreorderDetailsAndroid get_1() const noexcept {
661
+ return std::get<1>(variant);
662
+ }
663
+ };
664
+ inline std__variant_nitro__NullType__NitroPreorderDetailsAndroid_ create_std__variant_nitro__NullType__NitroPreorderDetailsAndroid_(nitro::NullType value) noexcept {
665
+ return std__variant_nitro__NullType__NitroPreorderDetailsAndroid_(value);
666
+ }
667
+ inline std__variant_nitro__NullType__NitroPreorderDetailsAndroid_ create_std__variant_nitro__NullType__NitroPreorderDetailsAndroid_(const NitroPreorderDetailsAndroid& value) noexcept {
668
+ return std__variant_nitro__NullType__NitroPreorderDetailsAndroid_(value);
669
+ }
670
+
671
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>
425
672
  /**
426
- * Specialized version of `std::optional<NitroPreorderDetailsAndroid>`.
673
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>`.
427
674
  */
428
- using std__optional_NitroPreorderDetailsAndroid_ = std::optional<NitroPreorderDetailsAndroid>;
429
- inline std::optional<NitroPreorderDetailsAndroid> create_std__optional_NitroPreorderDetailsAndroid_(const NitroPreorderDetailsAndroid& value) noexcept {
430
- return std::optional<NitroPreorderDetailsAndroid>(value);
675
+ using std__optional_std__variant_nitro__NullType__NitroPreorderDetailsAndroid__ = std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>;
676
+ inline std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>> create_std__optional_std__variant_nitro__NullType__NitroPreorderDetailsAndroid__(const std::variant<nitro::NullType, NitroPreorderDetailsAndroid>& value) noexcept {
677
+ return std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>(value);
431
678
  }
432
- inline bool has_value_std__optional_NitroPreorderDetailsAndroid_(const std::optional<NitroPreorderDetailsAndroid>& optional) noexcept {
679
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroPreorderDetailsAndroid__(const std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>& optional) noexcept {
433
680
  return optional.has_value();
434
681
  }
435
- inline NitroPreorderDetailsAndroid get_std__optional_NitroPreorderDetailsAndroid_(const std::optional<NitroPreorderDetailsAndroid>& optional) noexcept {
436
- return *optional;
682
+ inline std::variant<nitro::NullType, NitroPreorderDetailsAndroid> get_std__optional_std__variant_nitro__NullType__NitroPreorderDetailsAndroid__(const std::optional<std::variant<nitro::NullType, NitroPreorderDetailsAndroid>>& optional) noexcept {
683
+ return optional.value();
684
+ }
685
+
686
+ // pragma MARK: std::variant<nitro::NullType, NitroRentalDetailsAndroid>
687
+ /**
688
+ * Wrapper struct for `std::variant<nitro::NullType, NitroRentalDetailsAndroid>`.
689
+ * std::variant cannot be used in Swift because of a Swift bug.
690
+ * Not even specializing it works. So we create a wrapper struct.
691
+ */
692
+ struct std__variant_nitro__NullType__NitroRentalDetailsAndroid_ final {
693
+ std::variant<nitro::NullType, NitroRentalDetailsAndroid> variant;
694
+ std__variant_nitro__NullType__NitroRentalDetailsAndroid_(std::variant<nitro::NullType, NitroRentalDetailsAndroid> variant): variant(variant) { }
695
+ operator std::variant<nitro::NullType, NitroRentalDetailsAndroid>() const noexcept {
696
+ return variant;
697
+ }
698
+ inline size_t index() const noexcept {
699
+ return variant.index();
700
+ }
701
+ inline nitro::NullType get_0() const noexcept {
702
+ return std::get<0>(variant);
703
+ }
704
+ inline NitroRentalDetailsAndroid get_1() const noexcept {
705
+ return std::get<1>(variant);
706
+ }
707
+ };
708
+ inline std__variant_nitro__NullType__NitroRentalDetailsAndroid_ create_std__variant_nitro__NullType__NitroRentalDetailsAndroid_(nitro::NullType value) noexcept {
709
+ return std__variant_nitro__NullType__NitroRentalDetailsAndroid_(value);
710
+ }
711
+ inline std__variant_nitro__NullType__NitroRentalDetailsAndroid_ create_std__variant_nitro__NullType__NitroRentalDetailsAndroid_(const NitroRentalDetailsAndroid& value) noexcept {
712
+ return std__variant_nitro__NullType__NitroRentalDetailsAndroid_(value);
437
713
  }
438
714
 
439
- // pragma MARK: std::optional<NitroRentalDetailsAndroid>
715
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>
440
716
  /**
441
- * Specialized version of `std::optional<NitroRentalDetailsAndroid>`.
717
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>`.
442
718
  */
443
- using std__optional_NitroRentalDetailsAndroid_ = std::optional<NitroRentalDetailsAndroid>;
444
- inline std::optional<NitroRentalDetailsAndroid> create_std__optional_NitroRentalDetailsAndroid_(const NitroRentalDetailsAndroid& value) noexcept {
445
- return std::optional<NitroRentalDetailsAndroid>(value);
719
+ using std__optional_std__variant_nitro__NullType__NitroRentalDetailsAndroid__ = std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>;
720
+ inline std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>> create_std__optional_std__variant_nitro__NullType__NitroRentalDetailsAndroid__(const std::variant<nitro::NullType, NitroRentalDetailsAndroid>& value) noexcept {
721
+ return std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>(value);
446
722
  }
447
- inline bool has_value_std__optional_NitroRentalDetailsAndroid_(const std::optional<NitroRentalDetailsAndroid>& optional) noexcept {
723
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroRentalDetailsAndroid__(const std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>& optional) noexcept {
448
724
  return optional.has_value();
449
725
  }
450
- inline NitroRentalDetailsAndroid get_std__optional_NitroRentalDetailsAndroid_(const std::optional<NitroRentalDetailsAndroid>& optional) noexcept {
451
- return *optional;
726
+ inline std::variant<nitro::NullType, NitroRentalDetailsAndroid> get_std__optional_std__variant_nitro__NullType__NitroRentalDetailsAndroid__(const std::optional<std::variant<nitro::NullType, NitroRentalDetailsAndroid>>& optional) noexcept {
727
+ return optional.value();
452
728
  }
453
729
 
454
- // pragma MARK: std::optional<NitroValidTimeWindowAndroid>
730
+ // pragma MARK: std::variant<nitro::NullType, NitroValidTimeWindowAndroid>
455
731
  /**
456
- * Specialized version of `std::optional<NitroValidTimeWindowAndroid>`.
732
+ * Wrapper struct for `std::variant<nitro::NullType, NitroValidTimeWindowAndroid>`.
733
+ * std::variant cannot be used in Swift because of a Swift bug.
734
+ * Not even specializing it works. So we create a wrapper struct.
457
735
  */
458
- using std__optional_NitroValidTimeWindowAndroid_ = std::optional<NitroValidTimeWindowAndroid>;
459
- inline std::optional<NitroValidTimeWindowAndroid> create_std__optional_NitroValidTimeWindowAndroid_(const NitroValidTimeWindowAndroid& value) noexcept {
460
- return std::optional<NitroValidTimeWindowAndroid>(value);
736
+ struct std__variant_nitro__NullType__NitroValidTimeWindowAndroid_ final {
737
+ std::variant<nitro::NullType, NitroValidTimeWindowAndroid> variant;
738
+ std__variant_nitro__NullType__NitroValidTimeWindowAndroid_(std::variant<nitro::NullType, NitroValidTimeWindowAndroid> variant): variant(variant) { }
739
+ operator std::variant<nitro::NullType, NitroValidTimeWindowAndroid>() const noexcept {
740
+ return variant;
741
+ }
742
+ inline size_t index() const noexcept {
743
+ return variant.index();
744
+ }
745
+ inline nitro::NullType get_0() const noexcept {
746
+ return std::get<0>(variant);
747
+ }
748
+ inline NitroValidTimeWindowAndroid get_1() const noexcept {
749
+ return std::get<1>(variant);
750
+ }
751
+ };
752
+ inline std__variant_nitro__NullType__NitroValidTimeWindowAndroid_ create_std__variant_nitro__NullType__NitroValidTimeWindowAndroid_(nitro::NullType value) noexcept {
753
+ return std__variant_nitro__NullType__NitroValidTimeWindowAndroid_(value);
754
+ }
755
+ inline std__variant_nitro__NullType__NitroValidTimeWindowAndroid_ create_std__variant_nitro__NullType__NitroValidTimeWindowAndroid_(const NitroValidTimeWindowAndroid& value) noexcept {
756
+ return std__variant_nitro__NullType__NitroValidTimeWindowAndroid_(value);
757
+ }
758
+
759
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>
760
+ /**
761
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>`.
762
+ */
763
+ using std__optional_std__variant_nitro__NullType__NitroValidTimeWindowAndroid__ = std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>;
764
+ inline std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>> create_std__optional_std__variant_nitro__NullType__NitroValidTimeWindowAndroid__(const std::variant<nitro::NullType, NitroValidTimeWindowAndroid>& value) noexcept {
765
+ return std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>(value);
461
766
  }
462
- inline bool has_value_std__optional_NitroValidTimeWindowAndroid_(const std::optional<NitroValidTimeWindowAndroid>& optional) noexcept {
767
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroValidTimeWindowAndroid__(const std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>& optional) noexcept {
463
768
  return optional.has_value();
464
769
  }
465
- inline NitroValidTimeWindowAndroid get_std__optional_NitroValidTimeWindowAndroid_(const std::optional<NitroValidTimeWindowAndroid>& optional) noexcept {
466
- return *optional;
770
+ inline std::variant<nitro::NullType, NitroValidTimeWindowAndroid> get_std__optional_std__variant_nitro__NullType__NitroValidTimeWindowAndroid__(const std::optional<std::variant<nitro::NullType, NitroValidTimeWindowAndroid>>& optional) noexcept {
771
+ return optional.value();
467
772
  }
468
773
 
469
774
  // pragma MARK: std::vector<NitroOneTimePurchaseOfferDetail>
@@ -477,19 +782,48 @@ namespace margelo::nitro::iap::bridge::swift {
477
782
  return vector;
478
783
  }
479
784
 
480
- // pragma MARK: std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>
785
+ // pragma MARK: std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>
786
+ /**
787
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>`.
788
+ * std::variant cannot be used in Swift because of a Swift bug.
789
+ * Not even specializing it works. So we create a wrapper struct.
790
+ */
791
+ struct std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__ final {
792
+ std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>> variant;
793
+ std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__(std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>> variant): variant(variant) { }
794
+ operator std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>() const noexcept {
795
+ return variant;
796
+ }
797
+ inline size_t index() const noexcept {
798
+ return variant.index();
799
+ }
800
+ inline nitro::NullType get_0() const noexcept {
801
+ return std::get<0>(variant);
802
+ }
803
+ inline std::vector<NitroOneTimePurchaseOfferDetail> get_1() const noexcept {
804
+ return std::get<1>(variant);
805
+ }
806
+ };
807
+ inline std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__ create_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__(nitro::NullType value) noexcept {
808
+ return std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__(value);
809
+ }
810
+ inline std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__ create_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__(const std::vector<NitroOneTimePurchaseOfferDetail>& value) noexcept {
811
+ return std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail__(value);
812
+ }
813
+
814
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>
481
815
  /**
482
- * Specialized version of `std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>`.
816
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>`.
483
817
  */
484
- using std__optional_std__vector_NitroOneTimePurchaseOfferDetail__ = std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>;
485
- inline std::optional<std::vector<NitroOneTimePurchaseOfferDetail>> create_std__optional_std__vector_NitroOneTimePurchaseOfferDetail__(const std::vector<NitroOneTimePurchaseOfferDetail>& value) noexcept {
486
- return std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>(value);
818
+ using std__optional_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail___ = std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>;
819
+ inline std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>> create_std__optional_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail___(const std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>& value) noexcept {
820
+ return std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>(value);
487
821
  }
488
- inline bool has_value_std__optional_std__vector_NitroOneTimePurchaseOfferDetail__(const std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>& optional) noexcept {
822
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail___(const std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>& optional) noexcept {
489
823
  return optional.has_value();
490
824
  }
491
- inline std::vector<NitroOneTimePurchaseOfferDetail> get_std__optional_std__vector_NitroOneTimePurchaseOfferDetail__(const std::optional<std::vector<NitroOneTimePurchaseOfferDetail>>& optional) noexcept {
492
- return *optional;
825
+ inline std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>> get_std__optional_std__variant_nitro__NullType__std__vector_NitroOneTimePurchaseOfferDetail___(const std::optional<std::variant<nitro::NullType, std::vector<NitroOneTimePurchaseOfferDetail>>>& optional) noexcept {
826
+ return optional.value();
493
827
  }
494
828
 
495
829
  // pragma MARK: std::vector<NitroProduct>
@@ -537,64 +871,180 @@ namespace margelo::nitro::iap::bridge::swift {
537
871
  return Func_void_std__vector_NitroProduct__Wrapper(std::move(value));
538
872
  }
539
873
 
540
- // pragma MARK: std::optional<std::vector<std::string>>
874
+ // pragma MARK: std::variant<nitro::NullType, std::vector<std::string>>
541
875
  /**
542
- * Specialized version of `std::optional<std::vector<std::string>>`.
876
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<std::string>>`.
877
+ * std::variant cannot be used in Swift because of a Swift bug.
878
+ * Not even specializing it works. So we create a wrapper struct.
543
879
  */
544
- using std__optional_std__vector_std__string__ = std::optional<std::vector<std::string>>;
545
- inline std::optional<std::vector<std::string>> create_std__optional_std__vector_std__string__(const std::vector<std::string>& value) noexcept {
546
- return std::optional<std::vector<std::string>>(value);
880
+ struct std__variant_nitro__NullType__std__vector_std__string__ final {
881
+ std::variant<nitro::NullType, std::vector<std::string>> variant;
882
+ std__variant_nitro__NullType__std__vector_std__string__(std::variant<nitro::NullType, std::vector<std::string>> variant): variant(variant) { }
883
+ operator std::variant<nitro::NullType, std::vector<std::string>>() const noexcept {
884
+ return variant;
885
+ }
886
+ inline size_t index() const noexcept {
887
+ return variant.index();
888
+ }
889
+ inline nitro::NullType get_0() const noexcept {
890
+ return std::get<0>(variant);
891
+ }
892
+ inline std::vector<std::string> get_1() const noexcept {
893
+ return std::get<1>(variant);
894
+ }
895
+ };
896
+ inline std__variant_nitro__NullType__std__vector_std__string__ create_std__variant_nitro__NullType__std__vector_std__string__(nitro::NullType value) noexcept {
897
+ return std__variant_nitro__NullType__std__vector_std__string__(value);
547
898
  }
548
- inline bool has_value_std__optional_std__vector_std__string__(const std::optional<std::vector<std::string>>& optional) noexcept {
899
+ inline std__variant_nitro__NullType__std__vector_std__string__ create_std__variant_nitro__NullType__std__vector_std__string__(const std::vector<std::string>& value) noexcept {
900
+ return std__variant_nitro__NullType__std__vector_std__string__(value);
901
+ }
902
+
903
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::vector<std::string>>>
904
+ /**
905
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::vector<std::string>>>`.
906
+ */
907
+ using std__optional_std__variant_nitro__NullType__std__vector_std__string___ = std::optional<std::variant<nitro::NullType, std::vector<std::string>>>;
908
+ inline std::optional<std::variant<nitro::NullType, std::vector<std::string>>> create_std__optional_std__variant_nitro__NullType__std__vector_std__string___(const std::variant<nitro::NullType, std::vector<std::string>>& value) noexcept {
909
+ return std::optional<std::variant<nitro::NullType, std::vector<std::string>>>(value);
910
+ }
911
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__vector_std__string___(const std::optional<std::variant<nitro::NullType, std::vector<std::string>>>& optional) noexcept {
549
912
  return optional.has_value();
550
913
  }
551
- inline std::vector<std::string> get_std__optional_std__vector_std__string__(const std::optional<std::vector<std::string>>& optional) noexcept {
552
- return *optional;
914
+ inline std::variant<nitro::NullType, std::vector<std::string>> get_std__optional_std__variant_nitro__NullType__std__vector_std__string___(const std::optional<std::variant<nitro::NullType, std::vector<std::string>>>& optional) noexcept {
915
+ return optional.value();
916
+ }
917
+
918
+ // pragma MARK: std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>
919
+ /**
920
+ * Wrapper struct for `std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>`.
921
+ * std::variant cannot be used in Swift because of a Swift bug.
922
+ * Not even specializing it works. So we create a wrapper struct.
923
+ */
924
+ struct std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_ final {
925
+ std::variant<nitro::NullType, PendingPurchaseUpdateAndroid> variant;
926
+ std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_(std::variant<nitro::NullType, PendingPurchaseUpdateAndroid> variant): variant(variant) { }
927
+ operator std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>() const noexcept {
928
+ return variant;
929
+ }
930
+ inline size_t index() const noexcept {
931
+ return variant.index();
932
+ }
933
+ inline nitro::NullType get_0() const noexcept {
934
+ return std::get<0>(variant);
935
+ }
936
+ inline PendingPurchaseUpdateAndroid get_1() const noexcept {
937
+ return std::get<1>(variant);
938
+ }
939
+ };
940
+ inline std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_ create_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_(nitro::NullType value) noexcept {
941
+ return std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_(value);
942
+ }
943
+ inline std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_ create_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_(const PendingPurchaseUpdateAndroid& value) noexcept {
944
+ return std__variant_nitro__NullType__PendingPurchaseUpdateAndroid_(value);
553
945
  }
554
946
 
555
- // pragma MARK: std::optional<PendingPurchaseUpdateAndroid>
947
+ // pragma MARK: std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>
556
948
  /**
557
- * Specialized version of `std::optional<PendingPurchaseUpdateAndroid>`.
949
+ * Specialized version of `std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>`.
558
950
  */
559
- using std__optional_PendingPurchaseUpdateAndroid_ = std::optional<PendingPurchaseUpdateAndroid>;
560
- inline std::optional<PendingPurchaseUpdateAndroid> create_std__optional_PendingPurchaseUpdateAndroid_(const PendingPurchaseUpdateAndroid& value) noexcept {
561
- return std::optional<PendingPurchaseUpdateAndroid>(value);
951
+ using std__optional_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid__ = std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>;
952
+ inline std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>> create_std__optional_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid__(const std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>& value) noexcept {
953
+ return std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>(value);
562
954
  }
563
- inline bool has_value_std__optional_PendingPurchaseUpdateAndroid_(const std::optional<PendingPurchaseUpdateAndroid>& optional) noexcept {
955
+ inline bool has_value_std__optional_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid__(const std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>& optional) noexcept {
564
956
  return optional.has_value();
565
957
  }
566
- inline PendingPurchaseUpdateAndroid get_std__optional_PendingPurchaseUpdateAndroid_(const std::optional<PendingPurchaseUpdateAndroid>& optional) noexcept {
567
- return *optional;
958
+ inline std::variant<nitro::NullType, PendingPurchaseUpdateAndroid> get_std__optional_std__variant_nitro__NullType__PendingPurchaseUpdateAndroid__(const std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>>& optional) noexcept {
959
+ return optional.value();
960
+ }
961
+
962
+ // pragma MARK: std::variant<nitro::NullType, PurchaseOfferIOS>
963
+ /**
964
+ * Wrapper struct for `std::variant<nitro::NullType, PurchaseOfferIOS>`.
965
+ * std::variant cannot be used in Swift because of a Swift bug.
966
+ * Not even specializing it works. So we create a wrapper struct.
967
+ */
968
+ struct std__variant_nitro__NullType__PurchaseOfferIOS_ final {
969
+ std::variant<nitro::NullType, PurchaseOfferIOS> variant;
970
+ std__variant_nitro__NullType__PurchaseOfferIOS_(std::variant<nitro::NullType, PurchaseOfferIOS> variant): variant(variant) { }
971
+ operator std::variant<nitro::NullType, PurchaseOfferIOS>() const noexcept {
972
+ return variant;
973
+ }
974
+ inline size_t index() const noexcept {
975
+ return variant.index();
976
+ }
977
+ inline nitro::NullType get_0() const noexcept {
978
+ return std::get<0>(variant);
979
+ }
980
+ inline PurchaseOfferIOS get_1() const noexcept {
981
+ return std::get<1>(variant);
982
+ }
983
+ };
984
+ inline std__variant_nitro__NullType__PurchaseOfferIOS_ create_std__variant_nitro__NullType__PurchaseOfferIOS_(nitro::NullType value) noexcept {
985
+ return std__variant_nitro__NullType__PurchaseOfferIOS_(value);
986
+ }
987
+ inline std__variant_nitro__NullType__PurchaseOfferIOS_ create_std__variant_nitro__NullType__PurchaseOfferIOS_(const PurchaseOfferIOS& value) noexcept {
988
+ return std__variant_nitro__NullType__PurchaseOfferIOS_(value);
568
989
  }
569
990
 
570
- // pragma MARK: std::optional<PurchaseOfferIOS>
991
+ // pragma MARK: std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>
571
992
  /**
572
- * Specialized version of `std::optional<PurchaseOfferIOS>`.
993
+ * Specialized version of `std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>`.
573
994
  */
574
- using std__optional_PurchaseOfferIOS_ = std::optional<PurchaseOfferIOS>;
575
- inline std::optional<PurchaseOfferIOS> create_std__optional_PurchaseOfferIOS_(const PurchaseOfferIOS& value) noexcept {
576
- return std::optional<PurchaseOfferIOS>(value);
995
+ using std__optional_std__variant_nitro__NullType__PurchaseOfferIOS__ = std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>;
996
+ inline std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>> create_std__optional_std__variant_nitro__NullType__PurchaseOfferIOS__(const std::variant<nitro::NullType, PurchaseOfferIOS>& value) noexcept {
997
+ return std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>(value);
577
998
  }
578
- inline bool has_value_std__optional_PurchaseOfferIOS_(const std::optional<PurchaseOfferIOS>& optional) noexcept {
999
+ inline bool has_value_std__optional_std__variant_nitro__NullType__PurchaseOfferIOS__(const std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>& optional) noexcept {
579
1000
  return optional.has_value();
580
1001
  }
581
- inline PurchaseOfferIOS get_std__optional_PurchaseOfferIOS_(const std::optional<PurchaseOfferIOS>& optional) noexcept {
582
- return *optional;
1002
+ inline std::variant<nitro::NullType, PurchaseOfferIOS> get_std__optional_std__variant_nitro__NullType__PurchaseOfferIOS__(const std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>>& optional) noexcept {
1003
+ return optional.value();
1004
+ }
1005
+
1006
+ // pragma MARK: std::variant<nitro::NullType, RenewalInfoIOS>
1007
+ /**
1008
+ * Wrapper struct for `std::variant<nitro::NullType, RenewalInfoIOS>`.
1009
+ * std::variant cannot be used in Swift because of a Swift bug.
1010
+ * Not even specializing it works. So we create a wrapper struct.
1011
+ */
1012
+ struct std__variant_nitro__NullType__RenewalInfoIOS_ final {
1013
+ std::variant<nitro::NullType, RenewalInfoIOS> variant;
1014
+ std__variant_nitro__NullType__RenewalInfoIOS_(std::variant<nitro::NullType, RenewalInfoIOS> variant): variant(variant) { }
1015
+ operator std::variant<nitro::NullType, RenewalInfoIOS>() const noexcept {
1016
+ return variant;
1017
+ }
1018
+ inline size_t index() const noexcept {
1019
+ return variant.index();
1020
+ }
1021
+ inline nitro::NullType get_0() const noexcept {
1022
+ return std::get<0>(variant);
1023
+ }
1024
+ inline RenewalInfoIOS get_1() const noexcept {
1025
+ return std::get<1>(variant);
1026
+ }
1027
+ };
1028
+ inline std__variant_nitro__NullType__RenewalInfoIOS_ create_std__variant_nitro__NullType__RenewalInfoIOS_(nitro::NullType value) noexcept {
1029
+ return std__variant_nitro__NullType__RenewalInfoIOS_(value);
1030
+ }
1031
+ inline std__variant_nitro__NullType__RenewalInfoIOS_ create_std__variant_nitro__NullType__RenewalInfoIOS_(const RenewalInfoIOS& value) noexcept {
1032
+ return std__variant_nitro__NullType__RenewalInfoIOS_(value);
583
1033
  }
584
1034
 
585
- // pragma MARK: std::optional<RenewalInfoIOS>
1035
+ // pragma MARK: std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>
586
1036
  /**
587
- * Specialized version of `std::optional<RenewalInfoIOS>`.
1037
+ * Specialized version of `std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>`.
588
1038
  */
589
- using std__optional_RenewalInfoIOS_ = std::optional<RenewalInfoIOS>;
590
- inline std::optional<RenewalInfoIOS> create_std__optional_RenewalInfoIOS_(const RenewalInfoIOS& value) noexcept {
591
- return std::optional<RenewalInfoIOS>(value);
1039
+ using std__optional_std__variant_nitro__NullType__RenewalInfoIOS__ = std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>;
1040
+ inline std::optional<std::variant<nitro::NullType, RenewalInfoIOS>> create_std__optional_std__variant_nitro__NullType__RenewalInfoIOS__(const std::variant<nitro::NullType, RenewalInfoIOS>& value) noexcept {
1041
+ return std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>(value);
592
1042
  }
593
- inline bool has_value_std__optional_RenewalInfoIOS_(const std::optional<RenewalInfoIOS>& optional) noexcept {
1043
+ inline bool has_value_std__optional_std__variant_nitro__NullType__RenewalInfoIOS__(const std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>& optional) noexcept {
594
1044
  return optional.has_value();
595
1045
  }
596
- inline RenewalInfoIOS get_std__optional_RenewalInfoIOS_(const std::optional<RenewalInfoIOS>& optional) noexcept {
597
- return *optional;
1046
+ inline std::variant<nitro::NullType, RenewalInfoIOS> get_std__optional_std__variant_nitro__NullType__RenewalInfoIOS__(const std::optional<std::variant<nitro::NullType, RenewalInfoIOS>>& optional) noexcept {
1047
+ return optional.value();
598
1048
  }
599
1049
 
600
1050
  // pragma MARK: std::variant<PurchaseAndroid, PurchaseIOS>
@@ -603,7 +1053,7 @@ namespace margelo::nitro::iap::bridge::swift {
603
1053
  * std::variant cannot be used in Swift because of a Swift bug.
604
1054
  * Not even specializing it works. So we create a wrapper struct.
605
1055
  */
606
- struct std__variant_PurchaseAndroid__PurchaseIOS_ {
1056
+ struct std__variant_PurchaseAndroid__PurchaseIOS_ final {
607
1057
  std::variant<PurchaseAndroid, PurchaseIOS> variant;
608
1058
  std__variant_PurchaseAndroid__PurchaseIOS_(std::variant<PurchaseAndroid, PurchaseIOS> variant): variant(variant) { }
609
1059
  operator std::variant<PurchaseAndroid, PurchaseIOS>() const noexcept {
@@ -637,88 +1087,79 @@ namespace margelo::nitro::iap::bridge::swift {
637
1087
  return vector;
638
1088
  }
639
1089
 
640
- // pragma MARK: std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>
1090
+ // pragma MARK: std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>
641
1091
  /**
642
- * Wrapper struct for `std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>`.
1092
+ * Wrapper struct for `std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>`.
643
1093
  * std::variant cannot be used in Swift because of a Swift bug.
644
1094
  * Not even specializing it works. So we create a wrapper struct.
645
1095
  */
646
- struct std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ {
647
- std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> variant;
648
- std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> variant): variant(variant) { }
649
- operator std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>() const noexcept {
1096
+ struct std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ final {
1097
+ std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> variant;
1098
+ std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> variant): variant(variant) { }
1099
+ operator std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>() const noexcept {
650
1100
  return variant;
651
1101
  }
652
1102
  inline size_t index() const noexcept {
653
1103
  return variant.index();
654
1104
  }
655
- inline PurchaseAndroid get_0() const noexcept {
1105
+ inline nitro::NullType get_0() const noexcept {
656
1106
  return std::get<0>(variant);
657
1107
  }
658
- inline PurchaseIOS get_1() const noexcept {
1108
+ inline PurchaseAndroid get_1() const noexcept {
659
1109
  return std::get<1>(variant);
660
1110
  }
661
- inline std::vector<std::variant<PurchaseAndroid, PurchaseIOS>> get_2() const noexcept {
1111
+ inline PurchaseIOS get_2() const noexcept {
662
1112
  return std::get<2>(variant);
663
1113
  }
1114
+ inline std::vector<std::variant<PurchaseAndroid, PurchaseIOS>> get_3() const noexcept {
1115
+ return std::get<3>(variant);
1116
+ }
664
1117
  };
665
- inline std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const PurchaseAndroid& value) noexcept {
666
- return std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
667
- }
668
- inline std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const PurchaseIOS& value) noexcept {
669
- return std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
1118
+ inline std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(nitro::NullType value) noexcept {
1119
+ return std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
670
1120
  }
671
- inline std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>& value) noexcept {
672
- return std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
1121
+ inline std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const PurchaseAndroid& value) noexcept {
1122
+ return std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
673
1123
  }
674
-
675
- // pragma MARK: std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>
676
- /**
677
- * Specialized version of `std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>`.
678
- */
679
- using std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____ = std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>;
680
- inline std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>> create_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____(const std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& value) noexcept {
681
- return std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>(value);
682
- }
683
- inline bool has_value_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& optional) noexcept {
684
- return optional.has_value();
1124
+ inline std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const PurchaseIOS& value) noexcept {
1125
+ return std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
685
1126
  }
686
- inline std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> get_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& optional) noexcept {
687
- return *optional;
1127
+ inline std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(const std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>& value) noexcept {
1128
+ return std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(value);
688
1129
  }
689
1130
 
690
- // pragma MARK: std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>
1131
+ // pragma MARK: std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>
691
1132
  /**
692
- * Specialized version of `std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>`.
1133
+ * Specialized version of `std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>`.
693
1134
  */
694
- using std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______ = std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>;
695
- inline std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>> create_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______() noexcept {
696
- return Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>::create();
1135
+ using std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____ = std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>;
1136
+ inline std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>> create_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____() noexcept {
1137
+ return Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>::create();
697
1138
  }
698
- inline PromiseHolder<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>> wrap_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______(std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>> promise) noexcept {
699
- return PromiseHolder<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>(std::move(promise));
1139
+ inline PromiseHolder<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>> wrap_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____(std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>> promise) noexcept {
1140
+ return PromiseHolder<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>(std::move(promise));
700
1141
  }
701
1142
 
702
- // pragma MARK: std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& /* result */)>
1143
+ // pragma MARK: std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& /* result */)>
703
1144
  /**
704
- * Specialized version of `std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>&)>`.
1145
+ * Specialized version of `std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>&)>`.
705
1146
  */
706
- using Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____ = std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& /* result */)>;
1147
+ using Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ = std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& /* result */)>;
707
1148
  /**
708
- * Wrapper class for a `std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& / * result * /)>`, this can be used from Swift.
1149
+ * Wrapper class for a `std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& / * result * /)>`, this can be used from Swift.
709
1150
  */
710
- class Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____Wrapper final {
1151
+ class Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____Wrapper final {
711
1152
  public:
712
- explicit Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____Wrapper(std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& /* result */)>>(std::move(func))) {}
713
- inline void call(std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>> result) const noexcept {
1153
+ explicit Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____Wrapper(std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& /* result */)>>(std::move(func))) {}
1154
+ inline void call(std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>> result) const noexcept {
714
1155
  _function->operator()(result);
715
1156
  }
716
1157
  private:
717
- std::unique_ptr<std::function<void(const std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>& /* result */)>> _function;
1158
+ std::unique_ptr<std::function<void(const std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>& /* result */)>> _function;
718
1159
  } SWIFT_NONCOPYABLE;
719
- Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____ create_Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____(void* NON_NULL swiftClosureWrapper) noexcept;
720
- inline Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____Wrapper wrap_Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____(Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____ value) noexcept {
721
- return Func_void_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_____Wrapper(std::move(value));
1160
+ Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ create_Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(void* NON_NULL swiftClosureWrapper) noexcept;
1161
+ inline Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____Wrapper wrap_Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___(Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS___ value) noexcept {
1162
+ return Func_void_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS____Wrapper(std::move(value));
722
1163
  }
723
1164
 
724
1165
  // pragma MARK: std::unordered_map<std::string, std::string>
@@ -746,64 +1187,180 @@ namespace margelo::nitro::iap::bridge::swift {
746
1187
  map.emplace(key, value);
747
1188
  }
748
1189
 
749
- // pragma MARK: std::optional<std::unordered_map<std::string, std::string>>
1190
+ // pragma MARK: std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>
750
1191
  /**
751
- * Specialized version of `std::optional<std::unordered_map<std::string, std::string>>`.
1192
+ * Wrapper struct for `std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>`.
1193
+ * std::variant cannot be used in Swift because of a Swift bug.
1194
+ * Not even specializing it works. So we create a wrapper struct.
1195
+ */
1196
+ struct std__variant_nitro__NullType__std__unordered_map_std__string__std__string__ final {
1197
+ std::variant<nitro::NullType, std::unordered_map<std::string, std::string>> variant;
1198
+ std__variant_nitro__NullType__std__unordered_map_std__string__std__string__(std::variant<nitro::NullType, std::unordered_map<std::string, std::string>> variant): variant(variant) { }
1199
+ operator std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>() const noexcept {
1200
+ return variant;
1201
+ }
1202
+ inline size_t index() const noexcept {
1203
+ return variant.index();
1204
+ }
1205
+ inline nitro::NullType get_0() const noexcept {
1206
+ return std::get<0>(variant);
1207
+ }
1208
+ inline std::unordered_map<std::string, std::string> get_1() const noexcept {
1209
+ return std::get<1>(variant);
1210
+ }
1211
+ };
1212
+ inline std__variant_nitro__NullType__std__unordered_map_std__string__std__string__ create_std__variant_nitro__NullType__std__unordered_map_std__string__std__string__(nitro::NullType value) noexcept {
1213
+ return std__variant_nitro__NullType__std__unordered_map_std__string__std__string__(value);
1214
+ }
1215
+ inline std__variant_nitro__NullType__std__unordered_map_std__string__std__string__ create_std__variant_nitro__NullType__std__unordered_map_std__string__std__string__(const std::unordered_map<std::string, std::string>& value) noexcept {
1216
+ return std__variant_nitro__NullType__std__unordered_map_std__string__std__string__(value);
1217
+ }
1218
+
1219
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>
1220
+ /**
1221
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>`.
752
1222
  */
753
- using std__optional_std__unordered_map_std__string__std__string__ = std::optional<std::unordered_map<std::string, std::string>>;
754
- inline std::optional<std::unordered_map<std::string, std::string>> create_std__optional_std__unordered_map_std__string__std__string__(const std::unordered_map<std::string, std::string>& value) noexcept {
755
- return std::optional<std::unordered_map<std::string, std::string>>(value);
1223
+ using std__optional_std__variant_nitro__NullType__std__unordered_map_std__string__std__string___ = std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>;
1224
+ inline std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>> create_std__optional_std__variant_nitro__NullType__std__unordered_map_std__string__std__string___(const std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>& value) noexcept {
1225
+ return std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>(value);
756
1226
  }
757
- inline bool has_value_std__optional_std__unordered_map_std__string__std__string__(const std::optional<std::unordered_map<std::string, std::string>>& optional) noexcept {
1227
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__unordered_map_std__string__std__string___(const std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>& optional) noexcept {
758
1228
  return optional.has_value();
759
1229
  }
760
- inline std::unordered_map<std::string, std::string> get_std__optional_std__unordered_map_std__string__std__string__(const std::optional<std::unordered_map<std::string, std::string>>& optional) noexcept {
761
- return *optional;
1230
+ inline std::variant<nitro::NullType, std::unordered_map<std::string, std::string>> get_std__optional_std__variant_nitro__NullType__std__unordered_map_std__string__std__string___(const std::optional<std::variant<nitro::NullType, std::unordered_map<std::string, std::string>>>& optional) noexcept {
1231
+ return optional.value();
762
1232
  }
763
1233
 
764
- // pragma MARK: std::optional<PromotionalOfferJwsInputIOS>
1234
+ // pragma MARK: std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>
765
1235
  /**
766
- * Specialized version of `std::optional<PromotionalOfferJwsInputIOS>`.
1236
+ * Wrapper struct for `std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>`.
1237
+ * std::variant cannot be used in Swift because of a Swift bug.
1238
+ * Not even specializing it works. So we create a wrapper struct.
767
1239
  */
768
- using std__optional_PromotionalOfferJwsInputIOS_ = std::optional<PromotionalOfferJwsInputIOS>;
769
- inline std::optional<PromotionalOfferJwsInputIOS> create_std__optional_PromotionalOfferJwsInputIOS_(const PromotionalOfferJwsInputIOS& value) noexcept {
770
- return std::optional<PromotionalOfferJwsInputIOS>(value);
1240
+ struct std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_ final {
1241
+ std::variant<nitro::NullType, PromotionalOfferJwsInputIOS> variant;
1242
+ std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_(std::variant<nitro::NullType, PromotionalOfferJwsInputIOS> variant): variant(variant) { }
1243
+ operator std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>() const noexcept {
1244
+ return variant;
1245
+ }
1246
+ inline size_t index() const noexcept {
1247
+ return variant.index();
1248
+ }
1249
+ inline nitro::NullType get_0() const noexcept {
1250
+ return std::get<0>(variant);
1251
+ }
1252
+ inline PromotionalOfferJwsInputIOS get_1() const noexcept {
1253
+ return std::get<1>(variant);
1254
+ }
1255
+ };
1256
+ inline std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_ create_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_(nitro::NullType value) noexcept {
1257
+ return std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_(value);
1258
+ }
1259
+ inline std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_ create_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_(const PromotionalOfferJwsInputIOS& value) noexcept {
1260
+ return std__variant_nitro__NullType__PromotionalOfferJwsInputIOS_(value);
771
1261
  }
772
- inline bool has_value_std__optional_PromotionalOfferJwsInputIOS_(const std::optional<PromotionalOfferJwsInputIOS>& optional) noexcept {
1262
+
1263
+ // pragma MARK: std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>
1264
+ /**
1265
+ * Specialized version of `std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>`.
1266
+ */
1267
+ using std__optional_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS__ = std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>;
1268
+ inline std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>> create_std__optional_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS__(const std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>& value) noexcept {
1269
+ return std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>(value);
1270
+ }
1271
+ inline bool has_value_std__optional_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS__(const std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>& optional) noexcept {
773
1272
  return optional.has_value();
774
1273
  }
775
- inline PromotionalOfferJwsInputIOS get_std__optional_PromotionalOfferJwsInputIOS_(const std::optional<PromotionalOfferJwsInputIOS>& optional) noexcept {
776
- return *optional;
1274
+ inline std::variant<nitro::NullType, PromotionalOfferJwsInputIOS> get_std__optional_std__variant_nitro__NullType__PromotionalOfferJwsInputIOS__(const std::optional<std::variant<nitro::NullType, PromotionalOfferJwsInputIOS>>& optional) noexcept {
1275
+ return optional.value();
777
1276
  }
778
1277
 
779
- // pragma MARK: std::optional<WinBackOfferInputIOS>
1278
+ // pragma MARK: std::variant<nitro::NullType, WinBackOfferInputIOS>
780
1279
  /**
781
- * Specialized version of `std::optional<WinBackOfferInputIOS>`.
1280
+ * Wrapper struct for `std::variant<nitro::NullType, WinBackOfferInputIOS>`.
1281
+ * std::variant cannot be used in Swift because of a Swift bug.
1282
+ * Not even specializing it works. So we create a wrapper struct.
782
1283
  */
783
- using std__optional_WinBackOfferInputIOS_ = std::optional<WinBackOfferInputIOS>;
784
- inline std::optional<WinBackOfferInputIOS> create_std__optional_WinBackOfferInputIOS_(const WinBackOfferInputIOS& value) noexcept {
785
- return std::optional<WinBackOfferInputIOS>(value);
1284
+ struct std__variant_nitro__NullType__WinBackOfferInputIOS_ final {
1285
+ std::variant<nitro::NullType, WinBackOfferInputIOS> variant;
1286
+ std__variant_nitro__NullType__WinBackOfferInputIOS_(std::variant<nitro::NullType, WinBackOfferInputIOS> variant): variant(variant) { }
1287
+ operator std::variant<nitro::NullType, WinBackOfferInputIOS>() const noexcept {
1288
+ return variant;
1289
+ }
1290
+ inline size_t index() const noexcept {
1291
+ return variant.index();
1292
+ }
1293
+ inline nitro::NullType get_0() const noexcept {
1294
+ return std::get<0>(variant);
1295
+ }
1296
+ inline WinBackOfferInputIOS get_1() const noexcept {
1297
+ return std::get<1>(variant);
1298
+ }
1299
+ };
1300
+ inline std__variant_nitro__NullType__WinBackOfferInputIOS_ create_std__variant_nitro__NullType__WinBackOfferInputIOS_(nitro::NullType value) noexcept {
1301
+ return std__variant_nitro__NullType__WinBackOfferInputIOS_(value);
786
1302
  }
787
- inline bool has_value_std__optional_WinBackOfferInputIOS_(const std::optional<WinBackOfferInputIOS>& optional) noexcept {
1303
+ inline std__variant_nitro__NullType__WinBackOfferInputIOS_ create_std__variant_nitro__NullType__WinBackOfferInputIOS_(const WinBackOfferInputIOS& value) noexcept {
1304
+ return std__variant_nitro__NullType__WinBackOfferInputIOS_(value);
1305
+ }
1306
+
1307
+ // pragma MARK: std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>
1308
+ /**
1309
+ * Specialized version of `std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>`.
1310
+ */
1311
+ using std__optional_std__variant_nitro__NullType__WinBackOfferInputIOS__ = std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>;
1312
+ inline std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>> create_std__optional_std__variant_nitro__NullType__WinBackOfferInputIOS__(const std::variant<nitro::NullType, WinBackOfferInputIOS>& value) noexcept {
1313
+ return std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>(value);
1314
+ }
1315
+ inline bool has_value_std__optional_std__variant_nitro__NullType__WinBackOfferInputIOS__(const std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>& optional) noexcept {
788
1316
  return optional.has_value();
789
1317
  }
790
- inline WinBackOfferInputIOS get_std__optional_WinBackOfferInputIOS_(const std::optional<WinBackOfferInputIOS>& optional) noexcept {
791
- return *optional;
1318
+ inline std::variant<nitro::NullType, WinBackOfferInputIOS> get_std__optional_std__variant_nitro__NullType__WinBackOfferInputIOS__(const std::optional<std::variant<nitro::NullType, WinBackOfferInputIOS>>& optional) noexcept {
1319
+ return optional.value();
1320
+ }
1321
+
1322
+ // pragma MARK: std::variant<nitro::NullType, NitroRequestPurchaseIos>
1323
+ /**
1324
+ * Wrapper struct for `std::variant<nitro::NullType, NitroRequestPurchaseIos>`.
1325
+ * std::variant cannot be used in Swift because of a Swift bug.
1326
+ * Not even specializing it works. So we create a wrapper struct.
1327
+ */
1328
+ struct std__variant_nitro__NullType__NitroRequestPurchaseIos_ final {
1329
+ std::variant<nitro::NullType, NitroRequestPurchaseIos> variant;
1330
+ std__variant_nitro__NullType__NitroRequestPurchaseIos_(std::variant<nitro::NullType, NitroRequestPurchaseIos> variant): variant(variant) { }
1331
+ operator std::variant<nitro::NullType, NitroRequestPurchaseIos>() const noexcept {
1332
+ return variant;
1333
+ }
1334
+ inline size_t index() const noexcept {
1335
+ return variant.index();
1336
+ }
1337
+ inline nitro::NullType get_0() const noexcept {
1338
+ return std::get<0>(variant);
1339
+ }
1340
+ inline NitroRequestPurchaseIos get_1() const noexcept {
1341
+ return std::get<1>(variant);
1342
+ }
1343
+ };
1344
+ inline std__variant_nitro__NullType__NitroRequestPurchaseIos_ create_std__variant_nitro__NullType__NitroRequestPurchaseIos_(nitro::NullType value) noexcept {
1345
+ return std__variant_nitro__NullType__NitroRequestPurchaseIos_(value);
1346
+ }
1347
+ inline std__variant_nitro__NullType__NitroRequestPurchaseIos_ create_std__variant_nitro__NullType__NitroRequestPurchaseIos_(const NitroRequestPurchaseIos& value) noexcept {
1348
+ return std__variant_nitro__NullType__NitroRequestPurchaseIos_(value);
792
1349
  }
793
1350
 
794
- // pragma MARK: std::optional<NitroRequestPurchaseIos>
1351
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>
795
1352
  /**
796
- * Specialized version of `std::optional<NitroRequestPurchaseIos>`.
1353
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>`.
797
1354
  */
798
- using std__optional_NitroRequestPurchaseIos_ = std::optional<NitroRequestPurchaseIos>;
799
- inline std::optional<NitroRequestPurchaseIos> create_std__optional_NitroRequestPurchaseIos_(const NitroRequestPurchaseIos& value) noexcept {
800
- return std::optional<NitroRequestPurchaseIos>(value);
1355
+ using std__optional_std__variant_nitro__NullType__NitroRequestPurchaseIos__ = std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>;
1356
+ inline std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>> create_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseIos__(const std::variant<nitro::NullType, NitroRequestPurchaseIos>& value) noexcept {
1357
+ return std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>(value);
801
1358
  }
802
- inline bool has_value_std__optional_NitroRequestPurchaseIos_(const std::optional<NitroRequestPurchaseIos>& optional) noexcept {
1359
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseIos__(const std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>& optional) noexcept {
803
1360
  return optional.has_value();
804
1361
  }
805
- inline NitroRequestPurchaseIos get_std__optional_NitroRequestPurchaseIos_(const std::optional<NitroRequestPurchaseIos>& optional) noexcept {
806
- return *optional;
1362
+ inline std::variant<nitro::NullType, NitroRequestPurchaseIos> get_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseIos__(const std::optional<std::variant<nitro::NullType, NitroRequestPurchaseIos>>& optional) noexcept {
1363
+ return optional.value();
807
1364
  }
808
1365
 
809
1366
  // pragma MARK: std::vector<AndroidSubscriptionOfferInput>
@@ -817,64 +1374,180 @@ namespace margelo::nitro::iap::bridge::swift {
817
1374
  return vector;
818
1375
  }
819
1376
 
820
- // pragma MARK: std::optional<std::vector<AndroidSubscriptionOfferInput>>
1377
+ // pragma MARK: std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>
1378
+ /**
1379
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>`.
1380
+ * std::variant cannot be used in Swift because of a Swift bug.
1381
+ * Not even specializing it works. So we create a wrapper struct.
1382
+ */
1383
+ struct std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__ final {
1384
+ std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>> variant;
1385
+ std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__(std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>> variant): variant(variant) { }
1386
+ operator std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>() const noexcept {
1387
+ return variant;
1388
+ }
1389
+ inline size_t index() const noexcept {
1390
+ return variant.index();
1391
+ }
1392
+ inline nitro::NullType get_0() const noexcept {
1393
+ return std::get<0>(variant);
1394
+ }
1395
+ inline std::vector<AndroidSubscriptionOfferInput> get_1() const noexcept {
1396
+ return std::get<1>(variant);
1397
+ }
1398
+ };
1399
+ inline std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__ create_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__(nitro::NullType value) noexcept {
1400
+ return std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__(value);
1401
+ }
1402
+ inline std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__ create_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__(const std::vector<AndroidSubscriptionOfferInput>& value) noexcept {
1403
+ return std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput__(value);
1404
+ }
1405
+
1406
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>
821
1407
  /**
822
- * Specialized version of `std::optional<std::vector<AndroidSubscriptionOfferInput>>`.
1408
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>`.
823
1409
  */
824
- using std__optional_std__vector_AndroidSubscriptionOfferInput__ = std::optional<std::vector<AndroidSubscriptionOfferInput>>;
825
- inline std::optional<std::vector<AndroidSubscriptionOfferInput>> create_std__optional_std__vector_AndroidSubscriptionOfferInput__(const std::vector<AndroidSubscriptionOfferInput>& value) noexcept {
826
- return std::optional<std::vector<AndroidSubscriptionOfferInput>>(value);
1410
+ using std__optional_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput___ = std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>;
1411
+ inline std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>> create_std__optional_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput___(const std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>& value) noexcept {
1412
+ return std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>(value);
827
1413
  }
828
- inline bool has_value_std__optional_std__vector_AndroidSubscriptionOfferInput__(const std::optional<std::vector<AndroidSubscriptionOfferInput>>& optional) noexcept {
1414
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput___(const std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>& optional) noexcept {
829
1415
  return optional.has_value();
830
1416
  }
831
- inline std::vector<AndroidSubscriptionOfferInput> get_std__optional_std__vector_AndroidSubscriptionOfferInput__(const std::optional<std::vector<AndroidSubscriptionOfferInput>>& optional) noexcept {
832
- return *optional;
1417
+ inline std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>> get_std__optional_std__variant_nitro__NullType__std__vector_AndroidSubscriptionOfferInput___(const std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>>& optional) noexcept {
1418
+ return optional.value();
1419
+ }
1420
+
1421
+ // pragma MARK: std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>
1422
+ /**
1423
+ * Wrapper struct for `std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>`.
1424
+ * std::variant cannot be used in Swift because of a Swift bug.
1425
+ * Not even specializing it works. So we create a wrapper struct.
1426
+ */
1427
+ struct std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_ final {
1428
+ std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid> variant;
1429
+ std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_(std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid> variant): variant(variant) { }
1430
+ operator std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>() const noexcept {
1431
+ return variant;
1432
+ }
1433
+ inline size_t index() const noexcept {
1434
+ return variant.index();
1435
+ }
1436
+ inline nitro::NullType get_0() const noexcept {
1437
+ return std::get<0>(variant);
1438
+ }
1439
+ inline SubscriptionProductReplacementParamsAndroid get_1() const noexcept {
1440
+ return std::get<1>(variant);
1441
+ }
1442
+ };
1443
+ inline std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_ create_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_(nitro::NullType value) noexcept {
1444
+ return std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_(value);
1445
+ }
1446
+ inline std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_ create_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_(const SubscriptionProductReplacementParamsAndroid& value) noexcept {
1447
+ return std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid_(value);
833
1448
  }
834
1449
 
835
- // pragma MARK: std::optional<SubscriptionProductReplacementParamsAndroid>
1450
+ // pragma MARK: std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>
836
1451
  /**
837
- * Specialized version of `std::optional<SubscriptionProductReplacementParamsAndroid>`.
1452
+ * Specialized version of `std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>`.
838
1453
  */
839
- using std__optional_SubscriptionProductReplacementParamsAndroid_ = std::optional<SubscriptionProductReplacementParamsAndroid>;
840
- inline std::optional<SubscriptionProductReplacementParamsAndroid> create_std__optional_SubscriptionProductReplacementParamsAndroid_(const SubscriptionProductReplacementParamsAndroid& value) noexcept {
841
- return std::optional<SubscriptionProductReplacementParamsAndroid>(value);
1454
+ using std__optional_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid__ = std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>;
1455
+ inline std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>> create_std__optional_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid__(const std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>& value) noexcept {
1456
+ return std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>(value);
842
1457
  }
843
- inline bool has_value_std__optional_SubscriptionProductReplacementParamsAndroid_(const std::optional<SubscriptionProductReplacementParamsAndroid>& optional) noexcept {
1458
+ inline bool has_value_std__optional_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid__(const std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>& optional) noexcept {
844
1459
  return optional.has_value();
845
1460
  }
846
- inline SubscriptionProductReplacementParamsAndroid get_std__optional_SubscriptionProductReplacementParamsAndroid_(const std::optional<SubscriptionProductReplacementParamsAndroid>& optional) noexcept {
847
- return *optional;
1461
+ inline std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid> get_std__optional_std__variant_nitro__NullType__SubscriptionProductReplacementParamsAndroid__(const std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>>& optional) noexcept {
1462
+ return optional.value();
848
1463
  }
849
1464
 
850
- // pragma MARK: std::optional<NitroRequestPurchaseAndroid>
1465
+ // pragma MARK: std::variant<nitro::NullType, NitroRequestPurchaseAndroid>
851
1466
  /**
852
- * Specialized version of `std::optional<NitroRequestPurchaseAndroid>`.
1467
+ * Wrapper struct for `std::variant<nitro::NullType, NitroRequestPurchaseAndroid>`.
1468
+ * std::variant cannot be used in Swift because of a Swift bug.
1469
+ * Not even specializing it works. So we create a wrapper struct.
853
1470
  */
854
- using std__optional_NitroRequestPurchaseAndroid_ = std::optional<NitroRequestPurchaseAndroid>;
855
- inline std::optional<NitroRequestPurchaseAndroid> create_std__optional_NitroRequestPurchaseAndroid_(const NitroRequestPurchaseAndroid& value) noexcept {
856
- return std::optional<NitroRequestPurchaseAndroid>(value);
1471
+ struct std__variant_nitro__NullType__NitroRequestPurchaseAndroid_ final {
1472
+ std::variant<nitro::NullType, NitroRequestPurchaseAndroid> variant;
1473
+ std__variant_nitro__NullType__NitroRequestPurchaseAndroid_(std::variant<nitro::NullType, NitroRequestPurchaseAndroid> variant): variant(variant) { }
1474
+ operator std::variant<nitro::NullType, NitroRequestPurchaseAndroid>() const noexcept {
1475
+ return variant;
1476
+ }
1477
+ inline size_t index() const noexcept {
1478
+ return variant.index();
1479
+ }
1480
+ inline nitro::NullType get_0() const noexcept {
1481
+ return std::get<0>(variant);
1482
+ }
1483
+ inline NitroRequestPurchaseAndroid get_1() const noexcept {
1484
+ return std::get<1>(variant);
1485
+ }
1486
+ };
1487
+ inline std__variant_nitro__NullType__NitroRequestPurchaseAndroid_ create_std__variant_nitro__NullType__NitroRequestPurchaseAndroid_(nitro::NullType value) noexcept {
1488
+ return std__variant_nitro__NullType__NitroRequestPurchaseAndroid_(value);
1489
+ }
1490
+ inline std__variant_nitro__NullType__NitroRequestPurchaseAndroid_ create_std__variant_nitro__NullType__NitroRequestPurchaseAndroid_(const NitroRequestPurchaseAndroid& value) noexcept {
1491
+ return std__variant_nitro__NullType__NitroRequestPurchaseAndroid_(value);
1492
+ }
1493
+
1494
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>
1495
+ /**
1496
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>`.
1497
+ */
1498
+ using std__optional_std__variant_nitro__NullType__NitroRequestPurchaseAndroid__ = std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>;
1499
+ inline std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>> create_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseAndroid__(const std::variant<nitro::NullType, NitroRequestPurchaseAndroid>& value) noexcept {
1500
+ return std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>(value);
857
1501
  }
858
- inline bool has_value_std__optional_NitroRequestPurchaseAndroid_(const std::optional<NitroRequestPurchaseAndroid>& optional) noexcept {
1502
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseAndroid__(const std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>& optional) noexcept {
859
1503
  return optional.has_value();
860
1504
  }
861
- inline NitroRequestPurchaseAndroid get_std__optional_NitroRequestPurchaseAndroid_(const std::optional<NitroRequestPurchaseAndroid>& optional) noexcept {
862
- return *optional;
1505
+ inline std::variant<nitro::NullType, NitroRequestPurchaseAndroid> get_std__optional_std__variant_nitro__NullType__NitroRequestPurchaseAndroid__(const std::optional<std::variant<nitro::NullType, NitroRequestPurchaseAndroid>>& optional) noexcept {
1506
+ return optional.value();
1507
+ }
1508
+
1509
+ // pragma MARK: std::variant<nitro::NullType, NitroRenewalInfoIOS>
1510
+ /**
1511
+ * Wrapper struct for `std::variant<nitro::NullType, NitroRenewalInfoIOS>`.
1512
+ * std::variant cannot be used in Swift because of a Swift bug.
1513
+ * Not even specializing it works. So we create a wrapper struct.
1514
+ */
1515
+ struct std__variant_nitro__NullType__NitroRenewalInfoIOS_ final {
1516
+ std::variant<nitro::NullType, NitroRenewalInfoIOS> variant;
1517
+ std__variant_nitro__NullType__NitroRenewalInfoIOS_(std::variant<nitro::NullType, NitroRenewalInfoIOS> variant): variant(variant) { }
1518
+ operator std::variant<nitro::NullType, NitroRenewalInfoIOS>() const noexcept {
1519
+ return variant;
1520
+ }
1521
+ inline size_t index() const noexcept {
1522
+ return variant.index();
1523
+ }
1524
+ inline nitro::NullType get_0() const noexcept {
1525
+ return std::get<0>(variant);
1526
+ }
1527
+ inline NitroRenewalInfoIOS get_1() const noexcept {
1528
+ return std::get<1>(variant);
1529
+ }
1530
+ };
1531
+ inline std__variant_nitro__NullType__NitroRenewalInfoIOS_ create_std__variant_nitro__NullType__NitroRenewalInfoIOS_(nitro::NullType value) noexcept {
1532
+ return std__variant_nitro__NullType__NitroRenewalInfoIOS_(value);
1533
+ }
1534
+ inline std__variant_nitro__NullType__NitroRenewalInfoIOS_ create_std__variant_nitro__NullType__NitroRenewalInfoIOS_(const NitroRenewalInfoIOS& value) noexcept {
1535
+ return std__variant_nitro__NullType__NitroRenewalInfoIOS_(value);
863
1536
  }
864
1537
 
865
- // pragma MARK: std::optional<NitroRenewalInfoIOS>
1538
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>
866
1539
  /**
867
- * Specialized version of `std::optional<NitroRenewalInfoIOS>`.
1540
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>`.
868
1541
  */
869
- using std__optional_NitroRenewalInfoIOS_ = std::optional<NitroRenewalInfoIOS>;
870
- inline std::optional<NitroRenewalInfoIOS> create_std__optional_NitroRenewalInfoIOS_(const NitroRenewalInfoIOS& value) noexcept {
871
- return std::optional<NitroRenewalInfoIOS>(value);
1542
+ using std__optional_std__variant_nitro__NullType__NitroRenewalInfoIOS__ = std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>;
1543
+ inline std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>> create_std__optional_std__variant_nitro__NullType__NitroRenewalInfoIOS__(const std::variant<nitro::NullType, NitroRenewalInfoIOS>& value) noexcept {
1544
+ return std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>(value);
872
1545
  }
873
- inline bool has_value_std__optional_NitroRenewalInfoIOS_(const std::optional<NitroRenewalInfoIOS>& optional) noexcept {
1546
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroRenewalInfoIOS__(const std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>& optional) noexcept {
874
1547
  return optional.has_value();
875
1548
  }
876
- inline NitroRenewalInfoIOS get_std__optional_NitroRenewalInfoIOS_(const std::optional<NitroRenewalInfoIOS>& optional) noexcept {
877
- return *optional;
1549
+ inline std::variant<nitro::NullType, NitroRenewalInfoIOS> get_std__optional_std__variant_nitro__NullType__NitroRenewalInfoIOS__(const std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>>& optional) noexcept {
1550
+ return optional.value();
878
1551
  }
879
1552
 
880
1553
  // pragma MARK: std::vector<NitroPurchase>
@@ -922,19 +1595,48 @@ namespace margelo::nitro::iap::bridge::swift {
922
1595
  return Func_void_std__vector_NitroPurchase__Wrapper(std::move(value));
923
1596
  }
924
1597
 
925
- // pragma MARK: std::optional<NitroAvailablePurchasesIosOptions>
1598
+ // pragma MARK: std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>
926
1599
  /**
927
- * Specialized version of `std::optional<NitroAvailablePurchasesIosOptions>`.
1600
+ * Wrapper struct for `std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>`.
1601
+ * std::variant cannot be used in Swift because of a Swift bug.
1602
+ * Not even specializing it works. So we create a wrapper struct.
928
1603
  */
929
- using std__optional_NitroAvailablePurchasesIosOptions_ = std::optional<NitroAvailablePurchasesIosOptions>;
930
- inline std::optional<NitroAvailablePurchasesIosOptions> create_std__optional_NitroAvailablePurchasesIosOptions_(const NitroAvailablePurchasesIosOptions& value) noexcept {
931
- return std::optional<NitroAvailablePurchasesIosOptions>(value);
1604
+ struct std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_ final {
1605
+ std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions> variant;
1606
+ std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_(std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions> variant): variant(variant) { }
1607
+ operator std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>() const noexcept {
1608
+ return variant;
1609
+ }
1610
+ inline size_t index() const noexcept {
1611
+ return variant.index();
1612
+ }
1613
+ inline nitro::NullType get_0() const noexcept {
1614
+ return std::get<0>(variant);
1615
+ }
1616
+ inline NitroAvailablePurchasesIosOptions get_1() const noexcept {
1617
+ return std::get<1>(variant);
1618
+ }
1619
+ };
1620
+ inline std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_ create_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_(nitro::NullType value) noexcept {
1621
+ return std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_(value);
1622
+ }
1623
+ inline std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_ create_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_(const NitroAvailablePurchasesIosOptions& value) noexcept {
1624
+ return std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions_(value);
1625
+ }
1626
+
1627
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>
1628
+ /**
1629
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>`.
1630
+ */
1631
+ using std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions__ = std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>;
1632
+ inline std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>> create_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions__(const std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>& value) noexcept {
1633
+ return std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>(value);
932
1634
  }
933
- inline bool has_value_std__optional_NitroAvailablePurchasesIosOptions_(const std::optional<NitroAvailablePurchasesIosOptions>& optional) noexcept {
1635
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions__(const std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>& optional) noexcept {
934
1636
  return optional.has_value();
935
1637
  }
936
- inline NitroAvailablePurchasesIosOptions get_std__optional_NitroAvailablePurchasesIosOptions_(const std::optional<NitroAvailablePurchasesIosOptions>& optional) noexcept {
937
- return *optional;
1638
+ inline std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions> get_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesIosOptions__(const std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesIosOptions>>& optional) noexcept {
1639
+ return optional.value();
938
1640
  }
939
1641
 
940
1642
  // pragma MARK: std::optional<NitroAvailablePurchasesAndroidType>
@@ -948,23 +1650,52 @@ namespace margelo::nitro::iap::bridge::swift {
948
1650
  inline bool has_value_std__optional_NitroAvailablePurchasesAndroidType_(const std::optional<NitroAvailablePurchasesAndroidType>& optional) noexcept {
949
1651
  return optional.has_value();
950
1652
  }
951
- inline NitroAvailablePurchasesAndroidType get_std__optional_NitroAvailablePurchasesAndroidType_(const std::optional<NitroAvailablePurchasesAndroidType>& optional) noexcept {
952
- return *optional;
1653
+ inline NitroAvailablePurchasesAndroidType get_std__optional_NitroAvailablePurchasesAndroidType_(const std::optional<NitroAvailablePurchasesAndroidType>& optional) noexcept {
1654
+ return optional.value();
1655
+ }
1656
+
1657
+ // pragma MARK: std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>
1658
+ /**
1659
+ * Wrapper struct for `std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>`.
1660
+ * std::variant cannot be used in Swift because of a Swift bug.
1661
+ * Not even specializing it works. So we create a wrapper struct.
1662
+ */
1663
+ struct std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_ final {
1664
+ std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions> variant;
1665
+ std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_(std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions> variant): variant(variant) { }
1666
+ operator std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>() const noexcept {
1667
+ return variant;
1668
+ }
1669
+ inline size_t index() const noexcept {
1670
+ return variant.index();
1671
+ }
1672
+ inline nitro::NullType get_0() const noexcept {
1673
+ return std::get<0>(variant);
1674
+ }
1675
+ inline NitroAvailablePurchasesAndroidOptions get_1() const noexcept {
1676
+ return std::get<1>(variant);
1677
+ }
1678
+ };
1679
+ inline std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_ create_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_(nitro::NullType value) noexcept {
1680
+ return std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_(value);
1681
+ }
1682
+ inline std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_ create_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_(const NitroAvailablePurchasesAndroidOptions& value) noexcept {
1683
+ return std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions_(value);
953
1684
  }
954
1685
 
955
- // pragma MARK: std::optional<NitroAvailablePurchasesAndroidOptions>
1686
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>
956
1687
  /**
957
- * Specialized version of `std::optional<NitroAvailablePurchasesAndroidOptions>`.
1688
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>`.
958
1689
  */
959
- using std__optional_NitroAvailablePurchasesAndroidOptions_ = std::optional<NitroAvailablePurchasesAndroidOptions>;
960
- inline std::optional<NitroAvailablePurchasesAndroidOptions> create_std__optional_NitroAvailablePurchasesAndroidOptions_(const NitroAvailablePurchasesAndroidOptions& value) noexcept {
961
- return std::optional<NitroAvailablePurchasesAndroidOptions>(value);
1690
+ using std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions__ = std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>;
1691
+ inline std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>> create_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions__(const std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>& value) noexcept {
1692
+ return std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>(value);
962
1693
  }
963
- inline bool has_value_std__optional_NitroAvailablePurchasesAndroidOptions_(const std::optional<NitroAvailablePurchasesAndroidOptions>& optional) noexcept {
1694
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions__(const std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>& optional) noexcept {
964
1695
  return optional.has_value();
965
1696
  }
966
- inline NitroAvailablePurchasesAndroidOptions get_std__optional_NitroAvailablePurchasesAndroidOptions_(const std::optional<NitroAvailablePurchasesAndroidOptions>& optional) noexcept {
967
- return *optional;
1697
+ inline std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions> get_std__optional_std__variant_nitro__NullType__NitroAvailablePurchasesAndroidOptions__(const std::optional<std::variant<nitro::NullType, NitroAvailablePurchasesAndroidOptions>>& optional) noexcept {
1698
+ return optional.value();
968
1699
  }
969
1700
 
970
1701
  // pragma MARK: std::optional<NitroAvailablePurchasesOptions>
@@ -979,7 +1710,7 @@ namespace margelo::nitro::iap::bridge::swift {
979
1710
  return optional.has_value();
980
1711
  }
981
1712
  inline NitroAvailablePurchasesOptions get_std__optional_NitroAvailablePurchasesOptions_(const std::optional<NitroAvailablePurchasesOptions>& optional) noexcept {
982
- return *optional;
1713
+ return optional.value();
983
1714
  }
984
1715
 
985
1716
  // pragma MARK: std::vector<NitroActiveSubscription>
@@ -1027,13 +1758,28 @@ namespace margelo::nitro::iap::bridge::swift {
1027
1758
  return Func_void_std__vector_NitroActiveSubscription__Wrapper(std::move(value));
1028
1759
  }
1029
1760
 
1761
+ // pragma MARK: std::optional<std::vector<std::string>>
1762
+ /**
1763
+ * Specialized version of `std::optional<std::vector<std::string>>`.
1764
+ */
1765
+ using std__optional_std__vector_std__string__ = std::optional<std::vector<std::string>>;
1766
+ inline std::optional<std::vector<std::string>> create_std__optional_std__vector_std__string__(const std::vector<std::string>& value) noexcept {
1767
+ return std::optional<std::vector<std::string>>(value);
1768
+ }
1769
+ inline bool has_value_std__optional_std__vector_std__string__(const std::optional<std::vector<std::string>>& optional) noexcept {
1770
+ return optional.has_value();
1771
+ }
1772
+ inline std::vector<std::string> get_std__optional_std__vector_std__string__(const std::optional<std::vector<std::string>>& optional) noexcept {
1773
+ return optional.value();
1774
+ }
1775
+
1030
1776
  // pragma MARK: std::variant<bool, NitroPurchaseResult>
1031
1777
  /**
1032
1778
  * Wrapper struct for `std::variant<bool, NitroPurchaseResult>`.
1033
1779
  * std::variant cannot be used in Swift because of a Swift bug.
1034
1780
  * Not even specializing it works. So we create a wrapper struct.
1035
1781
  */
1036
- struct std__variant_bool__NitroPurchaseResult_ {
1782
+ struct std__variant_bool__NitroPurchaseResult_ final {
1037
1783
  std::variant<bool, NitroPurchaseResult> variant;
1038
1784
  std__variant_bool__NitroPurchaseResult_(std::variant<bool, NitroPurchaseResult> variant): variant(variant) { }
1039
1785
  operator std::variant<bool, NitroPurchaseResult>() const noexcept {
@@ -1090,34 +1836,92 @@ namespace margelo::nitro::iap::bridge::swift {
1090
1836
  return Func_void_std__variant_bool__NitroPurchaseResult__Wrapper(std::move(value));
1091
1837
  }
1092
1838
 
1093
- // pragma MARK: std::optional<NitroFinishTransactionIosParams>
1839
+ // pragma MARK: std::variant<nitro::NullType, NitroFinishTransactionIosParams>
1840
+ /**
1841
+ * Wrapper struct for `std::variant<nitro::NullType, NitroFinishTransactionIosParams>`.
1842
+ * std::variant cannot be used in Swift because of a Swift bug.
1843
+ * Not even specializing it works. So we create a wrapper struct.
1844
+ */
1845
+ struct std__variant_nitro__NullType__NitroFinishTransactionIosParams_ final {
1846
+ std::variant<nitro::NullType, NitroFinishTransactionIosParams> variant;
1847
+ std__variant_nitro__NullType__NitroFinishTransactionIosParams_(std::variant<nitro::NullType, NitroFinishTransactionIosParams> variant): variant(variant) { }
1848
+ operator std::variant<nitro::NullType, NitroFinishTransactionIosParams>() const noexcept {
1849
+ return variant;
1850
+ }
1851
+ inline size_t index() const noexcept {
1852
+ return variant.index();
1853
+ }
1854
+ inline nitro::NullType get_0() const noexcept {
1855
+ return std::get<0>(variant);
1856
+ }
1857
+ inline NitroFinishTransactionIosParams get_1() const noexcept {
1858
+ return std::get<1>(variant);
1859
+ }
1860
+ };
1861
+ inline std__variant_nitro__NullType__NitroFinishTransactionIosParams_ create_std__variant_nitro__NullType__NitroFinishTransactionIosParams_(nitro::NullType value) noexcept {
1862
+ return std__variant_nitro__NullType__NitroFinishTransactionIosParams_(value);
1863
+ }
1864
+ inline std__variant_nitro__NullType__NitroFinishTransactionIosParams_ create_std__variant_nitro__NullType__NitroFinishTransactionIosParams_(const NitroFinishTransactionIosParams& value) noexcept {
1865
+ return std__variant_nitro__NullType__NitroFinishTransactionIosParams_(value);
1866
+ }
1867
+
1868
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>
1094
1869
  /**
1095
- * Specialized version of `std::optional<NitroFinishTransactionIosParams>`.
1870
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>`.
1096
1871
  */
1097
- using std__optional_NitroFinishTransactionIosParams_ = std::optional<NitroFinishTransactionIosParams>;
1098
- inline std::optional<NitroFinishTransactionIosParams> create_std__optional_NitroFinishTransactionIosParams_(const NitroFinishTransactionIosParams& value) noexcept {
1099
- return std::optional<NitroFinishTransactionIosParams>(value);
1872
+ using std__optional_std__variant_nitro__NullType__NitroFinishTransactionIosParams__ = std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>;
1873
+ inline std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>> create_std__optional_std__variant_nitro__NullType__NitroFinishTransactionIosParams__(const std::variant<nitro::NullType, NitroFinishTransactionIosParams>& value) noexcept {
1874
+ return std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>(value);
1100
1875
  }
1101
- inline bool has_value_std__optional_NitroFinishTransactionIosParams_(const std::optional<NitroFinishTransactionIosParams>& optional) noexcept {
1876
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroFinishTransactionIosParams__(const std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>& optional) noexcept {
1102
1877
  return optional.has_value();
1103
1878
  }
1104
- inline NitroFinishTransactionIosParams get_std__optional_NitroFinishTransactionIosParams_(const std::optional<NitroFinishTransactionIosParams>& optional) noexcept {
1105
- return *optional;
1879
+ inline std::variant<nitro::NullType, NitroFinishTransactionIosParams> get_std__optional_std__variant_nitro__NullType__NitroFinishTransactionIosParams__(const std::optional<std::variant<nitro::NullType, NitroFinishTransactionIosParams>>& optional) noexcept {
1880
+ return optional.value();
1881
+ }
1882
+
1883
+ // pragma MARK: std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>
1884
+ /**
1885
+ * Wrapper struct for `std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>`.
1886
+ * std::variant cannot be used in Swift because of a Swift bug.
1887
+ * Not even specializing it works. So we create a wrapper struct.
1888
+ */
1889
+ struct std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_ final {
1890
+ std::variant<nitro::NullType, NitroFinishTransactionAndroidParams> variant;
1891
+ std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_(std::variant<nitro::NullType, NitroFinishTransactionAndroidParams> variant): variant(variant) { }
1892
+ operator std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>() const noexcept {
1893
+ return variant;
1894
+ }
1895
+ inline size_t index() const noexcept {
1896
+ return variant.index();
1897
+ }
1898
+ inline nitro::NullType get_0() const noexcept {
1899
+ return std::get<0>(variant);
1900
+ }
1901
+ inline NitroFinishTransactionAndroidParams get_1() const noexcept {
1902
+ return std::get<1>(variant);
1903
+ }
1904
+ };
1905
+ inline std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_ create_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_(nitro::NullType value) noexcept {
1906
+ return std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_(value);
1907
+ }
1908
+ inline std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_ create_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_(const NitroFinishTransactionAndroidParams& value) noexcept {
1909
+ return std__variant_nitro__NullType__NitroFinishTransactionAndroidParams_(value);
1106
1910
  }
1107
1911
 
1108
- // pragma MARK: std::optional<NitroFinishTransactionAndroidParams>
1912
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>
1109
1913
  /**
1110
- * Specialized version of `std::optional<NitroFinishTransactionAndroidParams>`.
1914
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>`.
1111
1915
  */
1112
- using std__optional_NitroFinishTransactionAndroidParams_ = std::optional<NitroFinishTransactionAndroidParams>;
1113
- inline std::optional<NitroFinishTransactionAndroidParams> create_std__optional_NitroFinishTransactionAndroidParams_(const NitroFinishTransactionAndroidParams& value) noexcept {
1114
- return std::optional<NitroFinishTransactionAndroidParams>(value);
1916
+ using std__optional_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams__ = std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>;
1917
+ inline std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>> create_std__optional_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams__(const std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>& value) noexcept {
1918
+ return std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>(value);
1115
1919
  }
1116
- inline bool has_value_std__optional_NitroFinishTransactionAndroidParams_(const std::optional<NitroFinishTransactionAndroidParams>& optional) noexcept {
1920
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams__(const std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>& optional) noexcept {
1117
1921
  return optional.has_value();
1118
1922
  }
1119
- inline NitroFinishTransactionAndroidParams get_std__optional_NitroFinishTransactionAndroidParams_(const std::optional<NitroFinishTransactionAndroidParams>& optional) noexcept {
1120
- return *optional;
1923
+ inline std::variant<nitro::NullType, NitroFinishTransactionAndroidParams> get_std__optional_std__variant_nitro__NullType__NitroFinishTransactionAndroidParams__(const std::optional<std::variant<nitro::NullType, NitroFinishTransactionAndroidParams>>& optional) noexcept {
1924
+ return optional.value();
1121
1925
  }
1122
1926
 
1123
1927
  // pragma MARK: std::function<void(const NitroPurchase& /* purchase */)>
@@ -1220,87 +2024,101 @@ namespace margelo::nitro::iap::bridge::swift {
1220
2024
  return Func_void_std__string_Wrapper(std::move(value));
1221
2025
  }
1222
2026
 
1223
- // pragma MARK: std::shared_ptr<Promise<std::optional<std::string>>>
2027
+ // pragma MARK: std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>
1224
2028
  /**
1225
- * Specialized version of `std::shared_ptr<Promise<std::optional<std::string>>>`.
2029
+ * Specialized version of `std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>`.
1226
2030
  */
1227
- using std__shared_ptr_Promise_std__optional_std__string___ = std::shared_ptr<Promise<std::optional<std::string>>>;
1228
- inline std::shared_ptr<Promise<std::optional<std::string>>> create_std__shared_ptr_Promise_std__optional_std__string___() noexcept {
1229
- return Promise<std::optional<std::string>>::create();
2031
+ using std__shared_ptr_Promise_std__variant_nitro__NullType__std__string___ = std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>;
2032
+ inline std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>> create_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string___() noexcept {
2033
+ return Promise<std::variant<nitro::NullType, std::string>>::create();
1230
2034
  }
1231
- inline PromiseHolder<std::optional<std::string>> wrap_std__shared_ptr_Promise_std__optional_std__string___(std::shared_ptr<Promise<std::optional<std::string>>> promise) noexcept {
1232
- return PromiseHolder<std::optional<std::string>>(std::move(promise));
2035
+ inline PromiseHolder<std::variant<nitro::NullType, std::string>> wrap_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string___(std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>> promise) noexcept {
2036
+ return PromiseHolder<std::variant<nitro::NullType, std::string>>(std::move(promise));
1233
2037
  }
1234
2038
 
1235
- // pragma MARK: std::function<void(const std::optional<std::string>& /* result */)>
2039
+ // pragma MARK: std::function<void(const std::variant<nitro::NullType, std::string>& /* result */)>
1236
2040
  /**
1237
- * Specialized version of `std::function<void(const std::optional<std::string>&)>`.
2041
+ * Specialized version of `std::function<void(const std::variant<nitro::NullType, std::string>&)>`.
1238
2042
  */
1239
- using Func_void_std__optional_std__string_ = std::function<void(const std::optional<std::string>& /* result */)>;
2043
+ using Func_void_std__variant_nitro__NullType__std__string_ = std::function<void(const std::variant<nitro::NullType, std::string>& /* result */)>;
1240
2044
  /**
1241
- * Wrapper class for a `std::function<void(const std::optional<std::string>& / * result * /)>`, this can be used from Swift.
2045
+ * Wrapper class for a `std::function<void(const std::variant<nitro::NullType, std::string>& / * result * /)>`, this can be used from Swift.
1242
2046
  */
1243
- class Func_void_std__optional_std__string__Wrapper final {
2047
+ class Func_void_std__variant_nitro__NullType__std__string__Wrapper final {
1244
2048
  public:
1245
- explicit Func_void_std__optional_std__string__Wrapper(std::function<void(const std::optional<std::string>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<std::string>& /* result */)>>(std::move(func))) {}
1246
- inline void call(std::optional<std::string> result) const noexcept {
2049
+ explicit Func_void_std__variant_nitro__NullType__std__string__Wrapper(std::function<void(const std::variant<nitro::NullType, std::string>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::variant<nitro::NullType, std::string>& /* result */)>>(std::move(func))) {}
2050
+ inline void call(std::variant<nitro::NullType, std::string> result) const noexcept {
1247
2051
  _function->operator()(result);
1248
2052
  }
1249
2053
  private:
1250
- std::unique_ptr<std::function<void(const std::optional<std::string>& /* result */)>> _function;
2054
+ std::unique_ptr<std::function<void(const std::variant<nitro::NullType, std::string>& /* result */)>> _function;
1251
2055
  } SWIFT_NONCOPYABLE;
1252
- Func_void_std__optional_std__string_ create_Func_void_std__optional_std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
1253
- inline Func_void_std__optional_std__string__Wrapper wrap_Func_void_std__optional_std__string_(Func_void_std__optional_std__string_ value) noexcept {
1254
- return Func_void_std__optional_std__string__Wrapper(std::move(value));
2056
+ Func_void_std__variant_nitro__NullType__std__string_ create_Func_void_std__variant_nitro__NullType__std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
2057
+ inline Func_void_std__variant_nitro__NullType__std__string__Wrapper wrap_Func_void_std__variant_nitro__NullType__std__string_(Func_void_std__variant_nitro__NullType__std__string_ value) noexcept {
2058
+ return Func_void_std__variant_nitro__NullType__std__string__Wrapper(std::move(value));
1255
2059
  }
1256
2060
 
1257
- // pragma MARK: std::optional<NitroProduct>
2061
+ // pragma MARK: std::variant<nitro::NullType, NitroProduct>
1258
2062
  /**
1259
- * Specialized version of `std::optional<NitroProduct>`.
2063
+ * Wrapper struct for `std::variant<nitro::NullType, NitroProduct>`.
2064
+ * std::variant cannot be used in Swift because of a Swift bug.
2065
+ * Not even specializing it works. So we create a wrapper struct.
1260
2066
  */
1261
- using std__optional_NitroProduct_ = std::optional<NitroProduct>;
1262
- inline std::optional<NitroProduct> create_std__optional_NitroProduct_(const NitroProduct& value) noexcept {
1263
- return std::optional<NitroProduct>(value);
1264
- }
1265
- inline bool has_value_std__optional_NitroProduct_(const std::optional<NitroProduct>& optional) noexcept {
1266
- return optional.has_value();
2067
+ struct std__variant_nitro__NullType__NitroProduct_ final {
2068
+ std::variant<nitro::NullType, NitroProduct> variant;
2069
+ std__variant_nitro__NullType__NitroProduct_(std::variant<nitro::NullType, NitroProduct> variant): variant(variant) { }
2070
+ operator std::variant<nitro::NullType, NitroProduct>() const noexcept {
2071
+ return variant;
2072
+ }
2073
+ inline size_t index() const noexcept {
2074
+ return variant.index();
2075
+ }
2076
+ inline nitro::NullType get_0() const noexcept {
2077
+ return std::get<0>(variant);
2078
+ }
2079
+ inline NitroProduct get_1() const noexcept {
2080
+ return std::get<1>(variant);
2081
+ }
2082
+ };
2083
+ inline std__variant_nitro__NullType__NitroProduct_ create_std__variant_nitro__NullType__NitroProduct_(nitro::NullType value) noexcept {
2084
+ return std__variant_nitro__NullType__NitroProduct_(value);
1267
2085
  }
1268
- inline NitroProduct get_std__optional_NitroProduct_(const std::optional<NitroProduct>& optional) noexcept {
1269
- return *optional;
2086
+ inline std__variant_nitro__NullType__NitroProduct_ create_std__variant_nitro__NullType__NitroProduct_(const NitroProduct& value) noexcept {
2087
+ return std__variant_nitro__NullType__NitroProduct_(value);
1270
2088
  }
1271
2089
 
1272
- // pragma MARK: std::shared_ptr<Promise<std::optional<NitroProduct>>>
2090
+ // pragma MARK: std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>
1273
2091
  /**
1274
- * Specialized version of `std::shared_ptr<Promise<std::optional<NitroProduct>>>`.
2092
+ * Specialized version of `std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>`.
1275
2093
  */
1276
- using std__shared_ptr_Promise_std__optional_NitroProduct___ = std::shared_ptr<Promise<std::optional<NitroProduct>>>;
1277
- inline std::shared_ptr<Promise<std::optional<NitroProduct>>> create_std__shared_ptr_Promise_std__optional_NitroProduct___() noexcept {
1278
- return Promise<std::optional<NitroProduct>>::create();
2094
+ using std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct___ = std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>;
2095
+ inline std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>> create_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct___() noexcept {
2096
+ return Promise<std::variant<nitro::NullType, NitroProduct>>::create();
1279
2097
  }
1280
- inline PromiseHolder<std::optional<NitroProduct>> wrap_std__shared_ptr_Promise_std__optional_NitroProduct___(std::shared_ptr<Promise<std::optional<NitroProduct>>> promise) noexcept {
1281
- return PromiseHolder<std::optional<NitroProduct>>(std::move(promise));
2098
+ inline PromiseHolder<std::variant<nitro::NullType, NitroProduct>> wrap_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct___(std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>> promise) noexcept {
2099
+ return PromiseHolder<std::variant<nitro::NullType, NitroProduct>>(std::move(promise));
1282
2100
  }
1283
2101
 
1284
- // pragma MARK: std::function<void(const std::optional<NitroProduct>& /* result */)>
2102
+ // pragma MARK: std::function<void(const std::variant<nitro::NullType, NitroProduct>& /* result */)>
1285
2103
  /**
1286
- * Specialized version of `std::function<void(const std::optional<NitroProduct>&)>`.
2104
+ * Specialized version of `std::function<void(const std::variant<nitro::NullType, NitroProduct>&)>`.
1287
2105
  */
1288
- using Func_void_std__optional_NitroProduct_ = std::function<void(const std::optional<NitroProduct>& /* result */)>;
2106
+ using Func_void_std__variant_nitro__NullType__NitroProduct_ = std::function<void(const std::variant<nitro::NullType, NitroProduct>& /* result */)>;
1289
2107
  /**
1290
- * Wrapper class for a `std::function<void(const std::optional<NitroProduct>& / * result * /)>`, this can be used from Swift.
2108
+ * Wrapper class for a `std::function<void(const std::variant<nitro::NullType, NitroProduct>& / * result * /)>`, this can be used from Swift.
1291
2109
  */
1292
- class Func_void_std__optional_NitroProduct__Wrapper final {
2110
+ class Func_void_std__variant_nitro__NullType__NitroProduct__Wrapper final {
1293
2111
  public:
1294
- explicit Func_void_std__optional_NitroProduct__Wrapper(std::function<void(const std::optional<NitroProduct>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<NitroProduct>& /* result */)>>(std::move(func))) {}
1295
- inline void call(std::optional<NitroProduct> result) const noexcept {
2112
+ explicit Func_void_std__variant_nitro__NullType__NitroProduct__Wrapper(std::function<void(const std::variant<nitro::NullType, NitroProduct>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::variant<nitro::NullType, NitroProduct>& /* result */)>>(std::move(func))) {}
2113
+ inline void call(std::variant<nitro::NullType, NitroProduct> result) const noexcept {
1296
2114
  _function->operator()(result);
1297
2115
  }
1298
2116
  private:
1299
- std::unique_ptr<std::function<void(const std::optional<NitroProduct>& /* result */)>> _function;
2117
+ std::unique_ptr<std::function<void(const std::variant<nitro::NullType, NitroProduct>& /* result */)>> _function;
1300
2118
  } SWIFT_NONCOPYABLE;
1301
- Func_void_std__optional_NitroProduct_ create_Func_void_std__optional_NitroProduct_(void* NON_NULL swiftClosureWrapper) noexcept;
1302
- inline Func_void_std__optional_NitroProduct__Wrapper wrap_Func_void_std__optional_NitroProduct_(Func_void_std__optional_NitroProduct_ value) noexcept {
1303
- return Func_void_std__optional_NitroProduct__Wrapper(std::move(value));
2119
+ Func_void_std__variant_nitro__NullType__NitroProduct_ create_Func_void_std__variant_nitro__NullType__NitroProduct_(void* NON_NULL swiftClosureWrapper) noexcept;
2120
+ inline Func_void_std__variant_nitro__NullType__NitroProduct__Wrapper wrap_Func_void_std__variant_nitro__NullType__NitroProduct_(Func_void_std__variant_nitro__NullType__NitroProduct_ value) noexcept {
2121
+ return Func_void_std__variant_nitro__NullType__NitroProduct__Wrapper(std::move(value));
1304
2122
  }
1305
2123
 
1306
2124
  // pragma MARK: std::shared_ptr<Promise<void>>
@@ -1337,19 +2155,48 @@ namespace margelo::nitro::iap::bridge::swift {
1337
2155
  return Func_void_Wrapper(std::move(value));
1338
2156
  }
1339
2157
 
1340
- // pragma MARK: std::optional<NitroSubscriptionRenewalInfo>
2158
+ // pragma MARK: std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>
2159
+ /**
2160
+ * Wrapper struct for `std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>`.
2161
+ * std::variant cannot be used in Swift because of a Swift bug.
2162
+ * Not even specializing it works. So we create a wrapper struct.
2163
+ */
2164
+ struct std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_ final {
2165
+ std::variant<nitro::NullType, NitroSubscriptionRenewalInfo> variant;
2166
+ std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_(std::variant<nitro::NullType, NitroSubscriptionRenewalInfo> variant): variant(variant) { }
2167
+ operator std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>() const noexcept {
2168
+ return variant;
2169
+ }
2170
+ inline size_t index() const noexcept {
2171
+ return variant.index();
2172
+ }
2173
+ inline nitro::NullType get_0() const noexcept {
2174
+ return std::get<0>(variant);
2175
+ }
2176
+ inline NitroSubscriptionRenewalInfo get_1() const noexcept {
2177
+ return std::get<1>(variant);
2178
+ }
2179
+ };
2180
+ inline std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_ create_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_(nitro::NullType value) noexcept {
2181
+ return std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_(value);
2182
+ }
2183
+ inline std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_ create_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_(const NitroSubscriptionRenewalInfo& value) noexcept {
2184
+ return std__variant_nitro__NullType__NitroSubscriptionRenewalInfo_(value);
2185
+ }
2186
+
2187
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>
1341
2188
  /**
1342
- * Specialized version of `std::optional<NitroSubscriptionRenewalInfo>`.
2189
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>`.
1343
2190
  */
1344
- using std__optional_NitroSubscriptionRenewalInfo_ = std::optional<NitroSubscriptionRenewalInfo>;
1345
- inline std::optional<NitroSubscriptionRenewalInfo> create_std__optional_NitroSubscriptionRenewalInfo_(const NitroSubscriptionRenewalInfo& value) noexcept {
1346
- return std::optional<NitroSubscriptionRenewalInfo>(value);
2191
+ using std__optional_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo__ = std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>;
2192
+ inline std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>> create_std__optional_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo__(const std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>& value) noexcept {
2193
+ return std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>(value);
1347
2194
  }
1348
- inline bool has_value_std__optional_NitroSubscriptionRenewalInfo_(const std::optional<NitroSubscriptionRenewalInfo>& optional) noexcept {
2195
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo__(const std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>& optional) noexcept {
1349
2196
  return optional.has_value();
1350
2197
  }
1351
- inline NitroSubscriptionRenewalInfo get_std__optional_NitroSubscriptionRenewalInfo_(const std::optional<NitroSubscriptionRenewalInfo>& optional) noexcept {
1352
- return *optional;
2198
+ inline std::variant<nitro::NullType, NitroSubscriptionRenewalInfo> get_std__optional_std__variant_nitro__NullType__NitroSubscriptionRenewalInfo__(const std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>>& optional) noexcept {
2199
+ return optional.value();
1353
2200
  }
1354
2201
 
1355
2202
  // pragma MARK: std::vector<NitroSubscriptionStatus>
@@ -1363,102 +2210,145 @@ namespace margelo::nitro::iap::bridge::swift {
1363
2210
  return vector;
1364
2211
  }
1365
2212
 
1366
- // pragma MARK: std::optional<std::vector<NitroSubscriptionStatus>>
2213
+ // pragma MARK: std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>
1367
2214
  /**
1368
- * Specialized version of `std::optional<std::vector<NitroSubscriptionStatus>>`.
2215
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>`.
2216
+ * std::variant cannot be used in Swift because of a Swift bug.
2217
+ * Not even specializing it works. So we create a wrapper struct.
1369
2218
  */
1370
- using std__optional_std__vector_NitroSubscriptionStatus__ = std::optional<std::vector<NitroSubscriptionStatus>>;
1371
- inline std::optional<std::vector<NitroSubscriptionStatus>> create_std__optional_std__vector_NitroSubscriptionStatus__(const std::vector<NitroSubscriptionStatus>& value) noexcept {
1372
- return std::optional<std::vector<NitroSubscriptionStatus>>(value);
1373
- }
1374
- inline bool has_value_std__optional_std__vector_NitroSubscriptionStatus__(const std::optional<std::vector<NitroSubscriptionStatus>>& optional) noexcept {
1375
- return optional.has_value();
2219
+ struct std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ final {
2220
+ std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>> variant;
2221
+ std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>> variant): variant(variant) { }
2222
+ operator std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>() const noexcept {
2223
+ return variant;
2224
+ }
2225
+ inline size_t index() const noexcept {
2226
+ return variant.index();
2227
+ }
2228
+ inline nitro::NullType get_0() const noexcept {
2229
+ return std::get<0>(variant);
2230
+ }
2231
+ inline std::vector<NitroSubscriptionStatus> get_1() const noexcept {
2232
+ return std::get<1>(variant);
2233
+ }
2234
+ };
2235
+ inline std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ create_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(nitro::NullType value) noexcept {
2236
+ return std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(value);
1376
2237
  }
1377
- inline std::vector<NitroSubscriptionStatus> get_std__optional_std__vector_NitroSubscriptionStatus__(const std::optional<std::vector<NitroSubscriptionStatus>>& optional) noexcept {
1378
- return *optional;
2238
+ inline std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ create_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(const std::vector<NitroSubscriptionStatus>& value) noexcept {
2239
+ return std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(value);
1379
2240
  }
1380
2241
 
1381
- // pragma MARK: std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>
2242
+ // pragma MARK: std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>
1382
2243
  /**
1383
- * Specialized version of `std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>`.
2244
+ * Specialized version of `std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>`.
1384
2245
  */
1385
- using std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____ = std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>;
1386
- inline std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>> create_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____() noexcept {
1387
- return Promise<std::optional<std::vector<NitroSubscriptionStatus>>>::create();
2246
+ using std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus____ = std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>;
2247
+ inline std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>> create_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus____() noexcept {
2248
+ return Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>::create();
1388
2249
  }
1389
- inline PromiseHolder<std::optional<std::vector<NitroSubscriptionStatus>>> wrap_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____(std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>> promise) noexcept {
1390
- return PromiseHolder<std::optional<std::vector<NitroSubscriptionStatus>>>(std::move(promise));
2250
+ inline PromiseHolder<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>> wrap_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus____(std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>> promise) noexcept {
2251
+ return PromiseHolder<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>(std::move(promise));
1391
2252
  }
1392
2253
 
1393
- // pragma MARK: std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& /* result */)>
2254
+ // pragma MARK: std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& /* result */)>
1394
2255
  /**
1395
- * Specialized version of `std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>&)>`.
2256
+ * Specialized version of `std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>&)>`.
1396
2257
  */
1397
- using Func_void_std__optional_std__vector_NitroSubscriptionStatus__ = std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& /* result */)>;
2258
+ using Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ = std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& /* result */)>;
1398
2259
  /**
1399
- * Wrapper class for a `std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& / * result * /)>`, this can be used from Swift.
2260
+ * Wrapper class for a `std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& / * result * /)>`, this can be used from Swift.
1400
2261
  */
1401
- class Func_void_std__optional_std__vector_NitroSubscriptionStatus___Wrapper final {
2262
+ class Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus___Wrapper final {
1402
2263
  public:
1403
- explicit Func_void_std__optional_std__vector_NitroSubscriptionStatus___Wrapper(std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& /* result */)>>(std::move(func))) {}
1404
- inline void call(std::optional<std::vector<NitroSubscriptionStatus>> result) const noexcept {
2264
+ explicit Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus___Wrapper(std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& /* result */)>>(std::move(func))) {}
2265
+ inline void call(std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>> result) const noexcept {
1405
2266
  _function->operator()(result);
1406
2267
  }
1407
2268
  private:
1408
- std::unique_ptr<std::function<void(const std::optional<std::vector<NitroSubscriptionStatus>>& /* result */)>> _function;
2269
+ std::unique_ptr<std::function<void(const std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>& /* result */)>> _function;
1409
2270
  } SWIFT_NONCOPYABLE;
1410
- Func_void_std__optional_std__vector_NitroSubscriptionStatus__ create_Func_void_std__optional_std__vector_NitroSubscriptionStatus__(void* NON_NULL swiftClosureWrapper) noexcept;
1411
- inline Func_void_std__optional_std__vector_NitroSubscriptionStatus___Wrapper wrap_Func_void_std__optional_std__vector_NitroSubscriptionStatus__(Func_void_std__optional_std__vector_NitroSubscriptionStatus__ value) noexcept {
1412
- return Func_void_std__optional_std__vector_NitroSubscriptionStatus___Wrapper(std::move(value));
2271
+ Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ create_Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(void* NON_NULL swiftClosureWrapper) noexcept;
2272
+ inline Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus___Wrapper wrap_Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__(Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus__ value) noexcept {
2273
+ return Func_void_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus___Wrapper(std::move(value));
1413
2274
  }
1414
2275
 
1415
- // pragma MARK: std::optional<NitroPurchase>
2276
+ // pragma MARK: std::variant<nitro::NullType, NitroPurchase>
1416
2277
  /**
1417
- * Specialized version of `std::optional<NitroPurchase>`.
2278
+ * Wrapper struct for `std::variant<nitro::NullType, NitroPurchase>`.
2279
+ * std::variant cannot be used in Swift because of a Swift bug.
2280
+ * Not even specializing it works. So we create a wrapper struct.
1418
2281
  */
1419
- using std__optional_NitroPurchase_ = std::optional<NitroPurchase>;
1420
- inline std::optional<NitroPurchase> create_std__optional_NitroPurchase_(const NitroPurchase& value) noexcept {
1421
- return std::optional<NitroPurchase>(value);
1422
- }
1423
- inline bool has_value_std__optional_NitroPurchase_(const std::optional<NitroPurchase>& optional) noexcept {
1424
- return optional.has_value();
2282
+ struct std__variant_nitro__NullType__NitroPurchase_ final {
2283
+ std::variant<nitro::NullType, NitroPurchase> variant;
2284
+ std__variant_nitro__NullType__NitroPurchase_(std::variant<nitro::NullType, NitroPurchase> variant): variant(variant) { }
2285
+ operator std::variant<nitro::NullType, NitroPurchase>() const noexcept {
2286
+ return variant;
2287
+ }
2288
+ inline size_t index() const noexcept {
2289
+ return variant.index();
2290
+ }
2291
+ inline nitro::NullType get_0() const noexcept {
2292
+ return std::get<0>(variant);
2293
+ }
2294
+ inline NitroPurchase get_1() const noexcept {
2295
+ return std::get<1>(variant);
2296
+ }
2297
+ };
2298
+ inline std__variant_nitro__NullType__NitroPurchase_ create_std__variant_nitro__NullType__NitroPurchase_(nitro::NullType value) noexcept {
2299
+ return std__variant_nitro__NullType__NitroPurchase_(value);
1425
2300
  }
1426
- inline NitroPurchase get_std__optional_NitroPurchase_(const std::optional<NitroPurchase>& optional) noexcept {
1427
- return *optional;
2301
+ inline std__variant_nitro__NullType__NitroPurchase_ create_std__variant_nitro__NullType__NitroPurchase_(const NitroPurchase& value) noexcept {
2302
+ return std__variant_nitro__NullType__NitroPurchase_(value);
1428
2303
  }
1429
2304
 
1430
- // pragma MARK: std::shared_ptr<Promise<std::optional<NitroPurchase>>>
2305
+ // pragma MARK: std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>
1431
2306
  /**
1432
- * Specialized version of `std::shared_ptr<Promise<std::optional<NitroPurchase>>>`.
2307
+ * Specialized version of `std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>`.
1433
2308
  */
1434
- using std__shared_ptr_Promise_std__optional_NitroPurchase___ = std::shared_ptr<Promise<std::optional<NitroPurchase>>>;
1435
- inline std::shared_ptr<Promise<std::optional<NitroPurchase>>> create_std__shared_ptr_Promise_std__optional_NitroPurchase___() noexcept {
1436
- return Promise<std::optional<NitroPurchase>>::create();
2309
+ using std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase___ = std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>;
2310
+ inline std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>> create_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase___() noexcept {
2311
+ return Promise<std::variant<nitro::NullType, NitroPurchase>>::create();
1437
2312
  }
1438
- inline PromiseHolder<std::optional<NitroPurchase>> wrap_std__shared_ptr_Promise_std__optional_NitroPurchase___(std::shared_ptr<Promise<std::optional<NitroPurchase>>> promise) noexcept {
1439
- return PromiseHolder<std::optional<NitroPurchase>>(std::move(promise));
2313
+ inline PromiseHolder<std::variant<nitro::NullType, NitroPurchase>> wrap_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase___(std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>> promise) noexcept {
2314
+ return PromiseHolder<std::variant<nitro::NullType, NitroPurchase>>(std::move(promise));
1440
2315
  }
1441
2316
 
1442
- // pragma MARK: std::function<void(const std::optional<NitroPurchase>& /* result */)>
2317
+ // pragma MARK: std::function<void(const std::variant<nitro::NullType, NitroPurchase>& /* result */)>
1443
2318
  /**
1444
- * Specialized version of `std::function<void(const std::optional<NitroPurchase>&)>`.
2319
+ * Specialized version of `std::function<void(const std::variant<nitro::NullType, NitroPurchase>&)>`.
1445
2320
  */
1446
- using Func_void_std__optional_NitroPurchase_ = std::function<void(const std::optional<NitroPurchase>& /* result */)>;
2321
+ using Func_void_std__variant_nitro__NullType__NitroPurchase_ = std::function<void(const std::variant<nitro::NullType, NitroPurchase>& /* result */)>;
1447
2322
  /**
1448
- * Wrapper class for a `std::function<void(const std::optional<NitroPurchase>& / * result * /)>`, this can be used from Swift.
2323
+ * Wrapper class for a `std::function<void(const std::variant<nitro::NullType, NitroPurchase>& / * result * /)>`, this can be used from Swift.
1449
2324
  */
1450
- class Func_void_std__optional_NitroPurchase__Wrapper final {
2325
+ class Func_void_std__variant_nitro__NullType__NitroPurchase__Wrapper final {
1451
2326
  public:
1452
- explicit Func_void_std__optional_NitroPurchase__Wrapper(std::function<void(const std::optional<NitroPurchase>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::optional<NitroPurchase>& /* result */)>>(std::move(func))) {}
1453
- inline void call(std::optional<NitroPurchase> result) const noexcept {
2327
+ explicit Func_void_std__variant_nitro__NullType__NitroPurchase__Wrapper(std::function<void(const std::variant<nitro::NullType, NitroPurchase>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::variant<nitro::NullType, NitroPurchase>& /* result */)>>(std::move(func))) {}
2328
+ inline void call(std::variant<nitro::NullType, NitroPurchase> result) const noexcept {
1454
2329
  _function->operator()(result);
1455
2330
  }
1456
2331
  private:
1457
- std::unique_ptr<std::function<void(const std::optional<NitroPurchase>& /* result */)>> _function;
2332
+ std::unique_ptr<std::function<void(const std::variant<nitro::NullType, NitroPurchase>& /* result */)>> _function;
1458
2333
  } SWIFT_NONCOPYABLE;
1459
- Func_void_std__optional_NitroPurchase_ create_Func_void_std__optional_NitroPurchase_(void* NON_NULL swiftClosureWrapper) noexcept;
1460
- inline Func_void_std__optional_NitroPurchase__Wrapper wrap_Func_void_std__optional_NitroPurchase_(Func_void_std__optional_NitroPurchase_ value) noexcept {
1461
- return Func_void_std__optional_NitroPurchase__Wrapper(std::move(value));
2334
+ Func_void_std__variant_nitro__NullType__NitroPurchase_ create_Func_void_std__variant_nitro__NullType__NitroPurchase_(void* NON_NULL swiftClosureWrapper) noexcept;
2335
+ inline Func_void_std__variant_nitro__NullType__NitroPurchase__Wrapper wrap_Func_void_std__variant_nitro__NullType__NitroPurchase_(Func_void_std__variant_nitro__NullType__NitroPurchase_ value) noexcept {
2336
+ return Func_void_std__variant_nitro__NullType__NitroPurchase__Wrapper(std::move(value));
2337
+ }
2338
+
2339
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroPurchase>>
2340
+ /**
2341
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroPurchase>>`.
2342
+ */
2343
+ using std__optional_std__variant_nitro__NullType__NitroPurchase__ = std::optional<std::variant<nitro::NullType, NitroPurchase>>;
2344
+ inline std::optional<std::variant<nitro::NullType, NitroPurchase>> create_std__optional_std__variant_nitro__NullType__NitroPurchase__(const std::variant<nitro::NullType, NitroPurchase>& value) noexcept {
2345
+ return std::optional<std::variant<nitro::NullType, NitroPurchase>>(value);
2346
+ }
2347
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroPurchase__(const std::optional<std::variant<nitro::NullType, NitroPurchase>>& optional) noexcept {
2348
+ return optional.has_value();
2349
+ }
2350
+ inline std::variant<nitro::NullType, NitroPurchase> get_std__optional_std__variant_nitro__NullType__NitroPurchase__(const std::optional<std::variant<nitro::NullType, NitroPurchase>>& optional) noexcept {
2351
+ return optional.value();
1462
2352
  }
1463
2353
 
1464
2354
  // pragma MARK: std::variant<NitroReceiptValidationResultIOS, NitroReceiptValidationResultAndroid>
@@ -1467,7 +2357,7 @@ namespace margelo::nitro::iap::bridge::swift {
1467
2357
  * std::variant cannot be used in Swift because of a Swift bug.
1468
2358
  * Not even specializing it works. So we create a wrapper struct.
1469
2359
  */
1470
- struct std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_ {
2360
+ struct std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_ final {
1471
2361
  std::variant<NitroReceiptValidationResultIOS, NitroReceiptValidationResultAndroid> variant;
1472
2362
  std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_(std::variant<NitroReceiptValidationResultIOS, NitroReceiptValidationResultAndroid> variant): variant(variant) { }
1473
2363
  operator std::variant<NitroReceiptValidationResultIOS, NitroReceiptValidationResultAndroid>() const noexcept {
@@ -1524,64 +2414,180 @@ namespace margelo::nitro::iap::bridge::swift {
1524
2414
  return Func_void_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid__Wrapper(std::move(value));
1525
2415
  }
1526
2416
 
1527
- // pragma MARK: std::optional<NitroReceiptValidationAppleOptions>
2417
+ // pragma MARK: std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>
2418
+ /**
2419
+ * Wrapper struct for `std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>`.
2420
+ * std::variant cannot be used in Swift because of a Swift bug.
2421
+ * Not even specializing it works. So we create a wrapper struct.
2422
+ */
2423
+ struct std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_ final {
2424
+ std::variant<nitro::NullType, NitroReceiptValidationAppleOptions> variant;
2425
+ std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_(std::variant<nitro::NullType, NitroReceiptValidationAppleOptions> variant): variant(variant) { }
2426
+ operator std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>() const noexcept {
2427
+ return variant;
2428
+ }
2429
+ inline size_t index() const noexcept {
2430
+ return variant.index();
2431
+ }
2432
+ inline nitro::NullType get_0() const noexcept {
2433
+ return std::get<0>(variant);
2434
+ }
2435
+ inline NitroReceiptValidationAppleOptions get_1() const noexcept {
2436
+ return std::get<1>(variant);
2437
+ }
2438
+ };
2439
+ inline std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_(nitro::NullType value) noexcept {
2440
+ return std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_(value);
2441
+ }
2442
+ inline std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_(const NitroReceiptValidationAppleOptions& value) noexcept {
2443
+ return std__variant_nitro__NullType__NitroReceiptValidationAppleOptions_(value);
2444
+ }
2445
+
2446
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>
1528
2447
  /**
1529
- * Specialized version of `std::optional<NitroReceiptValidationAppleOptions>`.
2448
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>`.
1530
2449
  */
1531
- using std__optional_NitroReceiptValidationAppleOptions_ = std::optional<NitroReceiptValidationAppleOptions>;
1532
- inline std::optional<NitroReceiptValidationAppleOptions> create_std__optional_NitroReceiptValidationAppleOptions_(const NitroReceiptValidationAppleOptions& value) noexcept {
1533
- return std::optional<NitroReceiptValidationAppleOptions>(value);
2450
+ using std__optional_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions__ = std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>;
2451
+ inline std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>> create_std__optional_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions__(const std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>& value) noexcept {
2452
+ return std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>(value);
1534
2453
  }
1535
- inline bool has_value_std__optional_NitroReceiptValidationAppleOptions_(const std::optional<NitroReceiptValidationAppleOptions>& optional) noexcept {
2454
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>& optional) noexcept {
1536
2455
  return optional.has_value();
1537
2456
  }
1538
- inline NitroReceiptValidationAppleOptions get_std__optional_NitroReceiptValidationAppleOptions_(const std::optional<NitroReceiptValidationAppleOptions>& optional) noexcept {
1539
- return *optional;
2457
+ inline std::variant<nitro::NullType, NitroReceiptValidationAppleOptions> get_std__optional_std__variant_nitro__NullType__NitroReceiptValidationAppleOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationAppleOptions>>& optional) noexcept {
2458
+ return optional.value();
2459
+ }
2460
+
2461
+ // pragma MARK: std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>
2462
+ /**
2463
+ * Wrapper struct for `std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>`.
2464
+ * std::variant cannot be used in Swift because of a Swift bug.
2465
+ * Not even specializing it works. So we create a wrapper struct.
2466
+ */
2467
+ struct std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_ final {
2468
+ std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions> variant;
2469
+ std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_(std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions> variant): variant(variant) { }
2470
+ operator std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>() const noexcept {
2471
+ return variant;
2472
+ }
2473
+ inline size_t index() const noexcept {
2474
+ return variant.index();
2475
+ }
2476
+ inline nitro::NullType get_0() const noexcept {
2477
+ return std::get<0>(variant);
2478
+ }
2479
+ inline NitroReceiptValidationGoogleOptions get_1() const noexcept {
2480
+ return std::get<1>(variant);
2481
+ }
2482
+ };
2483
+ inline std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_(nitro::NullType value) noexcept {
2484
+ return std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_(value);
2485
+ }
2486
+ inline std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_(const NitroReceiptValidationGoogleOptions& value) noexcept {
2487
+ return std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions_(value);
1540
2488
  }
1541
2489
 
1542
- // pragma MARK: std::optional<NitroReceiptValidationGoogleOptions>
2490
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>
1543
2491
  /**
1544
- * Specialized version of `std::optional<NitroReceiptValidationGoogleOptions>`.
2492
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>`.
1545
2493
  */
1546
- using std__optional_NitroReceiptValidationGoogleOptions_ = std::optional<NitroReceiptValidationGoogleOptions>;
1547
- inline std::optional<NitroReceiptValidationGoogleOptions> create_std__optional_NitroReceiptValidationGoogleOptions_(const NitroReceiptValidationGoogleOptions& value) noexcept {
1548
- return std::optional<NitroReceiptValidationGoogleOptions>(value);
2494
+ using std__optional_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions__ = std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>;
2495
+ inline std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>> create_std__optional_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions__(const std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>& value) noexcept {
2496
+ return std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>(value);
1549
2497
  }
1550
- inline bool has_value_std__optional_NitroReceiptValidationGoogleOptions_(const std::optional<NitroReceiptValidationGoogleOptions>& optional) noexcept {
2498
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>& optional) noexcept {
1551
2499
  return optional.has_value();
1552
2500
  }
1553
- inline NitroReceiptValidationGoogleOptions get_std__optional_NitroReceiptValidationGoogleOptions_(const std::optional<NitroReceiptValidationGoogleOptions>& optional) noexcept {
1554
- return *optional;
2501
+ inline std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions> get_std__optional_std__variant_nitro__NullType__NitroReceiptValidationGoogleOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationGoogleOptions>>& optional) noexcept {
2502
+ return optional.value();
2503
+ }
2504
+
2505
+ // pragma MARK: std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>
2506
+ /**
2507
+ * Wrapper struct for `std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>`.
2508
+ * std::variant cannot be used in Swift because of a Swift bug.
2509
+ * Not even specializing it works. So we create a wrapper struct.
2510
+ */
2511
+ struct std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_ final {
2512
+ std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions> variant;
2513
+ std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_(std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions> variant): variant(variant) { }
2514
+ operator std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>() const noexcept {
2515
+ return variant;
2516
+ }
2517
+ inline size_t index() const noexcept {
2518
+ return variant.index();
2519
+ }
2520
+ inline nitro::NullType get_0() const noexcept {
2521
+ return std::get<0>(variant);
2522
+ }
2523
+ inline NitroReceiptValidationHorizonOptions get_1() const noexcept {
2524
+ return std::get<1>(variant);
2525
+ }
2526
+ };
2527
+ inline std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_(nitro::NullType value) noexcept {
2528
+ return std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_(value);
2529
+ }
2530
+ inline std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_ create_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_(const NitroReceiptValidationHorizonOptions& value) noexcept {
2531
+ return std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions_(value);
1555
2532
  }
1556
2533
 
1557
- // pragma MARK: std::optional<NitroReceiptValidationHorizonOptions>
2534
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>
1558
2535
  /**
1559
- * Specialized version of `std::optional<NitroReceiptValidationHorizonOptions>`.
2536
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>`.
1560
2537
  */
1561
- using std__optional_NitroReceiptValidationHorizonOptions_ = std::optional<NitroReceiptValidationHorizonOptions>;
1562
- inline std::optional<NitroReceiptValidationHorizonOptions> create_std__optional_NitroReceiptValidationHorizonOptions_(const NitroReceiptValidationHorizonOptions& value) noexcept {
1563
- return std::optional<NitroReceiptValidationHorizonOptions>(value);
2538
+ using std__optional_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions__ = std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>;
2539
+ inline std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>> create_std__optional_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions__(const std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>& value) noexcept {
2540
+ return std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>(value);
1564
2541
  }
1565
- inline bool has_value_std__optional_NitroReceiptValidationHorizonOptions_(const std::optional<NitroReceiptValidationHorizonOptions>& optional) noexcept {
2542
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>& optional) noexcept {
1566
2543
  return optional.has_value();
1567
2544
  }
1568
- inline NitroReceiptValidationHorizonOptions get_std__optional_NitroReceiptValidationHorizonOptions_(const std::optional<NitroReceiptValidationHorizonOptions>& optional) noexcept {
1569
- return *optional;
2545
+ inline std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions> get_std__optional_std__variant_nitro__NullType__NitroReceiptValidationHorizonOptions__(const std::optional<std::variant<nitro::NullType, NitroReceiptValidationHorizonOptions>>& optional) noexcept {
2546
+ return optional.value();
2547
+ }
2548
+
2549
+ // pragma MARK: std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>
2550
+ /**
2551
+ * Wrapper struct for `std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>`.
2552
+ * std::variant cannot be used in Swift because of a Swift bug.
2553
+ * Not even specializing it works. So we create a wrapper struct.
2554
+ */
2555
+ struct std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_ final {
2556
+ std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult> variant;
2557
+ std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_(std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult> variant): variant(variant) { }
2558
+ operator std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>() const noexcept {
2559
+ return variant;
2560
+ }
2561
+ inline size_t index() const noexcept {
2562
+ return variant.index();
2563
+ }
2564
+ inline nitro::NullType get_0() const noexcept {
2565
+ return std::get<0>(variant);
2566
+ }
2567
+ inline NitroVerifyPurchaseWithIapkitResult get_1() const noexcept {
2568
+ return std::get<1>(variant);
2569
+ }
2570
+ };
2571
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_(nitro::NullType value) noexcept {
2572
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_(value);
2573
+ }
2574
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_(const NitroVerifyPurchaseWithIapkitResult& value) noexcept {
2575
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult_(value);
1570
2576
  }
1571
2577
 
1572
- // pragma MARK: std::optional<NitroVerifyPurchaseWithIapkitResult>
2578
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>
1573
2579
  /**
1574
- * Specialized version of `std::optional<NitroVerifyPurchaseWithIapkitResult>`.
2580
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>`.
1575
2581
  */
1576
- using std__optional_NitroVerifyPurchaseWithIapkitResult_ = std::optional<NitroVerifyPurchaseWithIapkitResult>;
1577
- inline std::optional<NitroVerifyPurchaseWithIapkitResult> create_std__optional_NitroVerifyPurchaseWithIapkitResult_(const NitroVerifyPurchaseWithIapkitResult& value) noexcept {
1578
- return std::optional<NitroVerifyPurchaseWithIapkitResult>(value);
2582
+ using std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult__ = std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>;
2583
+ inline std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>> create_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult__(const std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>& value) noexcept {
2584
+ return std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>(value);
1579
2585
  }
1580
- inline bool has_value_std__optional_NitroVerifyPurchaseWithIapkitResult_(const std::optional<NitroVerifyPurchaseWithIapkitResult>& optional) noexcept {
2586
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>& optional) noexcept {
1581
2587
  return optional.has_value();
1582
2588
  }
1583
- inline NitroVerifyPurchaseWithIapkitResult get_std__optional_NitroVerifyPurchaseWithIapkitResult_(const std::optional<NitroVerifyPurchaseWithIapkitResult>& optional) noexcept {
1584
- return *optional;
2589
+ inline std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult> get_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitResult__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>>& optional) noexcept {
2590
+ return optional.value();
1585
2591
  }
1586
2592
 
1587
2593
  // pragma MARK: std::vector<NitroVerifyPurchaseWithProviderError>
@@ -1595,19 +2601,48 @@ namespace margelo::nitro::iap::bridge::swift {
1595
2601
  return vector;
1596
2602
  }
1597
2603
 
1598
- // pragma MARK: std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>
2604
+ // pragma MARK: std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>
2605
+ /**
2606
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>`.
2607
+ * std::variant cannot be used in Swift because of a Swift bug.
2608
+ * Not even specializing it works. So we create a wrapper struct.
2609
+ */
2610
+ struct std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__ final {
2611
+ std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>> variant;
2612
+ std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__(std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>> variant): variant(variant) { }
2613
+ operator std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>() const noexcept {
2614
+ return variant;
2615
+ }
2616
+ inline size_t index() const noexcept {
2617
+ return variant.index();
2618
+ }
2619
+ inline nitro::NullType get_0() const noexcept {
2620
+ return std::get<0>(variant);
2621
+ }
2622
+ inline std::vector<NitroVerifyPurchaseWithProviderError> get_1() const noexcept {
2623
+ return std::get<1>(variant);
2624
+ }
2625
+ };
2626
+ inline std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__ create_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__(nitro::NullType value) noexcept {
2627
+ return std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__(value);
2628
+ }
2629
+ inline std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__ create_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__(const std::vector<NitroVerifyPurchaseWithProviderError>& value) noexcept {
2630
+ return std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError__(value);
2631
+ }
2632
+
2633
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>
1599
2634
  /**
1600
- * Specialized version of `std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>`.
2635
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>`.
1601
2636
  */
1602
- using std__optional_std__vector_NitroVerifyPurchaseWithProviderError__ = std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>;
1603
- inline std::optional<std::vector<NitroVerifyPurchaseWithProviderError>> create_std__optional_std__vector_NitroVerifyPurchaseWithProviderError__(const std::vector<NitroVerifyPurchaseWithProviderError>& value) noexcept {
1604
- return std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>(value);
2637
+ using std__optional_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError___ = std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>;
2638
+ inline std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>> create_std__optional_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError___(const std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>& value) noexcept {
2639
+ return std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>(value);
1605
2640
  }
1606
- inline bool has_value_std__optional_std__vector_NitroVerifyPurchaseWithProviderError__(const std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>& optional) noexcept {
2641
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError___(const std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>& optional) noexcept {
1607
2642
  return optional.has_value();
1608
2643
  }
1609
- inline std::vector<NitroVerifyPurchaseWithProviderError> get_std__optional_std__vector_NitroVerifyPurchaseWithProviderError__(const std::optional<std::vector<NitroVerifyPurchaseWithProviderError>>& optional) noexcept {
1610
- return *optional;
2644
+ inline std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>> get_std__optional_std__variant_nitro__NullType__std__vector_NitroVerifyPurchaseWithProviderError___(const std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>>& optional) noexcept {
2645
+ return optional.value();
1611
2646
  }
1612
2647
 
1613
2648
  // pragma MARK: std::shared_ptr<Promise<NitroVerifyPurchaseWithProviderResult>>
@@ -1644,49 +2679,136 @@ namespace margelo::nitro::iap::bridge::swift {
1644
2679
  return Func_void_NitroVerifyPurchaseWithProviderResult_Wrapper(std::move(value));
1645
2680
  }
1646
2681
 
1647
- // pragma MARK: std::optional<NitroVerifyPurchaseWithIapkitAppleProps>
2682
+ // pragma MARK: std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>
2683
+ /**
2684
+ * Wrapper struct for `std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>`.
2685
+ * std::variant cannot be used in Swift because of a Swift bug.
2686
+ * Not even specializing it works. So we create a wrapper struct.
2687
+ */
2688
+ struct std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_ final {
2689
+ std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps> variant;
2690
+ std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_(std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps> variant): variant(variant) { }
2691
+ operator std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>() const noexcept {
2692
+ return variant;
2693
+ }
2694
+ inline size_t index() const noexcept {
2695
+ return variant.index();
2696
+ }
2697
+ inline nitro::NullType get_0() const noexcept {
2698
+ return std::get<0>(variant);
2699
+ }
2700
+ inline NitroVerifyPurchaseWithIapkitAppleProps get_1() const noexcept {
2701
+ return std::get<1>(variant);
2702
+ }
2703
+ };
2704
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_(nitro::NullType value) noexcept {
2705
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_(value);
2706
+ }
2707
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_(const NitroVerifyPurchaseWithIapkitAppleProps& value) noexcept {
2708
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps_(value);
2709
+ }
2710
+
2711
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>
1648
2712
  /**
1649
- * Specialized version of `std::optional<NitroVerifyPurchaseWithIapkitAppleProps>`.
2713
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>`.
1650
2714
  */
1651
- using std__optional_NitroVerifyPurchaseWithIapkitAppleProps_ = std::optional<NitroVerifyPurchaseWithIapkitAppleProps>;
1652
- inline std::optional<NitroVerifyPurchaseWithIapkitAppleProps> create_std__optional_NitroVerifyPurchaseWithIapkitAppleProps_(const NitroVerifyPurchaseWithIapkitAppleProps& value) noexcept {
1653
- return std::optional<NitroVerifyPurchaseWithIapkitAppleProps>(value);
2715
+ using std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps__ = std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>;
2716
+ inline std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>> create_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps__(const std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>& value) noexcept {
2717
+ return std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>(value);
1654
2718
  }
1655
- inline bool has_value_std__optional_NitroVerifyPurchaseWithIapkitAppleProps_(const std::optional<NitroVerifyPurchaseWithIapkitAppleProps>& optional) noexcept {
2719
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>& optional) noexcept {
1656
2720
  return optional.has_value();
1657
2721
  }
1658
- inline NitroVerifyPurchaseWithIapkitAppleProps get_std__optional_NitroVerifyPurchaseWithIapkitAppleProps_(const std::optional<NitroVerifyPurchaseWithIapkitAppleProps>& optional) noexcept {
1659
- return *optional;
2722
+ inline std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps> get_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitAppleProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitAppleProps>>& optional) noexcept {
2723
+ return optional.value();
2724
+ }
2725
+
2726
+ // pragma MARK: std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>
2727
+ /**
2728
+ * Wrapper struct for `std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>`.
2729
+ * std::variant cannot be used in Swift because of a Swift bug.
2730
+ * Not even specializing it works. So we create a wrapper struct.
2731
+ */
2732
+ struct std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_ final {
2733
+ std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps> variant;
2734
+ std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_(std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps> variant): variant(variant) { }
2735
+ operator std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>() const noexcept {
2736
+ return variant;
2737
+ }
2738
+ inline size_t index() const noexcept {
2739
+ return variant.index();
2740
+ }
2741
+ inline nitro::NullType get_0() const noexcept {
2742
+ return std::get<0>(variant);
2743
+ }
2744
+ inline NitroVerifyPurchaseWithIapkitGoogleProps get_1() const noexcept {
2745
+ return std::get<1>(variant);
2746
+ }
2747
+ };
2748
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_(nitro::NullType value) noexcept {
2749
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_(value);
2750
+ }
2751
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_(const NitroVerifyPurchaseWithIapkitGoogleProps& value) noexcept {
2752
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps_(value);
1660
2753
  }
1661
2754
 
1662
- // pragma MARK: std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>
2755
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>
1663
2756
  /**
1664
- * Specialized version of `std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>`.
2757
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>`.
1665
2758
  */
1666
- using std__optional_NitroVerifyPurchaseWithIapkitGoogleProps_ = std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>;
1667
- inline std::optional<NitroVerifyPurchaseWithIapkitGoogleProps> create_std__optional_NitroVerifyPurchaseWithIapkitGoogleProps_(const NitroVerifyPurchaseWithIapkitGoogleProps& value) noexcept {
1668
- return std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>(value);
2759
+ using std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps__ = std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>;
2760
+ inline std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>> create_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps__(const std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>& value) noexcept {
2761
+ return std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>(value);
1669
2762
  }
1670
- inline bool has_value_std__optional_NitroVerifyPurchaseWithIapkitGoogleProps_(const std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>& optional) noexcept {
2763
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>& optional) noexcept {
1671
2764
  return optional.has_value();
1672
2765
  }
1673
- inline NitroVerifyPurchaseWithIapkitGoogleProps get_std__optional_NitroVerifyPurchaseWithIapkitGoogleProps_(const std::optional<NitroVerifyPurchaseWithIapkitGoogleProps>& optional) noexcept {
1674
- return *optional;
2766
+ inline std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps> get_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitGoogleProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitGoogleProps>>& optional) noexcept {
2767
+ return optional.value();
2768
+ }
2769
+
2770
+ // pragma MARK: std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>
2771
+ /**
2772
+ * Wrapper struct for `std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>`.
2773
+ * std::variant cannot be used in Swift because of a Swift bug.
2774
+ * Not even specializing it works. So we create a wrapper struct.
2775
+ */
2776
+ struct std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_ final {
2777
+ std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps> variant;
2778
+ std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_(std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps> variant): variant(variant) { }
2779
+ operator std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>() const noexcept {
2780
+ return variant;
2781
+ }
2782
+ inline size_t index() const noexcept {
2783
+ return variant.index();
2784
+ }
2785
+ inline nitro::NullType get_0() const noexcept {
2786
+ return std::get<0>(variant);
2787
+ }
2788
+ inline NitroVerifyPurchaseWithIapkitProps get_1() const noexcept {
2789
+ return std::get<1>(variant);
2790
+ }
2791
+ };
2792
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_(nitro::NullType value) noexcept {
2793
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_(value);
2794
+ }
2795
+ inline std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_ create_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_(const NitroVerifyPurchaseWithIapkitProps& value) noexcept {
2796
+ return std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps_(value);
1675
2797
  }
1676
2798
 
1677
- // pragma MARK: std::optional<NitroVerifyPurchaseWithIapkitProps>
2799
+ // pragma MARK: std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>
1678
2800
  /**
1679
- * Specialized version of `std::optional<NitroVerifyPurchaseWithIapkitProps>`.
2801
+ * Specialized version of `std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>`.
1680
2802
  */
1681
- using std__optional_NitroVerifyPurchaseWithIapkitProps_ = std::optional<NitroVerifyPurchaseWithIapkitProps>;
1682
- inline std::optional<NitroVerifyPurchaseWithIapkitProps> create_std__optional_NitroVerifyPurchaseWithIapkitProps_(const NitroVerifyPurchaseWithIapkitProps& value) noexcept {
1683
- return std::optional<NitroVerifyPurchaseWithIapkitProps>(value);
2803
+ using std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps__ = std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>;
2804
+ inline std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>> create_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps__(const std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>& value) noexcept {
2805
+ return std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>(value);
1684
2806
  }
1685
- inline bool has_value_std__optional_NitroVerifyPurchaseWithIapkitProps_(const std::optional<NitroVerifyPurchaseWithIapkitProps>& optional) noexcept {
2807
+ inline bool has_value_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>& optional) noexcept {
1686
2808
  return optional.has_value();
1687
2809
  }
1688
- inline NitroVerifyPurchaseWithIapkitProps get_std__optional_NitroVerifyPurchaseWithIapkitProps_(const std::optional<NitroVerifyPurchaseWithIapkitProps>& optional) noexcept {
1689
- return *optional;
2810
+ inline std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps> get_std__optional_std__variant_nitro__NullType__NitroVerifyPurchaseWithIapkitProps__(const std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitProps>>& optional) noexcept {
2811
+ return optional.value();
1690
2812
  }
1691
2813
 
1692
2814
  // pragma MARK: std::function<void(const UserChoiceBillingDetails& /* details */)>
@@ -1967,13 +3089,13 @@ namespace margelo::nitro::iap::bridge::swift {
1967
3089
  return Result<std::shared_ptr<Promise<std::vector<NitroProduct>>>>::withError(error);
1968
3090
  }
1969
3091
 
1970
- // pragma MARK: Result<std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>>
1971
- using Result_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_______ = Result<std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>>;
1972
- inline Result_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_______ create_Result_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_______(const std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>& value) noexcept {
1973
- return Result<std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>>::withValue(value);
3092
+ // pragma MARK: Result<std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>
3093
+ using Result_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______ = Result<std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>;
3094
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______(const std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>& value) noexcept {
3095
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>::withValue(value);
1974
3096
  }
1975
- inline Result_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_______ create_Result_std__shared_ptr_Promise_std__optional_std__variant_PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS_______(const std::exception_ptr& error) noexcept {
1976
- return Result<std::shared_ptr<Promise<std::optional<std::variant<PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>>::withError(error);
3097
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__PurchaseAndroid__PurchaseIOS__std__vector_std__variant_PurchaseAndroid__PurchaseIOS______(const std::exception_ptr& error) noexcept {
3098
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, PurchaseAndroid, PurchaseIOS, std::vector<std::variant<PurchaseAndroid, PurchaseIOS>>>>>>::withError(error);
1977
3099
  }
1978
3100
 
1979
3101
  // pragma MARK: Result<std::shared_ptr<Promise<std::vector<NitroPurchase>>>>
@@ -2021,22 +3143,22 @@ namespace margelo::nitro::iap::bridge::swift {
2021
3143
  return Result<std::shared_ptr<Promise<std::string>>>::withError(error);
2022
3144
  }
2023
3145
 
2024
- // pragma MARK: Result<std::shared_ptr<Promise<std::optional<std::string>>>>
2025
- using Result_std__shared_ptr_Promise_std__optional_std__string____ = Result<std::shared_ptr<Promise<std::optional<std::string>>>>;
2026
- inline Result_std__shared_ptr_Promise_std__optional_std__string____ create_Result_std__shared_ptr_Promise_std__optional_std__string____(const std::shared_ptr<Promise<std::optional<std::string>>>& value) noexcept {
2027
- return Result<std::shared_ptr<Promise<std::optional<std::string>>>>::withValue(value);
3146
+ // pragma MARK: Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>>
3147
+ using Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string____ = Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>>;
3148
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string____(const std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>& value) noexcept {
3149
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>>::withValue(value);
2028
3150
  }
2029
- inline Result_std__shared_ptr_Promise_std__optional_std__string____ create_Result_std__shared_ptr_Promise_std__optional_std__string____(const std::exception_ptr& error) noexcept {
2030
- return Result<std::shared_ptr<Promise<std::optional<std::string>>>>::withError(error);
3151
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__string____(const std::exception_ptr& error) noexcept {
3152
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>>>::withError(error);
2031
3153
  }
2032
3154
 
2033
- // pragma MARK: Result<std::shared_ptr<Promise<std::optional<NitroProduct>>>>
2034
- using Result_std__shared_ptr_Promise_std__optional_NitroProduct____ = Result<std::shared_ptr<Promise<std::optional<NitroProduct>>>>;
2035
- inline Result_std__shared_ptr_Promise_std__optional_NitroProduct____ create_Result_std__shared_ptr_Promise_std__optional_NitroProduct____(const std::shared_ptr<Promise<std::optional<NitroProduct>>>& value) noexcept {
2036
- return Result<std::shared_ptr<Promise<std::optional<NitroProduct>>>>::withValue(value);
3155
+ // pragma MARK: Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>>
3156
+ using Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct____ = Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>>;
3157
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct____(const std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>& value) noexcept {
3158
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>>::withValue(value);
2037
3159
  }
2038
- inline Result_std__shared_ptr_Promise_std__optional_NitroProduct____ create_Result_std__shared_ptr_Promise_std__optional_NitroProduct____(const std::exception_ptr& error) noexcept {
2039
- return Result<std::shared_ptr<Promise<std::optional<NitroProduct>>>>::withError(error);
3160
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroProduct____(const std::exception_ptr& error) noexcept {
3161
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroProduct>>>>::withError(error);
2040
3162
  }
2041
3163
 
2042
3164
  // pragma MARK: Result<std::shared_ptr<Promise<void>>>
@@ -2048,22 +3170,22 @@ namespace margelo::nitro::iap::bridge::swift {
2048
3170
  return Result<std::shared_ptr<Promise<void>>>::withError(error);
2049
3171
  }
2050
3172
 
2051
- // pragma MARK: Result<std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>>
2052
- using Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____ = Result<std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>>;
2053
- inline Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____ create_Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____(const std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>& value) noexcept {
2054
- return Result<std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>>::withValue(value);
3173
+ // pragma MARK: Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>>
3174
+ using Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus_____ = Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>>;
3175
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus_____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus_____(const std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>& value) noexcept {
3176
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>>::withValue(value);
2055
3177
  }
2056
- inline Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____ create_Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____(const std::exception_ptr& error) noexcept {
2057
- return Result<std::shared_ptr<Promise<std::optional<std::vector<NitroSubscriptionStatus>>>>>::withError(error);
3178
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus_____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__std__vector_NitroSubscriptionStatus_____(const std::exception_ptr& error) noexcept {
3179
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, std::vector<NitroSubscriptionStatus>>>>>::withError(error);
2058
3180
  }
2059
3181
 
2060
- // pragma MARK: Result<std::shared_ptr<Promise<std::optional<NitroPurchase>>>>
2061
- using Result_std__shared_ptr_Promise_std__optional_NitroPurchase____ = Result<std::shared_ptr<Promise<std::optional<NitroPurchase>>>>;
2062
- inline Result_std__shared_ptr_Promise_std__optional_NitroPurchase____ create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(const std::shared_ptr<Promise<std::optional<NitroPurchase>>>& value) noexcept {
2063
- return Result<std::shared_ptr<Promise<std::optional<NitroPurchase>>>>::withValue(value);
3182
+ // pragma MARK: Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>>
3183
+ using Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase____ = Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>>;
3184
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase____(const std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>& value) noexcept {
3185
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>>::withValue(value);
2064
3186
  }
2065
- inline Result_std__shared_ptr_Promise_std__optional_NitroPurchase____ create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(const std::exception_ptr& error) noexcept {
2066
- return Result<std::shared_ptr<Promise<std::optional<NitroPurchase>>>>::withError(error);
3187
+ inline Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase____ create_Result_std__shared_ptr_Promise_std__variant_nitro__NullType__NitroPurchase____(const std::exception_ptr& error) noexcept {
3188
+ return Result<std::shared_ptr<Promise<std::variant<nitro::NullType, NitroPurchase>>>>::withError(error);
2067
3189
  }
2068
3190
 
2069
3191
  // pragma MARK: Result<std::shared_ptr<Promise<std::variant<NitroReceiptValidationResultIOS, NitroReceiptValidationResultAndroid>>>>