react-native-iap 15.4.0-rc.3 → 15.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/README.md +23 -25
  2. package/android/src/main/java/com/margelo/nitro/iap/ConnectionLifecycleQueue.kt +113 -0
  3. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +471 -255
  4. package/android/src/main/java/com/margelo/nitro/iap/ProductSerialization.kt +98 -0
  5. package/android/src/main/java/com/margelo/nitro/iap/RnIapLog.kt +23 -1
  6. package/ios/HybridRnIap.swift +230 -140
  7. package/ios/RnIapHelper.swift +180 -28
  8. package/ios/RnIapLog.swift +24 -1
  9. package/lib/module/hooks/useIAP.js +20 -4
  10. package/lib/module/hooks/useIAP.js.map +1 -1
  11. package/lib/module/index.js +151 -46
  12. package/lib/module/index.js.map +1 -1
  13. package/lib/module/index.kepler.js +3 -0
  14. package/lib/module/index.kepler.js.map +1 -1
  15. package/lib/module/types.js +77 -14
  16. package/lib/module/types.js.map +1 -1
  17. package/lib/module/utils/error.js +7 -3
  18. package/lib/module/utils/error.js.map +1 -1
  19. package/lib/module/utils/errorMapping.js +2 -0
  20. package/lib/module/utils/errorMapping.js.map +1 -1
  21. package/lib/module/utils/type-bridge.js +50 -22
  22. package/lib/module/utils/type-bridge.js.map +1 -1
  23. package/lib/module/vega-adapter.js +55 -8
  24. package/lib/module/vega-adapter.js.map +1 -1
  25. package/lib/typescript/src/hooks/useIAP.d.ts +28 -5
  26. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  27. package/lib/typescript/src/index.d.ts +50 -10
  28. package/lib/typescript/src/index.d.ts.map +1 -1
  29. package/lib/typescript/src/index.kepler.d.ts +3 -0
  30. package/lib/typescript/src/index.kepler.d.ts.map +1 -1
  31. package/lib/typescript/src/specs/RnIap.nitro.d.ts +98 -26
  32. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  33. package/lib/typescript/src/types.d.ts +279 -59
  34. package/lib/typescript/src/types.d.ts.map +1 -1
  35. package/lib/typescript/src/utils/error.d.ts.map +1 -1
  36. package/lib/typescript/src/utils/errorMapping.d.ts +3 -1
  37. package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
  38. package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -1
  39. package/lib/typescript/src/vega-adapter.d.ts.map +1 -1
  40. package/nitro.json +8 -2
  41. package/nitrogen/generated/android/NitroIap+autolinking.cmake +4 -1
  42. package/nitrogen/generated/android/NitroIapOnLoad.cpp +2 -2
  43. package/nitrogen/generated/android/c++/JAdvancedCommerceInfoIOS.hpp +10 -10
  44. package/nitrogen/generated/android/c++/JAdvancedCommerceItemDetailsIOS.hpp +2 -2
  45. package/nitrogen/generated/android/c++/JAdvancedCommerceItemIOS.hpp +2 -2
  46. package/nitrogen/generated/android/c++/JAdvancedCommerceRefundIOS.hpp +2 -2
  47. package/nitrogen/generated/android/c++/JAlternativeBillingModeAndroid.hpp +2 -2
  48. package/nitrogen/generated/android/c++/JAndroidSubscriptionOfferInput.hpp +2 -2
  49. package/nitrogen/generated/android/c++/JBillingChoiceImageLayoutAndroid.hpp +61 -0
  50. package/nitrogen/generated/android/c++/JBillingChoiceScreenTypeAndroid.hpp +61 -0
  51. package/nitrogen/generated/android/c++/JBillingProgramAndroid.hpp +5 -2
  52. package/nitrogen/generated/android/c++/JDeveloperBillingLaunchModeAndroid.hpp +61 -0
  53. package/nitrogen/generated/android/c++/JDeveloperBillingOptionParamsAndroid.hpp +78 -0
  54. package/nitrogen/generated/android/c++/JDeveloperBillingTypeAndroid.hpp +61 -0
  55. package/nitrogen/generated/android/c++/JDeveloperProvidedBillingDetailsAndroid.hpp +47 -7
  56. package/nitrogen/generated/android/c++/JDeveloperProvidedBillingProductAndroid.hpp +72 -0
  57. package/nitrogen/generated/android/c++/JExternalLinkLaunchModeAndroid.hpp +2 -2
  58. package/nitrogen/generated/android/c++/JExternalLinkTypeAndroid.hpp +2 -2
  59. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeResultIOS.hpp +2 -2
  60. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeTypeIOS.hpp +2 -2
  61. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenResultIOS.hpp +2 -2
  62. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenTypeIOS.hpp +2 -2
  63. package/nitrogen/generated/android/c++/JExternalPurchaseLinkResultIOS.hpp +2 -2
  64. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeAction.hpp +2 -2
  65. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeResultIOS.hpp +2 -2
  66. package/nitrogen/generated/android/c++/JFunc_void_DeveloperProvidedBillingDetailsAndroid.hpp +12 -2
  67. package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +2 -2
  68. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +26 -2
  69. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +5 -2
  70. package/nitrogen/generated/android/c++/JFunc_void_UserChoiceBillingDetails.hpp +12 -2
  71. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +160 -48
  72. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +7 -4
  73. package/nitrogen/generated/android/c++/JIapPlatform.hpp +2 -2
  74. package/nitrogen/generated/android/c++/JIapStore.hpp +2 -2
  75. package/nitrogen/generated/android/c++/JIapkitPurchaseState.hpp +2 -2
  76. package/nitrogen/generated/android/c++/JInAppMessageCategoryAndroid.hpp +58 -0
  77. package/nitrogen/generated/android/c++/JInAppMessageResponseCodeAndroid.hpp +58 -0
  78. package/nitrogen/generated/android/c++/JInitConnectionConfig.hpp +9 -3
  79. package/nitrogen/generated/android/c++/JNitroActiveSubscription.hpp +7 -2
  80. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +2 -2
  81. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidType.hpp +2 -2
  82. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +2 -2
  83. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +2 -2
  84. package/nitrogen/generated/android/c++/JNitroBillingChoiceInfoAndroid.hpp +66 -0
  85. package/nitrogen/generated/android/c++/JNitroBillingProgramAvailabilityResultAndroid.hpp +20 -5
  86. package/nitrogen/generated/android/c++/JNitroBillingProgramInformationDialogParamsAndroid.hpp +63 -0
  87. package/nitrogen/generated/android/c++/JNitroBillingProgramReportingDetailsAndroid.hpp +2 -2
  88. package/nitrogen/generated/android/c++/JNitroBillingResultAndroid.hpp +72 -0
  89. package/nitrogen/generated/android/c++/JNitroDeepLinkOptionsAndroid.hpp +2 -2
  90. package/nitrogen/generated/android/c++/JNitroDiscountAmountAndroid.hpp +2 -2
  91. package/nitrogen/generated/android/c++/JNitroDiscountDisplayInfoAndroid.hpp +2 -2
  92. package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +2 -2
  93. package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +2 -2
  94. package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +2 -2
  95. package/nitrogen/generated/android/c++/JNitroGetBillingChoiceInfoParamsAndroid.hpp +74 -0
  96. package/nitrogen/generated/android/c++/JNitroInAppMessageParamsAndroid.hpp +64 -0
  97. package/nitrogen/generated/android/c++/JNitroInAppMessageResultAndroid.hpp +68 -0
  98. package/nitrogen/generated/android/c++/JNitroLaunchExternalLinkParamsAndroid.hpp +12 -3
  99. package/nitrogen/generated/android/c++/JNitroLimitedQuantityInfoAndroid.hpp +2 -2
  100. package/nitrogen/generated/android/c++/JNitroOneTimePurchaseOfferDetail.hpp +15 -11
  101. package/nitrogen/generated/android/c++/JNitroPreorderDetailsAndroid.hpp +2 -2
  102. package/nitrogen/generated/android/c++/JNitroProduct.hpp +15 -3
  103. package/nitrogen/generated/android/c++/JNitroPurchase.hpp +53 -5
  104. package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +9 -2
  105. package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +46 -5
  106. package/nitrogen/generated/android/c++/JNitroReceiptValidationAppleOptions.hpp +2 -2
  107. package/nitrogen/generated/android/c++/JNitroReceiptValidationGoogleOptions.hpp +2 -2
  108. package/nitrogen/generated/android/c++/JNitroReceiptValidationHorizonOptions.hpp +2 -2
  109. package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +2 -2
  110. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +2 -2
  111. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +26 -2
  112. package/nitrogen/generated/android/c++/JNitroRenewalInfoIOS.hpp +16 -3
  113. package/nitrogen/generated/android/c++/JNitroRentalDetailsAndroid.hpp +2 -2
  114. package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +26 -11
  115. package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +2 -2
  116. package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +15 -9
  117. package/nitrogen/generated/android/c++/JNitroValidTimeWindowAndroid.hpp +2 -2
  118. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAmazonProps.hpp +2 -2
  119. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAppleProps.hpp +2 -2
  120. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitGoogleProps.hpp +2 -2
  121. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitProps.hpp +2 -2
  122. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitResult.hpp +2 -2
  123. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderError.hpp +2 -2
  124. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderProps.hpp +2 -2
  125. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderResult.hpp +2 -2
  126. package/nitrogen/generated/android/c++/JPaymentModeIOS.hpp +2 -2
  127. package/nitrogen/generated/android/c++/JPendingPurchaseUpdateAndroid.hpp +10 -10
  128. package/nitrogen/generated/android/c++/JProductType.hpp +58 -0
  129. package/nitrogen/generated/android/c++/JPromotionalOfferJwsInputIOS.hpp +2 -2
  130. package/nitrogen/generated/android/c++/JPurchase.hpp +3 -3
  131. package/nitrogen/generated/android/c++/JPurchaseAndroid.hpp +2 -2
  132. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +2 -2
  133. package/nitrogen/generated/android/c++/JPurchaseOfferIOS.hpp +2 -2
  134. package/nitrogen/generated/android/c++/JPurchaseState.hpp +2 -2
  135. package/nitrogen/generated/android/c++/JPurchaseUpdatedListenerOptions.hpp +2 -2
  136. package/nitrogen/generated/android/c++/JPurchaseVerificationProvider.hpp +2 -2
  137. package/nitrogen/generated/android/c++/JRenewalCommitmentInfoIOS.hpp +2 -2
  138. package/nitrogen/generated/android/c++/JRenewalInfoIOS.hpp +2 -2
  139. package/nitrogen/generated/android/c++/JRequestPurchaseResult.cpp +4 -4
  140. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +9 -9
  141. package/nitrogen/generated/android/c++/JSubResponseCodeAndroid.hpp +61 -0
  142. package/nitrogen/generated/android/c++/JSubscriptionBillingPlanTypeIOS.hpp +2 -2
  143. package/nitrogen/generated/android/c++/JSubscriptionProductReplacementParamsAndroid.hpp +2 -2
  144. package/nitrogen/generated/android/c++/JSubscriptionReplacementModeAndroid.hpp +2 -2
  145. package/nitrogen/generated/android/c++/JTransactionCommitmentInfoIOS.hpp +2 -2
  146. package/nitrogen/generated/android/c++/JUserChoiceBillingDetails.hpp +29 -11
  147. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +6 -3
  148. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +27 -3
  149. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.hpp +3 -3
  150. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.hpp +3 -3
  151. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.cpp +4 -4
  152. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.hpp +7 -7
  153. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.cpp +4 -4
  154. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.hpp +7 -7
  155. package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.cpp +35 -0
  156. package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.hpp +86 -0
  157. package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.cpp +35 -0
  158. package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.hpp +81 -0
  159. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.cpp +4 -4
  160. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.hpp +7 -7
  161. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.cpp +4 -4
  162. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.hpp +16 -10
  163. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.cpp +4 -4
  164. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.hpp +7 -7
  165. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.cpp +4 -4
  166. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.hpp +7 -7
  167. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.hpp +3 -3
  168. package/nitrogen/generated/android/c++/JVariant_NullType_DeveloperBillingOptionParamsAndroid.cpp +26 -0
  169. package/nitrogen/generated/android/c++/JVariant_NullType_DeveloperBillingOptionParamsAndroid.hpp +78 -0
  170. package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +3 -3
  171. package/nitrogen/generated/android/c++/JVariant_NullType_InitConnectionConfig.hpp +5 -3
  172. package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.hpp +3 -3
  173. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesAndroidOptions.hpp +3 -3
  174. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesIosOptions.hpp +3 -3
  175. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountAmountAndroid.hpp +3 -3
  176. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountDisplayInfoAndroid.hpp +3 -3
  177. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionAndroidParams.hpp +3 -3
  178. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionIosParams.hpp +3 -3
  179. package/nitrogen/generated/android/c++/JVariant_NullType_NitroInAppMessageParamsAndroid.cpp +26 -0
  180. package/nitrogen/generated/android/c++/JVariant_NullType_NitroInAppMessageParamsAndroid.hpp +76 -0
  181. package/nitrogen/generated/android/c++/JVariant_NullType_NitroLimitedQuantityInfoAndroid.hpp +3 -3
  182. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPreorderDetailsAndroid.hpp +3 -3
  183. package/nitrogen/generated/android/c++/JVariant_NullType_NitroProduct.hpp +3 -3
  184. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPurchase.hpp +27 -3
  185. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationAppleOptions.hpp +3 -3
  186. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationGoogleOptions.hpp +3 -3
  187. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationHorizonOptions.hpp +3 -3
  188. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRenewalInfoIOS.hpp +8 -3
  189. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRentalDetailsAndroid.hpp +3 -3
  190. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseAndroid.hpp +10 -3
  191. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseIos.hpp +3 -3
  192. package/nitrogen/generated/android/c++/JVariant_NullType_NitroValidTimeWindowAndroid.hpp +3 -3
  193. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.hpp +3 -3
  194. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.hpp +3 -3
  195. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.hpp +3 -3
  196. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitProps.hpp +3 -3
  197. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitResult.hpp +3 -3
  198. package/nitrogen/generated/android/c++/JVariant_NullType_PendingPurchaseUpdateAndroid.hpp +3 -3
  199. package/nitrogen/generated/android/c++/JVariant_NullType_PromotionalOfferJwsInputIOS.hpp +3 -3
  200. package/nitrogen/generated/android/c++/JVariant_NullType_PurchaseOfferIOS.hpp +3 -3
  201. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalCommitmentInfoIOS.hpp +3 -3
  202. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalInfoIOS.hpp +3 -3
  203. package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +3 -3
  204. package/nitrogen/generated/android/c++/JVariant_NullType_SubscriptionProductReplacementParamsAndroid.hpp +3 -3
  205. package/nitrogen/generated/android/c++/JVariant_NullType_TransactionCommitmentInfoIOS.hpp +3 -3
  206. package/nitrogen/generated/android/c++/JVariant_NullType_WinBackOfferInputIOS.hpp +3 -3
  207. package/nitrogen/generated/android/c++/JWinBackOfferInputIOS.hpp +2 -2
  208. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceInfoIOS.kt +27 -0
  209. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemDetailsIOS.kt +13 -0
  210. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemIOS.kt +17 -0
  211. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceRefundIOS.kt +13 -0
  212. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AndroidSubscriptionOfferInput.kt +15 -0
  213. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingChoiceImageLayoutAndroid.kt +24 -0
  214. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingChoiceScreenTypeAndroid.kt +24 -0
  215. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingProgramAndroid.kt +2 -1
  216. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingLaunchModeAndroid.kt +24 -0
  217. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingOptionParamsAndroid.kt +66 -0
  218. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingTypeAndroid.kt +24 -0
  219. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingDetailsAndroid.kt +32 -4
  220. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingProductAndroid.kt +61 -0
  221. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkNoticeResultIOS.kt +15 -0
  222. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkTokenResultIOS.kt +15 -0
  223. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseLinkResultIOS.kt +15 -0
  224. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseNoticeResultIOS.kt +17 -0
  225. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +14 -2
  226. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InAppMessageCategoryAndroid.kt +23 -0
  227. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InAppMessageResponseCodeAndroid.kt +23 -0
  228. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InitConnectionConfig.kt +22 -2
  229. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroActiveSubscription.kt +39 -0
  230. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +15 -0
  231. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +21 -0
  232. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +15 -0
  233. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingChoiceInfoAndroid.kt +56 -0
  234. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramAvailabilityResultAndroid.kt +29 -4
  235. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramInformationDialogParamsAndroid.kt +56 -0
  236. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramReportingDetailsAndroid.kt +15 -0
  237. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingResultAndroid.kt +61 -0
  238. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDeepLinkOptionsAndroid.kt +15 -0
  239. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountAmountAndroid.kt +15 -0
  240. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountDisplayInfoAndroid.kt +15 -0
  241. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +15 -0
  242. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +13 -0
  243. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +15 -0
  244. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroGetBillingChoiceInfoParamsAndroid.kt +61 -0
  245. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageParamsAndroid.kt +51 -0
  246. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageResultAndroid.kt +56 -0
  247. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLaunchExternalLinkParamsAndroid.kt +27 -3
  248. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLimitedQuantityInfoAndroid.kt +15 -0
  249. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroOneTimePurchaseOfferDetail.kt +42 -2
  250. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPreorderDetailsAndroid.kt +15 -0
  251. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +96 -2
  252. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +128 -3
  253. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +19 -0
  254. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +49 -3
  255. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationAppleOptions.kt +13 -0
  256. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationGoogleOptions.kt +21 -0
  257. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationHorizonOptions.kt +17 -0
  258. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +17 -0
  259. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +47 -0
  260. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +19 -0
  261. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRenewalInfoIOS.kt +45 -2
  262. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRentalDetailsAndroid.kt +15 -0
  263. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +41 -2
  264. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +31 -0
  265. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +19 -2
  266. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroValidTimeWindowAndroid.kt +15 -0
  267. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAmazonProps.kt +17 -0
  268. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAppleProps.kt +13 -0
  269. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitGoogleProps.kt +13 -0
  270. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitProps.kt +19 -0
  271. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitResult.kt +17 -0
  272. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderError.kt +15 -0
  273. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderProps.kt +15 -0
  274. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderResult.kt +17 -0
  275. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PendingPurchaseUpdateAndroid.kt +15 -0
  276. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ProductType.kt +23 -0
  277. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PromotionalOfferJwsInputIOS.kt +15 -0
  278. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Purchase.kt +16 -7
  279. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseAndroid.kt +55 -0
  280. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +85 -0
  281. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseOfferIOS.kt +17 -0
  282. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseUpdatedListenerOptions.kt +13 -0
  283. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalCommitmentInfoIOS.kt +21 -0
  284. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalInfoIOS.kt +37 -0
  285. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RequestPurchaseResult.kt +20 -9
  286. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubResponseCodeAndroid.kt +24 -0
  287. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionProductReplacementParamsAndroid.kt +15 -0
  288. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/TransactionCommitmentInfoIOS.kt +19 -0
  289. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/UserChoiceBillingDetails.kt +28 -3
  290. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +16 -7
  291. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +16 -7
  292. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceInfoIOS.kt +16 -7
  293. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceItemDetailsIOS.kt +16 -7
  294. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt +16 -7
  295. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AndroidSubscriptionOfferInput_.kt +16 -7
  296. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_DeveloperProvidedBillingProductAndroid_.kt +62 -0
  297. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_InAppMessageCategoryAndroid_.kt +62 -0
  298. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroOneTimePurchaseOfferDetail_.kt +16 -7
  299. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroSubscriptionStatus_.kt +16 -7
  300. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroVerifyPurchaseWithProviderError_.kt +16 -7
  301. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_String_.kt +16 -7
  302. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Boolean.kt +16 -7
  303. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_DeveloperBillingOptionParamsAndroid.kt +62 -0
  304. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Double.kt +16 -7
  305. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_InitConnectionConfig.kt +16 -7
  306. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Map_String__String_.kt +16 -7
  307. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesAndroidOptions.kt +16 -7
  308. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesIosOptions.kt +16 -7
  309. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountAmountAndroid.kt +16 -7
  310. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountDisplayInfoAndroid.kt +16 -7
  311. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionAndroidParams.kt +16 -7
  312. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionIosParams.kt +16 -7
  313. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroInAppMessageParamsAndroid.kt +62 -0
  314. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroLimitedQuantityInfoAndroid.kt +16 -7
  315. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPreorderDetailsAndroid.kt +16 -7
  316. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroProduct.kt +16 -7
  317. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPurchase.kt +16 -7
  318. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationAppleOptions.kt +16 -7
  319. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationGoogleOptions.kt +16 -7
  320. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationHorizonOptions.kt +16 -7
  321. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRenewalInfoIOS.kt +16 -7
  322. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRentalDetailsAndroid.kt +16 -7
  323. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseAndroid.kt +16 -7
  324. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseIos.kt +16 -7
  325. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroValidTimeWindowAndroid.kt +16 -7
  326. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.kt +16 -7
  327. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.kt +16 -7
  328. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.kt +16 -7
  329. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.kt +16 -7
  330. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.kt +16 -7
  331. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PendingPurchaseUpdateAndroid.kt +16 -7
  332. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PromotionalOfferJwsInputIOS.kt +16 -7
  333. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PurchaseOfferIOS.kt +16 -7
  334. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalCommitmentInfoIOS.kt +16 -7
  335. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalInfoIOS.kt +16 -7
  336. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_String.kt +16 -7
  337. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_SubscriptionProductReplacementParamsAndroid.kt +16 -7
  338. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_TransactionCommitmentInfoIOS.kt +16 -7
  339. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_WinBackOfferInputIOS.kt +16 -7
  340. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/WinBackOfferInputIOS.kt +13 -0
  341. package/nitrogen/generated/ios/NitroIap+autolinking.rb +2 -0
  342. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +24 -0
  343. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +441 -47
  344. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +48 -3
  345. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +75 -6
  346. package/nitrogen/generated/ios/swift/BillingChoiceImageLayoutAndroid.swift +44 -0
  347. package/nitrogen/generated/ios/swift/BillingChoiceScreenTypeAndroid.swift +44 -0
  348. package/nitrogen/generated/ios/swift/BillingProgramAndroid.swift +4 -0
  349. package/nitrogen/generated/ios/swift/DeveloperBillingLaunchModeAndroid.swift +44 -0
  350. package/nitrogen/generated/ios/swift/DeveloperBillingOptionParamsAndroid.swift +114 -0
  351. package/nitrogen/generated/ios/swift/DeveloperBillingTypeAndroid.swift +44 -0
  352. package/nitrogen/generated/ios/swift/DeveloperProvidedBillingDetailsAndroid.swift +121 -4
  353. package/nitrogen/generated/ios/swift/DeveloperProvidedBillingProductAndroid.swift +71 -0
  354. package/nitrogen/generated/ios/swift/Func_void_NitroBillingChoiceInfoAndroid.swift +46 -0
  355. package/nitrogen/generated/ios/swift/Func_void_NitroBillingResultAndroid.swift +46 -0
  356. package/nitrogen/generated/ios/swift/Func_void_NitroInAppMessageResultAndroid.swift +46 -0
  357. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +5 -2
  358. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +85 -9
  359. package/nitrogen/generated/ios/swift/InAppMessageCategoryAndroid.swift +40 -0
  360. package/nitrogen/generated/ios/swift/InAppMessageResponseCodeAndroid.swift +40 -0
  361. package/nitrogen/generated/ios/swift/InitConnectionConfig.swift +12 -1
  362. package/nitrogen/generated/ios/swift/NitroBillingChoiceInfoAndroid.swift +66 -0
  363. package/nitrogen/generated/ios/swift/NitroBillingProgramAvailabilityResultAndroid.swift +50 -2
  364. package/nitrogen/generated/ios/swift/NitroBillingProgramInformationDialogParamsAndroid.swift +34 -0
  365. package/nitrogen/generated/ios/swift/NitroBillingResultAndroid.swift +77 -0
  366. package/nitrogen/generated/ios/swift/NitroGetBillingChoiceInfoParamsAndroid.swift +71 -0
  367. package/nitrogen/generated/ios/swift/NitroInAppMessageParamsAndroid.swift +67 -0
  368. package/nitrogen/generated/ios/swift/NitroInAppMessageResultAndroid.swift +66 -0
  369. package/nitrogen/generated/ios/swift/NitroLaunchExternalLinkParamsAndroid.swift +39 -2
  370. package/nitrogen/generated/ios/swift/NitroOneTimePurchaseOfferDetail.swift +39 -2
  371. package/nitrogen/generated/ios/swift/NitroProduct.swift +113 -2
  372. package/nitrogen/generated/ios/swift/NitroPurchase.swift +204 -2
  373. package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +90 -1
  374. package/nitrogen/generated/ios/swift/NitroRenewalInfoIOS.swift +49 -1
  375. package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +75 -1
  376. package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +11 -11
  377. package/nitrogen/generated/ios/swift/ProductType.swift +40 -0
  378. package/nitrogen/generated/ios/swift/Purchase.swift +12 -0
  379. package/nitrogen/generated/ios/swift/RequestPurchaseResult.swift +14 -0
  380. package/nitrogen/generated/ios/swift/SubResponseCodeAndroid.swift +44 -0
  381. package/nitrogen/generated/ios/swift/UserChoiceBillingDetails.swift +82 -2
  382. package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +12 -0
  383. package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +12 -0
  384. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceInfoIOS.swift +12 -0
  385. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceItemDetailsIOS.swift +12 -0
  386. package/nitrogen/generated/ios/swift/Variant_NullType_Bool.swift +12 -0
  387. package/nitrogen/generated/ios/swift/Variant_NullType_DeveloperBillingOptionParamsAndroid.swift +30 -0
  388. package/nitrogen/generated/ios/swift/Variant_NullType_Dictionary_String__String_.swift +12 -0
  389. package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +12 -0
  390. package/nitrogen/generated/ios/swift/Variant_NullType_InitConnectionConfig.swift +12 -0
  391. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesAndroidOptions.swift +12 -0
  392. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesIosOptions.swift +12 -0
  393. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountAmountAndroid.swift +12 -0
  394. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountDisplayInfoAndroid.swift +12 -0
  395. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionAndroidParams.swift +12 -0
  396. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionIosParams.swift +12 -0
  397. package/nitrogen/generated/ios/swift/Variant_NullType_NitroInAppMessageParamsAndroid.swift +30 -0
  398. package/nitrogen/generated/ios/swift/Variant_NullType_NitroLimitedQuantityInfoAndroid.swift +12 -0
  399. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPreorderDetailsAndroid.swift +12 -0
  400. package/nitrogen/generated/ios/swift/Variant_NullType_NitroProduct.swift +12 -0
  401. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPurchase.swift +12 -0
  402. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationAppleOptions.swift +12 -0
  403. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationGoogleOptions.swift +12 -0
  404. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationHorizonOptions.swift +12 -0
  405. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRenewalInfoIOS.swift +12 -0
  406. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRentalDetailsAndroid.swift +12 -0
  407. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseAndroid.swift +12 -0
  408. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseIos.swift +12 -0
  409. package/nitrogen/generated/ios/swift/Variant_NullType_NitroValidTimeWindowAndroid.swift +12 -0
  410. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.swift +12 -0
  411. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.swift +12 -0
  412. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.swift +12 -0
  413. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.swift +12 -0
  414. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.swift +12 -0
  415. package/nitrogen/generated/ios/swift/Variant_NullType_PendingPurchaseUpdateAndroid.swift +12 -0
  416. package/nitrogen/generated/ios/swift/Variant_NullType_PromotionalOfferJwsInputIOS.swift +12 -0
  417. package/nitrogen/generated/ios/swift/Variant_NullType_PurchaseOfferIOS.swift +12 -0
  418. package/nitrogen/generated/ios/swift/Variant_NullType_RenewalCommitmentInfoIOS.swift +12 -0
  419. package/nitrogen/generated/ios/swift/Variant_NullType_RenewalInfoIOS.swift +12 -0
  420. package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +12 -0
  421. package/nitrogen/generated/ios/swift/Variant_NullType_SubscriptionProductReplacementParamsAndroid.swift +12 -0
  422. package/nitrogen/generated/ios/swift/Variant_NullType_TransactionCommitmentInfoIOS.swift +12 -0
  423. package/nitrogen/generated/ios/swift/Variant_NullType_WinBackOfferInputIOS.swift +12 -0
  424. package/nitrogen/generated/ios/swift/Variant_NullType__AdvancedCommerceRefundIOS_.swift +12 -0
  425. package/nitrogen/generated/ios/swift/Variant_NullType__AndroidSubscriptionOfferInput_.swift +12 -0
  426. package/nitrogen/generated/ios/swift/Variant_NullType__DeveloperProvidedBillingProductAndroid_.swift +30 -0
  427. package/nitrogen/generated/ios/swift/Variant_NullType__InAppMessageCategoryAndroid_.swift +30 -0
  428. package/nitrogen/generated/ios/swift/Variant_NullType__NitroOneTimePurchaseOfferDetail_.swift +12 -0
  429. package/nitrogen/generated/ios/swift/Variant_NullType__NitroSubscriptionStatus_.swift +12 -0
  430. package/nitrogen/generated/ios/swift/Variant_NullType__NitroVerifyPurchaseWithProviderError_.swift +12 -0
  431. package/nitrogen/generated/ios/swift/Variant_NullType__String_.swift +12 -0
  432. package/nitrogen/generated/shared/c++/AdvancedCommerceInfoIOS.hpp +1 -1
  433. package/nitrogen/generated/shared/c++/AdvancedCommerceItemIOS.hpp +1 -1
  434. package/nitrogen/generated/shared/c++/BillingChoiceImageLayoutAndroid.hpp +80 -0
  435. package/nitrogen/generated/shared/c++/BillingChoiceScreenTypeAndroid.hpp +80 -0
  436. package/nitrogen/generated/shared/c++/BillingProgramAndroid.hpp +4 -0
  437. package/nitrogen/generated/shared/c++/DeveloperBillingLaunchModeAndroid.hpp +80 -0
  438. package/nitrogen/generated/shared/c++/DeveloperBillingOptionParamsAndroid.hpp +103 -0
  439. package/nitrogen/generated/shared/c++/DeveloperBillingTypeAndroid.hpp +80 -0
  440. package/nitrogen/generated/shared/c++/DeveloperProvidedBillingDetailsAndroid.hpp +25 -7
  441. package/nitrogen/generated/shared/c++/DeveloperProvidedBillingProductAndroid.hpp +96 -0
  442. package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +3 -0
  443. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +26 -2
  444. package/nitrogen/generated/shared/c++/InAppMessageCategoryAndroid.hpp +76 -0
  445. package/nitrogen/generated/shared/c++/InAppMessageResponseCodeAndroid.hpp +76 -0
  446. package/nitrogen/generated/shared/c++/InitConnectionConfig.hpp +8 -1
  447. package/nitrogen/generated/shared/c++/NitroBillingChoiceInfoAndroid.hpp +90 -0
  448. package/nitrogen/generated/shared/c++/NitroBillingProgramAvailabilityResultAndroid.hpp +16 -2
  449. package/nitrogen/generated/shared/c++/NitroBillingProgramInformationDialogParamsAndroid.hpp +89 -0
  450. package/nitrogen/generated/shared/c++/NitroBillingResultAndroid.hpp +96 -0
  451. package/nitrogen/generated/shared/c++/NitroGetBillingChoiceInfoParamsAndroid.hpp +99 -0
  452. package/nitrogen/generated/shared/c++/NitroInAppMessageParamsAndroid.hpp +88 -0
  453. package/nitrogen/generated/shared/c++/NitroInAppMessageResultAndroid.hpp +92 -0
  454. package/nitrogen/generated/shared/c++/NitroLaunchExternalLinkParamsAndroid.hpp +9 -2
  455. package/nitrogen/generated/shared/c++/NitroOneTimePurchaseOfferDetail.hpp +6 -2
  456. package/nitrogen/generated/shared/c++/NitroProduct.hpp +14 -2
  457. package/nitrogen/generated/shared/c++/NitroPurchase.hpp +40 -3
  458. package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +1 -1
  459. package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +27 -4
  460. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +1 -1
  461. package/nitrogen/generated/shared/c++/NitroRenewalInfoIOS.hpp +15 -2
  462. package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +13 -2
  463. package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +8 -8
  464. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderResult.hpp +1 -1
  465. package/nitrogen/generated/shared/c++/PendingPurchaseUpdateAndroid.hpp +1 -1
  466. package/nitrogen/generated/shared/c++/ProductType.hpp +76 -0
  467. package/nitrogen/generated/shared/c++/PurchaseAndroid.hpp +1 -1
  468. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +1 -1
  469. package/nitrogen/generated/shared/c++/SubResponseCodeAndroid.hpp +80 -0
  470. package/nitrogen/generated/shared/c++/UserChoiceBillingDetails.hpp +16 -3
  471. package/openiap-versions.json +3 -3
  472. package/package.json +8 -5
  473. package/src/hooks/useIAP.ts +70 -4
  474. package/src/index.kepler.ts +9 -0
  475. package/src/index.ts +268 -120
  476. package/src/specs/RnIap.nitro.ts +141 -27
  477. package/src/types.ts +294 -59
  478. package/src/utils/error.ts +11 -8
  479. package/src/utils/errorMapping.ts +9 -1
  480. package/src/utils/type-bridge.ts +63 -42
  481. package/src/vega-adapter.ts +112 -15
  482. package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +0 -83
  483. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.cpp +0 -26
  484. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.hpp +0 -75
  485. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +0 -53
  486. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroSubscriptionRenewalInfo.kt +0 -53
  487. package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +0 -182
  488. package/nitrogen/generated/ios/swift/Variant_NullType_NitroSubscriptionRenewalInfo.swift +0 -18
  489. package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +0 -106
@@ -21,6 +21,7 @@ export interface ActiveSubscription {
21
21
  * pending upgrades/downgrades, and auto-renewal preferences.
22
22
  */
23
23
  renewalInfoIOS?: (RenewalInfoIOS | null);
24
+ /** Unix timestamp in milliseconds since January 1, 1970 UTC. */
24
25
  transactionDate: number;
25
26
  transactionId: string;
26
27
  /**
@@ -105,10 +106,33 @@ export interface AppTransaction {
105
106
  signedDate: number;
106
107
  }
107
108
  /**
108
- * Billing program types for external content links, external offers, and external payments (Android)
109
- * Available in Google Play Billing Library 8.2.0+, EXTERNAL_PAYMENTS added in 8.3.0
109
+ * Play Billing choice image layout (Android)
110
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
110
111
  */
111
- export type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments';
112
+ export type BillingChoiceImageLayoutAndroid = 'rectangular-four-by-one' | 'rectangular-three-by-one' | 'rectangular-two-by-two';
113
+ /**
114
+ * Display information for developer-rendered Billing Choice screens (Android)
115
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
116
+ */
117
+ export interface BillingChoiceInfoAndroid {
118
+ /** URL for the Play Billing choice image matching the requested layout. */
119
+ playBillingChoiceImageUrl: string;
120
+ /** Play Loyalty information for the user. */
121
+ playBillingLoyaltyInfo?: (string | null);
122
+ }
123
+ /**
124
+ * Choice screen renderer for Billing Choice availability (Android)
125
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
126
+ */
127
+ export type BillingChoiceScreenTypeAndroid = 'unspecified' | 'developer-rendered' | 'google-rendered';
128
+ /**
129
+ * Billing program types for Google Play Billing Programs (Android)
130
+ * Available in Google Play Billing Library 8.2.0 (External Offer and External Content Link
131
+ * integrations require 8.2.1+), EXTERNAL_PAYMENTS added in 8.3.0,
132
+ * BILLING_CHOICE added in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
133
+ * (requires Play Billing 9.1.0+).
134
+ */
135
+ export type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments' | 'billing-choice';
112
136
  /**
113
137
  * Result of checking billing program availability (Android)
114
138
  * Available in Google Play Billing Library 8.2.0+
@@ -116,8 +140,29 @@ export type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'ext
116
140
  export interface BillingProgramAvailabilityResultAndroid {
117
141
  /** The billing program that was checked */
118
142
  billingProgram: BillingProgramAndroid;
143
+ /**
144
+ * Billing Choice screen renderer. Populated only for available BILLING_CHOICE results.
145
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.
146
+ */
147
+ choiceScreenType?: (BillingChoiceScreenTypeAndroid | null);
119
148
  /** Whether the billing program is available for the user */
120
149
  isAvailable: boolean;
150
+ /**
151
+ * Whether external-link payment is available for Billing Choice.
152
+ * Populated only for available BILLING_CHOICE results.
153
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.
154
+ */
155
+ isExternalLinkAvailable?: (boolean | null);
156
+ }
157
+ /**
158
+ * Parameters for showing a billing program information dialog (Android)
159
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
160
+ */
161
+ export interface BillingProgramInformationDialogParamsAndroid {
162
+ /** Billing program. Currently only BILLING_CHOICE is supported. */
163
+ billingProgram?: BillingProgramAndroid;
164
+ /** External transaction token returned by the Billing Choice reporting-details flow. */
165
+ externalTransactionToken: string;
121
166
  }
122
167
  /**
123
168
  * Reporting details for transactions made outside of Google Play Billing (Android)
@@ -129,7 +174,8 @@ export interface BillingProgramReportingDetailsAndroid {
129
174
  billingProgram: BillingProgramAndroid;
130
175
  /**
131
176
  * External transaction token used to report transactions made outside of Google Play Billing.
132
- * This token must be used when reporting the external transaction to Google.
177
+ * Do not cache it for a later redirect session. For External Offer, the same token may report
178
+ * multiple purchases made during the session that generated it.
133
179
  */
134
180
  externalTransactionToken: string;
135
181
  }
@@ -161,18 +207,36 @@ export interface DeepLinkOptions {
161
207
  */
162
208
  export type DeveloperBillingLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';
163
209
  /**
164
- * Parameters for developer billing option in purchase flow (Android)
165
- * Used with BillingFlowParams to enable external payments flow
166
- * Available in Google Play Billing Library 8.3.0+
210
+ * Parameters for a developer billing option in a purchase flow (Android).
211
+ * Used with BillingFlowParams for external payments (8.3.0+) and Billing Choice
212
+ * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.0+).
213
+ * Only billingProgram is required; link fields are used when the selected program
214
+ * links outside the app.
167
215
  */
168
216
  export interface DeveloperBillingOptionParamsAndroid {
169
- /** The billing program (should be EXTERNAL_PAYMENTS for external payments flow) */
217
+ /** The billing program. Use EXTERNAL_PAYMENTS or BILLING_CHOICE. */
170
218
  billingProgram: BillingProgramAndroid;
171
- /** The launch mode for the external payment link */
172
- launchMode: DeveloperBillingLaunchModeAndroid;
173
- /** The URI where the external payment will be processed */
174
- linkUri: string;
219
+ /**
220
+ * A pre-generated external transaction token for a Billing Choice external-link
221
+ * flow. Omit it when Google Play should provide the token in the callback.
222
+ */
223
+ externalTransactionToken?: (string | null);
224
+ /**
225
+ * The launch mode for the external payment link.
226
+ * Required only when the selected billing program links outside the app.
227
+ */
228
+ launchMode?: (DeveloperBillingLaunchModeAndroid | null);
229
+ /**
230
+ * The URI where the external payment will be processed.
231
+ * Required only when the selected billing program links outside the app.
232
+ */
233
+ linkUri?: (string | null);
175
234
  }
235
+ /**
236
+ * Developer-provided billing destination type for Billing Program reporting details (Android)
237
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
238
+ */
239
+ export type DeveloperBillingTypeAndroid = 'developer-billing-type-unspecified' | 'in-app' | 'external-link';
176
240
  /**
177
241
  * Details provided when user selects developer billing option (Android)
178
242
  * Received via DeveloperProvidedBillingListener callback
@@ -181,14 +245,34 @@ export interface DeveloperBillingOptionParamsAndroid {
181
245
  export interface DeveloperProvidedBillingDetailsAndroid {
182
246
  /**
183
247
  * External transaction token used to report transactions made through developer billing.
184
- * This token must be used when reporting the external transaction to Google Play.
185
- * Must be reported within 24 hours of the transaction.
248
+ * Nullable for flows such as external payments where no token is returned.
186
249
  */
187
- externalTransactionToken: string;
250
+ externalTransactionToken?: (string | null);
251
+ /**
252
+ * URI to launch for an external-link Billing Choice flow, when provided by
253
+ * Google Play.
254
+ */
255
+ linkUri?: (string | null);
256
+ /**
257
+ * Original external transaction ID when replacing a subscription that was
258
+ * purchased through developer billing.
259
+ */
260
+ originalExternalTransactionId?: (string | null);
261
+ /** Products selected for the developer billing flow. */
262
+ products: DeveloperProvidedBillingProductAndroid[];
263
+ }
264
+ /** Product selected for developer-provided billing (Android 9.0+). */
265
+ export interface DeveloperProvidedBillingProductAndroid {
266
+ /** Product identifier. */
267
+ id: string;
268
+ /** Subscription offer token, when applicable. */
269
+ offerToken?: (string | null);
270
+ /** Google Play product type (in-app or subscription). */
271
+ type: ProductType;
188
272
  }
189
273
  /**
190
274
  * Discount amount details for one-time purchase offers (Android)
191
- * Available in Google Play Billing Library 7.0+
275
+ * Available in Google Play Billing Library 8.0+
192
276
  */
193
277
  export interface DiscountAmountAndroid {
194
278
  /** Discount amount in micro-units (1,000,000 = 1 unit of currency) */
@@ -198,7 +282,7 @@ export interface DiscountAmountAndroid {
198
282
  }
199
283
  /**
200
284
  * Discount display information for one-time purchase offers (Android)
201
- * Available in Google Play Billing Library 7.0+
285
+ * Available in Google Play Billing Library 8.0+
202
286
  */
203
287
  export interface DiscountDisplayInfoAndroid {
204
288
  /**
@@ -231,7 +315,7 @@ export interface DiscountIOS {
231
315
  * Standardized one-time product discount offer.
232
316
  * Provides a unified interface for one-time purchase discounts across platforms.
233
317
  *
234
- * Currently supported on Android (Google Play Billing 7.0+).
318
+ * Currently supported on Android (Google Play Billing 8.0+).
235
319
  * iOS does not support one-time purchase discounts in the same way.
236
320
  *
237
321
  * @see https://openiap.dev/docs/features/discount
@@ -287,7 +371,7 @@ export interface DiscountOffer {
287
371
  /**
288
372
  * [Android] Purchase option ID for this offer.
289
373
  * Used to identify which purchase option the user selected.
290
- * Available in Google Play Billing Library 7.0+
374
+ * Available in Google Play Billing Library 8.0+
291
375
  */
292
376
  purchaseOptionIdAndroid?: (string | null);
293
377
  /** [Android] Rental details if this is a rental offer. */
@@ -383,7 +467,8 @@ export declare enum ErrorCode {
383
467
  /**
384
468
  * Launch mode for external link flow (Android)
385
469
  * Determines how the external URL is launched
386
- * Available in Google Play Billing Library 8.2.0+
470
+ * Introduced in Google Play Billing Library 8.2.0. External Offer and External Content Link
471
+ * integrations require 8.2.1+ and fresh details immediately before every redirect session.
387
472
  */
388
473
  export type ExternalLinkLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';
389
474
  /**
@@ -465,11 +550,55 @@ export interface ExternalPurchaseNoticeResultIOS {
465
550
  result: ExternalPurchaseNoticeAction;
466
551
  }
467
552
  export type FetchProductsResult = ProductOrSubscription[] | Product[] | ProductSubscription[] | null;
553
+ /**
554
+ * Parameters for fetching Billing Choice display information (Android)
555
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
556
+ */
557
+ export interface GetBillingChoiceInfoParamsAndroid {
558
+ /** Billing program. Currently only BILLING_CHOICE is supported. */
559
+ billingProgram?: BillingProgramAndroid;
560
+ /** Desired Play Billing choice image layout. */
561
+ playBillingChoiceImageLayout?: BillingChoiceImageLayoutAndroid;
562
+ /** BCP 47 locale tag. If omitted, Play Billing uses the user's default locale. */
563
+ userLocale?: (string | null);
564
+ }
468
565
  export type IapEvent = 'purchase-updated' | 'purchase-error' | 'promoted-product-ios' | 'user-choice-billing-android' | 'developer-provided-billing-android' | 'subscription-billing-issue';
469
566
  export type IapPlatform = 'ios' | 'android';
470
567
  export type IapStore = 'unknown' | 'apple' | 'google' | 'horizon' | 'amazon';
471
568
  /** Unified purchase states from IAPKit verification response. */
472
569
  export type IapkitPurchaseState = 'entitled' | 'pending-acknowledgment' | 'pending' | 'canceled' | 'expired' | 'ready-to-consume' | 'consumed' | 'unknown' | 'inauthentic';
570
+ /**
571
+ * High-level in-app message category (Android)
572
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
573
+ * (upstream API available since Play Billing 4.1.0).
574
+ */
575
+ export type InAppMessageCategoryAndroid = 'unknown-in-app-message-category-id' | 'transactional';
576
+ /**
577
+ * Parameters for showing Play billing in-app messages (Android)
578
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
579
+ * (upstream API available since Play Billing 4.1.0).
580
+ */
581
+ export interface InAppMessageParamsAndroid {
582
+ /** In-app message categories to show. Defaults to transactional messages. */
583
+ categories?: (InAppMessageCategoryAndroid[] | null);
584
+ }
585
+ /**
586
+ * Response code from Play billing in-app messages (Android)
587
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
588
+ * (upstream API available since Play Billing 4.1.0).
589
+ */
590
+ export type InAppMessageResponseCodeAndroid = 'no-action-needed' | 'subscription-status-updated';
591
+ /**
592
+ * Result from showing Play billing in-app messages (Android)
593
+ * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
594
+ * (upstream API available since Play Billing 4.1.0).
595
+ */
596
+ export interface InAppMessageResultAndroid {
597
+ /** Purchase token returned when a subscription status changed. */
598
+ purchaseToken?: (string | null);
599
+ /** Response code for the in-app messaging flow. */
600
+ responseCode: InAppMessageResponseCodeAndroid;
601
+ }
473
602
  /** Connection initialization configuration */
474
603
  export interface InitConnectionConfig {
475
604
  /**
@@ -479,13 +608,25 @@ export interface InitConnectionConfig {
479
608
  * Use USER_CHOICE_BILLING for user choice billing, EXTERNAL_OFFER for alternative only.
480
609
  */
481
610
  alternativeBillingModeAndroid?: (AlternativeBillingModeAndroid | null);
611
+ /**
612
+ * Billing Choice renderer configured in Play Console. Available in OpenIAP
613
+ * Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
614
+ * GOOGLE_RENDERED registers the developer-provided billing listener so OpenIAP
615
+ * can emit the selection event. DEVELOPER_RENDERED omits that listener so the
616
+ * app can render its own choice screen and use the reporting/dialog/link APIs.
617
+ * Must match choiceScreenType returned by isBillingProgramAvailableAndroid.
618
+ * Defaults to GOOGLE_RENDERED.
619
+ */
620
+ billingChoiceScreenTypeAndroid?: (BillingChoiceScreenTypeAndroid | null);
482
621
  /**
483
622
  * Enable a specific billing program for Android (7.0+)
484
623
  * When set, enables the specified billing program for external transactions.
485
624
  * - USER_CHOICE_BILLING: User can select between Google Play or alternative (7.0+)
486
- * - EXTERNAL_CONTENT_LINK: Link to external content (8.2.0+)
487
- * - EXTERNAL_OFFER: External offers for digital content (8.2.0+)
625
+ * - EXTERNAL_CONTENT_LINK: Link to external content (introduced in 8.2.0; use 8.2.1+)
626
+ * - EXTERNAL_OFFER: External offers for digital content (introduced in 8.2.0; use 8.2.1+)
488
627
  * - EXTERNAL_PAYMENTS: Developer provided billing, Japan only (8.3.0+)
628
+ * - BILLING_CHOICE: Google-rendered or developer-rendered billing choice
629
+ * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.0+)
489
630
  */
490
631
  enableBillingProgramAndroid?: (BillingProgramAndroid | null);
491
632
  }
@@ -511,12 +652,19 @@ export interface InstallmentPlanDetailsAndroid {
511
652
  }
512
653
  /**
513
654
  * Parameters for launching an external link (Android)
514
- * Used with launchExternalLink to initiate external offer or app install flows
655
+ * Used with launchExternalLink to initiate external offer, app install, or
656
+ * developer-rendered Billing Choice flows
515
657
  * Available in Google Play Billing Library 8.2.0+
516
658
  */
517
659
  export interface LaunchExternalLinkParamsAndroid {
518
- /** The billing program (EXTERNAL_CONTENT_LINK or EXTERNAL_OFFER) */
660
+ /** The billing program (EXTERNAL_CONTENT_LINK, EXTERNAL_OFFER, or BILLING_CHOICE) */
519
661
  billingProgram: BillingProgramAndroid;
662
+ /**
663
+ * External transaction token for a developer-rendered Billing Choice external-link
664
+ * flow. Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
665
+ * (requires Play Billing 9.1.0+). Generate it with createBillingProgramReportingDetailsAndroid.
666
+ */
667
+ externalTransactionToken?: (string | null);
520
668
  /** The external link launch mode */
521
669
  launchMode: ExternalLinkLaunchModeAndroid;
522
670
  /** The type of the external link */
@@ -526,7 +674,7 @@ export interface LaunchExternalLinkParamsAndroid {
526
674
  }
527
675
  /**
528
676
  * Limited quantity information for one-time purchase offers (Android)
529
- * Available in Google Play Billing Library 7.0+
677
+ * Available in Google Play Billing Library 8.0+
530
678
  */
531
679
  export interface LimitedQuantityInfoAndroid {
532
680
  /** Maximum quantity a user can purchase */
@@ -547,7 +695,6 @@ export interface Mutation {
547
695
  beginRefundRequestIOS?: Promise<(string | null)>;
548
696
  /**
549
697
  * Check whether alternative billing is available for the user. Step 1 of the alternative billing flow.
550
- *
551
698
  * Returns true if available, false otherwise.
552
699
  * Throws OpenIapError.NotPrepared if billing client not ready.
553
700
  * See: https://openiap.dev/docs/apis/android/check-alternative-billing-availability-android
@@ -567,17 +714,23 @@ export interface Mutation {
567
714
  * Create a reporting token for an alternative billing flow. Step 3 of the alternative billing flow.
568
715
  * Must be called AFTER successful payment in your payment system.
569
716
  * Token must be reported to Google Play backend within 24 hours.
570
- *
571
717
  * Returns token string, or null if creation failed.
572
718
  * Throws OpenIapError.NotPrepared if billing client not ready.
573
719
  * See: https://openiap.dev/docs/apis/android/create-alternative-billing-token-android
574
720
  */
575
721
  createAlternativeBillingTokenAndroid?: Promise<(string | null)>;
576
722
  /**
577
- * Create the reporting payload Google requires after a Developer-Provided Billing transaction (Play Billing 8.3.0+).
723
+ * Create the reporting details and external transaction token required by a billing program.
724
+ * Introduced in Play Billing 8.2.0. External Offer and External Content Link integrations
725
+ * must use 8.2.1+ and create fresh details immediately before every redirect session;
726
+ * do not cache the token for a later redirect. The same token may report multiple purchases
727
+ * made during one External Offer session.
578
728
  * Replaces the deprecated createExternalOfferReportingDetailsAsync API.
579
- *
580
729
  * Returns external transaction token needed for reporting external transactions.
730
+ * developerBillingType is optional. When program is BILLING_CHOICE and developerBillingType is omitted,
731
+ * native Android defaults it to IN_APP.
732
+ * The Billing Choice extension is available in OpenIAP Spec 2.1.0 /
733
+ * openiap-google 2.3.0 (requires Play Billing 9.1.0+).
581
734
  * Throws OpenIapError.NotPrepared if billing client not ready.
582
735
  * See: https://openiap.dev/docs/apis/android/create-billing-program-reporting-details-android
583
736
  */
@@ -605,17 +758,20 @@ export interface Mutation {
605
758
  /**
606
759
  * Check whether a billing program (e.g., External Payments) is available for the current user.
607
760
  * Replaces the deprecated isExternalOfferAvailableAsync API.
608
- *
609
- * Available in Google Play Billing Library 8.2.0+.
761
+ * Introduced in Google Play Billing Library 8.2.0. External Offer and External
762
+ * Content Link integrations must use 8.2.1+ because 8.2.1 fixes this API.
610
763
  * Returns availability result with isAvailable flag.
611
764
  * Throws OpenIapError.NotPrepared if billing client not ready.
612
765
  * See: https://openiap.dev/docs/apis/android/is-billing-program-available-android
613
766
  */
614
767
  isBillingProgramAvailableAndroid: Promise<BillingProgramAvailabilityResultAndroid>;
615
768
  /**
616
- * Launch an external content/offer link from inside the Billing Programs flow (Play Billing 8.2.0+).
769
+ * Launch an external content/offer link from inside the Billing Programs flow (introduced in
770
+ * Play Billing 8.2.0; External Offer and External Content Link require 8.2.1+),
771
+ * including developer-rendered Billing Choice external-link flows.
772
+ * Billing Choice availability: OpenIAP Spec 2.1.0 / openiap-google 2.3.0
773
+ * (requires Play Billing 9.1.0+).
617
774
  * Replaces the deprecated showExternalOfferInformationDialog API.
618
- *
619
775
  * Shows Play Store dialog and optionally launches external URL.
620
776
  * Throws OpenIapError.NotPrepared if billing client not ready.
621
777
  * See: https://openiap.dev/docs/apis/android/launch-external-link-android
@@ -661,12 +817,19 @@ export interface Mutation {
661
817
  /**
662
818
  * Display Google's alternative billing information dialog. Step 2 of the alternative billing flow.
663
819
  * Must be called BEFORE processing payment in your payment system.
664
- *
665
820
  * Returns true if user accepted, false if user canceled.
666
821
  * Throws OpenIapError.NotPrepared if billing client not ready.
667
822
  * See: https://openiap.dev/docs/apis/android/show-alternative-billing-dialog-android
668
823
  */
669
824
  showAlternativeBillingDialogAndroid: Promise<boolean>;
825
+ /**
826
+ * Show Google's mandatory information dialog before a developer-rendered,
827
+ * in-app Billing Choice screen.
828
+ * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
829
+ * Throws OpenIapError.NotPrepared if billing client not ready.
830
+ * See: https://openiap.dev/docs/apis/android/show-billing-program-information-dialog-android
831
+ */
832
+ showBillingProgramInformationDialogAndroid: Promise<BillingResultAndroid>;
670
833
  /**
671
834
  * Present the disclosure sheet required before linking out via ExternalPurchaseCustomLink (iOS 18.1+).
672
835
  * Call this after a deliberate customer interaction before linking out to external purchases.
@@ -674,6 +837,15 @@ export interface Mutation {
674
837
  * See: https://openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios
675
838
  */
676
839
  showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;
840
+ /**
841
+ * Overlay Play billing in-app messages, such as payment issues or subscription price-change confirmations.
842
+ * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0
843
+ * (upstream API available since Play Billing 4.1.0).
844
+ * Returns a response code and, when the subscription status changes, the related purchase token.
845
+ * Throws OpenIapError.NotPrepared if billing client not ready.
846
+ * See: https://openiap.dev/docs/apis/android/show-in-app-messages-android
847
+ */
848
+ showInAppMessagesAndroid: Promise<InAppMessageResultAndroid>;
677
849
  /**
678
850
  * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).
679
851
  * See: https://openiap.dev/docs/apis/ios/show-manage-subscriptions-ios
@@ -710,7 +882,10 @@ export interface Mutation {
710
882
  export type MutationAcknowledgePurchaseAndroidArgs = string;
711
883
  export type MutationBeginRefundRequestIosArgs = string;
712
884
  export type MutationConsumePurchaseAndroidArgs = string;
713
- export type MutationCreateBillingProgramReportingDetailsAndroidArgs = BillingProgramAndroid;
885
+ export interface MutationCreateBillingProgramReportingDetailsAndroidArgs {
886
+ developerBillingType?: (DeveloperBillingTypeAndroid | null);
887
+ program: BillingProgramAndroid;
888
+ }
714
889
  export type MutationDeepLinkToSubscriptionsArgs = (DeepLinkOptions | null) | undefined;
715
890
  export interface MutationFinishTransactionArgs {
716
891
  isConsumable?: (boolean | null);
@@ -733,7 +908,9 @@ export type MutationRequestPurchaseArgs = {
733
908
  /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */
734
909
  useAlternativeBilling?: boolean | null;
735
910
  };
911
+ export type MutationShowBillingProgramInformationDialogAndroidArgs = BillingProgramInformationDialogParamsAndroid;
736
912
  export type MutationShowExternalPurchaseCustomLinkNoticeIosArgs = ExternalPurchaseCustomLinkNoticeTypeIOS;
913
+ export type MutationShowInAppMessagesAndroidArgs = (InAppMessageParamsAndroid | null) | undefined;
737
914
  export type MutationValidateReceiptArgs = VerifyPurchaseProps;
738
915
  export type MutationVerifyPurchaseArgs = VerifyPurchaseProps;
739
916
  export type MutationVerifyPurchaseWithProviderArgs = VerifyPurchaseWithProviderProps;
@@ -806,7 +983,7 @@ export interface ProductAndroid extends ProductCommon {
806
983
  nameAndroid: string;
807
984
  /**
808
985
  * One-time purchase offer details including discounts (Android)
809
- * Returns all eligible offers. Available in Google Play Billing Library 7.0+
986
+ * Returns all eligible offers. Available in Google Play Billing Library 8.0+
810
987
  * @deprecated Use discountOffers instead for cross-platform compatibility.
811
988
  * @deprecated Use discountOffers instead
812
989
  */
@@ -837,7 +1014,7 @@ export interface ProductAndroid extends ProductCommon {
837
1014
  }
838
1015
  /**
839
1016
  * One-time purchase offer details (Android).
840
- * Available in Google Play Billing Library 7.0+
1017
+ * Available in Google Play Billing Library 8.0+
841
1018
  * @deprecated Use the standardized DiscountOffer type instead for cross-platform compatibility.
842
1019
  * @see https://openiap.dev/docs/types#discount-offer
843
1020
  */
@@ -871,7 +1048,7 @@ export interface ProductAndroidOneTimePurchaseOfferDetail {
871
1048
  /**
872
1049
  * Purchase option ID for this offer (Android)
873
1050
  * Used to identify which purchase option the user selected.
874
- * Available in Google Play Billing Library 7.0+
1051
+ * Available in Google Play Billing Library 8.0+
875
1052
  */
876
1053
  purchaseOptionId?: (string | null);
877
1054
  /** Rental details for rental offers */
@@ -954,7 +1131,7 @@ export interface ProductSubscriptionAndroid extends ProductCommon {
954
1131
  nameAndroid: string;
955
1132
  /**
956
1133
  * One-time purchase offer details including discounts (Android)
957
- * Returns all eligible offers. Available in Google Play Billing Library 7.0+
1134
+ * Returns all eligible offers. Available in Google Play Billing Library 8.0+
958
1135
  * @deprecated Use discountOffers instead for cross-platform compatibility.
959
1136
  * @deprecated Use discountOffers instead
960
1137
  */
@@ -1102,6 +1279,7 @@ export interface PurchaseAndroid extends PurchaseCommon {
1102
1279
  signatureAndroid?: (string | null);
1103
1280
  /** Store where purchase was made */
1104
1281
  store: IapStore;
1282
+ /** Unix timestamp in milliseconds since January 1, 1970 UTC. */
1105
1283
  transactionDate: number;
1106
1284
  transactionId?: (string | null);
1107
1285
  }
@@ -1125,6 +1303,7 @@ export interface PurchaseCommon {
1125
1303
  quantity: number;
1126
1304
  /** Store where purchase was made */
1127
1305
  store: IapStore;
1306
+ /** Unix timestamp in milliseconds since January 1, 1970 UTC. */
1128
1307
  transactionDate: number;
1129
1308
  }
1130
1309
  export interface PurchaseError {
@@ -1136,6 +1315,7 @@ export interface PurchaseError {
1136
1315
  productIds?: (string[] | null);
1137
1316
  productType?: (string | null);
1138
1317
  responseCode?: (number | null);
1318
+ subResponseCodeAndroid?: (SubResponseCodeAndroid | null);
1139
1319
  }
1140
1320
  export interface PurchaseIOS extends PurchaseCommon {
1141
1321
  /**
@@ -1180,6 +1360,7 @@ export interface PurchaseIOS extends PurchaseCommon {
1180
1360
  store: IapStore;
1181
1361
  storefrontCountryCodeIOS?: (string | null);
1182
1362
  subscriptionGroupIdIOS?: (string | null);
1363
+ /** Unix timestamp in milliseconds since January 1, 1970 UTC. */
1183
1364
  transactionDate: number;
1184
1365
  transactionId: string;
1185
1366
  transactionReasonIOS?: (string | null);
@@ -1238,7 +1419,7 @@ export interface Query {
1238
1419
  getActiveSubscriptions: Promise<ActiveSubscription[]>;
1239
1420
  /**
1240
1421
  * List every StoreKit transaction (finished + unfinished) for the current user.
1241
- * Requires the SK2ConsumableTransactionHistory Info.plist key in the host app
1422
+ * Requires the SKIncludeConsumableInAppPurchaseHistory Info.plist key in the host app
1242
1423
  * for finished consumables to be included (iOS 18+).
1243
1424
  * Unlike getAvailablePurchases, always returns the iOS-specific PurchaseIOS shape.
1244
1425
  * See: https://openiap.dev/docs/apis/ios/get-all-transactions-ios
@@ -1254,6 +1435,13 @@ export interface Query {
1254
1435
  * See: https://openiap.dev/docs/apis/get-available-purchases
1255
1436
  */
1256
1437
  getAvailablePurchases: Promise<Purchase[]>;
1438
+ /**
1439
+ * Fetch Play Billing assets and loyalty text for developer-rendered Billing Choice screens.
1440
+ * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).
1441
+ * Throws OpenIapError.NotPrepared if billing client is not ready.
1442
+ * See: https://openiap.dev/docs/apis/android/get-billing-choice-info-android
1443
+ */
1444
+ getBillingChoiceInfoAndroid: Promise<BillingChoiceInfoAndroid>;
1257
1445
  /**
1258
1446
  * Fetch a token for Apple's External Purchase Server reporting API (iOS 18.1+).
1259
1447
  * Use this token to report transactions made through ExternalPurchaseCustomLink.
@@ -1277,12 +1465,15 @@ export interface Query {
1277
1465
  */
1278
1466
  getReceiptDataIOS?: Promise<(string | null)>;
1279
1467
  /**
1280
- * Return the user's storefront country code.
1468
+ * Return the store-authoritative country code: ISO 3166-1 alpha-3 on Apple
1469
+ * platforms and alpha-2 on Android. The operation fails when the store cannot
1470
+ * provide a value; implementations must not synthesize a locale fallback.
1281
1471
  * See: https://openiap.dev/docs/apis/get-storefront
1282
1472
  */
1283
1473
  getStorefront: Promise<string>;
1284
1474
  /**
1285
- * Deprecated. Get the current App Store storefront country code — use cross-platform getStorefront instead.
1475
+ * Deprecated. Get the current App Store storefront ISO 3166-1 alpha-3 country
1476
+ * code — use cross-platform getStorefront instead.
1286
1477
  * See: https://openiap.dev/docs/apis/ios/get-storefront-ios
1287
1478
  * @deprecated Use getStorefront
1288
1479
  */
@@ -1335,6 +1526,7 @@ export type QueryCurrentEntitlementIosArgs = string;
1335
1526
  export type QueryFetchProductsArgs = ProductRequest;
1336
1527
  export type QueryGetActiveSubscriptionsArgs = (string[] | null) | undefined;
1337
1528
  export type QueryGetAvailablePurchasesArgs = (PurchaseOptions | null) | undefined;
1529
+ export type QueryGetBillingChoiceInfoAndroidArgs = GetBillingChoiceInfoParamsAndroid;
1338
1530
  export type QueryGetExternalPurchaseCustomLinkTokenIosArgs = ExternalPurchaseCustomLinkTokenTypeIOS;
1339
1531
  export type QueryGetTransactionJwsIosArgs = string;
1340
1532
  export type QueryHasActiveSubscriptionsArgs = (string[] | null) | undefined;
@@ -1377,7 +1569,7 @@ export interface RenewalInfoIOS {
1377
1569
  gracePeriodExpirationDate?: (number | null);
1378
1570
  /**
1379
1571
  * True if subscription failed to renew due to billing issue and is retrying
1380
- * Note: Not directly available in RenewalInfo, available in Status
1572
+ * StoreKit exposes this directly as RenewalInfo.isInBillingRetry.
1381
1573
  */
1382
1574
  isInBillingRetry?: (boolean | null);
1383
1575
  jsonRepresentation?: (string | null);
@@ -1409,7 +1601,7 @@ export interface RenewalInfoIOS {
1409
1601
  }
1410
1602
  /**
1411
1603
  * Rental details for one-time purchase products that can be rented (Android)
1412
- * Available in Google Play Billing Library 7.0+
1604
+ * Available in Google Play Billing Library 8.0+
1413
1605
  */
1414
1606
  export interface RentalDetailsAndroid {
1415
1607
  /**
@@ -1422,9 +1614,9 @@ export interface RentalDetailsAndroid {
1422
1614
  }
1423
1615
  export interface RequestPurchaseAndroidProps {
1424
1616
  /**
1425
- * Developer billing option parameters for external payments flow (8.3.0+).
1426
- * When provided, the purchase flow will show a side-by-side choice between
1427
- * Google Play Billing and the developer's external payment option.
1617
+ * Developer billing option parameters for external payments and Billing Choice.
1618
+ * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
1619
+ * (requires Play Billing 9.1.0+).
1428
1620
  */
1429
1621
  developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);
1430
1622
  /**
@@ -1437,7 +1629,7 @@ export interface RequestPurchaseAndroidProps {
1437
1629
  /** Obfuscated profile ID */
1438
1630
  obfuscatedProfileId?: (string | null);
1439
1631
  /**
1440
- * Offer token for one-time purchase discounts (7.0+).
1632
+ * Offer token for one-time purchase discounts (8.0+).
1441
1633
  * Pass the offerToken from oneTimePurchaseOfferDetailsAndroid or discountOffers
1442
1634
  * to apply a discount offer to the purchase.
1443
1635
  */
@@ -1502,9 +1694,9 @@ export interface RequestPurchasePropsByPlatforms {
1502
1694
  export type RequestPurchaseResult = Purchase | Purchase[] | null;
1503
1695
  export interface RequestSubscriptionAndroidProps {
1504
1696
  /**
1505
- * Developer billing option parameters for external payments flow (8.3.0+).
1506
- * When provided, the purchase flow will show a side-by-side choice between
1507
- * Google Play Billing and the developer's external payment option.
1697
+ * Developer billing option parameters for external payments and Billing Choice.
1698
+ * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0
1699
+ * (requires Play Billing 9.1.0+).
1508
1700
  */
1509
1701
  developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);
1510
1702
  /**
@@ -1516,6 +1708,12 @@ export interface RequestSubscriptionAndroidProps {
1516
1708
  obfuscatedAccountId?: (string | null);
1517
1709
  /** Obfuscated profile ID */
1518
1710
  obfuscatedProfileId?: (string | null);
1711
+ /**
1712
+ * Original external transaction ID for replacing a subscription that was
1713
+ * purchased through developer billing. Available in OpenIAP Spec 2.1.0 /
1714
+ * openiap-google 2.3.0 (requires Play Billing 9.1.0+).
1715
+ */
1716
+ originalExternalTransactionId?: (string | null);
1519
1717
  /** Purchase token for upgrades/downgrades */
1520
1718
  purchaseToken?: (string | null);
1521
1719
  /**
@@ -1530,6 +1728,9 @@ export interface RequestSubscriptionAndroidProps {
1530
1728
  /**
1531
1729
  * Product-level replacement parameters (8.1.0+)
1532
1730
  * Use this instead of replacementMode for item-level replacement
1731
+ * This singular form requires skus to contain exactly one target product.
1732
+ * Multi-item subscription changes need a per-target replacement mapping and
1733
+ * are rejected rather than applying one oldProductId to multiple products.
1533
1734
  */
1534
1735
  subscriptionProductReplacementParams?: (SubscriptionProductReplacementParamsAndroid | null);
1535
1736
  }
@@ -1642,11 +1843,11 @@ export interface RequestVerifyPurchaseWithIapkitResult {
1642
1843
  export type SubResponseCodeAndroid = 'no-applicable-sub-response-code' | 'payment-declined-due-to-insufficient-funds' | 'user-ineligible';
1643
1844
  export interface Subscription {
1644
1845
  /**
1645
- * Fires when a user selects developer billing in the External Payments flow (Android only)
1646
- * Triggered when the user chooses to pay via the developer's external payment option
1647
- * instead of Google Play Billing in the side-by-side choice dialog.
1648
- * Contains the externalTransactionToken needed to report the transaction.
1649
- * Available in Google Play Billing Library 8.3.0+
1846
+ * Fires when a user selects developer billing in an External Payments or
1847
+ * Billing Choice flow (Android only). The payload can contain an external
1848
+ * transaction token, link URI, original transaction ID, and selected products.
1849
+ * Billing Choice payload fields are available in OpenIAP Spec 2.1.0 /
1850
+ * openiap-google 2.3.0 (requires Play Billing 9.1.0+).
1650
1851
  */
1651
1852
  developerProvidedBillingAndroid: DeveloperProvidedBillingDetailsAndroid;
1652
1853
  /** Fires when the App Store surfaces a promoted product (iOS only) */
@@ -1661,14 +1862,17 @@ export interface Subscription {
1661
1862
  */
1662
1863
  purchaseUpdated: Purchase;
1663
1864
  /**
1664
- * Fires when an active subscription enters a billing-issue state that needs user action
1865
+ * Fires when a subscription enters a billing-issue state that needs user action
1665
1866
  * (payment method failed, card expired, etc.). Cross-platform unification:
1666
1867
  *
1667
- * - iOS 18+: delivered via StoreKit 2 `Message.Reason.billingIssue`.
1868
+ * - iOS 16.4+ / Mac Catalyst 16.4+ / visionOS 1.0+: delivered via StoreKit 2
1869
+ * `Message.Reason.billingIssue`.
1668
1870
  * - Android (Play flavor, Billing 8.1+): emitted when `isSuspended == true` is first detected
1669
1871
  * on a previously healthy subscription. Requires Google Play Billing Library 8.1.0 or newer.
1670
1872
  * - Android (Horizon flavor): NOT emitted. The Horizon Billing Compatibility SDK implements
1671
1873
  * the Play Billing 7.0 API surface which does not expose a suspended-subscription signal.
1874
+ * - Android (Amazon flavor): NOT emitted. Amazon Appstore IAP does not expose an
1875
+ * equivalent subscription billing-issue signal.
1672
1876
  *
1673
1877
  * Listeners should not assume the event will fire on every store. Direct users to the
1674
1878
  * platform subscription management UI (`deepLinkToSubscriptions`) to resolve the issue.
@@ -1846,12 +2050,25 @@ export interface TransactionCommitmentInfoIOS {
1846
2050
  export interface UserChoiceBillingDetails {
1847
2051
  /** Token that must be reported to Google Play within 24 hours */
1848
2052
  externalTransactionToken: string;
2053
+ /**
2054
+ * External transaction ID of the originating subscription when the user is
2055
+ * upgrading or downgrading a developer-billed subscription. Available in
2056
+ * OpenIAP Spec 2.3.0 / openiap-google 2.3.1 (requires Play Billing 9.1+).
2057
+ */
2058
+ originalExternalTransactionId?: (string | null);
2059
+ /**
2060
+ * Structured product details selected in the user-choice flow, including the
2061
+ * product type and offer token. Legacy payloads may omit this field; use
2062
+ * products as the product-ID fallback. Available in OpenIAP Spec 2.3.0 /
2063
+ * openiap-google 2.3.1 (requires Play Billing 9.1+).
2064
+ */
2065
+ productDetailsAndroid?: (DeveloperProvidedBillingProductAndroid[] | null);
1849
2066
  /** List of product IDs selected by the user */
1850
2067
  products: string[];
1851
2068
  }
1852
2069
  /**
1853
2070
  * Valid time window for when an offer is available (Android)
1854
- * Available in Google Play Billing Library 7.0+
2071
+ * Available in Google Play Billing Library 8.0+
1855
2072
  */
1856
2073
  export interface ValidTimeWindowAndroid {
1857
2074
  /** End time in milliseconds since epoch */
@@ -2055,6 +2272,7 @@ export type QueryArgsMap = {
2055
2272
  getAllTransactionsIOS: never;
2056
2273
  getAppTransactionIOS: never;
2057
2274
  getAvailablePurchases: QueryGetAvailablePurchasesArgs;
2275
+ getBillingChoiceInfoAndroid: QueryGetBillingChoiceInfoAndroidArgs;
2058
2276
  getExternalPurchaseCustomLinkTokenIOS: QueryGetExternalPurchaseCustomLinkTokenIosArgs;
2059
2277
  getPendingTransactionsIOS: never;
2060
2278
  getPromotedProductIOS: never;
@@ -2095,7 +2313,9 @@ export type MutationArgsMap = {
2095
2313
  requestPurchaseOnPromotedProductIOS: never;
2096
2314
  restorePurchases: never;
2097
2315
  showAlternativeBillingDialogAndroid: never;
2316
+ showBillingProgramInformationDialogAndroid: MutationShowBillingProgramInformationDialogAndroidArgs;
2098
2317
  showExternalPurchaseCustomLinkNoticeIOS: MutationShowExternalPurchaseCustomLinkNoticeIosArgs;
2318
+ showInAppMessagesAndroid: MutationShowInAppMessagesAndroidArgs;
2099
2319
  showManageSubscriptionsIOS: never;
2100
2320
  syncIOS: never;
2101
2321
  validateReceipt: MutationValidateReceiptArgs;