@adyen/adyen-web 6.44.0 → 6.45.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 (313) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/adyen.css +17 -17
  3. package/dist/cjs/adyen.css.map +1 -1
  4. package/dist/cjs/index.cjs +2 -2
  5. package/dist/cjs/index.cjs.map +1 -1
  6. package/dist/cjs/index.d.cts +2001 -1879
  7. package/dist/es/adyen.css +17 -17
  8. package/dist/es/adyen.css.map +1 -1
  9. package/dist/es/components/ANCV/components/ANCVInput.js +1 -1
  10. package/dist/es/components/ANCV/components/ANCVInput.js.map +1 -1
  11. package/dist/es/components/Ach/Ach.js +1 -1
  12. package/dist/es/components/Ach/Ach.js.map +1 -1
  13. package/dist/es/components/Ach/components/AchComponent.js +1 -1
  14. package/dist/es/components/Ach/components/AchComponent.js.map +1 -1
  15. package/dist/es/components/AmazonPay/AmazonPay.js +1 -1
  16. package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
  17. package/dist/es/components/BacsDD/BacsDD.js +1 -1
  18. package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
  19. package/dist/es/components/BacsDD/components/BacsInput.js +1 -1
  20. package/dist/es/components/BacsDD/components/BacsInput.js.map +1 -1
  21. package/dist/es/components/BankTransfer/BankTransfer.js +1 -1
  22. package/dist/es/components/BankTransfer/BankTransfer.js.map +1 -1
  23. package/dist/es/components/BankTransfer/components/BankTransferInput/BankTransferInput.js +1 -1
  24. package/dist/es/components/BankTransfer/components/BankTransferInput/BankTransferInput.js.map +1 -1
  25. package/dist/es/components/Blik/Blik.js +1 -1
  26. package/dist/es/components/Blik/Blik.js.map +1 -1
  27. package/dist/es/components/Blik/components/BlikInput.js +1 -1
  28. package/dist/es/components/Blik/components/BlikInput.js.map +1 -1
  29. package/dist/es/components/Card/Card.js +1 -1
  30. package/dist/es/components/Card/Card.js.map +1 -1
  31. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  32. package/dist/es/components/Card/components/ClickToPayHolder.js.map +1 -1
  33. package/dist/es/components/Card/components/ClickToPayWrapper.js +1 -1
  34. package/dist/es/components/Card/components/ClickToPayWrapper.js.map +1 -1
  35. package/dist/es/components/CashAppPay/CashAppPay.js +1 -1
  36. package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
  37. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  38. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  39. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  40. package/dist/es/components/Donation/Donation.js +1 -1
  41. package/dist/es/components/Donation/Donation.js.map +1 -1
  42. package/dist/es/components/Donation/DonationCampaignService.js +1 -1
  43. package/dist/es/components/Donation/DonationCampaignService.js.map +1 -1
  44. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  45. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  46. package/dist/es/components/Dropin/Dropin.js +1 -1
  47. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  48. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  49. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
  50. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  51. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  52. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  53. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  54. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  55. package/dist/es/components/Giropay/Giropay.js +1 -1
  56. package/dist/es/components/Giropay/Giropay.js.map +1 -1
  57. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  58. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  59. package/dist/es/components/GooglePay/GooglePayService.js +1 -1
  60. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  61. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  62. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  63. package/dist/es/components/MBWay/MBWay.js +1 -1
  64. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  65. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  66. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  67. package/dist/es/components/Multibanco/Multibanco.js +1 -1
  68. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  69. package/dist/es/components/PayByBankPix/PayByBankPix.js +1 -1
  70. package/dist/es/components/PayByBankPix/PayByBankPix.js.map +1 -1
  71. package/dist/es/components/PayByBankUS/PayByBankUS.js +1 -1
  72. package/dist/es/components/PayByBankUS/PayByBankUS.js.map +1 -1
  73. package/dist/es/components/PayTo/PayTo.js +1 -1
  74. package/dist/es/components/PayTo/PayTo.js.map +1 -1
  75. package/dist/es/components/PayTo/components/BSBInput.js +1 -1
  76. package/dist/es/components/PayTo/components/BSBInput.js.map +1 -1
  77. package/dist/es/components/PayTo/components/PayToNameFields.js +1 -1
  78. package/dist/es/components/PayTo/components/PayToNameFields.js.map +1 -1
  79. package/dist/es/components/PayTo/components/PayToPhone.js +1 -1
  80. package/dist/es/components/PayTo/components/PayToPhone.js.map +1 -1
  81. package/dist/es/components/Pix/Pix.js +1 -1
  82. package/dist/es/components/Pix/Pix.js.map +1 -1
  83. package/dist/es/components/Pix/components/PixInput/PixInput.js +1 -1
  84. package/dist/es/components/Pix/components/PixInput/PixInput.js.map +1 -1
  85. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
  86. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  87. package/dist/es/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js +1 -1
  88. package/dist/es/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js.map +1 -1
  89. package/dist/es/components/Redirect/Redirect.js +1 -1
  90. package/dist/es/components/Redirect/Redirect.js.map +1 -1
  91. package/dist/es/components/Sepa/Sepa.js.map +1 -1
  92. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  93. package/dist/es/components/Trustly/Trustly.js +1 -1
  94. package/dist/es/components/Trustly/Trustly.js.map +1 -1
  95. package/dist/es/components/Twint/Twint.js +1 -1
  96. package/dist/es/components/Twint/Twint.js.map +1 -1
  97. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  98. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  99. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  100. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  101. package/dist/es/components/internal/Address/Specifications.js.map +1 -1
  102. package/dist/es/components/internal/Address/components/AddressSearch.js.map +1 -1
  103. package/dist/es/components/internal/Address/components/FieldContainer.js.map +1 -1
  104. package/dist/es/components/internal/Address/validate.formats.js +1 -1
  105. package/dist/es/components/internal/Address/validate.formats.js.map +1 -1
  106. package/dist/es/components/internal/Address/validate.js +1 -1
  107. package/dist/es/components/internal/Address/validate.js.map +1 -1
  108. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  109. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js +1 -1
  110. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  111. package/dist/es/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  112. package/dist/es/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
  113. package/dist/es/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  114. package/dist/es/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  115. package/dist/es/components/internal/IbanInput/IbanInput.js +1 -1
  116. package/dist/es/components/internal/IbanInput/IbanInput.js.map +1 -1
  117. package/dist/es/components/internal/IbanInput/validate.js +1 -1
  118. package/dist/es/components/internal/IbanInput/validate.js.map +1 -1
  119. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  120. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  121. package/dist/es/components/internal/PayButton/PayButton.js +1 -1
  122. package/dist/es/components/internal/PayButton/PayButton.js.map +1 -1
  123. package/dist/es/components/internal/PayButton/utils.js +1 -1
  124. package/dist/es/components/internal/PayButton/utils.js.map +1 -1
  125. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js +1 -1
  126. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  127. package/dist/es/components/internal/RedirectButton/RedirectButton.js +1 -1
  128. package/dist/es/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  129. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  130. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  131. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  132. package/dist/es/components/internal/UIElement/utils.js +1 -1
  133. package/dist/es/components/internal/UIElement/utils.js.map +1 -1
  134. package/dist/es/core/Analytics/constants.js +1 -1
  135. package/dist/es/core/Analytics/constants.js.map +1 -1
  136. package/dist/es/core/Analytics/events/AnalyticsLogEvent.js +1 -1
  137. package/dist/es/core/Analytics/events/AnalyticsLogEvent.js.map +1 -1
  138. package/dist/es/core/Errors/constants.js +1 -1
  139. package/dist/es/core/Errors/constants.js.map +1 -1
  140. package/dist/es/core/config.js +1 -1
  141. package/dist/es/core/config.js.map +1 -1
  142. package/dist/es/core/core.js +1 -1
  143. package/dist/es/core/core.js.map +1 -1
  144. package/dist/es/core/utils.js +1 -1
  145. package/dist/es/core/utils.js.map +1 -1
  146. package/dist/es/external/preact/compat/dist/compat.js.map +1 -1
  147. package/dist/es/external/preact/dist/preact.js +1 -1
  148. package/dist/es/external/preact/dist/preact.js.map +1 -1
  149. package/dist/es/index.d.ts +2001 -1879
  150. package/dist/es/utils/Validator/Validator.js +1 -1
  151. package/dist/es/utils/Validator/Validator.js.map +1 -1
  152. package/dist/es/utils/useForm/reducer.js +1 -1
  153. package/dist/es/utils/useForm/reducer.js.map +1 -1
  154. package/dist/es/utils/useForm/useForm.js +1 -1
  155. package/dist/es/utils/useForm/useForm.js.map +1 -1
  156. package/dist/es/utils/useForm/useFormWithA11y.js +1 -1
  157. package/dist/es/utils/useForm/useFormWithA11y.js.map +1 -1
  158. package/dist/es/utils/validator-utils.js +1 -1
  159. package/dist/es/utils/validator-utils.js.map +1 -1
  160. package/dist/es-legacy/adyen.css +17 -17
  161. package/dist/es-legacy/adyen.css.map +1 -1
  162. package/dist/es-legacy/components/ANCV/components/ANCVInput.js +1 -1
  163. package/dist/es-legacy/components/ANCV/components/ANCVInput.js.map +1 -1
  164. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  165. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  166. package/dist/es-legacy/components/Ach/components/AchComponent.js +1 -1
  167. package/dist/es-legacy/components/Ach/components/AchComponent.js.map +1 -1
  168. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  169. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  170. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  171. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  172. package/dist/es-legacy/components/BacsDD/components/BacsInput.js +1 -1
  173. package/dist/es-legacy/components/BacsDD/components/BacsInput.js.map +1 -1
  174. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  175. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  176. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/BankTransferInput.js +1 -1
  177. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/BankTransferInput.js.map +1 -1
  178. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  179. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  180. package/dist/es-legacy/components/Blik/components/BlikInput.js +1 -1
  181. package/dist/es-legacy/components/Blik/components/BlikInput.js.map +1 -1
  182. package/dist/es-legacy/components/Card/Card.js +1 -1
  183. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  184. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  185. package/dist/es-legacy/components/Card/components/ClickToPayHolder.js.map +1 -1
  186. package/dist/es-legacy/components/Card/components/ClickToPayWrapper.js +1 -1
  187. package/dist/es-legacy/components/Card/components/ClickToPayWrapper.js.map +1 -1
  188. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  189. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  190. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  191. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  192. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  193. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  194. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  195. package/dist/es-legacy/components/Donation/DonationCampaignService.js +1 -1
  196. package/dist/es-legacy/components/Donation/DonationCampaignService.js.map +1 -1
  197. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  198. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  199. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  200. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  201. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  202. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
  203. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  204. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  205. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  206. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  207. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  208. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  209. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  210. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  211. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  212. package/dist/es-legacy/components/GooglePay/GooglePayService.js +1 -1
  213. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  214. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  215. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  216. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  217. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  218. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  219. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  220. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  221. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  222. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js +1 -1
  223. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js.map +1 -1
  224. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js +1 -1
  225. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js.map +1 -1
  226. package/dist/es-legacy/components/PayTo/PayTo.js +1 -1
  227. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
  228. package/dist/es-legacy/components/PayTo/components/BSBInput.js +1 -1
  229. package/dist/es-legacy/components/PayTo/components/BSBInput.js.map +1 -1
  230. package/dist/es-legacy/components/PayTo/components/PayToNameFields.js +1 -1
  231. package/dist/es-legacy/components/PayTo/components/PayToNameFields.js.map +1 -1
  232. package/dist/es-legacy/components/PayTo/components/PayToPhone.js +1 -1
  233. package/dist/es-legacy/components/PayTo/components/PayToPhone.js.map +1 -1
  234. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  235. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  236. package/dist/es-legacy/components/Pix/components/PixInput/PixInput.js +1 -1
  237. package/dist/es-legacy/components/Pix/components/PixInput/PixInput.js.map +1 -1
  238. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
  239. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  240. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js +1 -1
  241. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js.map +1 -1
  242. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  243. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  244. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  245. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  246. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  247. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  248. package/dist/es-legacy/components/Twint/Twint.js +1 -1
  249. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  250. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  251. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  252. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  253. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  254. package/dist/es-legacy/components/internal/Address/Specifications.js.map +1 -1
  255. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js.map +1 -1
  256. package/dist/es-legacy/components/internal/Address/components/FieldContainer.js.map +1 -1
  257. package/dist/es-legacy/components/internal/Address/validate.formats.js +1 -1
  258. package/dist/es-legacy/components/internal/Address/validate.formats.js.map +1 -1
  259. package/dist/es-legacy/components/internal/Address/validate.js +1 -1
  260. package/dist/es-legacy/components/internal/Address/validate.js.map +1 -1
  261. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  262. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js +1 -1
  263. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  264. package/dist/es-legacy/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  265. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
  266. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  267. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  268. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js +1 -1
  269. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  270. package/dist/es-legacy/components/internal/IbanInput/validate.js +1 -1
  271. package/dist/es-legacy/components/internal/IbanInput/validate.js.map +1 -1
  272. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  273. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  274. package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
  275. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  276. package/dist/es-legacy/components/internal/PayButton/utils.js +1 -1
  277. package/dist/es-legacy/components/internal/PayButton/utils.js.map +1 -1
  278. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js +1 -1
  279. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  280. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js +1 -1
  281. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  282. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  283. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  284. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  285. package/dist/es-legacy/components/internal/UIElement/utils.js +1 -1
  286. package/dist/es-legacy/components/internal/UIElement/utils.js.map +1 -1
  287. package/dist/es-legacy/core/Analytics/constants.js +1 -1
  288. package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
  289. package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js +1 -1
  290. package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js.map +1 -1
  291. package/dist/es-legacy/core/Errors/constants.js +1 -1
  292. package/dist/es-legacy/core/Errors/constants.js.map +1 -1
  293. package/dist/es-legacy/core/config.js +1 -1
  294. package/dist/es-legacy/core/config.js.map +1 -1
  295. package/dist/es-legacy/core/core.js +1 -1
  296. package/dist/es-legacy/core/core.js.map +1 -1
  297. package/dist/es-legacy/core/utils.js +1 -1
  298. package/dist/es-legacy/core/utils.js.map +1 -1
  299. package/dist/es-legacy/external/preact/compat/dist/compat.js.map +1 -1
  300. package/dist/es-legacy/external/preact/dist/preact.js +1 -1
  301. package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
  302. package/dist/es-legacy/utils/Validator/Validator.js +1 -1
  303. package/dist/es-legacy/utils/Validator/Validator.js.map +1 -1
  304. package/dist/es-legacy/utils/useForm/reducer.js +1 -1
  305. package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
  306. package/dist/es-legacy/utils/useForm/useForm.js +1 -1
  307. package/dist/es-legacy/utils/useForm/useForm.js.map +1 -1
  308. package/dist/es-legacy/utils/useForm/useFormWithA11y.js +1 -1
  309. package/dist/es-legacy/utils/useForm/useFormWithA11y.js.map +1 -1
  310. package/dist/es-legacy/utils/validator-utils.js +1 -1
  311. package/dist/es-legacy/utils/validator-utils.js.map +1 -1
  312. package/package.json +22 -22
  313. package/styles/adyen.css +17 -17
@@ -1,7 +1,7 @@
1
1
  /// <reference types="applepayjs" />
2
2
  /// <reference types="googlepay" />
3
3
  import * as preact from 'preact';
4
- import { h, TargetedMouseEvent, Ref, RefObject, Component, ComponentChildren, FunctionComponent, ComponentChild, TargetedKeyboardEvent } from 'preact';
4
+ import { Component, RefObject, Ref, ComponentChildren, h, TargetedMouseEvent, ComponentChild, FunctionComponent, TargetedKeyboardEvent } from 'preact';
5
5
  import { OrderResponseBody, OnShippingAddressChangeData, OnShippingOptionsChangeData, OnInitActions } from '@paypal/paypal-js';
6
6
 
7
7
  interface ILanguageService {
@@ -118,12 +118,15 @@ interface FieldContext {
118
118
 
119
119
  type OnAddressLookupType = (value: string, actions: {
120
120
  resolve: (value: Array<AddressLookupItem>) => void;
121
- reject: (reason?: any) => void;
121
+ reject: (reason?: RejectionReason) => void;
122
122
  }) => Promise<void>;
123
123
  type OnAddressSelectedType = (value: AddressLookupItem, actions: {
124
124
  resolve: (value: AddressLookupItem) => void;
125
- reject: (reason?: any) => void;
125
+ reject: (reason?: RejectionReason) => void;
126
126
  }) => Promise<void>;
127
+ interface RejectionReason {
128
+ errorMessage: string;
129
+ }
127
130
 
128
131
  type StringObject = {
129
132
  [key: string]: string;
@@ -140,7 +143,6 @@ interface AddressProps {
140
143
  onAddressSelected?: OnAddressSelectedType;
141
144
  addressSearchDebounceMs?: number;
142
145
  requiredFields?: string[];
143
- ref?: any;
144
146
  specifications?: AddressSpecifications;
145
147
  validationRules?: ValidatorRules;
146
148
  visibility?: string;
@@ -262,1505 +264,1904 @@ interface InstallmentOptions {
262
264
  [key: string]: InstallmentOption;
263
265
  }
264
266
 
265
- type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'action' | 'link' | 'iconOnly';
266
- interface ButtonProps {
267
- status?: string;
268
- /**
269
- * Class name modifiers will be used as: `adyen-checkout__button--${modifier}`
270
- */
271
- classNameModifiers?: string[];
272
- variant?: ButtonVariant;
273
- disabled?: boolean;
274
- label?: string | h.JSX.Element;
275
- onClickCompletedLabel?: string | h.JSX.Element;
276
- id?: string;
277
- ariaLabel?: string;
278
- ariaLabelledBy?: string;
279
- ariaDescribedBy?: string;
280
- ariaExpanded?: boolean;
281
- ariaControls?: string;
282
- secondaryLabel?: string;
283
- icon?: string;
284
- onClickCompletedIcon?: string;
285
- inline?: boolean;
286
- href?: string;
287
- target?: string;
288
- rel?: string;
289
- onClick?: (e: TargetedMouseEvent<HTMLButtonElement | HTMLAnchorElement>, callbacks?: {
290
- complete?: () => void;
291
- }) => void;
292
- onKeyDown?: (event: KeyboardEvent) => void;
293
- buttonRef?: Ref<HTMLButtonElement>;
294
- onMouseEnter?: (event: MouseEvent) => void;
295
- onMouseLeave?: (event: MouseEvent) => void;
296
- onFocus?: (event: FocusEvent) => void;
297
- onBlur?: (event: FocusEvent) => void;
267
+ interface TouchStartEventObj {
268
+ fieldType: string;
269
+ name?: string;
298
270
  }
299
271
 
300
- interface PayButtonProps extends ButtonProps {
301
- /**
302
- * Class name modifiers will be used as: `adyen-checkout__image--${modifier}`
303
- */
304
- classNameModifiers?: string[];
305
- /**
306
- * Custom amount that can be passed to the button.
307
- * This is useful when the amount is not available in the amount provider, such as Giftcard scenario where
308
- * we need to display the remaining amount
309
- */
310
- customAmount?: PaymentAmount;
272
+ type PlaceholderKeys$1 = 'cardNumber' | 'securityCode' | 'expiryDate';
273
+ type Placeholders$1 = Partial<Record<PlaceholderKeys$1, string>>;
274
+ type GiftcardFieldsProps = {
275
+ setRootNode: (input: HTMLElement) => void;
276
+ i18n: Language;
277
+ pinRequired: boolean;
278
+ sfpState: SFPState;
279
+ getCardErrorMessage: any;
280
+ focusedElement: any;
281
+ setFocusOn: any;
311
282
  label?: string;
312
- status?: string;
313
- disabled?: boolean;
314
- icon?: string;
315
- }
316
-
317
- type AchForm = {
318
- selectedAccountType: string;
319
- ownerName: string;
320
- routingNumber: string;
321
- accountNumber: string;
322
- accountNumberVerification: string;
323
283
  };
324
- type AchFormPrefillData = Partial<Pick<AchForm, 'ownerName'>>;
325
284
 
326
- interface AchConfiguration extends UIElementProps {
327
- /**
328
- * Pre-fill ACH form with shopper data
329
- */
330
- data?: AchFormPrefillData;
331
- /**
332
- * Adds placeholder text to the input fields
333
- */
334
- placeholders?: AchPlaceholders;
335
- /**
336
- * Set to false to hide the "Account Holder Name" field if you want to pass the data yourself
337
- * @default true
338
- */
339
- hasHolderName?: boolean;
340
- /**
341
- * Enables storing the payment method using the Checkbox
342
- * @default false
343
- */
344
- enableStoreDetails?: boolean;
285
+ declare enum AnalyticsEventCategory {
286
+ info = "info",
287
+ error = "error",
288
+ log = "log"
289
+ }
290
+ declare abstract class AbstractAnalyticsEvent {
291
+ private readonly timestamp;
292
+ private readonly id;
345
293
  /**
346
- * storedPaymentMethodId coming from a stored ACH in /paymentMethods response
347
- * @internal
294
+ * Component tx variant or identifier
295
+ * @private
348
296
  */
349
- storedPaymentMethodId?: string;
297
+ private readonly component;
298
+ abstract getEventCategory(): AnalyticsEventCategory;
299
+ protected constructor(component: string);
300
+ }
301
+
302
+ /**
303
+ * SecuredFieldsProvider:
304
+ * Initialises & handles the client-side part of SecuredFields
305
+ */
306
+ declare class SecuredFieldsProvider extends Component<SFPProps, SFPState> {
307
+ private readonly csfLoadFailTimeout;
308
+ private readonly csfLoadFailTimeoutMS;
309
+ private readonly csfConfigFailTimeout;
310
+ private readonly csfConfigFailTimeoutMS;
311
+ private numCharsInField;
312
+ private rootNode;
313
+ private numDateFields;
314
+ private csf;
315
+ private readonly handleOnLoad;
316
+ private readonly handleOnConfigSuccess;
317
+ private readonly handleOnFieldValid;
318
+ private readonly handleOnAllValid;
319
+ private readonly handleOnBrand;
320
+ private readonly handleFocus;
321
+ private readonly handleOnError;
322
+ private readonly handleOnAutoComplete;
323
+ private readonly handleOnNoDataRequired;
324
+ private readonly handleOnTouchstartIOS;
325
+ private readonly handleKeyDown;
326
+ state: SFPState;
327
+ props: SFPProps;
328
+ private issuingCountryCode;
329
+ constructor(props: SFPProps);
330
+ static readonly defaultProps: {
331
+ type: string;
332
+ keypadFix: boolean;
333
+ rootNode: any;
334
+ loadingContext: any;
335
+ brands: any[];
336
+ showWarnings: boolean;
337
+ autoFocus: boolean;
338
+ trimTrailingSeparator: boolean;
339
+ onChange: () => void;
340
+ onLoad: () => void;
341
+ onConfigSuccess: () => void;
342
+ onAllValid: () => void;
343
+ onFieldValid: () => void;
344
+ onBrand: () => void;
345
+ onError: () => void;
346
+ onBinValue: () => void;
347
+ onFocus: () => void;
348
+ onAutoComplete: () => void;
349
+ handleKeyDown: () => void;
350
+ styles: {};
351
+ };
352
+ componentDidMount(): void;
353
+ componentDidUpdate(): void;
354
+ componentWillUnmount(): void;
355
+ private initializeCSF;
356
+ private checkForKCPFields;
357
+ getChildContext(): object;
358
+ handleUnsupportedCard(errObj: CardErrorData): boolean;
359
+ setFocusOn(frame: SFFieldType): void;
360
+ updateStyles(stylesObj: StylesObject): void;
361
+ sfIsOptionalOrHidden(fieldType: string): boolean;
362
+ destroy(): void;
363
+ getRootNode(): HTMLElement;
364
+ showValidation(): void;
350
365
  /**
351
- * bankAccountNumber coming from a stored ACH in /paymentMethods response
352
- * @internal
366
+ * Map SF errors to ValidationRuleResult-like objects, for CardInput component
353
367
  */
354
- bankAccountNumber?: string;
355
- }
356
- interface AchPlaceholders {
357
- accountTypeSelector?: string;
358
- ownerName?: string;
359
- routingNumber?: string;
360
- accountNumber?: string;
361
- accountNumberVerification?: string;
368
+ mapErrorsToValidationRuleResult(): SFStateErrorObj;
369
+ processBinLookupResponse(binLookupResponse: BinLookupResponse, resetObject: SingleBrandResetObject): void;
370
+ private readonly setRootNode;
371
+ render(props: any, state: SFPState): any;
362
372
  }
363
373
 
364
- declare const SUPPORTED_LOCALES_EU: readonly ["en_GB", "de_DE", "fr_FR", "it_IT", "es_ES"];
365
- declare const SUPPORTED_LOCALES_US: readonly ["en_US"];
366
-
367
- declare enum TxVariants {
368
- /** internal */
369
- address = "address",
370
- bankTransfer_IBAN = "bankTransfer_IBAN",
371
- bankTransfer_BE = "bankTransfer_BE",
372
- bankTransfer_NL = "bankTransfer_NL",
373
- bankTransfer_PL = "bankTransfer_PL",
374
- bankTransfer_FR = "bankTransfer_FR",
375
- bankTransfer_CH = "bankTransfer_CH",
376
- bankTransfer_IE = "bankTransfer_IE",
377
- bankTransfer_GB = "bankTransfer_GB",
378
- bankTransfer_DE = "bankTransfer_DE",
379
- bankTransfer_AE = "bankTransfer_AE",
380
- bankTransfer_AT = "bankTransfer_AT",
381
- bankTransfer_AU = "bankTransfer_AU",
382
- bankTransfer_BG = "bankTransfer_BG",
383
- bankTransfer_CA = "bankTransfer_CA",
384
- bankTransfer_EE = "bankTransfer_EE",
385
- bankTransfer_ES = "bankTransfer_ES",
386
- bankTransfer_FI = "bankTransfer_FI",
387
- bankTransfer_HK = "bankTransfer_HK",
388
- bankTransfer_HU = "bankTransfer_HU",
389
- bankTransfer_IT = "bankTransfer_IT",
390
- bankTransfer_JP = "bankTransfer_JP",
391
- bankTransfer_LU = "bankTransfer_LU",
392
- bankTransfer_NZ = "bankTransfer_NZ",
393
- bankTransfer_PT = "bankTransfer_PT",
394
- bankTransfer_SG = "bankTransfer_SG",
395
- bankTransfer_SK = "bankTransfer_SK",
396
- bankTransfer_US = "bankTransfer_US",
397
- donation = "donation",
398
- personal_details = "personal_details",
399
- dropin = "dropin",
400
- /** internal */
401
- /** Card */
402
- bcmc = "bcmc",
403
- card = "card",
404
- scheme = "scheme",
405
- storedCard = "storedCard",
406
- customCard = "customcard",
407
- /** Card */
408
- /** ThreeDS */
409
- threeDS2Challenge = "threeDS2Challenge",
410
- threeDS2Fingerprint = "threeDS2Fingerprint",
411
- threeDS2DeviceFingerprint = "threeDS2DeviceFingerprint",
412
- /** ThreeDS */
413
- /** Direct debit */
414
- ach = "ach",
415
- directdebit_GB = "directdebit_GB",
416
- sepadirectdebit = "sepadirectdebit",
417
- eft_directdebit_CA = "eft_directdebit_CA",
418
- /** Direct debit */
419
- /** Open Invoice */
420
- affirm = "affirm",
421
- afterpay = "afterpay",
422
- afterpay_default = "afterpay_default",
423
- afterpay_b2b = "afterpay_b2b",
424
- atome = "atome",
425
- facilypay_3x = "facilypay_3x",
426
- facilypay_4x = "facilypay_4x",
427
- facilypay_6x = "facilypay_6x",
428
- facilypay_10x = "facilypay_10x",
429
- facilypay_12x = "facilypay_12x",
430
- ratepay = "ratepay",
431
- ratepay_directdebit = "ratepay_directdebit",
432
- /** Open Invoice */
433
- /** Wallets */
434
- amazonpay = "amazonpay",
435
- applepay = "applepay",
436
- cashapp = "cashapp",
437
- clicktopay = "clicktopay",
438
- googlepay = "googlepay",
439
- paypal = "paypal",
440
- fastlane = "fastlane",
441
- paywithgoogle = "paywithgoogle",
442
- /** Wallets */
443
- /** Voucher */
444
- boletobancario = "boletobancario",
445
- boletobancario_itau = "boletobancario_itau",
446
- boletobancario_santander = "boletobancario_santander",
447
- primeiropay_boleto = "primeiropay_boleto",
448
- doku = "doku",
449
- doku_alfamart = "doku_alfamart",
450
- doku_permata_lite_atm = "doku_permata_lite_atm",
451
- doku_indomaret = "doku_indomaret",
452
- doku_atm_mandiri_va = "doku_atm_mandiri_va",
453
- doku_sinarmas_va = "doku_sinarmas_va",
454
- doku_mandiri_va = "doku_mandiri_va",
455
- doku_cimb_va = "doku_cimb_va",
456
- doku_danamon_va = "doku_danamon_va",
457
- doku_bri_va = "doku_bri_va",
458
- doku_bni_va = "doku_bni_va",
459
- doku_bca_va = "doku_bca_va",
460
- doku_wallet = "doku_wallet",
461
- oxxo = "oxxo",
462
- /** Voucher */
463
- /** issuerList */
464
- billdesk_online = "billdesk_online",
465
- billdesk_wallet = "billdesk_wallet",
466
- dotpay = "dotpay",
467
- eps = "eps",
468
- iris = "iris",
469
- molpay_ebanking_fpx_MY = "molpay_ebanking_fpx_MY",
470
- molpay_ebanking_TH = "molpay_ebanking_TH",
471
- molpay_ebanking_VN = "molpay_ebanking_VN",
472
- onlineBanking_CZ = "onlineBanking_CZ",
473
- onlinebanking_IN = "onlinebanking_IN",
474
- onlineBanking_PL = "onlineBanking_PL",
475
- onlineBanking_SK = "onlineBanking_SK",
476
- paybybank = "paybybank",
477
- payu_IN_cashcard = "payu_IN_cashcard",
478
- payu_IN_nb = "payu_IN_nb",
479
- wallet_IN = "wallet_IN",
480
- /** issuerList */
481
- /** Dragonpay */
482
- dragonpay = "dragonpay",
483
- dragonpay_ebanking = "dragonpay_ebanking",
484
- dragonpay_otc_banking = "dragonpay_otc_banking",
485
- dragonpay_otc_non_banking = "dragonpay_otc_non_banking",
486
- dragonpay_otc_philippines = "dragonpay_otc_philippines",
487
- /** Dragonpay */
488
- /** Econtext */
489
- econtext = "econtext",
490
- econtext_atm = "econtext_atm",
491
- econtext_online = "econtext_online",
492
- econtext_seven_eleven = "econtext_seven_eleven",
493
- econtext_stores = "econtext_stores",
494
- /** Econtext */
495
- /** Redirect */
496
- giropay = "giropay",
497
- multibanco = "multibanco",
498
- redirect = "redirect",
499
- twint = "twint",
500
- vipps = "vipps",
501
- trustly = "trustly",
502
- paybybank_AIS_DD = "paybybank_AIS_DD",
503
- riverty = "riverty",
504
- paybybank_pix = "paybybank_pix",
505
- /** Redirect */
506
- /** Klarna */
507
- klarna = "klarna",
508
- klarna_account = "klarna_account",
509
- klarna_paynow = "klarna_paynow",
510
- klarna_b2b = "klarna_b2b",
511
- /** Klarna */
512
- /** QRLoader */
513
- bcmc_mobile = "bcmc_mobile",
514
- bcmc_mobile_QR = "bcmc_mobile_QR",
515
- pix = "pix",
516
- swish = "swish",
517
- wechatpay = "wechatpay",
518
- wechatpayQR = "wechatpayQR",
519
- promptpay = "promptpay",
520
- paynow = "paynow",
521
- duitnow = "duitnow",
522
- /** QRLoader */
523
- /** Await */
524
- blik = "blik",
525
- mbway = "mbway",
526
- ancv = "ancv",
527
- payto = "payto",
528
- upi = "upi",// also QR
529
- upi_qr = "upi_qr",// also QR
530
- upi_intent = "upi_intent",// also QR
531
- /** Await */
532
- /** Giftcard */
533
- giftcard = "giftcard",
534
- mealVoucher_FR = "mealVoucher_FR",
535
- mealVoucher_FR_natixis = "mealVoucher_FR_natixis",
536
- mealVoucher_FR_sodexo = "mealVoucher_FR_sodexo",
537
- mealVoucher_FR_groupeup = "mealVoucher_FR_groupeup"
538
- /** Giftcard */
374
+ type Placeholders = CardPlaceholders | Placeholders$1;
375
+ /**
376
+ * Should be the only props that can be sent to SFP (from CardInput, SecuredFieldsInput, GiftcardComponent)
377
+ */
378
+ interface SFPProps {
379
+ ref?: Ref<SecuredFieldsProvider>;
380
+ autoFocus?: boolean;
381
+ brands?: string[];
382
+ brandsConfiguration?: CardBrandsConfiguration;
383
+ clientKey: string;
384
+ componentType: string;
385
+ countryCode?: string;
386
+ forceCompat?: boolean;
387
+ hasKoreanFields?: boolean;
388
+ i18n?: Language;
389
+ implementationType?: 'components' | 'custom';
390
+ keypadFix?: boolean;
391
+ koreanAuthenticationRequired?: boolean;
392
+ legacyInputMode?: boolean;
393
+ loadingContext: string;
394
+ minimumExpiryDate?: string;
395
+ onAdditionalSFConfig?: () => void;
396
+ onAdditionalSFRemoved?: () => void;
397
+ onAllValid?: (obj: CardAllValidData) => void;
398
+ onAutoComplete?: (obj: CardAutoCompleteData) => void;
399
+ onBinValue?: (obj: CardBinValueData) => void;
400
+ onBrand?: (obj: CardBrandData) => void;
401
+ onChange?: (state: SFPState, eventDetails?: OnChangeEventDetails) => void;
402
+ onConfigSuccess?: (cbObj: CardConfigSuccessData) => void;
403
+ onError?: (error: AdyenCheckoutError) => void;
404
+ onFieldValid?: (fieldObj: CardFieldValidData) => void;
405
+ onFocus?: (obj: CardFocusData) => void;
406
+ onLoad?: (cbObj: CardLoadData) => void;
407
+ onStateUpdate?: (obj: SFPState) => void;
408
+ onSubmitAnalytics?: (event: AbstractAnalyticsEvent) => void;
409
+ handleKeyDown?: (event: KeyboardEvent) => void;
410
+ rootNode?: HTMLElement;
411
+ showWarnings?: boolean;
412
+ styles?: StylesObject;
413
+ trimTrailingSeparator?: boolean;
414
+ type: string;
415
+ render?: (helpers: {
416
+ setRootNode: (input: HTMLElement) => void;
417
+ setFocusOn: (fieldName: string) => void;
418
+ }, state: SFPState) => ComponentChildren;
419
+ resources?: Resources;
420
+ maskSecurityCode?: boolean;
421
+ exposeExpiryDate?: boolean;
422
+ disableIOSArrowKeys?: (obj: TouchStartEventObj) => void | null;
423
+ placeholders?: Placeholders;
424
+ showContextualElement?: boolean;
425
+ }
426
+ type SFPErrorMap = Partial<Record<SFFieldType, string>>;
427
+ interface SFPState {
428
+ status?: string;
429
+ brand?: string;
430
+ errors?: SFPErrorMap;
431
+ valid: SFPValid;
432
+ data: object;
433
+ cvcPolicy?: CVCPolicyType;
434
+ isSfpValid?: boolean;
435
+ autoCompleteName?: string;
436
+ billingAddress?: AddressData;
437
+ detectedUnsupportedBrands?: string[];
438
+ hasKoreanFields?: boolean;
439
+ showSocialSecurityNumber?: boolean;
440
+ expiryDatePolicy?: DatePolicyType;
441
+ socialSecurityNumber?: string;
539
442
  }
443
+ interface SingleBrandResetObject {
444
+ brand: string;
445
+ cvcPolicy: CVCPolicyType;
446
+ }
447
+ interface SFPValid {
448
+ encryptedCardNumber?: boolean;
449
+ encryptedExpiryMonth?: boolean;
450
+ encryptedExpiryYear?: boolean;
451
+ encryptedSecurityCode?: boolean;
452
+ encryptedPassword?: boolean;
453
+ encryptedPin?: boolean;
454
+ }
455
+ interface OnChangeEventDetails {
456
+ event: string;
457
+ fieldType?: string;
458
+ }
459
+ type SecuredFieldsProviderRef = RefObject<SecuredFieldsProvider>;
540
460
 
541
- declare class AmazonPayElement extends UIElement<AmazonPayConfiguration> {
542
- static readonly type = TxVariants.amazonpay;
543
- protected static readonly defaultProps: Partial<AmazonPayConfiguration>;
544
- formatProps(props: any): any;
545
- /**
546
- * Formats the component data output
547
- */
548
- formatData(): AmazonPayElementData;
549
- protected beforeRender(configSetByMerchant?: AmazonPayConfiguration): void;
550
- getShopperDetails(): void | Promise<{
551
- declineFlowUrl?: string;
552
- } & Record<string, unknown>>;
553
- handleDeclineFlow(): void;
554
- get isValid(): boolean;
555
- get browserInfo(): BrowserInfo;
556
- submit(): void;
557
- protected componentToRender(): h.JSX.Element;
461
+ /** A list of all the data-cse attributes that relate to securedFields (as found in card, giftcard) */
462
+ declare const ALL_SECURED_FIELDS: readonly ["encryptedCardNumber", "encryptedExpiryDate", "encryptedExpiryMonth", "encryptedExpiryYear", "encryptedSecurityCode", "encryptedPassword"];
463
+ declare const REQUIRED = "required";
464
+ declare const OPTIONAL = "optional";
465
+ declare const HIDDEN = "hidden";
466
+ declare const BEST_GUESS_MODE = "best-guess";
467
+ declare const BIN_LOOKUP_MODE = "bin-lookup";
468
+
469
+ declare global {
470
+ interface Window {
471
+ _b$dl: boolean;
472
+ mockBinCount: number;
473
+ }
474
+ }
475
+ type SFFieldType = (typeof ALL_SECURED_FIELDS)[number];
476
+ type BrandModeType = typeof BIN_LOOKUP_MODE | typeof BEST_GUESS_MODE;
477
+ interface StylesObject {
478
+ base?: StyleDefinitions;
479
+ error?: StyleDefinitions;
480
+ validated?: StyleDefinitions;
481
+ placeholder?: StyleDefinitions;
482
+ }
483
+ interface StyleDefinitions {
484
+ background?: string;
485
+ caretColor?: string;
486
+ color?: string;
487
+ display?: string;
488
+ font?: string;
489
+ fontFamily?: string;
490
+ fontSize?: string;
491
+ fontSizeAdjust?: string;
492
+ fontSmoothing?: string;
493
+ fontStretch?: string;
494
+ fontStyle?: string;
495
+ fontVariant?: string;
496
+ fontVariantAlternates?: string;
497
+ fontVariantCaps?: string;
498
+ fontVariantEastAsian?: string;
499
+ fontVariantLigatures?: string;
500
+ fontVariantNumeric?: string;
501
+ fontWeight?: string;
502
+ letterSpacing?: string;
503
+ lineHeight?: string;
504
+ mozOsxFontSmoothing?: string;
505
+ mozTransition?: string;
506
+ outline?: string;
507
+ opacity?: string;
508
+ padding?: string;
509
+ textAlign?: string;
510
+ textShadow?: string;
511
+ transition?: string;
512
+ webkitFontSmoothing?: string;
513
+ webkitTransition?: string;
514
+ wordSpacing?: string;
515
+ }
516
+ interface CardAllValidData {
517
+ type: string;
518
+ allValid: boolean;
519
+ rootNode: HTMLElement;
558
520
  }
559
-
560
- type ButtonColor = 'Gold' | 'LightGray' | 'DarkGray';
561
- type Placement = 'Home' | 'Product' | 'Cart' | 'Checkout' | 'Other';
562
- type ProductType = 'PayOnly' | 'PayAndShip';
563
- type ChargePermissionType = 'OneTime' | 'Recurring';
564
- type FrequencyUnit = 'Year' | 'Month' | 'Week' | 'Day' | 'Variable';
565
- type Currency = 'EUR' | 'GBP' | 'USD';
566
- type Region = 'EU' | 'UK' | 'US';
567
- type SupportedLocale = (typeof SUPPORTED_LOCALES_EU)[number] | (typeof SUPPORTED_LOCALES_US)[number];
568
- interface AmazonPayButtonInstance {
569
- onClick(handler: () => void): void;
521
+ interface CardAutoCompleteData {
522
+ fieldType: string;
523
+ name: string;
524
+ value: string;
525
+ action: string;
570
526
  }
571
- interface AmazonWindowObject {
572
- Pay: {
573
- renderButton(selector: string, settings: AmazonPayButtonSettings): AmazonPayButtonInstance;
574
- initCheckout(options: AmazonPayButtonSettings & {
575
- createCheckoutSessionConfig: CheckoutSessionConfig;
576
- }): void;
577
- signout(): void;
578
- bindChangeAction(selector: string, options: ChangeActionOptions): void;
579
- };
527
+ interface CardBinLookupData {
528
+ type?: string;
529
+ detectedBrands?: string[] | null;
530
+ supportedBrands?: string[] | null;
531
+ brands?: string[];
532
+ issuingCountryCode?: string;
533
+ healthcare?: Record<string, boolean>[];
534
+ supportedBrandsRaw?: BrandObject[];
535
+ rootNode?: HTMLElement;
536
+ isReset?: boolean;
537
+ dualBrandingType?: string;
538
+ paymentMethodVariants?: (string | undefined)[];
580
539
  }
581
- interface RecurringMetadata {
582
- frequency: {
583
- unit: string;
584
- value: FrequencyUnit;
585
- };
586
- amount: {
587
- amount: string;
588
- currencyCode: Currency;
589
- };
540
+ interface CardBinValueData {
541
+ type: string;
542
+ binValue: string;
543
+ uuid?: string;
544
+ encryptedBin?: string;
590
545
  }
591
- interface AmazonPayBackendConfiguration {
592
- merchantId?: string;
593
- publicKeyId?: string;
594
- region?: Region;
595
- storeId?: string;
546
+ interface CardBrandData {
547
+ type: string;
548
+ rootNode: HTMLElement;
549
+ brand: string;
550
+ cvcPolicy: CVCPolicyType;
551
+ expiryDatePolicy?: DatePolicyType;
552
+ cvcText: string;
553
+ showSocialSecurityNumber?: boolean;
554
+ brandImageUrl?: string;
555
+ mode?: BrandModeType;
596
556
  }
597
- interface AmazonPayConfiguration extends UIElementProps {
598
- addressDetails?: AddressDetails;
599
- amazonPayToken?: string;
600
- amazonCheckoutSessionId?: string;
601
- amount?: PaymentAmount;
602
- buttonColor?: ButtonColor;
603
- cancelUrl?: string;
604
- chargePermissionType?: ChargePermissionType;
605
- clientKey?: string;
606
- configuration?: AmazonPayBackendConfiguration;
607
- currency?: Currency;
608
- deliverySpecifications?: DeliverySpecifications;
609
- design?: string;
610
- environment?: string;
611
- loadingContext?: string;
612
- locale?: string;
613
- merchantMetadata?: MerchantMetadata;
614
- onSubmit?(state: SubmitData, element: AmazonPayElement, actions: {
615
- resolve: (response: CheckoutAdvancedFlowResponse) => void;
616
- reject: () => void;
617
- }): void;
618
- payButton?: (props: PayButtonProps) => h.JSX.Element;
619
- placement?: Placement;
620
- productType?: ProductType;
621
- recurringMetadata?: RecurringMetadata;
622
- returnUrl?: string;
623
- showChangePaymentDetailsButton?: boolean;
624
- showOrderButton?: boolean;
625
- showSignOutButton?: boolean;
626
- signature?: string;
627
- onClick?: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
628
- onError?: (error: AdyenCheckoutError, component: UIElement) => void;
629
- onSignOut?: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
630
- /**
631
- * Used for analytics
632
- */
633
- expressPage?: 'cart' | 'minicart' | 'pdp' | 'checkout';
634
- /**
635
- * Used for analytics
636
- * @defaultValue false
637
- */
638
- isExpress?: boolean;
557
+ interface CardConfigSuccessData {
558
+ iframesConfigured: boolean;
559
+ type: string;
560
+ rootNode: HTMLElement;
639
561
  }
640
- interface AmazonPayComponentProps extends AmazonPayConfiguration {
641
- showSignOutButton?: boolean;
642
- amazonCheckoutSessionId?: string;
643
- showOrderButton?: boolean;
644
- showChangePaymentDetailsButton?: boolean;
645
- setComponentRef: (ref: ComponentMethodsRef & {
646
- getSubmitFunction?: () => () => void;
647
- }) => void;
562
+ interface CardErrorData {
563
+ fieldType: string;
564
+ error: string;
565
+ type: string;
566
+ rootNode?: HTMLElement;
567
+ detectedBrands?: string[];
568
+ errorI18n?: string;
569
+ errorText?: string;
648
570
  }
649
- interface AmazonPayButtonProps {
650
- amazonRef: AmazonWindowObject;
651
- buttonColor?: ButtonColor;
652
- cancelUrl?: string;
653
- chargePermissionType?: ChargePermissionType;
654
- clientKey?: string;
655
- configuration?: AmazonPayBackendConfiguration;
656
- currency?: Currency;
657
- deliverySpecifications?: DeliverySpecifications;
658
- design?: string;
659
- environment?: string;
660
- locale?: string;
661
- onClick: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
662
- onError?: (error: AdyenCheckoutError, component: UIElement) => void;
663
- placement?: Placement;
664
- productType?: ProductType;
665
- recurringMetadata?: RecurringMetadata;
666
- ref: RefObject<{
667
- initCheckout(): void;
668
- }>;
669
- returnUrl?: string;
670
- showPayButton: boolean;
571
+ interface CardFieldValidData {
572
+ fieldType: string;
573
+ encryptedFieldName: string;
574
+ uid: string;
575
+ valid: boolean;
576
+ type: string;
577
+ rootNode: HTMLElement;
578
+ blob?: string;
579
+ endDigits?: string;
580
+ expiryDate?: string;
581
+ issuerBin?: number;
671
582
  }
672
- interface SignOutButtonProps {
673
- amazonRef: AmazonWindowObject;
674
- onSignOut: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
583
+ interface CardFocusData {
584
+ action: string;
585
+ focus: boolean;
586
+ numChars: number;
587
+ fieldType: string;
588
+ rootNode: HTMLElement;
589
+ type: string;
590
+ currentFocusObject: string;
675
591
  }
676
- interface ChangePaymentDetailsButtonProps {
677
- amazonCheckoutSessionId: string;
678
- amazonRef: AmazonWindowObject;
592
+ interface CardLoadData {
593
+ iframesLoaded: boolean;
679
594
  }
680
- interface ChangeActionOptions {
681
- amazonCheckoutSessionId: string;
682
- changeAction: 'changeAddress' | 'changePayment';
595
+ type CVCPolicyType = typeof REQUIRED | typeof OPTIONAL | typeof HIDDEN;
596
+ type DatePolicyType = typeof REQUIRED | typeof OPTIONAL | typeof HIDDEN;
597
+ interface BrandConfiguration {
598
+ name?: string;
599
+ icon?: string;
683
600
  }
684
- interface OrderButtonProps {
685
- amazonCheckoutSessionId: string;
686
- clientKey: string;
687
- chargePermissionType?: ChargePermissionType;
688
- onError: (error: AdyenCheckoutError, component: UIElement) => void;
689
- recurringMetadata: RecurringMetadata;
690
- ref: RefObject<{
691
- createOrder(): void;
692
- }>;
693
- region: Region;
694
- returnUrl: string;
695
- publicKeyId: string;
601
+ interface CardBrandsConfiguration {
602
+ [key: string]: BrandConfiguration;
696
603
  }
697
- interface AmazonPayElementData {
698
- paymentMethod: {
699
- type: string;
700
- checkoutSessionId?: string;
604
+
605
+ interface RiskModuleOptions {
606
+ enabled: boolean;
607
+ onComplete?: (data: any) => void;
608
+ onError?: (error: any) => void;
609
+ node?: string;
610
+ }
611
+ interface RiskModuleProps extends BaseElementProps {
612
+ risk: RiskModuleOptions;
613
+ loadingContext: string;
614
+ }
615
+ declare class RiskElement extends BaseElement<RiskModuleProps> {
616
+ static readonly type = "risk";
617
+ static readonly defaultProps: {
618
+ risk: {
619
+ enabled: boolean;
620
+ onComplete: () => void;
621
+ onError: () => void;
622
+ node: string;
623
+ };
701
624
  };
702
- browserInfo: BrowserInfo;
625
+ private nodeRiskContainer;
626
+ constructor(checkout: ICore, props?: any);
627
+ formatProps(props: any): any;
628
+ onComplete: (result: any) => void;
629
+ onError: (error: any) => void;
630
+ get isValid(): any;
631
+ get data(): any;
632
+ get enabled(): boolean;
633
+ cleanUp: () => void;
634
+ componentWillUnmount(): void;
635
+ render(): h.JSX.Element;
703
636
  }
704
- interface AmazonPayButtonSettings {
705
- buttonColor?: ButtonColor;
706
- design?: string;
707
- /**
708
- * Amazon Pay merchant account identifier
709
- */
710
- merchantId: string;
711
- /**
712
- * Sets button to Sandbox environment
713
- */
714
- sandbox: boolean;
715
- /**
716
- * Product type selected for checkout
717
- */
718
- productType: ProductType;
719
- /**
720
- * Placement of the Amazon Pay button on your website
721
- */
722
- placement: Placement;
637
+
638
+ interface DisclaimerMsgObject {
639
+ message: string;
640
+ linkText: string;
641
+ link: string;
642
+ }
643
+
644
+ interface AnalyticsOptions {
723
645
  /**
724
- * Language used to render the button and text on Amazon Pay hosted pages. Please note that supported language(s) is dependent on the region that your Amazon Pay account was registered for
646
+ * Enable/Disable all analytics
725
647
  */
726
- checkoutLanguage: SupportedLocale;
648
+ enabled?: boolean;
727
649
  /**
728
- * Ledger currency provided during registration for the given merchant identifier
650
+ * A wrapper to pass data needed when analytics is setup
729
651
  */
730
- ledgerCurrency: Currency;
652
+ analyticsData?: {
653
+ /**
654
+ * Relates to PMs used within Plugins
655
+ * https://docs.adyen.com/development-resources/application-information/?tab=integrator_built_2#application-information-fields
656
+ * @internal
657
+ */
658
+ applicationInfo?: ApplicationInfo;
659
+ /**
660
+ * Use a checkoutAttemptId from a previous page
661
+ */
662
+ checkoutAttemptId?: string;
663
+ };
731
664
  }
732
- interface MerchantMetadata {
733
- customInformation?: string;
734
- merchantReferenceId?: string;
735
- merchantStoreName?: string;
736
- noteToBuyer?: string;
665
+ interface ApplicationInfo {
666
+ externalPlatform: {
667
+ name: string;
668
+ version: string;
669
+ integrator: string;
670
+ };
671
+ merchantApplication: {
672
+ name: string;
673
+ version: string;
674
+ };
675
+ merchantDevice?: {
676
+ os: string;
677
+ osVersion: string;
678
+ };
737
679
  }
738
- interface AddressDetails {
739
- name?: string;
740
- addressLine1?: string;
741
- addressLine2?: string;
742
- addressLine3?: string;
743
- city?: string;
744
- districtOrCounty?: string;
745
- stateOrRegion?: string;
746
- postalCode?: string;
747
- countryCode?: string;
748
- phoneNumber?: string;
680
+
681
+ /**
682
+ * PayPal Fastlane Reference:
683
+ * https://developer.paypal.com/docs/checkout/fastlane/reference/#link-customizeyourintegration
684
+ */
685
+ /**
686
+ * Fastlane object available in the window
687
+ */
688
+ interface FastlaneWindowInstance {
689
+ identity: {
690
+ lookupCustomerByEmail: (email: string) => Promise<{
691
+ customerContextId: string;
692
+ }>;
693
+ triggerAuthenticationFlow: (customerContextId: string, options?: AuthenticationFlowOptions) => Promise<FastlaneAuthenticatedCustomerResult>;
694
+ getSession: () => Promise<{
695
+ sessionId: string;
696
+ }>;
697
+ };
698
+ profile: {
699
+ showShippingAddressSelector: () => Promise<FastlaneShippingAddressSelectorResult>;
700
+ };
701
+ setLocale: (locale: string) => void;
702
+ ConsentComponent: () => Promise<{
703
+ getRenderState: () => Promise<FastlaneConsentRenderState>;
704
+ }>;
705
+ FastlaneWatermarkComponent: (options: {
706
+ includeAdditionalInfo: boolean;
707
+ }) => Promise<{
708
+ render: (container: any) => null;
709
+ }>;
749
710
  }
750
- interface ChargeAmount {
751
- amount: string;
752
- currencyCode: Currency;
711
+ interface FastlaneConsentRenderState {
712
+ showConsent: boolean;
713
+ defaultToggleState?: boolean;
714
+ termsAndConditionsLink?: string;
715
+ termsAndConditionsVersion?: string;
716
+ privacyPolicyLink?: string;
753
717
  }
754
- type LedgerCurrencies = {
755
- [key in Region]: Currency;
756
- };
757
- interface PayloadJSON {
758
- addressDetails?: AddressDetails;
759
- chargePermissionType?: ChargePermissionType;
760
- deliverySpecifications?: DeliverySpecifications;
761
- merchantMetadata?: MerchantMetadata;
762
- paymentDetails?: {
763
- chargeAmount: ChargeAmount;
764
- paymentIntent: 'Confirm';
765
- presentmentCurrency: Currency;
766
- totalOrderAmount: ChargeAmount;
767
- };
768
- recurringMetadata?: RecurringMetadata;
769
- storeId: string;
770
- webCheckoutDetails: {
771
- checkoutCancelUrl?: string;
772
- checkoutMode?: 'ProcessOrder';
773
- checkoutResultReturnUrl?: string;
774
- checkoutReviewReturnUrl?: string;
718
+ interface FastlaneOptions {
719
+ intendedExperience: 'externalProcessorCustomConsent';
720
+ metadata?: {
721
+ geoLocOverride?: string;
775
722
  };
776
723
  }
777
- interface CheckoutDetailsRequest {
778
- checkoutSessionId: string;
779
- getDeliveryAddress?: boolean;
780
- getDeclineFlowUrl?: boolean;
781
- publicKeyId: string;
782
- region: Region;
724
+ interface AuthenticationFlowOptions {
783
725
  }
784
- interface UpdateAmazonCheckoutSessionRequest {
785
- amount: PaymentAmount;
786
- chargePermissionType?: ChargePermissionType;
787
- checkoutCancelUrl?: string;
788
- checkoutResultReturnUrl: string;
789
- checkoutSessionId: string;
790
- publicKeyId: string;
791
- recurringMetadata?: RecurringMetadata;
792
- region: Region;
726
+ interface CardPaymentSource {
727
+ brand: string;
728
+ expiry: string;
729
+ lastDigits: string;
730
+ name: string;
731
+ billingAddress: FastlaneAddress;
793
732
  }
794
- interface CheckoutSessionConfig {
795
- payloadJSON: string;
796
- signature: string;
797
- publicKeyId: string;
733
+ /**
734
+ * External types
735
+ */
736
+ interface FastlaneShippingAddressSelectorResult {
737
+ selectionChanged: boolean;
738
+ selectedAddress: FastlaneShipping;
798
739
  }
799
- interface DeliverySpecifications {
800
- specialRestrictions?: string[];
801
- addressRestrictions?: AddressRestrictions;
740
+ interface FastlaneAuthenticatedCustomerSucceeded {
741
+ authenticationState: 'succeeded';
742
+ profileData: FastlaneProfile;
802
743
  }
803
- interface AddressRestrictions {
804
- type?: 'Allowed' | 'NotAllowed';
805
- restrictions?: Restrictions;
744
+ interface FastlaneAuthenticatedCustomerFailed {
745
+ authenticationState: 'failed' | 'canceled' | 'not_found';
746
+ profileData: undefined;
806
747
  }
807
- interface Restrictions {
808
- [key: string]: {
809
- zipCodes?: string[];
810
- statesOrRegions?: string[];
748
+ type FastlaneAuthenticatedCustomerResult = FastlaneAuthenticatedCustomerSucceeded | FastlaneAuthenticatedCustomerFailed;
749
+ interface FastlaneAddress {
750
+ addressLine1: string;
751
+ addressLine2: string;
752
+ adminArea1: string;
753
+ adminArea2: string;
754
+ postalCode: string;
755
+ countryCode: string;
756
+ phone: {
757
+ nationalNumber: string;
758
+ countryCode: string;
811
759
  };
812
760
  }
813
-
814
- interface ANCVConfiguration extends UIElementProps {
815
- paymentData?: string;
816
- data: ANCVDataState;
817
- onOrderRequest?: onOrderRequestCallbackType;
818
- onOrderUpdated?: onOrderUpdatedCallbackType;
761
+ interface FastlaneShipping {
762
+ name: {
763
+ firstName: string;
764
+ lastName: string;
765
+ fullName: string;
766
+ };
767
+ address: FastlaneAddress;
768
+ phoneNumber: {
769
+ nationalNumber: string;
770
+ countryCode: string;
771
+ };
819
772
  }
820
- interface ANCVDataState {
821
- beneficiaryId: string;
773
+ interface FastlaneProfile {
774
+ name: {
775
+ firstName: string;
776
+ lastName: string;
777
+ fullName: string;
778
+ };
779
+ shippingAddress: FastlaneShipping;
780
+ card?: {
781
+ id: string;
782
+ paymentSource: {
783
+ card: CardPaymentSource;
784
+ };
785
+ };
822
786
  }
823
-
824
- type Initiative = 'web' | 'messaging';
825
- type ApplePayPaymentOrderDetails = {
826
- orderTypeIdentifier: string;
827
- orderIdentifier: string;
828
- webServiceURL: string;
829
- authenticationToken: string;
830
- };
831
- type ApplePayPaymentAuthorizationResult = ApplePayJS.ApplePayPaymentAuthorizationResult & {
832
- orderDetails?: ApplePayPaymentOrderDetails;
833
- };
834
- type ApplePayButtonType = 'add-money' | 'book' | 'buy' | 'check-out' | 'continue' | 'contribute' | 'donate' | 'order' | 'pay' | 'plain' | 'reload' | 'rent' | 'set-up' | 'subscribe' | 'support' | 'tip' | 'top-up';
835
- type ApplePayButtonStyle = 'black' | 'white' | 'white-outline';
836
- interface ApplePayConfiguration extends UIElementProps {
837
- /**
838
- * Enables the ApplePay Express Flow & also used for analytics
839
- * @defaultValue false
840
- */
841
- isExpress?: boolean;
842
- /**
843
- * Used for analytics
844
- */
845
- expressPage?: 'cart' | 'minicart' | 'pdp' | 'checkout';
846
- /**
847
- * The Apple Pay version number your website supports.
848
- * @default highest supported version by the shopper device
849
- * @see {@link https://developer.apple.com/documentation/applepayontheweb/apple-pay-on-the-web-version-history Apple Pay on the Web Version History}
850
- */
851
- version?: number;
852
- /**
853
- * Part of the 'ApplePayLineItem' object, which sets the label of the payment request
854
- * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaylineitem ApplePayLineItem docs}
855
- */
856
- totalPriceLabel?: string;
857
- /**
858
- * @default 'final'
859
- */
860
- totalPriceStatus?: ApplePayJS.ApplePayLineItemType;
861
- /**
862
- * ApplePay configuration sent by the /paymentMethods response
863
- */
864
- configuration?: {
865
- merchantName?: string;
866
- merchantId?: string;
787
+ type FastlaneComponentConfiguration = {
788
+ paymentType: 'fastlane';
789
+ configuration: {
790
+ fastlaneSessionId: string;
791
+ email: string;
792
+ tokenId: string;
793
+ lastFour: string;
794
+ brand: string;
795
+ };
796
+ };
797
+ type FastlaneCardComponentConfiguration = {
798
+ paymentType: 'card';
799
+ configuration: {
800
+ fastlaneConfiguration?: FastlaneSignupConfiguration;
867
801
  };
802
+ };
803
+ type FastlaneSignupConfiguration = FastlaneConsentRenderState & {
804
+ fastlaneSessionId?: string;
805
+ telephoneNumber?: string;
806
+ };
807
+ interface FastlaneData {
808
+ consentShown: boolean;
809
+ fastlaneSessionId: string;
810
+ consentGiven: boolean;
811
+ consentVersion?: string;
812
+ telephoneNumber?: string;
813
+ }
814
+ type FastlanePaymentMethodConfiguration = FastlaneComponentConfiguration | FastlaneCardComponentConfiguration;
815
+ interface FastlaneSDKConfiguration {
816
+ clientKey: string;
817
+ environment: CoreConfiguration['environment'];
818
+ locale?: 'en-US' | 'es-US' | 'fr-RS' | 'zh-US';
819
+ analytics?: Pick<AnalyticsOptions, 'enabled'>;
868
820
  /**
869
- * Used to override the domain name for the Apple Pay button. Useful when using ApplePay within cross-domain iframe
870
- * For more context: https://github.com/Adyen/adyen-web/pull/3340
821
+ * Used to force the Fastlane SDK to return the consent details in case the shopper is not recognized.
822
+ * Use-case: Developer is testing the flow in another country outside US, which would not get consent details.
823
+ *
824
+ * This configuration should not be used for 'live' environment
871
825
  */
872
- domainName?: string;
873
- clientKey?: string;
874
- initiative?: Initiative;
826
+ forceConsentDetails?: boolean;
827
+ }
828
+ interface FastlaneConfiguration extends UIElementProps {
875
829
  /**
876
- * A set of line items that explain recurring payments and/or additional charges.
830
+ * Card token ID, used to process the payment
877
831
  */
878
- lineItems?: ApplePayJS.ApplePayLineItem[];
832
+ tokenId: string;
879
833
  /**
880
- * The payment capabilities supported by the merchant.
881
- * The value must at least contain ApplePayMerchantCapability.supports3DS.
882
- * @default ['supports3DS']
834
+ * Fastlane session ID
883
835
  */
884
- merchantCapabilities?: ApplePayJS.ApplePayMerchantCapability[];
836
+ fastlaneSessionId: string;
885
837
  /**
886
- * A value that indicates whether the shipping mode prevents the user from editing the shipping address.
887
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/shippingcontacteditingmode}
838
+ * Initial last four digits displayed once the Component is rendered
888
839
  */
889
- shippingContactEditingMode?: ApplePayJS.ApplePayShippingContactEditingMode;
840
+ lastFour: string;
890
841
  /**
891
- * A set of shipping method objects that describe the available shipping methods.
842
+ * Initial brand displayed once the Component is rendered
892
843
  */
893
- shippingMethods?: ApplePayJS.ApplePayShippingMethod[];
844
+ brand: string;
894
845
  /**
895
- * How the items are to be shipped.
846
+ * Shopper's email (it will be used in the future to re-authenticate using Fastlane SDK within the Component)
896
847
  */
897
- shippingType?: ApplePayJS.ApplePayShippingType;
848
+ email: string;
898
849
  /**
899
- * A list of ISO 3166 country codes for limiting payments to cards from specific countries.
850
+ * Used internally by Drop-in. Displays the brand images inside the Drop-in payment method header
851
+ * @internal
900
852
  */
901
- supportedCountries?: string[];
853
+ keepBrandsVisible?: boolean;
902
854
  /**
903
- * The payment networks supported by the merchant.
855
+ * Property returned by the backend. Contains the list of brands supported by Fastlane component
856
+ * @internal
904
857
  */
905
- supportedNetworks?: string[];
858
+ brands?: string[];
859
+ }
860
+
861
+ interface IAnalytics {
862
+ checkoutAttemptId?: string;
863
+ setUp({ sessionId, checkoutStage, locale }: {
864
+ sessionId?: string;
865
+ checkoutStage?: 'precheckout' | 'checkout';
866
+ locale?: string;
867
+ }): Promise<void>;
868
+ sendFlavor(flavor: 'dropin' | 'components'): Promise<void>;
869
+ sendAnalytics(event: AbstractAnalyticsEvent): void;
870
+ flush(): void;
871
+ }
872
+
873
+ type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'action' | 'link' | 'iconOnly';
874
+ interface ButtonProps {
875
+ status?: string;
906
876
  /**
907
- * ApplePayRecurringPaymentRequest - Represents a request to set up a recurring payment, typically a subscription.
908
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepayrecurringpaymentrequest}
877
+ * Class name modifiers will be used as: `adyen-checkout__button--${modifier}`
909
878
  */
910
- recurringPaymentRequest?: ApplePayJS.ApplePayRecurringPaymentRequest;
879
+ classNameModifiers?: string[];
880
+ variant?: ButtonVariant;
881
+ disabled?: boolean;
882
+ label?: string | h.JSX.Element;
883
+ onClickCompletedLabel?: string | h.JSX.Element;
884
+ id?: string;
885
+ ariaLabel?: string;
886
+ ariaLabelledBy?: string;
887
+ ariaDescribedBy?: string;
888
+ ariaExpanded?: boolean;
889
+ ariaControls?: string;
890
+ secondaryLabel?: string;
891
+ icon?: string;
892
+ onClickCompletedIcon?: string;
893
+ inline?: boolean;
894
+ href?: string;
895
+ target?: string;
896
+ rel?: string;
897
+ onClick?: (e: TargetedMouseEvent<HTMLButtonElement | HTMLAnchorElement>, callbacks?: {
898
+ complete?: () => void;
899
+ }) => void;
900
+ onKeyDown?: (event: KeyboardEvent) => void;
901
+ buttonRef?: Ref<HTMLButtonElement>;
902
+ onMouseEnter?: (event: MouseEvent) => void;
903
+ onMouseLeave?: (event: MouseEvent) => void;
904
+ onFocus?: (event: FocusEvent) => void;
905
+ onBlur?: (event: FocusEvent) => void;
906
+ }
907
+
908
+ interface PayButtonProps extends ButtonProps {
911
909
  /**
912
- * The billing information that you require from the user in order to process the transaction.
910
+ * Class name modifiers will be used as: `adyen-checkout__image--${modifier}`
913
911
  */
914
- requiredBillingContactFields?: ApplePayJS.ApplePayContactField[];
912
+ classNameModifiers?: string[];
915
913
  /**
916
- * The shipping information that you require from the user in order to fulfill the order.
914
+ * Custom amount that can be passed to the button.
915
+ * This is useful when the amount is not available in the amount provider, such as Giftcard scenario where
916
+ * we need to display the remaining amount
917
917
  */
918
- requiredShippingContactFields?: ApplePayJS.ApplePayContactField[];
918
+ customAmount?: PaymentAmount;
919
+ label?: string;
920
+ status?: string;
921
+ disabled?: boolean;
922
+ icon?: string;
923
+ showReview?: boolean;
924
+ }
925
+
926
+ interface CardInputRef extends ComponentMethodsRef {
927
+ sfp?: SecuredFieldsProviderRef;
928
+ setFocusOn?: (field: string) => void;
929
+ processBinLookupResponse?: (binLookupResponse: BinLookupResponse, isReset: boolean) => void;
930
+ updateStyles?: (stylesObj: StylesObject) => void;
931
+ handleUnsupportedCard?: (errObj: CardErrorData) => boolean;
932
+ }
933
+ interface SFError {
934
+ isValid?: boolean;
935
+ errorMessage?: string;
936
+ errorI18n?: string;
937
+ error: string;
938
+ rootNode: HTMLElement;
939
+ detectedBrands?: string[];
940
+ }
941
+ interface SFStateErrorObj {
942
+ [key: string]: SFError;
943
+ }
944
+ declare enum AddressModeOptions {
945
+ full = "full",
946
+ partial = "partial",
947
+ none = "none"
948
+ }
949
+
950
+ interface ValidationRuleErrorObj {
951
+ [key: string]: ValidationRuleResult;
952
+ }
953
+ interface AriaAttributes {
954
+ 'aria-relevant'?: 'additions' | 'all' | 'removals' | 'text' | 'additions text';
955
+ 'aria-live'?: 'off' | 'polite' | 'assertive';
956
+ 'aria-atomic'?: 'true' | 'false';
957
+ }
958
+ interface SRPanelProps extends BaseElementProps {
959
+ enabled?: boolean;
960
+ node?: string;
961
+ showPanel?: boolean;
962
+ moveFocus?: boolean;
963
+ id?: string;
964
+ ariaAttributes?: AriaAttributes;
965
+ }
966
+ type SRPanelConfig = Pick<SRPanelProps, 'enabled' | 'node' | 'showPanel' | 'moveFocus' | 'id' | 'ariaAttributes'>;
967
+ interface GenericError {
968
+ isValid: boolean;
969
+ errorMessage: string;
970
+ error: string;
971
+ }
972
+
973
+ /**
974
+ * A panel meant to hold messages that will be read out by ScreenReaders on an aria-live="polite" basis
975
+ * Expects a string or string array of message to add to the panel to be read out
976
+ * For testing purposes can be made visible
977
+ */
978
+ declare class SRPanel extends BaseElement<SRPanelProps> {
979
+ static readonly type = "srPanel";
980
+ static readonly defaultProps: Partial<SRPanelProps>;
981
+ private readonly srPanelContainer;
982
+ private readonly id;
983
+ private readonly showPanel;
984
+ private readonly _enabled;
985
+ private readonly _moveFocus;
986
+ private componentRef;
987
+ constructor(checkout: ICore, props?: SRPanelProps);
988
+ setComponentRef: (ref: any) => void;
989
+ get enabled(): boolean;
990
+ get moveFocus(): boolean;
991
+ setAriaProps(ariaAttributes: AriaAttributes): void;
992
+ setMessages: (messages: string[] | string | null) => void;
993
+ render(): h.JSX.Element;
994
+ }
995
+
996
+ interface BaseElementProps {
997
+ order?: Order;
998
+ modules?: {
999
+ srPanel?: SRPanel;
1000
+ analytics?: IAnalytics;
1001
+ resources?: Resources;
1002
+ risk?: RiskElement;
1003
+ };
919
1004
  /**
920
- * Billing contact information for the user.
1005
+ * Identifies if the Element is the DropIn element
921
1006
  */
922
- billingContact?: ApplePayJS.ApplePayPaymentContact;
1007
+ isDropin?: boolean;
1008
+ }
1009
+ type BaseElementState = {
1010
+ order?: Order;
1011
+ } & Pick<OnChangeData, 'valid' | 'errors'> & Record<string, any>;
1012
+ interface IBaseElement<P extends BaseElementProps = BaseElementProps, S extends BaseElementState = BaseElementState> {
1013
+ data: PaymentData;
1014
+ state: S;
1015
+ props: P;
1016
+ _id: string;
1017
+ _component: ComponentChild;
1018
+ render(): ComponentChild | Error;
1019
+ mount(domNode: HTMLElement | string): IBaseElement;
1020
+ update(props: Partial<P>): IBaseElement;
1021
+ unmount(): IBaseElement;
1022
+ remove(): void;
1023
+ activate(): void;
1024
+ }
1025
+
1026
+ type CoreCallbacks$1 = Pick<CoreConfiguration, 'beforeRedirect' | 'beforeSubmit' | 'onSubmit' | 'onReview' | 'onAdditionalDetails' | 'onPaymentFailed' | 'onPaymentCompleted' | 'onOrderUpdated' | 'onPaymentMethodsRequest' | 'onChange' | 'onActionHandled' | 'onError' | 'onEnterKeyPressed' | 'donation'>;
1027
+ type StatusFromAction = 'redirect' | 'loading' | 'custom';
1028
+ type UIElementProps = {
1029
+ paymentMethodId?: string;
1030
+ storedPaymentMethodId?: string;
1031
+ } & BaseElementProps & CoreCallbacks$1 & {
1032
+ environment?: string;
1033
+ session?: Session;
1034
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
1035
+ isInstantPayment?: boolean;
923
1036
  /**
924
- * Shipping contact information for the user.
1037
+ * Flags if the element is Stored payment method
1038
+ * @internal
925
1039
  */
926
- shippingContact?: ApplePayJS.ApplePayPaymentContact;
1040
+ isStoredPaymentMethod?: boolean;
927
1041
  /**
928
- * It can be used to render the Apple Pay Code in a new window rather than as an overlay modal
929
- * Recommended to be used in case of using Apple Pay within an iframe, where the modal may not be presented correctly over the parent website
930
- *
931
- * @defaultValue 'modal'
1042
+ * Flag if the element is Stored payment method.
1043
+ * Perhaps can be deprecated and we use the one above?
1044
+ * @internal
932
1045
  */
933
- renderApplePayCodeAs?: ApplePayWebConfiguration['renderApplePayCodeAs'];
1046
+ oneClick?: boolean;
934
1047
  /**
935
- * Optional user-defined data.
1048
+ * Stored payment method id
1049
+ * @internal
936
1050
  */
937
- applicationData?: string;
938
- /**
939
- * Called when the shopper clicks the Apple Pay button
940
-
941
- * @param resolve - Must be called if the button should be displayed
942
- * @param reject - Must be called if the button should not be displayed
943
- * @returns
1051
+ storedPaymentMethodId?: string;
1052
+ /**
1053
+ * Status set when creating the Component from action
1054
+ * @internal
944
1055
  */
945
- onClick?: (resolve: () => void, reject: () => void) => void;
1056
+ statusType?: StatusFromAction;
1057
+ type?: string;
1058
+ name?: string;
1059
+ icon?: string;
1060
+ amount?: PaymentAmount;
1061
+ secondaryAmount?: PaymentAmount;
946
1062
  /**
947
- * A callback function the Apple Pay SDK calls when the Apple Pay code modal or window closes.
1063
+ * Show/Hide pay button
1064
+ * @defaultValue true
948
1065
  */
949
- onApplePayCodeClose?: ApplePayWebConfiguration['onApplePayCodeClose'];
1066
+ showPayButton?: boolean;
1067
+ /** @internal */
1068
+ payButton?: (options: PayButtonProps) => h.JSX.Element;
1069
+ /** @internal */
1070
+ loadingContext?: string;
1071
+ /** @internal */
1072
+ createFromAction?: (action: PaymentAction, props: object) => UIElement;
1073
+ /** @internal */
1074
+ clientKey?: string;
1075
+ /** @internal */
1076
+ elementRef?: UIElement;
1077
+ /** @internal */
1078
+ i18n?: Language;
950
1079
  /**
951
- * Callback called when ApplePay authorize the payment.
952
- * Must be resolved/rejected with the action object.
953
- *
954
- * @param data - Authorization event from ApplePay, along with formatted billingAddress and deliveryAddress
955
- * @param actions - Object to continue/stop with the payment flow
956
- *
957
- * @remarks
958
- * If actions.resolve() is called, the payment flow will be triggered.
959
- * If actions.reject() is called, the overlay will display an error
1080
+ * The shopper’s issuer account label. It can be available for stored payment method
1081
+ * @internal
960
1082
  */
961
- onAuthorized?: (data: {
962
- authorizedEvent: ApplePayJS.ApplePayPaymentAuthorizedEvent;
963
- billingAddress?: Partial<AddressData>;
964
- deliveryAddress?: Partial<AddressData>;
965
- }, actions: {
966
- resolve: () => void;
967
- reject: (error?: ApplePayJS.ApplePayError) => void;
968
- }) => void;
1083
+ label?: string;
969
1084
  /**
970
- * Collect the order tracking details if available.
971
- * This callback is invoked when a successfull payment is resolved
972
- *
973
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentorderdetails}
974
- * @param resolve - Must be called with the orderDetails fields
975
- * @param reject - Must be called if something failed during the order creation. Calling 'reject' won't cancel the payment flow
1085
+ * Returned after the payments call, when an action is returned. It represents the payment method tx variant
1086
+ * that was used for the payment
1087
+ * @internal
976
1088
  */
977
- onOrderTrackingRequest?: (resolve: (orderDetails: ApplePayPaymentOrderDetails) => void, reject: () => void) => void;
1089
+ paymentMethodType?: string;
978
1090
  /**
979
- * An event handler the system calls when it displays the payment sheet
980
- *
981
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onvalidatemerchant}
982
- * @param resolve - Must be called with an opaque message session object
983
- * @param reject - Must be called if something failed during the merchant validation
984
- * @param validationURL - The URL your server must use to validate itself and obtain a merchant session object.
1091
+ * Reference to the action object found in a /payments response. This, in most cases, is passed on to the onActionHandled callback
985
1092
  */
986
- onValidateMerchant?: (resolve: (merchantSession: unknown) => void, reject: (error?: string) => void, validationURL: string) => Promise<void>;
1093
+ originalAction?: PaymentAction;
1094
+ };
1095
+ type UIElementStatus = 'ready' | 'loading' | 'error' | 'success';
1096
+ interface ComponentMethodsRef {
1097
+ showValidation?: () => void;
1098
+ setStatus?(status: UIElementStatus): void;
1099
+ }
1100
+
1101
+ declare enum TxVariants {
1102
+ /** internal */
1103
+ address = "address",
1104
+ bankTransfer_IBAN = "bankTransfer_IBAN",
1105
+ bankTransfer_BE = "bankTransfer_BE",
1106
+ bankTransfer_NL = "bankTransfer_NL",
1107
+ bankTransfer_PL = "bankTransfer_PL",
1108
+ bankTransfer_FR = "bankTransfer_FR",
1109
+ bankTransfer_CH = "bankTransfer_CH",
1110
+ bankTransfer_IE = "bankTransfer_IE",
1111
+ bankTransfer_GB = "bankTransfer_GB",
1112
+ bankTransfer_DE = "bankTransfer_DE",
1113
+ bankTransfer_AE = "bankTransfer_AE",
1114
+ bankTransfer_AT = "bankTransfer_AT",
1115
+ bankTransfer_AU = "bankTransfer_AU",
1116
+ bankTransfer_BG = "bankTransfer_BG",
1117
+ bankTransfer_CA = "bankTransfer_CA",
1118
+ bankTransfer_EE = "bankTransfer_EE",
1119
+ bankTransfer_ES = "bankTransfer_ES",
1120
+ bankTransfer_FI = "bankTransfer_FI",
1121
+ bankTransfer_HK = "bankTransfer_HK",
1122
+ bankTransfer_HU = "bankTransfer_HU",
1123
+ bankTransfer_IT = "bankTransfer_IT",
1124
+ bankTransfer_JP = "bankTransfer_JP",
1125
+ bankTransfer_LU = "bankTransfer_LU",
1126
+ bankTransfer_NZ = "bankTransfer_NZ",
1127
+ bankTransfer_PT = "bankTransfer_PT",
1128
+ bankTransfer_SG = "bankTransfer_SG",
1129
+ bankTransfer_SK = "bankTransfer_SK",
1130
+ bankTransfer_US = "bankTransfer_US",
1131
+ donation = "donation",
1132
+ personal_details = "personal_details",
1133
+ dropin = "dropin",
1134
+ /** internal */
1135
+ /** Card */
1136
+ bcmc = "bcmc",
1137
+ card = "card",
1138
+ scheme = "scheme",
1139
+ storedCard = "storedCard",
1140
+ customCard = "customcard",
1141
+ /** Card */
1142
+ /** ThreeDS */
1143
+ threeDS2Challenge = "threeDS2Challenge",
1144
+ threeDS2Fingerprint = "threeDS2Fingerprint",
1145
+ threeDS2DeviceFingerprint = "threeDS2DeviceFingerprint",
1146
+ /** ThreeDS */
1147
+ /** Direct debit */
1148
+ ach = "ach",
1149
+ directdebit_GB = "directdebit_GB",
1150
+ sepadirectdebit = "sepadirectdebit",
1151
+ eft_directdebit_CA = "eft_directdebit_CA",
1152
+ /** Direct debit */
1153
+ /** Open Invoice */
1154
+ affirm = "affirm",
1155
+ afterpay = "afterpay",
1156
+ afterpay_default = "afterpay_default",
1157
+ afterpay_b2b = "afterpay_b2b",
1158
+ atome = "atome",
1159
+ facilypay_3x = "facilypay_3x",
1160
+ facilypay_4x = "facilypay_4x",
1161
+ facilypay_6x = "facilypay_6x",
1162
+ facilypay_10x = "facilypay_10x",
1163
+ facilypay_12x = "facilypay_12x",
1164
+ ratepay = "ratepay",
1165
+ ratepay_directdebit = "ratepay_directdebit",
1166
+ /** Open Invoice */
1167
+ /** Wallets */
1168
+ amazonpay = "amazonpay",
1169
+ applepay = "applepay",
1170
+ cashapp = "cashapp",
1171
+ clicktopay = "clicktopay",
1172
+ googlepay = "googlepay",
1173
+ paypal = "paypal",
1174
+ fastlane = "fastlane",
1175
+ paywithgoogle = "paywithgoogle",
1176
+ /** Wallets */
1177
+ /** Voucher */
1178
+ boletobancario = "boletobancario",
1179
+ boletobancario_itau = "boletobancario_itau",
1180
+ boletobancario_santander = "boletobancario_santander",
1181
+ primeiropay_boleto = "primeiropay_boleto",
1182
+ doku = "doku",
1183
+ doku_alfamart = "doku_alfamart",
1184
+ doku_permata_lite_atm = "doku_permata_lite_atm",
1185
+ doku_indomaret = "doku_indomaret",
1186
+ doku_atm_mandiri_va = "doku_atm_mandiri_va",
1187
+ doku_sinarmas_va = "doku_sinarmas_va",
1188
+ doku_mandiri_va = "doku_mandiri_va",
1189
+ doku_cimb_va = "doku_cimb_va",
1190
+ doku_danamon_va = "doku_danamon_va",
1191
+ doku_bri_va = "doku_bri_va",
1192
+ doku_bni_va = "doku_bni_va",
1193
+ doku_bca_va = "doku_bca_va",
1194
+ doku_wallet = "doku_wallet",
1195
+ oxxo = "oxxo",
1196
+ /** Voucher */
1197
+ /** issuerList */
1198
+ billdesk_online = "billdesk_online",
1199
+ billdesk_wallet = "billdesk_wallet",
1200
+ dotpay = "dotpay",
1201
+ eps = "eps",
1202
+ iris = "iris",
1203
+ molpay_ebanking_fpx_MY = "molpay_ebanking_fpx_MY",
1204
+ molpay_ebanking_TH = "molpay_ebanking_TH",
1205
+ molpay_ebanking_VN = "molpay_ebanking_VN",
1206
+ onlineBanking_CZ = "onlineBanking_CZ",
1207
+ onlinebanking_IN = "onlinebanking_IN",
1208
+ onlineBanking_PL = "onlineBanking_PL",
1209
+ onlineBanking_SK = "onlineBanking_SK",
1210
+ paybybank = "paybybank",
1211
+ payu_IN_cashcard = "payu_IN_cashcard",
1212
+ payu_IN_nb = "payu_IN_nb",
1213
+ wallet_IN = "wallet_IN",
1214
+ /** issuerList */
1215
+ /** Dragonpay */
1216
+ dragonpay = "dragonpay",
1217
+ dragonpay_ebanking = "dragonpay_ebanking",
1218
+ dragonpay_otc_banking = "dragonpay_otc_banking",
1219
+ dragonpay_otc_non_banking = "dragonpay_otc_non_banking",
1220
+ dragonpay_otc_philippines = "dragonpay_otc_philippines",
1221
+ /** Dragonpay */
1222
+ /** Econtext */
1223
+ econtext = "econtext",
1224
+ econtext_atm = "econtext_atm",
1225
+ econtext_online = "econtext_online",
1226
+ econtext_seven_eleven = "econtext_seven_eleven",
1227
+ econtext_stores = "econtext_stores",
1228
+ /** Econtext */
1229
+ /** Redirect */
1230
+ giropay = "giropay",
1231
+ multibanco = "multibanco",
1232
+ redirect = "redirect",
1233
+ twint = "twint",
1234
+ vipps = "vipps",
1235
+ trustly = "trustly",
1236
+ paybybank_AIS_DD = "paybybank_AIS_DD",
1237
+ riverty = "riverty",
1238
+ paybybank_pix = "paybybank_pix",
1239
+ /** Redirect */
1240
+ /** Klarna */
1241
+ klarna = "klarna",
1242
+ klarna_account = "klarna_account",
1243
+ klarna_paynow = "klarna_paynow",
1244
+ klarna_b2b = "klarna_b2b",
1245
+ /** Klarna */
1246
+ /** QRLoader */
1247
+ bcmc_mobile = "bcmc_mobile",
1248
+ bcmc_mobile_QR = "bcmc_mobile_QR",
1249
+ pix = "pix",
1250
+ swish = "swish",
1251
+ wechatpay = "wechatpay",
1252
+ wechatpayQR = "wechatpayQR",
1253
+ promptpay = "promptpay",
1254
+ paynow = "paynow",
1255
+ duitnow = "duitnow",
1256
+ /** QRLoader */
1257
+ /** Await */
1258
+ blik = "blik",
1259
+ mbway = "mbway",
1260
+ ancv = "ancv",
1261
+ payto = "payto",
1262
+ upi = "upi",// also QR
1263
+ upi_qr = "upi_qr",// also QR
1264
+ upi_intent = "upi_intent",// also QR
1265
+ /** Await */
1266
+ /** Giftcard */
1267
+ giftcard = "giftcard",
1268
+ mealVoucher_FR = "mealVoucher_FR",
1269
+ mealVoucher_FR_natixis = "mealVoucher_FR_natixis",
1270
+ mealVoucher_FR_sodexo = "mealVoucher_FR_sodexo",
1271
+ mealVoucher_FR_groupeup = "mealVoucher_FR_groupeup"
1272
+ /** Giftcard */
1273
+ }
1274
+
1275
+ type AchForm = {
1276
+ selectedAccountType: string;
1277
+ ownerName: string;
1278
+ routingNumber: string;
1279
+ accountNumber: string;
1280
+ accountNumberVerification: string;
1281
+ };
1282
+ type AchFormPrefillData = Partial<Pick<AchForm, 'ownerName'>>;
1283
+
1284
+ interface AchConfiguration extends UIElementProps {
987
1285
  /**
988
- * An event handler to call when the user selects a new payment method.
989
- *
990
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onpaymentmethodselected}
991
- * @param resolve - Completes the selection of a payment method with an update.
992
- * @param reject - Completes the selection of a payment method with no update.
993
- * @param event - The event parameter contains the paymentMethod attribute.
1286
+ * Pre-fill ACH form with shopper data
994
1287
  */
995
- onPaymentMethodSelected?: (resolve: (paymentMethodUpdate: ApplePayJS.ApplePayPaymentMethodUpdate) => void, reject: (paymentMethodUpdate: ApplePayJS.ApplePayPaymentMethodUpdate) => void, event: ApplePayJS.ApplePayPaymentMethodSelectedEvent) => void;
1288
+ data?: AchFormPrefillData;
996
1289
  /**
997
- * An event handler to call when the user selects a shipping contact in the payment sheet.
998
- *
999
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onshippingcontactselected}
1000
- * @param resolve - Completes the selection of a shipping contact with an update.
1001
- * @param reject - Completes the selection of a shipping contact with no update.
1002
- * @param event - The event parameter contains the shippingContact attribute.
1290
+ * Adds placeholder text to the input fields
1003
1291
  */
1004
- onShippingContactSelected?: (resolve: (shippingContactUpdate: ApplePayJS.ApplePayShippingContactUpdate) => void, reject: (shippingContactUpdate: ApplePayJS.ApplePayShippingContactUpdate) => void, event: ApplePayJS.ApplePayShippingContactSelectedEvent) => void;
1292
+ placeholders?: AchPlaceholders;
1005
1293
  /**
1006
- * Completes the selection of a shipping method with an update.
1007
- *
1008
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/completeshippingmethodselection}
1009
- * @param resolve - Completes the selection of a shipping method with an update.
1010
- * @param reject - Completes the selection of a shipping method with no update.
1011
- * @param event - The event parameter contains the shippingMethod attribute.
1294
+ * Set to false to hide the "Account Holder Name" field if you want to pass the data yourself
1295
+ * @default true
1012
1296
  */
1013
- onShippingMethodSelected?: (resolve: (shippingMethodUpdate: ApplePayJS.ApplePayShippingMethodUpdate) => void, reject: (shippingMethodUpdate: ApplePayJS.ApplePayShippingMethodUpdate) => void, event: ApplePayJS.ApplePayShippingMethodSelectedEvent) => void;
1297
+ hasHolderName?: boolean;
1014
1298
  /**
1015
- * The initial coupon code for the payment request.
1016
- * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/couponcode couponCode docs}
1299
+ * Enables storing the payment method using the Checkbox
1300
+ * @default false
1017
1301
  */
1018
- couponCode?: ApplePayJS.ApplePayPaymentRequest['couponCode'];
1302
+ enableStoreDetails?: boolean;
1019
1303
  /**
1020
- * A Boolean value that determines whether the payment sheet displays the coupon code field.
1021
- * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/supportscouponcode supportsCouponCode docs}
1304
+ * storedPaymentMethodId coming from a stored ACH in /paymentMethods response
1305
+ * @internal
1022
1306
  */
1023
- supportsCouponCode?: ApplePayJS.ApplePayPaymentRequest['supportsCouponCode'];
1307
+ storedPaymentMethodId?: string;
1024
1308
  /**
1025
- * An event handler called by the system when the user enters or updates a coupon code.
1026
- *
1027
- * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/oncouponcodechanged}
1028
- * @param resolve - Completes the change of a coupon code with an update.
1029
- * @param reject - Completes the change of a coupon code with no update.
1030
- * @param event - The event parameter contains the couponCode attribute.
1309
+ * bankAccountNumber coming from a stored ACH in /paymentMethods response
1310
+ * @internal
1031
1311
  */
1032
- onCouponCodeChanged?: (resolve: (update: ApplePayJS.ApplePayCouponCodeUpdate) => void, reject: (update: ApplePayJS.ApplePayCouponCodeUpdate) => void, event: ApplePayJS.ApplePayCouponCodeChangedEvent) => void;
1033
- buttonColor?: ApplePayButtonStyle;
1034
- buttonType?: ApplePayButtonType;
1312
+ bankAccountNumber?: string;
1313
+ }
1314
+ interface AchPlaceholders {
1315
+ accountTypeSelector?: string;
1316
+ ownerName?: string;
1317
+ routingNumber?: string;
1318
+ accountNumber?: string;
1319
+ accountNumberVerification?: string;
1320
+ }
1321
+
1322
+ declare const SUPPORTED_LOCALES_EU: readonly ["en_GB", "de_DE", "fr_FR", "it_IT", "es_ES"];
1323
+ declare const SUPPORTED_LOCALES_US: readonly ["en_US"];
1324
+
1325
+ declare class AmazonPayElement extends UIElement<AmazonPayConfiguration> {
1326
+ static readonly type = TxVariants.amazonpay;
1327
+ protected static readonly defaultProps: Partial<AmazonPayConfiguration>;
1328
+ protected componentRef: AmazonPayComponentRef | undefined;
1329
+ formatProps(props: AmazonPayConfiguration): AmazonPayConfiguration;
1035
1330
  /**
1036
- * Used to tweak the text of the button types that contain text ('Continue with', 'Book with', etc)
1331
+ * Formats the component data output
1037
1332
  */
1038
- buttonLocale?: string;
1039
- }
1040
- interface ApplePayElementData {
1041
- paymentMethod: {
1042
- type: string;
1043
- applePayToken: string;
1044
- isExpress?: boolean;
1045
- };
1046
- billingAddress?: AddressData;
1047
- deliveryAddress?: AddressData;
1333
+ formatData(): AmazonPayElementData;
1334
+ protected beforeRender(configSetByMerchant?: AmazonPayConfiguration): void;
1335
+ getShopperDetails(): void | Promise<{
1336
+ declineFlowUrl?: string;
1337
+ } & Record<string, unknown>>;
1338
+ handleDeclineFlow(): void;
1339
+ get isValid(): boolean;
1340
+ get browserInfo(): BrowserInfo;
1341
+ submit(): void;
1342
+ protected componentToRender(): h.JSX.Element;
1048
1343
  }
1049
- interface ApplePaySessionRequest {
1050
- displayName: string;
1051
- domainName: string;
1052
- initiative: Initiative;
1053
- merchantIdentifier: string;
1344
+
1345
+ type ButtonColor = 'Gold' | 'LightGray' | 'DarkGray';
1346
+ type Placement = 'Home' | 'Product' | 'Cart' | 'Checkout' | 'Other';
1347
+ type ProductType = 'PayOnly' | 'PayAndShip';
1348
+ type ChargePermissionType = 'OneTime' | 'Recurring';
1349
+ type FrequencyUnit = 'Year' | 'Month' | 'Week' | 'Day' | 'Variable';
1350
+ type Currency = 'EUR' | 'GBP' | 'USD';
1351
+ type Region = 'EU' | 'UK' | 'US';
1352
+ type SupportedLocale = (typeof SUPPORTED_LOCALES_EU)[number] | (typeof SUPPORTED_LOCALES_US)[number];
1353
+ interface AmazonPayButtonInstance {
1354
+ onClick(handler: () => void): void;
1054
1355
  }
1055
- interface ApplePayWebConfiguration {
1056
- renderApplePayCodeAs?: 'modal' | 'window';
1057
- onApplePayCodeClose?(): void;
1356
+ interface AmazonWindowObject {
1357
+ Pay: {
1358
+ renderButton(selector: string, settings: AmazonPayButtonSettings): AmazonPayButtonInstance;
1359
+ initCheckout(options: AmazonPayButtonSettings & {
1360
+ createCheckoutSessionConfig: CheckoutSessionConfig;
1361
+ }): void;
1362
+ signout(): void;
1363
+ bindChangeAction(selector: string, options: ChangeActionOptions): void;
1364
+ };
1058
1365
  }
1059
-
1060
- interface BankTransferResultProps {
1061
- paymentMethodType?: string;
1062
- reference?: string;
1063
- totalAmount?: {
1064
- value: number;
1065
- currency: string;
1366
+ interface RecurringMetadata {
1367
+ frequency: {
1368
+ unit: string;
1369
+ value: FrequencyUnit;
1370
+ };
1371
+ amount: {
1372
+ amount: string;
1373
+ currencyCode: Currency;
1066
1374
  };
1067
- beneficiary?: string;
1068
- iban?: string;
1069
- bic?: string;
1070
- accountNumber?: string;
1071
- sortCode?: string;
1072
- routingNumber?: string;
1073
- branchCode?: string;
1074
- bankCode?: string;
1075
- onActionHandled?: (actionHandledObj: ActionHandledReturnObject) => void;
1076
1375
  }
1077
-
1078
- type BankTransferConfiguration = UIElementProps & BankTransferResultProps & {
1376
+ interface AmazonPayBackendConfiguration {
1377
+ merchantId?: string;
1378
+ publicKeyId?: string;
1379
+ region?: Region;
1380
+ storeId?: string;
1381
+ }
1382
+ interface AmazonPayConfiguration extends UIElementProps {
1383
+ addressDetails?: AddressDetails;
1384
+ amazonPayToken?: string;
1385
+ amazonCheckoutSessionId?: string;
1386
+ amount?: PaymentAmount;
1387
+ buttonColor?: ButtonColor;
1388
+ cancelUrl?: string;
1389
+ chargePermissionType?: ChargePermissionType;
1390
+ checkoutMode?: string;
1391
+ clientKey?: string;
1392
+ configuration?: AmazonPayBackendConfiguration;
1393
+ currency?: Currency;
1394
+ deliverySpecifications?: DeliverySpecifications;
1395
+ design?: string;
1396
+ environment?: string;
1397
+ loadingContext?: string;
1398
+ locale?: string;
1399
+ merchantMetadata?: MerchantMetadata;
1400
+ onSubmit?(state: SubmitData, element: AmazonPayElement, actions: {
1401
+ resolve: (response: CheckoutAdvancedFlowResponse) => void;
1402
+ reject: () => void;
1403
+ }): void;
1404
+ payButton?: (props: PayButtonProps) => h.JSX.Element;
1405
+ placement?: Placement;
1406
+ productType?: ProductType;
1407
+ recurringMetadata?: RecurringMetadata;
1408
+ returnUrl?: string;
1409
+ showChangePaymentDetailsButton?: boolean;
1410
+ showOrderButton?: boolean;
1411
+ showSignOutButton?: boolean;
1412
+ signature?: string;
1413
+ onClick?: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
1414
+ onError?: (error: AdyenCheckoutError, component: UIElement) => void;
1415
+ onSignOut?: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
1079
1416
  /**
1080
- * Show/hide email address field
1081
- * @default true
1417
+ * Used for analytics
1082
1418
  */
1083
- showEmailAddress?: boolean;
1419
+ expressPage?: 'cart' | 'minicart' | 'pdp' | 'checkout';
1420
+ /**
1421
+ * Used for analytics
1422
+ * @defaultValue false
1423
+ */
1424
+ isExpress?: boolean;
1425
+ }
1426
+ type AmazonPayComponentRef = ComponentMethodsRef & {
1427
+ getSubmitFunction?: () => () => void;
1084
1428
  };
1085
- interface BankTransferState extends UIElementProps {
1086
- data: {
1087
- shopperEmail?: string;
1088
- };
1089
- isValid: boolean;
1429
+ interface AmazonPayComponentProps extends AmazonPayConfiguration {
1430
+ showSignOutButton?: boolean;
1431
+ amazonCheckoutSessionId?: string;
1432
+ showOrderButton?: boolean;
1433
+ showChangePaymentDetailsButton?: boolean;
1434
+ setComponentRef: (ref: AmazonPayComponentRef) => void;
1090
1435
  }
1091
- interface BankTransferSchema {
1092
- shopperEmail?: string;
1436
+ interface AmazonPayButtonProps {
1437
+ amazonRef: AmazonWindowObject;
1438
+ buttonColor?: ButtonColor;
1439
+ cancelUrl?: string;
1440
+ chargePermissionType?: ChargePermissionType;
1441
+ clientKey?: string;
1442
+ configuration?: AmazonPayBackendConfiguration;
1443
+ currency?: Currency;
1444
+ deliverySpecifications?: DeliverySpecifications;
1445
+ design?: string;
1446
+ environment?: string;
1447
+ locale?: string;
1448
+ onClick: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
1449
+ onError?: (error: AdyenCheckoutError, component: UIElement) => void;
1450
+ placement?: Placement;
1451
+ productType?: ProductType;
1452
+ recurringMetadata?: RecurringMetadata;
1453
+ ref: RefObject<{
1454
+ initCheckout(): void;
1455
+ }>;
1456
+ returnUrl?: string;
1457
+ showPayButton: boolean;
1093
1458
  }
1094
-
1095
- interface VoucherDetail {
1096
- label: string;
1097
- value: string;
1459
+ interface SignOutButtonProps {
1460
+ amazonRef: AmazonWindowObject;
1461
+ onSignOut: (resolve: (value?: unknown) => void, reject: () => void) => Promise<void>;
1462
+ }
1463
+ interface ChangePaymentDetailsButtonProps {
1464
+ amazonCheckoutSessionId: string;
1465
+ amazonRef: AmazonWindowObject;
1466
+ }
1467
+ interface ChangeActionOptions {
1468
+ amazonCheckoutSessionId: string;
1469
+ changeAction: 'changeAddress' | 'changePayment';
1470
+ }
1471
+ interface OrderButtonProps {
1472
+ amazonCheckoutSessionId: string;
1473
+ clientKey: string;
1474
+ chargePermissionType?: ChargePermissionType;
1475
+ onError: (error: AdyenCheckoutError, component: UIElement) => void;
1476
+ recurringMetadata: RecurringMetadata;
1477
+ ref: RefObject<{
1478
+ createOrder(): void;
1479
+ }>;
1480
+ region: Region;
1481
+ returnUrl: string;
1482
+ publicKeyId: string;
1098
1483
  }
1099
- interface VoucherProps {
1100
- /**
1101
- * Payment method used to generate the voucher.
1102
- */
1103
- paymentMethodType: string;
1104
- /**
1105
- * Payment method image to be displayed on the voucher.
1106
- */
1107
- imageUrl?: string;
1484
+ interface AmazonPayElementData {
1485
+ paymentMethod: {
1486
+ type: string;
1487
+ checkoutSessionId?: string;
1488
+ };
1489
+ browserInfo: BrowserInfo;
1490
+ }
1491
+ interface AmazonPayButtonSettings {
1492
+ buttonColor?: ButtonColor;
1493
+ design?: string;
1108
1494
  /**
1109
- * If applicable, it will render an issuer image next to the payment method image.
1495
+ * Amazon Pay merchant account identifier
1110
1496
  */
1111
- issuerImageUrl?: string;
1497
+ merchantId: string;
1112
1498
  /**
1113
- * Voucher instructions URL.
1499
+ * Sets button to Sandbox environment
1114
1500
  */
1115
- instructionsUrl?: string;
1501
+ sandbox: boolean;
1116
1502
  /**
1117
- * Download URL for the voucher. It will display a button allowing the shopper to download it.
1503
+ * Product type selected for checkout
1118
1504
  */
1119
- downloadUrl?: string;
1505
+ productType: ProductType;
1120
1506
  /**
1121
- * Text that will be displayed on the above Download button.
1507
+ * Placement of the Amazon Pay button on your website
1122
1508
  */
1123
- downloadButtonText?: string;
1509
+ placement: Placement;
1124
1510
  /**
1125
- * Introduction text on the voucher.
1511
+ * Language used to render the button and text on Amazon Pay hosted pages. Please note that supported language(s) is dependent on the region that your Amazon Pay account was registered for
1126
1512
  */
1127
- introduction?: string;
1513
+ checkoutLanguage: SupportedLocale;
1128
1514
  /**
1129
- * Payment reference.
1515
+ * Ledger currency provided during registration for the given merchant identifier
1130
1516
  */
1131
- reference?: string;
1517
+ ledgerCurrency: Currency;
1518
+ }
1519
+ interface MerchantMetadata {
1520
+ customInformation?: string;
1521
+ merchantReferenceId?: string;
1522
+ merchantStoreName?: string;
1523
+ noteToBuyer?: string;
1524
+ }
1525
+ interface AddressDetails {
1526
+ name?: string;
1527
+ addressLine1?: string;
1528
+ addressLine2?: string;
1529
+ addressLine3?: string;
1530
+ city?: string;
1531
+ districtOrCounty?: string;
1532
+ stateOrRegion?: string;
1533
+ postalCode?: string;
1534
+ countryCode?: string;
1535
+ phoneNumber?: string;
1536
+ }
1537
+ interface ChargeAmount {
1538
+ amount: string;
1539
+ currencyCode: Currency;
1540
+ }
1541
+ type LedgerCurrencies = {
1542
+ [key in Region]: Currency;
1543
+ };
1544
+ interface PayloadJSON {
1545
+ addressDetails?: AddressDetails;
1546
+ chargePermissionType?: ChargePermissionType;
1547
+ deliverySpecifications?: DeliverySpecifications;
1548
+ merchantMetadata?: MerchantMetadata;
1549
+ paymentDetails?: {
1550
+ chargeAmount: ChargeAmount;
1551
+ paymentIntent: 'Confirm';
1552
+ presentmentCurrency: Currency;
1553
+ totalOrderAmount: ChargeAmount;
1554
+ };
1555
+ recurringMetadata?: RecurringMetadata;
1556
+ storeId: string;
1557
+ webCheckoutDetails: {
1558
+ checkoutCancelUrl?: string;
1559
+ checkoutMode?: 'ProcessOrder';
1560
+ checkoutResultReturnUrl?: string;
1561
+ checkoutReviewReturnUrl?: string;
1562
+ };
1563
+ }
1564
+ interface CheckoutDetailsRequest {
1565
+ checkoutSessionId: string;
1566
+ getDeliveryAddress?: boolean;
1567
+ getDeclineFlowUrl?: boolean;
1568
+ publicKeyId: string;
1569
+ region?: Region;
1570
+ }
1571
+ interface UpdateAmazonCheckoutSessionRequest {
1572
+ amount: PaymentAmount;
1573
+ chargePermissionType?: ChargePermissionType;
1574
+ checkoutCancelUrl?: string;
1575
+ checkoutResultReturnUrl: string;
1576
+ checkoutSessionId: string;
1577
+ publicKeyId: string;
1578
+ recurringMetadata?: RecurringMetadata;
1579
+ region: Region;
1580
+ }
1581
+ interface CheckoutSessionConfig {
1582
+ payloadJSON: string;
1583
+ signature: string;
1584
+ publicKeyId: string;
1585
+ }
1586
+ interface DeliverySpecifications {
1587
+ specialRestrictions?: string[];
1588
+ addressRestrictions?: AddressRestrictions;
1589
+ }
1590
+ interface AddressRestrictions {
1591
+ type?: 'Allowed' | 'NotAllowed';
1592
+ restrictions?: Restrictions;
1593
+ }
1594
+ interface Restrictions {
1595
+ [key: string]: {
1596
+ zipCodes?: string[];
1597
+ statesOrRegions?: string[];
1598
+ };
1599
+ }
1600
+
1601
+ interface ANCVConfiguration extends UIElementProps {
1602
+ paymentData?: string;
1603
+ data: ANCVDataState;
1604
+ onOrderRequest?: onOrderRequestCallbackType;
1605
+ onOrderUpdated?: onOrderUpdatedCallbackType;
1606
+ }
1607
+ interface ANCVDataState {
1608
+ beneficiaryId: string;
1609
+ }
1610
+
1611
+ type Initiative = 'web' | 'messaging';
1612
+ type ApplePayPaymentOrderDetails = {
1613
+ orderTypeIdentifier: string;
1614
+ orderIdentifier: string;
1615
+ webServiceURL: string;
1616
+ authenticationToken: string;
1617
+ };
1618
+ type ApplePayPaymentAuthorizationResult = ApplePayJS.ApplePayPaymentAuthorizationResult & {
1619
+ orderDetails?: ApplePayPaymentOrderDetails;
1620
+ };
1621
+ type ApplePayButtonType = 'add-money' | 'book' | 'buy' | 'check-out' | 'continue' | 'contribute' | 'donate' | 'order' | 'pay' | 'plain' | 'reload' | 'rent' | 'set-up' | 'subscribe' | 'support' | 'tip' | 'top-up';
1622
+ type ApplePayButtonStyle = 'black' | 'white' | 'white-outline';
1623
+ interface ApplePayConfiguration extends UIElementProps {
1132
1624
  /**
1133
- * URL to a barcode image representing the payment reference.
1625
+ * Enables the ApplePay Express Flow & also used for analytics
1626
+ * @defaultValue false
1134
1627
  */
1135
- barcode?: string;
1628
+ isExpress?: boolean;
1136
1629
  /**
1137
- * Total amount displayed on the voucher.
1630
+ * Used for analytics
1138
1631
  */
1139
- amount?: string;
1632
+ expressPage?: 'cart' | 'minicart' | 'pdp' | 'checkout';
1140
1633
  /**
1141
- * Any additional surcharge to the amount.
1634
+ * The Apple Pay version number your website supports.
1635
+ * @default highest supported version by the shopper device
1636
+ * @see {@link https://developer.apple.com/documentation/applepayontheweb/apple-pay-on-the-web-version-history Apple Pay on the Web Version History}
1142
1637
  */
1143
- surcharge?: string;
1638
+ version?: number;
1144
1639
  /**
1145
- * List of details that will be rendered on the voucher.
1640
+ * Part of the 'ApplePayLineItem' object, which sets the label of the payment request
1641
+ * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaylineitem ApplePayLineItem docs}
1146
1642
  */
1147
- voucherDetails?: VoucherDetail[];
1643
+ totalPriceLabel?: string;
1148
1644
  /**
1149
- * Additional CSS classes.
1645
+ * @default 'final'
1150
1646
  */
1151
- className?: string;
1647
+ totalPriceStatus?: ApplePayJS.ApplePayLineItemType;
1152
1648
  /**
1153
- * Show/Hide a button to copy the payment reference. It will only show if a reference is available.
1649
+ * ApplePay configuration sent by the /paymentMethods response
1154
1650
  */
1155
- copyBtn?: boolean;
1651
+ configuration?: {
1652
+ merchantName?: string;
1653
+ merchantId?: string;
1654
+ };
1156
1655
  /**
1157
- * Show/Hide payment reference value.
1158
- * @default true
1656
+ * Used to override the domain name for the Apple Pay button. Useful when using ApplePay within cross-domain iframe
1657
+ * For more context: https://github.com/Adyen/adyen-web/pull/3340
1159
1658
  */
1160
- showReferenceValue?: boolean;
1659
+ domainName?: string;
1660
+ clientKey?: string;
1661
+ initiative?: Initiative;
1161
1662
  /**
1162
- * Label for the payment reference.
1663
+ * A set of line items that explain recurring payments and/or additional charges.
1163
1664
  */
1164
- paymentReferenceLabel?: string;
1165
- onActionHandled?: (rtnObj: ActionHandledReturnObject) => void;
1166
- }
1167
- interface VoucherConfiguration extends UIElementProps {
1168
- reference?: string;
1169
- url?: string;
1170
- paymentMethodType?: string;
1171
- }
1172
- type CommonVoucherProps = Pick<VoucherProps, 'paymentMethodType' | 'introduction' | 'imageUrl' | 'amount' | 'reference' | 'onActionHandled'>;
1173
-
1174
- interface BoletoConfiguration extends VoucherConfiguration {
1665
+ lineItems?: ApplePayJS.ApplePayLineItem[];
1175
1666
  /**
1176
- * Set to false if you have already collected the shopper's first name, last name, and CPF/CNPJ (socialSecurityNumber).
1177
- * @default true
1667
+ * The payment capabilities supported by the merchant.
1668
+ * The value must at least contain ApplePayMerchantCapability.supports3DS.
1669
+ * @default ['supports3DS']
1178
1670
  */
1179
- personalDetailsRequired?: boolean;
1671
+ merchantCapabilities?: ApplePayJS.ApplePayMerchantCapability[];
1180
1672
  /**
1181
- * Set this to false if you have already collected the shopper's street, house number or name, city, postal code, and state or province.
1182
- * @default true
1673
+ * A value that indicates whether the shipping mode prevents the user from editing the shipping address.
1674
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/shippingcontacteditingmode}
1183
1675
  */
1184
- billingAddressRequired?: boolean;
1676
+ shippingContactEditingMode?: ApplePayJS.ApplePayShippingContactEditingMode;
1185
1677
  /**
1186
- * Set this to false if you have already collected the shopper's email address.
1187
- * @default true
1678
+ * A set of shipping method objects that describe the available shipping methods.
1188
1679
  */
1189
- showEmailAddress?: boolean;
1680
+ shippingMethods?: ApplePayJS.ApplePayShippingMethod[];
1190
1681
  /**
1191
- * Object to pre-fill shopper details on the form
1682
+ * How the items are to be shipped.
1192
1683
  */
1193
- data?: BoletoInputDataState;
1194
- }
1195
- interface BoletoElementProps {
1196
- type: string;
1197
- i18n: Language;
1198
- loadingContext: string;
1199
- reference?: string;
1200
- }
1201
- interface BoletoInputDataState {
1202
- firstName?: string;
1203
- lastName?: string;
1204
- billingAddress?: AddressData;
1205
- socialSecurityNumber?: string;
1206
- shopperEmail?: string;
1207
- }
1208
- interface BoletoInputValidState {
1209
- firstName?: boolean;
1210
- lastName?: boolean;
1211
- shopperEmail?: boolean;
1212
- socialSecurityNumber?: boolean;
1213
- billingAddress?: boolean;
1214
- }
1215
- interface BoletoInputErrorState {
1216
- firstName?: boolean;
1217
- lastName?: boolean;
1218
- shopperEmail?: boolean;
1219
- socialSecurityNumber?: boolean;
1220
- }
1221
-
1222
- interface CashAppPayConfiguration extends UIElementProps {
1684
+ shippingType?: ApplePayJS.ApplePayShippingType;
1223
1685
  /**
1224
- * Indicates that the payment must be stored (Ex: in case there is no checkbox but merchant wants to store it)
1686
+ * A list of ISO 3166 country codes for limiting payments to cards from specific countries.
1225
1687
  */
1226
- storePaymentMethod?: boolean;
1688
+ supportedCountries?: string[];
1227
1689
  /**
1228
- * Enables storing the payment method using the Checkbox
1690
+ * The payment networks supported by the merchant.
1229
1691
  */
1230
- enableStoreDetails?: boolean;
1692
+ supportedNetworks?: string[];
1231
1693
  /**
1232
- * Callback triggered before starting the CashAppPay flow. Use case: Validate customer data, check product availability
1694
+ * ApplePayRecurringPaymentRequest - Represents a request to set up a recurring payment, typically a subscription.
1695
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepayrecurringpaymentrequest}
1233
1696
  */
1234
- onClick?(actions: {
1235
- resolve: () => void;
1236
- reject: () => void;
1237
- }): void;
1697
+ recurringPaymentRequest?: ApplePayJS.ApplePayRecurringPaymentRequest;
1238
1698
  /**
1239
- * A reference to your system (for example, a cart or checkout identifier). Maximum length 1024 characters.
1240
- * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference#parameters-3
1699
+ * The billing information that you require from the user in order to process the transaction.
1241
1700
  */
1242
- referenceId?: string;
1701
+ requiredBillingContactFields?: ApplePayJS.ApplePayContactField[];
1243
1702
  /**
1244
- * The destination for the customer after approving (or declining) in Cash App for mobile redirect flow.
1245
- * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference#customerrequest
1246
- * @defaultValue window.location.ref
1703
+ * The shipping information that you require from the user in order to fulfill the order.
1247
1704
  */
1248
- redirectURL?: string;
1705
+ requiredShippingContactFields?: ApplePayJS.ApplePayContactField[];
1249
1706
  /**
1250
- * Button customization
1251
- * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/use-cases#customize-the-cash-app-pay-button
1707
+ * Billing contact information for the user.
1252
1708
  */
1253
- button?: {
1254
- shape?: 'semiround' | 'round';
1255
- size?: 'medium' | 'small';
1256
- theme?: 'dark' | 'light';
1257
- width?: 'static' | 'full';
1258
- };
1709
+ billingContact?: ApplePayJS.ApplePayPaymentContact;
1259
1710
  /**
1260
- * CashAppPay configuration sent by the /paymentMethods response
1711
+ * Shipping contact information for the user.
1261
1712
  */
1262
- configuration?: {
1263
- clientId: string;
1264
- scopeId: string;
1265
- };
1713
+ shippingContact?: ApplePayJS.ApplePayPaymentContact;
1266
1714
  /**
1267
- * If payment is tokenized, then API will return its ID
1268
- * @internal
1715
+ * It can be used to render the Apple Pay Code in a new window rather than as an overlay modal
1716
+ * Recommended to be used in case of using Apple Pay within an iframe, where the modal may not be presented correctly over the parent website
1717
+ *
1718
+ * @defaultValue 'modal'
1269
1719
  */
1270
- storedPaymentMethodId?: string;
1720
+ renderApplePayCodeAs?: ApplePayWebConfiguration['renderApplePayCodeAs'];
1271
1721
  /**
1272
- * If payment is tokenized, then API will return this value
1273
- * @internal
1722
+ * Optional user-defined data.
1274
1723
  */
1275
- cashtag?: string;
1276
- }
1277
- type CashAppPayElementData = {
1278
- paymentMethod: {
1279
- type: string;
1280
- grantId?: string;
1281
- storedPaymentMethodId?: string;
1282
- };
1283
- storePaymentMethod?: boolean;
1284
- };
1285
- type CashAppPayEventData = {
1286
- cashTag?: string;
1287
- customerId?: string;
1288
- grantId?: string;
1289
- onFileGrantId?: string;
1290
- };
1291
-
1292
- interface TimeoutErrorProps {
1293
- source: string;
1294
- scheme: string;
1295
- isTimeoutTriggeredBySchemeSdk: boolean;
1296
- }
1297
- declare class TimeoutError extends Error {
1298
- scheme: string;
1299
- source: string;
1300
- isTimeoutTriggeredBySchemeSdk: boolean;
1301
- /** Currently populated only by Visa SDK if available */
1302
- correlationId?: string;
1303
- constructor(options: TimeoutErrorProps);
1304
- setCorrelationId(correlationId: string): void;
1305
- toString(): string;
1306
- }
1307
-
1308
- type ClickToPayProps = {
1724
+ applicationData?: string;
1309
1725
  /**
1310
- * Shopper email used to be recognized with the Network schemes
1726
+ * Called when the shopper clicks the Apple Pay button
1727
+
1728
+ * @param resolve - Must be called if the button should be displayed
1729
+ * @param reject - Must be called if the button should not be displayed
1730
+ * @returns
1311
1731
  */
1312
- shopperEmail?: string;
1732
+ onClick?: (resolve: () => void, reject: () => void) => void;
1313
1733
  /**
1314
- * Shopper telephone number used to be recognized with the Network schemes
1734
+ * A callback function the Apple Pay SDK calls when the Apple Pay code modal or window closes.
1315
1735
  */
1316
- telephoneNumber?: string;
1736
+ onApplePayCodeClose?: ApplePayWebConfiguration['onApplePayCodeClose'];
1317
1737
  /**
1318
- * Used to display the merchant name in case the DCF appears (ex: first time doing transaction in the device),
1738
+ * Callback called when ApplePay authorize the payment.
1739
+ * Must be resolved/rejected with the action object.
1740
+ *
1741
+ * @param data - Authorization event from ApplePay, along with formatted billingAddress and deliveryAddress
1742
+ * @param actions - Object to continue/stop with the payment flow
1743
+ *
1744
+ * @remarks
1745
+ * If actions.resolve() is called, the payment flow will be triggered.
1746
+ * If actions.reject() is called, the overlay will display an error
1319
1747
  */
1320
- merchantDisplayName?: string;
1748
+ onAuthorized?: (data: {
1749
+ authorizedEvent: ApplePayJS.ApplePayPaymentAuthorizedEvent;
1750
+ billingAddress?: Partial<AddressData>;
1751
+ deliveryAddress?: Partial<AddressData>;
1752
+ }, actions: {
1753
+ resolve: () => void;
1754
+ reject: (error?: ApplePayJS.ApplePayError) => void;
1755
+ }) => void;
1321
1756
  /**
1322
- * Used to ensure the correct language and user experience if DCF screen is displayed. As a fallback, it uses the main locale
1323
- * defined during the creation of the Checkout.
1324
- * Format: ISO language_country pair (e.g., en_US )
1757
+ * Collect the order tracking details if available.
1758
+ * This callback is invoked when a successfull payment is resolved
1325
1759
  *
1326
- * @defaultValue en_US
1760
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentorderdetails}
1761
+ * @param resolve - Must be called with the orderDetails fields
1762
+ * @param reject - Must be called if something failed during the order creation. Calling 'reject' won't cancel the payment flow
1327
1763
  */
1328
- locale?: string;
1764
+ onOrderTrackingRequest?: (resolve: (orderDetails: ApplePayPaymentOrderDetails) => void, reject: () => void) => void;
1329
1765
  /**
1330
- * Disable autofocus on the One Time Password input field when it is either displayed or when the OTP is resent
1331
- * @defaultValue false
1766
+ * An event handler the system calls when it displays the payment sheet
1767
+ *
1768
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onvalidatemerchant}
1769
+ * @param resolve - Must be called with an opaque message session object
1770
+ * @param reject - Must be called if something failed during the merchant validation
1771
+ * @param validationURL - The URL your server must use to validate itself and obtain a merchant session object.
1332
1772
  */
1333
- disableOtpAutoFocus?: boolean;
1773
+ onValidateMerchant?: (resolve: (merchantSession: unknown) => void, reject: (error?: string) => void, validationURL: string) => Promise<void>;
1334
1774
  /**
1335
- * Callback triggered when the Click to Pay component is ready to be used
1775
+ * An event handler to call when the user selects a new payment method.
1776
+ *
1777
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onpaymentmethodselected}
1778
+ * @param resolve - Completes the selection of a payment method with an update.
1779
+ * @param reject - Completes the selection of a payment method with no update.
1780
+ * @param event - The event parameter contains the paymentMethod attribute.
1336
1781
  */
1337
- onReady?(): void;
1782
+ onPaymentMethodSelected?: (resolve: (paymentMethodUpdate: ApplePayJS.ApplePayPaymentMethodUpdate) => void, reject: (paymentMethodUpdate: ApplePayJS.ApplePayPaymentMethodUpdate) => void, event: ApplePayJS.ApplePayPaymentMethodSelectedEvent) => void;
1338
1783
  /**
1339
- * Callback triggered when a timeout happens within Click to Pay service.
1340
- * Ex: Network schemes took too long to initialize
1784
+ * An event handler to call when the user selects a shipping contact in the payment sheet.
1785
+ *
1786
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/onshippingcontactselected}
1787
+ * @param resolve - Completes the selection of a shipping contact with an update.
1788
+ * @param reject - Completes the selection of a shipping contact with no update.
1789
+ * @param event - The event parameter contains the shippingContact attribute.
1341
1790
  */
1342
- onTimeout?(error: TimeoutError): void;
1343
- };
1344
- type ClickToPayScheme = 'mc' | 'visa';
1345
-
1346
- declare enum AnalyticsEventCategory {
1347
- info = "info",
1348
- error = "error",
1349
- log = "log"
1350
- }
1351
- declare abstract class AbstractAnalyticsEvent {
1352
- private readonly timestamp;
1353
- private readonly id;
1791
+ onShippingContactSelected?: (resolve: (shippingContactUpdate: ApplePayJS.ApplePayShippingContactUpdate) => void, reject: (shippingContactUpdate: ApplePayJS.ApplePayShippingContactUpdate) => void, event: ApplePayJS.ApplePayShippingContactSelectedEvent) => void;
1354
1792
  /**
1355
- * Component tx variant or identifier
1356
- * @private
1793
+ * Completes the selection of a shipping method with an update.
1794
+ *
1795
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/completeshippingmethodselection}
1796
+ * @param resolve - Completes the selection of a shipping method with an update.
1797
+ * @param reject - Completes the selection of a shipping method with no update.
1798
+ * @param event - The event parameter contains the shippingMethod attribute.
1357
1799
  */
1358
- private readonly component;
1359
- abstract getEventCategory(): AnalyticsEventCategory;
1360
- protected constructor(component: string);
1361
- }
1362
-
1363
- interface AnalyticsOptions {
1800
+ onShippingMethodSelected?: (resolve: (shippingMethodUpdate: ApplePayJS.ApplePayShippingMethodUpdate) => void, reject: (shippingMethodUpdate: ApplePayJS.ApplePayShippingMethodUpdate) => void, event: ApplePayJS.ApplePayShippingMethodSelectedEvent) => void;
1364
1801
  /**
1365
- * Enable/Disable all analytics
1802
+ * The initial coupon code for the payment request.
1803
+ * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/couponcode couponCode docs}
1366
1804
  */
1367
- enabled?: boolean;
1805
+ couponCode?: ApplePayJS.ApplePayPaymentRequest['couponCode'];
1368
1806
  /**
1369
- * A wrapper to pass data needed when analytics is setup
1807
+ * A Boolean value that determines whether the payment sheet displays the coupon code field.
1808
+ * @see {@link https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/supportscouponcode supportsCouponCode docs}
1370
1809
  */
1371
- analyticsData?: {
1372
- /**
1373
- * Relates to PMs used within Plugins
1374
- * https://docs.adyen.com/development-resources/application-information/?tab=integrator_built_2#application-information-fields
1375
- * @internal
1376
- */
1377
- applicationInfo?: ApplicationInfo;
1378
- /**
1379
- * Use a checkoutAttemptId from a previous page
1380
- */
1381
- checkoutAttemptId?: string;
1382
- };
1383
- }
1384
- interface ApplicationInfo {
1385
- externalPlatform: {
1386
- name: string;
1387
- version: string;
1388
- integrator: string;
1389
- };
1390
- merchantApplication: {
1391
- name: string;
1392
- version: string;
1393
- };
1394
- merchantDevice?: {
1395
- os: string;
1396
- osVersion: string;
1397
- };
1398
- }
1399
-
1400
- interface IAnalytics {
1401
- checkoutAttemptId?: string;
1402
- setUp({ sessionId, checkoutStage, locale }: {
1403
- sessionId?: string;
1404
- checkoutStage?: 'precheckout' | 'checkout';
1405
- locale?: string;
1406
- }): Promise<void>;
1407
- sendFlavor(flavor: 'dropin' | 'components'): Promise<void>;
1408
- sendAnalytics(event: AbstractAnalyticsEvent): void;
1409
- flush(): void;
1410
- }
1411
-
1412
- type MastercardCheckout = {
1413
- srcDigitalCardId: string;
1414
- srcCorrelationId: string;
1415
- srcScheme: string;
1416
- };
1417
- type VisaCheckout = {
1418
- srcCheckoutPayload?: string;
1419
- srcTokenReference?: string;
1420
- srcCorrelationId: string;
1421
- srcScheme: string;
1422
- };
1423
- type ClickToPayCheckoutPayload = VisaCheckout | MastercardCheckout;
1424
-
1425
- type ClickToPayConfiguration = UIElementProps & ClickToPayProps & {
1810
+ supportsCouponCode?: ApplePayJS.ApplePayPaymentRequest['supportsCouponCode'];
1811
+ /**
1812
+ * An event handler called by the system when the user enters or updates a coupon code.
1813
+ *
1814
+ * {@link https://developer.apple.com/documentation/applepayontheweb/applepaysession/oncouponcodechanged}
1815
+ * @param resolve - Completes the change of a coupon code with an update.
1816
+ * @param reject - Completes the change of a coupon code with no update.
1817
+ * @param event - The event parameter contains the couponCode attribute.
1818
+ */
1819
+ onCouponCodeChanged?: (resolve: (update: ApplePayJS.ApplePayCouponCodeUpdate) => void, reject: (update: ApplePayJS.ApplePayCouponCodeUpdate) => void, event: ApplePayJS.ApplePayCouponCodeChangedEvent) => void;
1820
+ buttonColor?: ApplePayButtonStyle;
1821
+ buttonType?: ApplePayButtonType;
1426
1822
  /**
1427
- * ClickToPay configuration sent by the /paymentMethods response
1823
+ * Used to tweak the text of the button types that contain text ('Continue with', 'Book with', etc)
1428
1824
  */
1429
- configuration?: {
1430
- mcDpaId?: string;
1431
- mcSrcClientId?: string;
1432
- visaSrcInitiatorId?: string;
1433
- visaSrciDpaId?: string;
1434
- };
1435
- };
1436
- type ClickToPayPaymentData = {
1437
- paymentMethod: ClickToPayCheckoutPayload & {
1438
- type: string;
1439
- };
1440
- origin: string;
1441
- browserInfo: BrowserInfo;
1442
- };
1443
-
1444
- interface TouchStartEventObj {
1445
- fieldType: string;
1446
- name?: string;
1825
+ buttonLocale?: string;
1447
1826
  }
1448
-
1449
- type PlaceholderKeys$1 = 'cardNumber' | 'securityCode' | 'expiryDate';
1450
- type Placeholders$1 = Partial<Record<PlaceholderKeys$1, string>>;
1451
- type GiftcardFieldsProps = {
1452
- setRootNode: (input: HTMLElement) => void;
1453
- i18n: Language;
1454
- pinRequired: boolean;
1455
- sfpState: SFPState;
1456
- getCardErrorMessage: any;
1457
- focusedElement: any;
1458
- setFocusOn: any;
1459
- label?: string;
1460
- };
1461
-
1462
- /**
1463
- * SecuredFieldsProvider:
1464
- * Initialises & handles the client-side part of SecuredFields
1465
- */
1466
- declare class SecuredFieldsProvider extends Component<SFPProps, SFPState> {
1467
- private csfLoadFailTimeout;
1468
- private readonly csfLoadFailTimeoutMS;
1469
- private readonly csfConfigFailTimeout;
1470
- private readonly csfConfigFailTimeoutMS;
1471
- private numCharsInField;
1472
- private rootNode;
1473
- private numDateFields;
1474
- private csf;
1475
- private readonly handleOnLoad;
1476
- private readonly handleOnConfigSuccess;
1477
- private readonly handleOnFieldValid;
1478
- private readonly handleOnAllValid;
1479
- private readonly handleOnBrand;
1480
- private readonly handleFocus;
1481
- private readonly handleOnError;
1482
- private readonly handleOnAutoComplete;
1483
- private readonly handleOnNoDataRequired;
1484
- private readonly handleOnTouchstartIOS;
1485
- private readonly handleKeyDown;
1486
- state: SFPState;
1487
- props: SFPProps;
1488
- private issuingCountryCode;
1489
- constructor(props: SFPProps);
1490
- static readonly defaultProps: {
1827
+ interface ApplePayElementData {
1828
+ paymentMethod: {
1491
1829
  type: string;
1492
- keypadFix: boolean;
1493
- rootNode: any;
1494
- loadingContext: any;
1495
- brands: any[];
1496
- showWarnings: boolean;
1497
- autoFocus: boolean;
1498
- trimTrailingSeparator: boolean;
1499
- onChange: () => void;
1500
- onLoad: () => void;
1501
- onConfigSuccess: () => void;
1502
- onAllValid: () => void;
1503
- onFieldValid: () => void;
1504
- onBrand: () => void;
1505
- onError: () => void;
1506
- onBinValue: () => void;
1507
- onFocus: () => void;
1508
- onAutoComplete: () => void;
1509
- handleKeyDown: () => void;
1510
- styles: {};
1830
+ applePayToken: string;
1831
+ isExpress?: boolean;
1511
1832
  };
1512
- componentDidMount(): void;
1513
- componentDidUpdate(): void;
1514
- componentWillUnmount(): void;
1515
- private initializeCSF;
1516
- private checkForKCPFields;
1517
- getChildContext(): object;
1518
- handleUnsupportedCard(errObj: CardErrorData): boolean;
1519
- setFocusOn(frame: SFFieldType): void;
1520
- updateStyles(stylesObj: StylesObject): void;
1521
- sfIsOptionalOrHidden(fieldType: string): boolean;
1522
- destroy(): void;
1523
- getRootNode(): HTMLElement;
1524
- showValidation(): void;
1525
- /**
1526
- * Map SF errors to ValidationRuleResult-like objects, for CardInput component
1527
- */
1528
- mapErrorsToValidationRuleResult(): SFStateErrorObj;
1529
- processBinLookupResponse(binLookupResponse: BinLookupResponse, resetObject: SingleBrandResetObject): void;
1530
- private setRootNode;
1531
- render(props: any, state: SFPState): any;
1532
- }
1533
-
1534
- type Placeholders = CardPlaceholders | Placeholders$1;
1535
- /**
1536
- * Should be the only props that can be sent to SFP (from CardInput, SecuredFieldsInput, GiftcardComponent)
1537
- */
1538
- interface SFPProps {
1539
- ref?: Ref<SecuredFieldsProvider>;
1540
- autoFocus?: boolean;
1541
- brands?: string[];
1542
- brandsConfiguration?: CardBrandsConfiguration;
1543
- clientKey: string;
1544
- componentType: string;
1545
- countryCode?: string;
1546
- forceCompat?: boolean;
1547
- hasKoreanFields?: boolean;
1548
- i18n?: Language;
1549
- implementationType?: 'components' | 'custom';
1550
- keypadFix?: boolean;
1551
- koreanAuthenticationRequired?: boolean;
1552
- legacyInputMode?: boolean;
1553
- loadingContext: string;
1554
- minimumExpiryDate?: string;
1555
- onAdditionalSFConfig?: () => void;
1556
- onAdditionalSFRemoved?: () => void;
1557
- onAllValid?: (obj: CardAllValidData) => void;
1558
- onAutoComplete?: (obj: CardAutoCompleteData) => void;
1559
- onBinValue?: (obj: CardBinValueData) => void;
1560
- onBrand?: (obj: CardBrandData) => void;
1561
- onChange?: (state: SFPState, eventDetails?: OnChangeEventDetails) => void;
1562
- onConfigSuccess?: (cbObj: CardConfigSuccessData) => void;
1563
- onError?: (error: AdyenCheckoutError) => void;
1564
- onFieldValid?: (fieldObj: CardFieldValidData) => void;
1565
- onFocus?: (obj: CardFocusData) => void;
1566
- onLoad?: (cbObj: CardLoadData) => void;
1567
- onStateUpdate?: (obj: SFPState) => void;
1568
- onSubmitAnalytics?: (event: AbstractAnalyticsEvent) => void;
1569
- handleKeyDown?: (event: KeyboardEvent) => void;
1570
- rootNode?: HTMLElement;
1571
- showWarnings?: boolean;
1572
- styles?: StylesObject;
1573
- trimTrailingSeparator?: boolean;
1574
- type: string;
1575
- render?: (helpers: {
1576
- setRootNode: (input: HTMLElement) => void;
1577
- setFocusOn: (fieldName: string) => void;
1578
- }, state: SFPState) => ComponentChildren;
1579
- resources?: Resources;
1580
- maskSecurityCode?: boolean;
1581
- exposeExpiryDate?: boolean;
1582
- disableIOSArrowKeys?: (obj: TouchStartEventObj) => void | null;
1583
- placeholders?: Placeholders;
1584
- showContextualElement?: boolean;
1585
- }
1586
- type SFPErrorMap = Partial<Record<SFFieldType, string>>;
1587
- interface SFPState {
1588
- status?: string;
1589
- brand?: string;
1590
- errors?: SFPErrorMap;
1591
- valid: SFPValid;
1592
- data: object;
1593
- cvcPolicy?: CVCPolicyType;
1594
- isSfpValid?: boolean;
1595
- autoCompleteName?: string;
1596
1833
  billingAddress?: AddressData;
1597
- detectedUnsupportedBrands?: string[];
1598
- hasKoreanFields?: boolean;
1599
- showSocialSecurityNumber?: boolean;
1600
- expiryDatePolicy?: DatePolicyType;
1601
- socialSecurityNumber?: string;
1602
- }
1603
- interface SingleBrandResetObject {
1604
- brand: string;
1605
- cvcPolicy: CVCPolicyType;
1606
- }
1607
- interface SFPValid {
1608
- encryptedCardNumber?: boolean;
1609
- encryptedExpiryMonth?: boolean;
1610
- encryptedExpiryYear?: boolean;
1611
- encryptedSecurityCode?: boolean;
1612
- encryptedPassword?: boolean;
1613
- encryptedPin?: boolean;
1614
- }
1615
- interface OnChangeEventDetails {
1616
- event: string;
1617
- fieldType?: string;
1834
+ deliveryAddress?: AddressData;
1618
1835
  }
1619
-
1620
- /** A list of all the data-cse attributes that relate to securedFields (as found in card, giftcard) */
1621
- declare const ALL_SECURED_FIELDS: readonly ["encryptedCardNumber", "encryptedExpiryDate", "encryptedExpiryMonth", "encryptedExpiryYear", "encryptedSecurityCode", "encryptedPassword"];
1622
- declare const REQUIRED = "required";
1623
- declare const OPTIONAL = "optional";
1624
- declare const HIDDEN = "hidden";
1625
- declare const BEST_GUESS_MODE = "best-guess";
1626
- declare const BIN_LOOKUP_MODE = "bin-lookup";
1627
-
1628
- declare global {
1629
- interface Window {
1630
- _b$dl: boolean;
1631
- mockBinCount: number;
1632
- }
1836
+ interface ApplePaySessionRequest {
1837
+ displayName: string;
1838
+ domainName: string;
1839
+ initiative: Initiative;
1840
+ merchantIdentifier: string;
1633
1841
  }
1634
- type SFFieldType = (typeof ALL_SECURED_FIELDS)[number];
1635
- type BrandModeType = typeof BIN_LOOKUP_MODE | typeof BEST_GUESS_MODE;
1636
- interface StylesObject {
1637
- base?: StyleDefinitions;
1638
- error?: StyleDefinitions;
1639
- validated?: StyleDefinitions;
1640
- placeholder?: StyleDefinitions;
1842
+ interface ApplePayWebConfiguration {
1843
+ renderApplePayCodeAs?: 'modal' | 'window';
1844
+ onApplePayCodeClose?(): void;
1641
1845
  }
1642
- interface StyleDefinitions {
1643
- background?: string;
1644
- caretColor?: string;
1645
- color?: string;
1646
- display?: string;
1647
- font?: string;
1648
- fontFamily?: string;
1649
- fontSize?: string;
1650
- fontSizeAdjust?: string;
1651
- fontSmoothing?: string;
1652
- fontStretch?: string;
1653
- fontStyle?: string;
1654
- fontVariant?: string;
1655
- fontVariantAlternates?: string;
1656
- fontVariantCaps?: string;
1657
- fontVariantEastAsian?: string;
1658
- fontVariantLigatures?: string;
1659
- fontVariantNumeric?: string;
1660
- fontWeight?: string;
1661
- letterSpacing?: string;
1662
- lineHeight?: string;
1663
- mozOsxFontSmoothing?: string;
1664
- mozTransition?: string;
1665
- outline?: string;
1666
- opacity?: string;
1667
- padding?: string;
1668
- textAlign?: string;
1669
- textShadow?: string;
1670
- transition?: string;
1671
- webkitFontSmoothing?: string;
1672
- webkitTransition?: string;
1673
- wordSpacing?: string;
1846
+
1847
+ interface BankTransferResultProps {
1848
+ paymentMethodType?: string;
1849
+ reference?: string;
1850
+ totalAmount?: {
1851
+ value: number;
1852
+ currency: string;
1853
+ };
1854
+ beneficiary?: string;
1855
+ iban?: string;
1856
+ bic?: string;
1857
+ accountNumber?: string;
1858
+ sortCode?: string;
1859
+ routingNumber?: string;
1860
+ branchCode?: string;
1861
+ bankCode?: string;
1862
+ onActionHandled?: (actionHandledObj: ActionHandledReturnObject) => void;
1674
1863
  }
1675
- interface CardAllValidData {
1676
- type: string;
1677
- allValid: boolean;
1678
- rootNode: HTMLElement;
1864
+
1865
+ type BankTransferConfiguration = UIElementProps & BankTransferResultProps & {
1866
+ /**
1867
+ * Show/hide email address field
1868
+ * @default true
1869
+ */
1870
+ showEmailAddress?: boolean;
1871
+ };
1872
+ interface BankTransferState extends UIElementProps {
1873
+ data: {
1874
+ shopperEmail?: string;
1875
+ };
1876
+ isValid: boolean;
1679
1877
  }
1680
- interface CardAutoCompleteData {
1681
- fieldType: string;
1682
- name: string;
1878
+ interface BankTransferSchema {
1879
+ shopperEmail?: string;
1880
+ }
1881
+
1882
+ interface VoucherDetail {
1883
+ label: string;
1683
1884
  value: string;
1684
- action: string;
1685
1885
  }
1686
- interface CardBinLookupData {
1687
- type?: string;
1688
- detectedBrands?: string[] | null;
1689
- supportedBrands?: string[] | null;
1690
- brands?: string[];
1691
- issuingCountryCode?: string;
1692
- healthcare?: Record<string, boolean>[];
1693
- supportedBrandsRaw?: BrandObject[];
1694
- rootNode?: HTMLElement;
1695
- isReset?: boolean;
1696
- dualBrandingType?: string;
1697
- paymentMethodVariants?: (string | undefined)[];
1886
+ interface VoucherProps {
1887
+ /**
1888
+ * Payment method used to generate the voucher.
1889
+ */
1890
+ paymentMethodType: string;
1891
+ /**
1892
+ * Payment method image to be displayed on the voucher.
1893
+ */
1894
+ imageUrl?: string;
1895
+ /**
1896
+ * If applicable, it will render an issuer image next to the payment method image.
1897
+ */
1898
+ issuerImageUrl?: string;
1899
+ /**
1900
+ * Voucher instructions URL.
1901
+ */
1902
+ instructionsUrl?: string;
1903
+ /**
1904
+ * Download URL for the voucher. It will display a button allowing the shopper to download it.
1905
+ */
1906
+ downloadUrl?: string;
1907
+ /**
1908
+ * Text that will be displayed on the above Download button.
1909
+ */
1910
+ downloadButtonText?: string;
1911
+ /**
1912
+ * Introduction text on the voucher.
1913
+ */
1914
+ introduction?: string;
1915
+ /**
1916
+ * Payment reference.
1917
+ */
1918
+ reference?: string;
1919
+ /**
1920
+ * URL to a barcode image representing the payment reference.
1921
+ */
1922
+ barcode?: string;
1923
+ /**
1924
+ * Total amount displayed on the voucher.
1925
+ */
1926
+ amount?: string;
1927
+ /**
1928
+ * Any additional surcharge to the amount.
1929
+ */
1930
+ surcharge?: string;
1931
+ /**
1932
+ * List of details that will be rendered on the voucher.
1933
+ */
1934
+ voucherDetails?: VoucherDetail[];
1935
+ /**
1936
+ * Additional CSS classes.
1937
+ */
1938
+ className?: string;
1939
+ /**
1940
+ * Show/Hide a button to copy the payment reference. It will only show if a reference is available.
1941
+ */
1942
+ copyBtn?: boolean;
1943
+ /**
1944
+ * Show/Hide payment reference value.
1945
+ * @default true
1946
+ */
1947
+ showReferenceValue?: boolean;
1948
+ /**
1949
+ * Label for the payment reference.
1950
+ */
1951
+ paymentReferenceLabel?: string;
1952
+ onActionHandled?: (rtnObj: ActionHandledReturnObject) => void;
1698
1953
  }
1699
- interface CardBinValueData {
1700
- type: string;
1701
- binValue: string;
1702
- uuid?: string;
1703
- encryptedBin?: string;
1954
+ interface VoucherConfiguration extends UIElementProps {
1955
+ reference?: string;
1956
+ url?: string;
1957
+ paymentMethodType?: string;
1704
1958
  }
1705
- interface CardBrandData {
1706
- type: string;
1707
- rootNode: HTMLElement;
1708
- brand: string;
1709
- cvcPolicy: CVCPolicyType;
1710
- expiryDatePolicy?: DatePolicyType;
1711
- cvcText: string;
1712
- showSocialSecurityNumber?: boolean;
1713
- brandImageUrl?: string;
1714
- mode?: BrandModeType;
1959
+ type CommonVoucherProps = Pick<VoucherProps, 'paymentMethodType' | 'introduction' | 'imageUrl' | 'amount' | 'reference' | 'onActionHandled'>;
1960
+
1961
+ interface BoletoConfiguration extends VoucherConfiguration {
1962
+ /**
1963
+ * Set to false if you have already collected the shopper's first name, last name, and CPF/CNPJ (socialSecurityNumber).
1964
+ * @default true
1965
+ */
1966
+ personalDetailsRequired?: boolean;
1967
+ /**
1968
+ * Set this to false if you have already collected the shopper's street, house number or name, city, postal code, and state or province.
1969
+ * @default true
1970
+ */
1971
+ billingAddressRequired?: boolean;
1972
+ /**
1973
+ * Set this to false if you have already collected the shopper's email address.
1974
+ * @default true
1975
+ */
1976
+ showEmailAddress?: boolean;
1977
+ /**
1978
+ * Object to pre-fill shopper details on the form
1979
+ */
1980
+ data?: BoletoInputDataState;
1715
1981
  }
1716
- interface CardConfigSuccessData {
1717
- iframesConfigured: boolean;
1982
+ interface BoletoElementProps {
1718
1983
  type: string;
1719
- rootNode: HTMLElement;
1984
+ i18n: Language;
1985
+ loadingContext: string;
1986
+ reference?: string;
1720
1987
  }
1721
- interface CardErrorData {
1722
- fieldType: string;
1723
- error: string;
1724
- type: string;
1725
- rootNode?: HTMLElement;
1726
- detectedBrands?: string[];
1727
- errorI18n?: string;
1728
- errorText?: string;
1988
+ interface BoletoInputDataState {
1989
+ firstName?: string;
1990
+ lastName?: string;
1991
+ billingAddress?: AddressData;
1992
+ socialSecurityNumber?: string;
1993
+ shopperEmail?: string;
1729
1994
  }
1730
- interface CardFieldValidData {
1731
- fieldType: string;
1732
- encryptedFieldName: string;
1733
- uid: string;
1734
- valid: boolean;
1735
- type: string;
1736
- rootNode: HTMLElement;
1737
- blob?: string;
1738
- endDigits?: string;
1739
- expiryDate?: string;
1740
- issuerBin?: number;
1995
+ interface BoletoInputValidState {
1996
+ firstName?: boolean;
1997
+ lastName?: boolean;
1998
+ shopperEmail?: boolean;
1999
+ socialSecurityNumber?: boolean;
2000
+ billingAddress?: boolean;
1741
2001
  }
1742
- interface CardFocusData {
1743
- action: string;
1744
- focus: boolean;
1745
- numChars: number;
1746
- fieldType: string;
1747
- rootNode: HTMLElement;
1748
- type: string;
1749
- currentFocusObject: string;
2002
+ interface BoletoInputErrorState {
2003
+ firstName?: boolean;
2004
+ lastName?: boolean;
2005
+ shopperEmail?: boolean;
2006
+ socialSecurityNumber?: boolean;
1750
2007
  }
1751
- interface CardLoadData {
1752
- iframesLoaded: boolean;
2008
+
2009
+ interface CashAppPayConfiguration extends UIElementProps {
2010
+ /**
2011
+ * Indicates that the payment must be stored (Ex: in case there is no checkbox but merchant wants to store it)
2012
+ */
2013
+ storePaymentMethod?: boolean;
2014
+ /**
2015
+ * Enables storing the payment method using the Checkbox
2016
+ */
2017
+ enableStoreDetails?: boolean;
2018
+ /**
2019
+ * Callback triggered before starting the CashAppPay flow. Use case: Validate customer data, check product availability
2020
+ */
2021
+ onClick?(actions: {
2022
+ resolve: () => void;
2023
+ reject: () => void;
2024
+ }): void;
2025
+ /**
2026
+ * A reference to your system (for example, a cart or checkout identifier). Maximum length 1024 characters.
2027
+ * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference#parameters-3
2028
+ */
2029
+ referenceId?: string;
2030
+ /**
2031
+ * The destination for the customer after approving (or declining) in Cash App for mobile redirect flow.
2032
+ * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference#customerrequest
2033
+ * @defaultValue window.location.ref
2034
+ */
2035
+ redirectURL?: string;
2036
+ /**
2037
+ * Button customization
2038
+ * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/use-cases#customize-the-cash-app-pay-button
2039
+ */
2040
+ button?: {
2041
+ shape?: 'semiround' | 'round';
2042
+ size?: 'medium' | 'small';
2043
+ theme?: 'dark' | 'light';
2044
+ width?: 'static' | 'full';
2045
+ };
2046
+ /**
2047
+ * CashAppPay configuration sent by the /paymentMethods response
2048
+ */
2049
+ configuration?: {
2050
+ clientId: string;
2051
+ scopeId: string;
2052
+ };
2053
+ /**
2054
+ * If payment is tokenized, then API will return its ID
2055
+ * @internal
2056
+ */
2057
+ storedPaymentMethodId?: string;
2058
+ /**
2059
+ * If payment is tokenized, then API will return this value
2060
+ * @internal
2061
+ */
2062
+ cashtag?: string;
1753
2063
  }
1754
- type CVCPolicyType = typeof REQUIRED | typeof OPTIONAL | typeof HIDDEN;
1755
- type DatePolicyType = typeof REQUIRED | typeof OPTIONAL | typeof HIDDEN;
1756
- interface BrandConfiguration {
1757
- name?: string;
1758
- icon?: string;
2064
+ type CashAppPayElementData = {
2065
+ paymentMethod: {
2066
+ type: string;
2067
+ grantId?: string;
2068
+ storedPaymentMethodId?: string;
2069
+ };
2070
+ storePaymentMethod?: boolean;
2071
+ };
2072
+ type CashAppPayEventData = {
2073
+ cashTag?: string;
2074
+ customerId?: string;
2075
+ grantId?: string;
2076
+ onFileGrantId?: string;
2077
+ };
2078
+
2079
+ interface TimeoutErrorProps {
2080
+ source: string;
2081
+ scheme: string;
2082
+ isTimeoutTriggeredBySchemeSdk: boolean;
1759
2083
  }
1760
- interface CardBrandsConfiguration {
1761
- [key: string]: BrandConfiguration;
2084
+ declare class TimeoutError extends Error {
2085
+ scheme: string;
2086
+ source: string;
2087
+ isTimeoutTriggeredBySchemeSdk: boolean;
2088
+ /** Currently populated only by Visa SDK if available */
2089
+ correlationId?: string;
2090
+ constructor(options: TimeoutErrorProps);
2091
+ setCorrelationId(correlationId: string): void;
2092
+ toString(): string;
1762
2093
  }
1763
2094
 
2095
+ type ClickToPayProps = {
2096
+ /**
2097
+ * Shopper email used to be recognized with the Network schemes
2098
+ */
2099
+ shopperEmail?: string;
2100
+ /**
2101
+ * Shopper telephone number used to be recognized with the Network schemes
2102
+ */
2103
+ telephoneNumber?: string;
2104
+ /**
2105
+ * Used to display the merchant name in case the DCF appears (ex: first time doing transaction in the device),
2106
+ */
2107
+ merchantDisplayName?: string;
2108
+ /**
2109
+ * Used to ensure the correct language and user experience if DCF screen is displayed. As a fallback, it uses the main locale
2110
+ * defined during the creation of the Checkout.
2111
+ * Format: ISO language_country pair (e.g., en_US )
2112
+ *
2113
+ * @defaultValue en_US
2114
+ */
2115
+ locale?: string;
2116
+ /**
2117
+ * Disable autofocus on the One Time Password input field when it is either displayed or when the OTP is resent
2118
+ * @defaultValue false
2119
+ */
2120
+ disableOtpAutoFocus?: boolean;
2121
+ /**
2122
+ * Callback triggered when the Click to Pay component is ready to be used
2123
+ */
2124
+ onReady?(): void;
2125
+ /**
2126
+ * Callback triggered when a timeout happens within Click to Pay service.
2127
+ * Ex: Network schemes took too long to initialize
2128
+ */
2129
+ onTimeout?(error: TimeoutError): void;
2130
+ };
2131
+ type ClickToPayScheme = 'mc' | 'visa';
2132
+
2133
+ type MastercardCheckout = {
2134
+ srcDigitalCardId: string;
2135
+ srcCorrelationId: string;
2136
+ srcScheme: string;
2137
+ };
2138
+ type VisaCheckout = {
2139
+ srcCheckoutPayload?: string;
2140
+ srcTokenReference?: string;
2141
+ srcCorrelationId: string;
2142
+ srcScheme: string;
2143
+ };
2144
+ type ClickToPayCheckoutPayload = VisaCheckout | MastercardCheckout;
2145
+
2146
+ type ClickToPayConfiguration = UIElementProps & ClickToPayProps & {
2147
+ /**
2148
+ * ClickToPay configuration sent by the /paymentMethods response
2149
+ */
2150
+ configuration?: {
2151
+ mcDpaId?: string;
2152
+ mcSrcClientId?: string;
2153
+ visaSrcInitiatorId?: string;
2154
+ visaSrciDpaId?: string;
2155
+ };
2156
+ };
2157
+ type ClickToPayPaymentData = {
2158
+ paymentMethod: ClickToPayCheckoutPayload & {
2159
+ type: string;
2160
+ };
2161
+ origin: string;
2162
+ browserInfo: BrowserInfo;
2163
+ };
2164
+
1764
2165
  declare enum ErrorEventCode {
1765
2166
  /** Trying to initialise a securedField iframe, but the iframe.contentWindow is undefined (meaning the containing element is not in the DOM */
1766
2167
  SECURED_FIELDS_IFRAME_CONTENT_WINDOW_NOT_FOUND = "500",
@@ -1926,12 +2327,9 @@ type CheckoutThreeDS2Action = {
1926
2327
  subtype: string;
1927
2328
  authorisationToken: string;
1928
2329
  };
1929
- interface FingerprintResolveData {
1930
- data: {
1931
- [key: string]: string;
1932
- paymentData: string;
1933
- };
1934
- }
2330
+ type FingerprintResolveData = {
2331
+ data: Omit<AdditionalDetailsData['data'], 'details'>;
2332
+ };
1935
2333
  interface ChallengeResolveData {
1936
2334
  data: {
1937
2335
  details: {
@@ -1980,8 +2378,8 @@ type ThreeDS2ConfigProps = {
1980
2378
  };
1981
2379
  type ThreeDS2ActionProps = CardConfiguration & Pick<ThreeDS2ConfigProps, 'isMDFlow' | 'on3DS2RedirectFlowComplete' | 'usePasskeyIFrameAttributes'>;
1982
2380
 
1983
- type CoreCallbacks$1 = Pick<CoreConfiguration, 'beforeRedirect' | 'beforeSubmit' | 'onSubmit' | 'onAdditionalDetails' | 'onPaymentFailed' | 'onPaymentCompleted' | 'onChange' | 'onActionHandled' | 'onError' | 'onEnterKeyPressed'>;
1984
- type CustomCardConfiguration = CoreCallbacks$1 & {
2381
+ type CoreCallbacks = Pick<CoreConfiguration, 'beforeRedirect' | 'beforeSubmit' | 'onSubmit' | 'onAdditionalDetails' | 'onPaymentFailed' | 'onPaymentCompleted' | 'onChange' | 'onActionHandled' | 'onError' | 'onEnterKeyPressed'>;
2382
+ type CustomCardConfiguration = CoreCallbacks & {
1985
2383
  /**
1986
2384
  * Automatically shift the focus from one field to another. Usually happens from a valid Expiry Date field to the Security Code field,
1987
2385
  * but some BINS also allow us to know that the PAN is complete, in which case we can shift focus to the date field
@@ -2192,22 +2590,22 @@ interface OpenInvoiceVisibility {
2192
2590
  }
2193
2591
  interface BankDetailsSchema {
2194
2592
  countryCode?: string;
2195
- ibanNumber?: any;
2593
+ ibanNumber?: string;
2196
2594
  ownerName?: string;
2197
2595
  }
2198
2596
  interface OpenInvoiceProps extends UIElementProps {
2199
2597
  allowedCountries?: string[];
2200
- consentCheckboxLabel: any;
2598
+ consentCheckboxLabel?: ComponentChild;
2201
2599
  countryCode?: string;
2202
- data: {
2600
+ data?: {
2203
2601
  companyDetails?: CompanyDetailsSchema;
2204
2602
  personalDetails?: PersonalDetailsSchema | null;
2205
2603
  billingAddress?: AddressData;
2206
2604
  deliveryAddress?: AddressData;
2207
2605
  bankAccount?: BankDetailsSchema;
2208
2606
  };
2209
- onChange: (state: any, element?: UIElement) => void;
2210
- payButton: any;
2607
+ onChange: (state: OpenInvoiceState, element?: UIElement) => void;
2608
+ payButton: (props: PayButtonProps) => h.JSX.Element;
2211
2609
  visibility?: OpenInvoiceVisibility;
2212
2610
  personalDetailsRequiredFields?: string[];
2213
2611
  billingAddressRequiredFields?: string[];
@@ -2240,6 +2638,12 @@ interface OpenInvoiceStateValid {
2240
2638
  personalDetails?: boolean;
2241
2639
  bankAccount?: boolean;
2242
2640
  }
2641
+ interface OpenInvoiceState {
2642
+ data: OpenInvoiceStateData;
2643
+ errors?: OpenInvoiceStateError;
2644
+ valid?: OpenInvoiceStateValid;
2645
+ isValid: boolean;
2646
+ }
2243
2647
  interface OpenInvoiceActiveFieldsets {
2244
2648
  companyDetails: boolean;
2245
2649
  personalDetails: boolean;
@@ -2381,39 +2785,14 @@ declare class Atome extends OpenInvoiceContainer {
2381
2785
  formatProps(props: OpenInvoiceConfiguration): any;
2382
2786
  }
2383
2787
 
2384
- interface RiskModuleOptions {
2385
- enabled: boolean;
2386
- onComplete?: (data: any) => void;
2387
- onError?: (error: any) => void;
2388
- node?: string;
2389
- }
2390
- interface RiskModuleProps extends BaseElementProps {
2391
- risk: RiskModuleOptions;
2392
- loadingContext: string;
2393
- }
2394
- declare class RiskElement extends BaseElement<RiskModuleProps> {
2395
- static readonly type = "risk";
2396
- static readonly defaultProps: {
2397
- risk: {
2398
- enabled: boolean;
2399
- onComplete: () => void;
2400
- onError: () => void;
2401
- node: string;
2402
- };
2788
+ interface IssuerListState {
2789
+ data: {
2790
+ issuer?: string | null;
2403
2791
  };
2404
- private nodeRiskContainer;
2405
- constructor(checkout: ICore, props?: any);
2406
- formatProps(props: any): any;
2407
- onComplete: (result: any) => void;
2408
- onError: (error: any) => void;
2409
- get isValid(): any;
2410
- get data(): any;
2411
- get enabled(): boolean;
2412
- cleanUp: () => void;
2413
- componentWillUnmount(): void;
2414
- render(): h.JSX.Element;
2792
+ valid: Record<string, boolean>;
2793
+ errors: Record<string, ValidationRuleResult | null>;
2794
+ isValid: boolean;
2415
2795
  }
2416
-
2417
2796
  interface IssuerItem {
2418
2797
  id: string;
2419
2798
  name: string;
@@ -2440,7 +2819,7 @@ interface IssuerListData {
2440
2819
  };
2441
2820
  }
2442
2821
 
2443
- declare class IssuerListContainer<TProps extends IssuerListConfiguration = IssuerListConfiguration, TData = IssuerListData> extends UIElement<TProps> {
2822
+ declare class IssuerListContainer<TProps extends IssuerListConfiguration = IssuerListConfiguration, TData extends PaymentData = IssuerListData> extends UIElement<TProps> {
2444
2823
  protected static readonly defaultProps: {
2445
2824
  showImage: boolean;
2446
2825
  issuers: any[];
@@ -2497,6 +2876,7 @@ declare class BillDeskOnlineElement extends IssuerListContainer {
2497
2876
  }) => void;
2498
2877
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
2499
2878
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
2879
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
2500
2880
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
2501
2881
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
2502
2882
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -2511,7 +2891,7 @@ declare class BillDeskOnlineElement extends IssuerListContainer {
2511
2891
  }) => void;
2512
2892
  environment?: string;
2513
2893
  session?: Session;
2514
- onComplete?: (state: any, element: UIElement) => void;
2894
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
2515
2895
  isInstantPayment?: boolean;
2516
2896
  isStoredPaymentMethod?: boolean;
2517
2897
  oneClick?: boolean;
@@ -2526,7 +2906,7 @@ declare class BillDeskOnlineElement extends IssuerListContainer {
2526
2906
  loadingContext?: string;
2527
2907
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
2528
2908
  clientKey?: string;
2529
- elementRef?: any;
2909
+ elementRef?: UIElement;
2530
2910
  i18n?: Language;
2531
2911
  label?: string;
2532
2912
  paymentMethodType?: string;
@@ -2564,6 +2944,7 @@ declare class BillDeskWalletElement extends IssuerListContainer {
2564
2944
  }) => void;
2565
2945
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
2566
2946
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
2947
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
2567
2948
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
2568
2949
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
2569
2950
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -2578,7 +2959,7 @@ declare class BillDeskWalletElement extends IssuerListContainer {
2578
2959
  }) => void;
2579
2960
  environment?: string;
2580
2961
  session?: Session;
2581
- onComplete?: (state: any, element: UIElement) => void;
2962
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
2582
2963
  isInstantPayment?: boolean;
2583
2964
  isStoredPaymentMethod?: boolean;
2584
2965
  oneClick?: boolean;
@@ -2593,7 +2974,7 @@ declare class BillDeskWalletElement extends IssuerListContainer {
2593
2974
  loadingContext?: string;
2594
2975
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
2595
2976
  clientKey?: string;
2596
- elementRef?: any;
2977
+ elementRef?: UIElement;
2597
2978
  i18n?: Language;
2598
2979
  label?: string;
2599
2980
  paymentMethodType?: string;
@@ -2650,6 +3031,7 @@ declare class CashAppPay extends UIElement<CashAppPayConfiguration> {
2650
3031
  }) => void;
2651
3032
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
2652
3033
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
3034
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
2653
3035
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
2654
3036
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
2655
3037
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -2664,7 +3046,7 @@ declare class CashAppPay extends UIElement<CashAppPayConfiguration> {
2664
3046
  }) => void;
2665
3047
  environment?: string;
2666
3048
  session?: Session;
2667
- onComplete?: (state: any, element: UIElement) => void;
3049
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
2668
3050
  isInstantPayment?: boolean;
2669
3051
  isStoredPaymentMethod?: boolean;
2670
3052
  oneClick?: boolean;
@@ -2679,7 +3061,7 @@ declare class CashAppPay extends UIElement<CashAppPayConfiguration> {
2679
3061
  loadingContext?: string;
2680
3062
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
2681
3063
  clientKey?: string;
2682
- elementRef?: any;
3064
+ elementRef?: UIElement;
2683
3065
  i18n?: Language;
2684
3066
  label?: string;
2685
3067
  paymentMethodType?: string;
@@ -2728,6 +3110,7 @@ declare class ClickToPayElement extends UIElement<ClickToPayConfiguration> {
2728
3110
  }) => void;
2729
3111
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
2730
3112
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
3113
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
2731
3114
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
2732
3115
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
2733
3116
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -2742,7 +3125,7 @@ declare class ClickToPayElement extends UIElement<ClickToPayConfiguration> {
2742
3125
  }) => void;
2743
3126
  environment?: string;
2744
3127
  session?: Session;
2745
- onComplete?: (state: any, element: UIElement) => void;
3128
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
2746
3129
  isInstantPayment?: boolean;
2747
3130
  isStoredPaymentMethod?: boolean;
2748
3131
  oneClick?: boolean;
@@ -2757,7 +3140,7 @@ declare class ClickToPayElement extends UIElement<ClickToPayConfiguration> {
2757
3140
  loadingContext?: string;
2758
3141
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
2759
3142
  clientKey?: string;
2760
- elementRef?: any;
3143
+ elementRef?: UIElement;
2761
3144
  i18n?: Language;
2762
3145
  label?: string;
2763
3146
  paymentMethodType?: string;
@@ -2783,12 +3166,6 @@ declare class ClickToPayElement extends UIElement<ClickToPayConfiguration> {
2783
3166
  protected componentToRender(): h.JSX.Element;
2784
3167
  }
2785
3168
 
2786
- interface DisclaimerMsgObject {
2787
- message: string;
2788
- linkText: string;
2789
- link: string;
2790
- }
2791
-
2792
3169
  declare class BancontactElement extends CardElement {
2793
3170
  static readonly type: TxVariants;
2794
3171
  constructor(checkout: ICore, props?: CardConfiguration);
@@ -2810,7 +3187,7 @@ declare class BancontactElement extends CardElement {
2810
3187
  cvcPolicy: CVCPolicyType;
2811
3188
  autoFocus?: boolean;
2812
3189
  billingAddressAllowedCountries?: string[];
2813
- billingAddressMode?: "full" | "partial" | "none";
3190
+ billingAddressMode?: `${AddressModeOptions}`;
2814
3191
  billingAddressRequired?: boolean;
2815
3192
  billingAddressRequiredFields?: string[];
2816
3193
  brands?: string[];
@@ -2886,6 +3263,7 @@ declare class BancontactElement extends CardElement {
2886
3263
  }) => void;
2887
3264
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
2888
3265
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
3266
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
2889
3267
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
2890
3268
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
2891
3269
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -2897,109 +3275,29 @@ declare class BancontactElement extends CardElement {
2897
3275
  onPaymentMethodsRequest?: (data: PaymentMethodsRequestData, actions: {
2898
3276
  resolve: (response: PaymentMethodsResponse) => void;
2899
3277
  reject: () => void;
2900
- }) => void;
2901
- environment?: string;
2902
- session?: Session;
2903
- onComplete?: (state: any, element: UIElement) => void;
2904
- isInstantPayment?: boolean;
2905
- isStoredPaymentMethod?: boolean;
2906
- oneClick?: boolean;
2907
- statusType?: StatusFromAction;
2908
- icon?: string;
2909
- amount?: PaymentAmount;
2910
- secondaryAmount?: PaymentAmount;
2911
- showPayButton?: boolean;
2912
- payButton?: (options: PayButtonProps) => preact.JSX.Element;
2913
- loadingContext?: string;
2914
- createFromAction?: (action: PaymentAction, props: object) => UIElement;
2915
- clientKey?: string;
2916
- elementRef?: any;
2917
- i18n?: Language;
2918
- label?: string;
2919
- paymentMethodType?: string;
2920
- originalAction?: PaymentAction;
2921
- };
2922
- onBrand: (event: any) => void;
2923
- }
2924
-
2925
- interface CampaignContentProps {
2926
- logoUrl?: string;
2927
- nonprofitDescription?: string;
2928
- nonprofitName?: string;
2929
- causeName?: string;
2930
- nonprofitUrl?: string;
2931
- bannerUrl?: string;
2932
- }
2933
-
2934
- type Donation = RoundupDonation | FixedAmountsDonation;
2935
- type DonationType = 'roundup' | 'fixedAmounts';
2936
- interface RoundupDonation {
2937
- type: 'roundup';
2938
- currency: string;
2939
- maxRoundupAmount: number;
2940
- }
2941
- interface FixedAmountsDonation {
2942
- type: 'fixedAmounts';
2943
- currency: string;
2944
- values: Array<number>;
2945
- }
2946
- interface DonationAmount {
2947
- currency: string;
2948
- value: number;
2949
- }
2950
- interface DonationPayload {
2951
- data: {
2952
- amount: DonationAmount;
2953
- };
2954
- isValid?: boolean;
2955
- }
2956
- interface DonationComponentProps extends CampaignContentProps {
2957
- donation: Donation;
2958
- /**
2959
- * The original transaction amount.
2960
- */
2961
- commercialTxAmount: number;
2962
- termsAndConditionsUrl?: string;
2963
- causeName?: string;
2964
- showCancelButton?: boolean;
2965
- onDonate: (payload: DonationPayload) => void;
2966
- onCancel?: (payload: DonationPayload) => void;
2967
- onChange?: (payload: DonationPayload) => void;
2968
- onAmountSelected: (payload: DonationPayload) => void;
2969
- }
2970
-
2971
- declare class DonationElement extends UIElement<DonationConfiguration> {
2972
- static readonly type = TxVariants.donation;
2973
- private readonly isInServiceMode;
2974
- constructor(checkout: ICore, props: DonationProps);
2975
- /**
2976
- * Type guard to determine if props are for "service" mode.
2977
- *
2978
- * The "service" mode is used in the /sessions flow:
2979
- * - if the /payments response mandates it, we consult the /sessions/donationCampaigns endpoint on behalf of the merchant, and mount any found Donation Campaigns.
2980
- *
2981
- * The opposite of this mode is the "direct" mode, used in the Advanced flow:
2982
- * - the merchant makes their own call to the /donationCampaigns endpoint and provides the Donation Campaign directly to the component.
2983
- */
2984
- private static isServiceMode;
2985
- static readonly defaultProps: {
2986
- onCancel: () => void;
2987
- onDonate: () => void;
3278
+ }) => void;
3279
+ environment?: string;
3280
+ session?: Session;
3281
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
3282
+ isInstantPayment?: boolean;
3283
+ isStoredPaymentMethod?: boolean;
3284
+ oneClick?: boolean;
3285
+ statusType?: StatusFromAction;
3286
+ icon?: string;
3287
+ amount?: PaymentAmount;
3288
+ secondaryAmount?: PaymentAmount;
3289
+ showPayButton?: boolean;
3290
+ payButton?: (options: PayButtonProps) => preact.JSX.Element;
3291
+ loadingContext?: string;
3292
+ createFromAction?: (action: PaymentAction, props: object) => UIElement;
3293
+ clientKey?: string;
3294
+ elementRef?: UIElement;
3295
+ i18n?: Language;
3296
+ label?: string;
3297
+ paymentMethodType?: string;
3298
+ originalAction?: PaymentAction;
2988
3299
  };
2989
- private initialiseServiceMode;
2990
- /**
2991
- * Returns the component payment data ready to submit to the Checkout API
2992
- */
2993
- get data(): any;
2994
- /**
2995
- * Returns whether the component state is valid or not
2996
- */
2997
- get isValid(): any;
2998
- setState(newState: any): void;
2999
- donate(): void;
3000
- cancel(): void;
3001
- amountSelected(state: DonationPayload): void;
3002
- protected componentToRender(): h.JSX.Element;
3300
+ onBrand: (event: any) => void;
3003
3301
  }
3004
3302
 
3005
3303
  interface RedirectConfiguration extends UIElementProps {
@@ -3052,6 +3350,12 @@ declare class GiropayElement extends RedirectElement {
3052
3350
 
3053
3351
  interface GooglePayConfiguration extends UIElementProps {
3054
3352
  type?: 'googlepay' | 'paywithgoogle';
3353
+ /**
3354
+ * Optional Content Security Policy (CSP) nonce to apply to all dynamically injected styles and scripts.
3355
+ *
3356
+ * @see https://developers.google.com/pay/api/web/reference/request-objects#PaymentOptions
3357
+ */
3358
+ nonce?: string;
3055
3359
  /**
3056
3360
  * List of brands accepted by the component. Values are configured on the Backoffice and returned in the /paymentMethodsResponse data
3057
3361
  * @internal
@@ -3638,7 +3942,7 @@ declare class PaypalElement extends UIElement<PayPalConfiguration> {
3638
3942
  protected formatData(): {
3639
3943
  paymentMethod: {
3640
3944
  type: TxVariants;
3641
- userAction: "pay" | "continue";
3945
+ userAction: "continue" | "pay";
3642
3946
  subtype: string;
3643
3947
  };
3644
3948
  };
@@ -3676,13 +3980,25 @@ declare class PaypalElement extends UIElement<PayPalConfiguration> {
3676
3980
  protected componentToRender(): h.JSX.Element | null;
3677
3981
  }
3678
3982
 
3983
+ /**
3984
+ * Methods that CustomCardInput exposes to the CustomCard element through the ref
3985
+ */
3986
+ interface CustomCardInputRef extends ComponentMethodsRef {
3987
+ processBinLookupResponse(binLookupResponse: BinLookupResponse, isReset?: boolean): void;
3988
+ dualBrandingChangeHandler(event: Event | string): void;
3989
+ setFocusOn(frame: SFFieldType): void;
3990
+ updateStyles(stylesObj: StylesObject): void;
3991
+ handleUnsupportedCard(errObj: CardErrorData): boolean;
3992
+ }
3993
+
3679
3994
  declare class CustomCard extends UIElement<CustomCardConfiguration> {
3680
3995
  static readonly type = TxVariants.customCard;
3996
+ protected componentRef: CustomCardInputRef | undefined;
3681
3997
  protected static readonly defaultProps: {
3682
3998
  onBinLookup: () => void;
3683
3999
  brandsConfiguration: {};
3684
4000
  };
3685
- private brand;
4001
+ private readonly brand;
3686
4002
  formatProps(props: CustomCardConfiguration): {
3687
4003
  type: TxVariants;
3688
4004
  onPaymentCompleted?: (data: PaymentCompletedData, component?: UIElement) => void;
@@ -3727,7 +4043,10 @@ declare class CustomCard extends UIElement<CustomCardConfiguration> {
3727
4043
  * Formats the component data output
3728
4044
  */
3729
4045
  formatData(): {
3730
- paymentMethod: any;
4046
+ paymentMethod: {
4047
+ brand: any;
4048
+ type: string;
4049
+ };
3731
4050
  browserInfo: BrowserInfo;
3732
4051
  origin: string;
3733
4052
  };
@@ -3740,11 +4059,17 @@ declare class CustomCard extends UIElement<CustomCardConfiguration> {
3740
4059
  onBinValue: (callbackObj: CardBinValueData) => void;
3741
4060
  get isValid(): boolean;
3742
4061
  get browserInfo(): BrowserInfo;
3743
- private onFocus;
4062
+ private readonly onFocus;
3744
4063
  protected onEnterKeyPressed: (activeElement: Element, component: UIElement) => void;
3745
4064
  protected componentToRender(): h.JSX.Element;
3746
4065
  }
3747
4066
 
4067
+ interface IbanData {
4068
+ ownerName?: string;
4069
+ ibanNumber?: string;
4070
+ countryCode?: string;
4071
+ }
4072
+
3748
4073
  interface SepaElementData {
3749
4074
  paymentMethod: {
3750
4075
  type: string;
@@ -3753,6 +4078,7 @@ interface SepaElementData {
3753
4078
  };
3754
4079
  }
3755
4080
  interface SepaConfiguration extends UIElementProps {
4081
+ data?: IbanData;
3756
4082
  }
3757
4083
 
3758
4084
  declare class SepaElement extends UIElement<SepaConfiguration> {
@@ -3761,7 +4087,9 @@ declare class SepaElement extends UIElement<SepaConfiguration> {
3761
4087
  /**
3762
4088
  * Formats props on construction time
3763
4089
  */
3764
- formatProps(props: any): any;
4090
+ formatProps(props: SepaConfiguration): SepaConfiguration & {
4091
+ holderName: boolean;
4092
+ };
3765
4093
  /**
3766
4094
  * Formats the component data output
3767
4095
  */
@@ -3861,6 +4189,7 @@ declare class WeChatPayElement extends QRLoaderContainer {
3861
4189
  }) => void;
3862
4190
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
3863
4191
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4192
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
3864
4193
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
3865
4194
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
3866
4195
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -3875,7 +4204,7 @@ declare class WeChatPayElement extends QRLoaderContainer {
3875
4204
  }) => void;
3876
4205
  environment?: string;
3877
4206
  session?: Session;
3878
- onComplete?: (state: any, element: UIElement) => void;
4207
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
3879
4208
  isInstantPayment?: boolean;
3880
4209
  isStoredPaymentMethod?: boolean;
3881
4210
  oneClick?: boolean;
@@ -3889,7 +4218,7 @@ declare class WeChatPayElement extends QRLoaderContainer {
3889
4218
  loadingContext?: string;
3890
4219
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
3891
4220
  clientKey?: string;
3892
- elementRef?: any;
4221
+ elementRef?: UIElement;
3893
4222
  i18n?: Language;
3894
4223
  label?: string;
3895
4224
  paymentMethodType?: string;
@@ -3935,6 +4264,7 @@ declare class PayNowElement extends QRLoaderContainer {
3935
4264
  }) => void;
3936
4265
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
3937
4266
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4267
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
3938
4268
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
3939
4269
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
3940
4270
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -3949,7 +4279,7 @@ declare class PayNowElement extends QRLoaderContainer {
3949
4279
  }) => void;
3950
4280
  environment?: string;
3951
4281
  session?: Session;
3952
- onComplete?: (state: any, element: UIElement) => void;
4282
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
3953
4283
  isInstantPayment?: boolean;
3954
4284
  isStoredPaymentMethod?: boolean;
3955
4285
  oneClick?: boolean;
@@ -3963,7 +4293,7 @@ declare class PayNowElement extends QRLoaderContainer {
3963
4293
  loadingContext?: string;
3964
4294
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
3965
4295
  clientKey?: string;
3966
- elementRef?: any;
4296
+ elementRef?: UIElement;
3967
4297
  i18n?: Language;
3968
4298
  label?: string;
3969
4299
  paymentMethodType?: string;
@@ -4010,6 +4340,7 @@ declare class BCMCMobileElement extends QRLoaderContainer {
4010
4340
  }) => void;
4011
4341
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4012
4342
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4343
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4013
4344
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4014
4345
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4015
4346
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4024,7 +4355,7 @@ declare class BCMCMobileElement extends QRLoaderContainer {
4024
4355
  }) => void;
4025
4356
  environment?: string;
4026
4357
  session?: Session;
4027
- onComplete?: (state: any, element: UIElement) => void;
4358
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4028
4359
  isInstantPayment?: boolean;
4029
4360
  isStoredPaymentMethod?: boolean;
4030
4361
  oneClick?: boolean;
@@ -4038,7 +4369,7 @@ declare class BCMCMobileElement extends QRLoaderContainer {
4038
4369
  loadingContext?: string;
4039
4370
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4040
4371
  clientKey?: string;
4041
- elementRef?: any;
4372
+ elementRef?: UIElement;
4042
4373
  i18n?: Language;
4043
4374
  label?: string;
4044
4375
  paymentMethodType?: string;
@@ -4102,6 +4433,7 @@ declare class DragonpayElement extends UIElement<DragonpayConfiguraton> {
4102
4433
  }) => void;
4103
4434
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4104
4435
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4436
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4105
4437
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4106
4438
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4107
4439
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4116,7 +4448,7 @@ declare class DragonpayElement extends UIElement<DragonpayConfiguraton> {
4116
4448
  }) => void;
4117
4449
  environment?: string;
4118
4450
  session?: Session;
4119
- onComplete?: (state: any, element: UIElement) => void;
4451
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4120
4452
  isInstantPayment?: boolean;
4121
4453
  isStoredPaymentMethod?: boolean;
4122
4454
  oneClick?: boolean;
@@ -4129,7 +4461,7 @@ declare class DragonpayElement extends UIElement<DragonpayConfiguraton> {
4129
4461
  payButton?: (options: PayButtonProps) => h.JSX.Element;
4130
4462
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4131
4463
  clientKey?: string;
4132
- elementRef?: any;
4464
+ elementRef?: UIElement;
4133
4465
  label?: string;
4134
4466
  paymentMethodType?: string;
4135
4467
  originalAction?: PaymentAction;
@@ -4234,6 +4566,7 @@ declare class EPSElement extends IssuerListContainer {
4234
4566
  }) => void;
4235
4567
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4236
4568
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4569
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4237
4570
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4238
4571
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4239
4572
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4248,7 +4581,7 @@ declare class EPSElement extends IssuerListContainer {
4248
4581
  }) => void;
4249
4582
  environment?: string;
4250
4583
  session?: Session;
4251
- onComplete?: (state: any, element: UIElement) => void;
4584
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4252
4585
  isInstantPayment?: boolean;
4253
4586
  isStoredPaymentMethod?: boolean;
4254
4587
  oneClick?: boolean;
@@ -4263,7 +4596,7 @@ declare class EPSElement extends IssuerListContainer {
4263
4596
  loadingContext?: string;
4264
4597
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4265
4598
  clientKey?: string;
4266
- elementRef?: any;
4599
+ elementRef?: UIElement;
4267
4600
  i18n?: Language;
4268
4601
  label?: string;
4269
4602
  paymentMethodType?: string;
@@ -4357,7 +4690,7 @@ declare class Giftcard extends Component<Readonly<GiftcardComponentProps>> {
4357
4690
  * Maps string error codes from SecuredFields to validation rule objects
4358
4691
  */
4359
4692
  mapErrorsToValidationObjects: () => SFStateErrorObj;
4360
- private updateTransformedErrors;
4693
+ private readonly updateTransformedErrors;
4361
4694
  onChange: (sfpState: any) => void;
4362
4695
  handleFocus: (e: any) => void;
4363
4696
  setBalance: ({ balance, transactionLimit }: {
@@ -4400,14 +4733,14 @@ declare class GiftcardElement extends UIElement<GiftCardConfiguration> {
4400
4733
  get icon(): string;
4401
4734
  get displayName(): string;
4402
4735
  private setBalanceCheckError;
4403
- private handleBalanceCheck;
4404
- private onOrderRequest;
4736
+ private readonly handleBalanceCheck;
4737
+ private readonly onOrderRequest;
4405
4738
  balanceCheck(): void;
4406
- private onBalanceCheck;
4739
+ private readonly onBalanceCheck;
4407
4740
  /**
4408
4741
  * Check if it should call onRequiringConfirmation
4409
4742
  */
4410
- private handleOnRequiringConfirmation;
4743
+ private readonly handleOnRequiringConfirmation;
4411
4744
  submit(): void;
4412
4745
  private makeSubmitCall;
4413
4746
  protected payButton: (props: PayButtonProps) => h.JSX.Element;
@@ -4494,6 +4827,7 @@ declare class PayuNetCashcardElement extends IssuerListContainer {
4494
4827
  }) => void;
4495
4828
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4496
4829
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4830
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4497
4831
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4498
4832
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4499
4833
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4508,7 +4842,7 @@ declare class PayuNetCashcardElement extends IssuerListContainer {
4508
4842
  }) => void;
4509
4843
  environment?: string;
4510
4844
  session?: Session;
4511
- onComplete?: (state: any, element: UIElement) => void;
4845
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4512
4846
  isInstantPayment?: boolean;
4513
4847
  isStoredPaymentMethod?: boolean;
4514
4848
  oneClick?: boolean;
@@ -4523,7 +4857,7 @@ declare class PayuNetCashcardElement extends IssuerListContainer {
4523
4857
  loadingContext?: string;
4524
4858
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4525
4859
  clientKey?: string;
4526
- elementRef?: any;
4860
+ elementRef?: UIElement;
4527
4861
  i18n?: Language;
4528
4862
  label?: string;
4529
4863
  paymentMethodType?: string;
@@ -4561,6 +4895,7 @@ declare class PayuNetBankingElement extends IssuerListContainer {
4561
4895
  }) => void;
4562
4896
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4563
4897
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4898
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4564
4899
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4565
4900
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4566
4901
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4575,7 +4910,7 @@ declare class PayuNetBankingElement extends IssuerListContainer {
4575
4910
  }) => void;
4576
4911
  environment?: string;
4577
4912
  session?: Session;
4578
- onComplete?: (state: any, element: UIElement) => void;
4913
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4579
4914
  isInstantPayment?: boolean;
4580
4915
  isStoredPaymentMethod?: boolean;
4581
4916
  oneClick?: boolean;
@@ -4590,7 +4925,7 @@ declare class PayuNetBankingElement extends IssuerListContainer {
4590
4925
  loadingContext?: string;
4591
4926
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4592
4927
  clientKey?: string;
4593
- elementRef?: any;
4928
+ elementRef?: UIElement;
4594
4929
  i18n?: Language;
4595
4930
  label?: string;
4596
4931
  paymentMethodType?: string;
@@ -4641,6 +4976,7 @@ declare class SwishElement extends QRLoaderContainer {
4641
4976
  }) => void;
4642
4977
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
4643
4978
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
4979
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
4644
4980
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
4645
4981
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
4646
4982
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -4655,7 +4991,7 @@ declare class SwishElement extends QRLoaderContainer {
4655
4991
  }) => void;
4656
4992
  environment?: string;
4657
4993
  session?: Session;
4658
- onComplete?: (state: any, element: UIElement) => void;
4994
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
4659
4995
  isInstantPayment?: boolean;
4660
4996
  isStoredPaymentMethod?: boolean;
4661
4997
  oneClick?: boolean;
@@ -4669,7 +5005,7 @@ declare class SwishElement extends QRLoaderContainer {
4669
5005
  loadingContext?: string;
4670
5006
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
4671
5007
  clientKey?: string;
4672
- elementRef?: any;
5008
+ elementRef?: UIElement;
4673
5009
  i18n?: Language;
4674
5010
  label?: string;
4675
5011
  paymentMethodType?: string;
@@ -4745,7 +5081,7 @@ declare class MBWayElement extends UIElement<AwaitConfiguration> {
4745
5081
  /**
4746
5082
  * Formats the component data output
4747
5083
  */
4748
- formatData(): object;
5084
+ formatData(): PaymentData;
4749
5085
  get isValid(): boolean;
4750
5086
  get displayName(): string;
4751
5087
  protected componentToRender(): h.JSX.Element;
@@ -4951,6 +5287,7 @@ declare class KlarnaPayments extends UIElement<KlarnaConfiguration> {
4951
5287
  type: string;
4952
5288
  };
4953
5289
  };
5290
+ submit(): void;
4954
5291
  payButton: (props: PayButtonProps) => h.JSX.Element;
4955
5292
  handleAction(action: KlarnaAction, props?: {}): UIElement | null;
4956
5293
  updateWithAction(action: KlarnaAction): void;
@@ -5028,6 +5365,7 @@ declare class OnlineBankingINElement extends IssuerListContainer {
5028
5365
  }) => void;
5029
5366
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5030
5367
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5368
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5031
5369
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5032
5370
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5033
5371
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5042,7 +5380,7 @@ declare class OnlineBankingINElement extends IssuerListContainer {
5042
5380
  }) => void;
5043
5381
  environment?: string;
5044
5382
  session?: Session;
5045
- onComplete?: (state: any, element: UIElement) => void;
5383
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5046
5384
  isInstantPayment?: boolean;
5047
5385
  isStoredPaymentMethod?: boolean;
5048
5386
  oneClick?: boolean;
@@ -5057,7 +5395,7 @@ declare class OnlineBankingINElement extends IssuerListContainer {
5057
5395
  loadingContext?: string;
5058
5396
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5059
5397
  clientKey?: string;
5060
- elementRef?: any;
5398
+ elementRef?: UIElement;
5061
5399
  i18n?: Language;
5062
5400
  label?: string;
5063
5401
  paymentMethodType?: string;
@@ -5224,6 +5562,7 @@ declare class WalletINElement extends IssuerListContainer {
5224
5562
  }) => void;
5225
5563
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5226
5564
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5565
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5227
5566
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5228
5567
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5229
5568
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5238,7 +5577,7 @@ declare class WalletINElement extends IssuerListContainer {
5238
5577
  }) => void;
5239
5578
  environment?: string;
5240
5579
  session?: Session;
5241
- onComplete?: (state: any, element: UIElement) => void;
5580
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5242
5581
  isInstantPayment?: boolean;
5243
5582
  isStoredPaymentMethod?: boolean;
5244
5583
  oneClick?: boolean;
@@ -5253,7 +5592,7 @@ declare class WalletINElement extends IssuerListContainer {
5253
5592
  loadingContext?: string;
5254
5593
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5255
5594
  clientKey?: string;
5256
- elementRef?: any;
5595
+ elementRef?: UIElement;
5257
5596
  i18n?: Language;
5258
5597
  label?: string;
5259
5598
  paymentMethodType?: string;
@@ -5306,6 +5645,7 @@ declare class OnlineBankingCZElement extends IssuerListContainer {
5306
5645
  }) => void;
5307
5646
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5308
5647
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5648
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5309
5649
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5310
5650
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5311
5651
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5320,7 +5660,7 @@ declare class OnlineBankingCZElement extends IssuerListContainer {
5320
5660
  }) => void;
5321
5661
  environment?: string;
5322
5662
  session?: Session;
5323
- onComplete?: (state: any, element: UIElement) => void;
5663
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5324
5664
  isInstantPayment?: boolean;
5325
5665
  isStoredPaymentMethod?: boolean;
5326
5666
  oneClick?: boolean;
@@ -5335,7 +5675,7 @@ declare class OnlineBankingCZElement extends IssuerListContainer {
5335
5675
  loadingContext?: string;
5336
5676
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5337
5677
  clientKey?: string;
5338
- elementRef?: any;
5678
+ elementRef?: UIElement;
5339
5679
  i18n?: Language;
5340
5680
  label?: string;
5341
5681
  paymentMethodType?: string;
@@ -5378,6 +5718,7 @@ declare class OnlineBankingSKElement extends IssuerListContainer {
5378
5718
  }) => void;
5379
5719
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5380
5720
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5721
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5381
5722
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5382
5723
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5383
5724
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5392,7 +5733,7 @@ declare class OnlineBankingSKElement extends IssuerListContainer {
5392
5733
  }) => void;
5393
5734
  environment?: string;
5394
5735
  session?: Session;
5395
- onComplete?: (state: any, element: UIElement) => void;
5736
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5396
5737
  isInstantPayment?: boolean;
5397
5738
  isStoredPaymentMethod?: boolean;
5398
5739
  oneClick?: boolean;
@@ -5407,7 +5748,7 @@ declare class OnlineBankingSKElement extends IssuerListContainer {
5407
5748
  loadingContext?: string;
5408
5749
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5409
5750
  clientKey?: string;
5410
- elementRef?: any;
5751
+ elementRef?: UIElement;
5411
5752
  i18n?: Language;
5412
5753
  label?: string;
5413
5754
  paymentMethodType?: string;
@@ -5459,6 +5800,7 @@ declare class PromptPayElement extends QRLoaderContainer {
5459
5800
  }) => void;
5460
5801
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5461
5802
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5803
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5462
5804
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5463
5805
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5464
5806
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5473,7 +5815,7 @@ declare class PromptPayElement extends QRLoaderContainer {
5473
5815
  }) => void;
5474
5816
  environment?: string;
5475
5817
  session?: Session;
5476
- onComplete?: (state: any, element: UIElement) => void;
5818
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5477
5819
  isInstantPayment?: boolean;
5478
5820
  isStoredPaymentMethod?: boolean;
5479
5821
  oneClick?: boolean;
@@ -5487,7 +5829,7 @@ declare class PromptPayElement extends QRLoaderContainer {
5487
5829
  loadingContext?: string;
5488
5830
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5489
5831
  clientKey?: string;
5490
- elementRef?: any;
5832
+ elementRef?: UIElement;
5491
5833
  i18n?: Language;
5492
5834
  label?: string;
5493
5835
  paymentMethodType?: string;
@@ -5533,6 +5875,7 @@ declare class DuitNowElement extends QRLoaderContainer {
5533
5875
  }) => void;
5534
5876
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5535
5877
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
5878
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5536
5879
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5537
5880
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5538
5881
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -5547,7 +5890,7 @@ declare class DuitNowElement extends QRLoaderContainer {
5547
5890
  }) => void;
5548
5891
  environment?: string;
5549
5892
  session?: Session;
5550
- onComplete?: (state: any, element: UIElement) => void;
5893
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
5551
5894
  isInstantPayment?: boolean;
5552
5895
  isStoredPaymentMethod?: boolean;
5553
5896
  oneClick?: boolean;
@@ -5561,7 +5904,7 @@ declare class DuitNowElement extends QRLoaderContainer {
5561
5904
  loadingContext?: string;
5562
5905
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
5563
5906
  clientKey?: string;
5564
- elementRef?: any;
5907
+ elementRef?: UIElement;
5565
5908
  i18n?: Language;
5566
5909
  label?: string;
5567
5910
  paymentMethodType?: string;
@@ -5584,205 +5927,25 @@ declare class Riverty extends RedirectElement {
5584
5927
  paymentMethod: {
5585
5928
  type: string;
5586
5929
  subtype: string;
5587
- };
5588
- browserInfo: BrowserInfo;
5589
- };
5590
- }
5591
-
5592
- declare class PayByBankUS extends RedirectElement {
5593
- static readonly type: TxVariants;
5594
- protected formatProps(props: any): any;
5595
- formatData(): {
5596
- paymentMethod: {
5597
- storedPaymentMethodId: string;
5598
- type: string;
5599
- };
5600
- browserInfo: BrowserInfo;
5601
- };
5602
- get displayName(): string;
5603
- get additionalInfo(): string;
5604
- get brands(): PaymentMethodBrand[];
5605
- protected componentToRender(): h.JSX.Element;
5606
- }
5607
-
5608
- /**
5609
- * PayPal Fastlane Reference:
5610
- * https://developer.paypal.com/docs/checkout/fastlane/reference/#link-customizeyourintegration
5611
- */
5612
- /**
5613
- * Fastlane object available in the window
5614
- */
5615
- interface FastlaneWindowInstance {
5616
- identity: {
5617
- lookupCustomerByEmail: (email: string) => Promise<{
5618
- customerContextId: string;
5619
- }>;
5620
- triggerAuthenticationFlow: (customerContextId: string, options?: AuthenticationFlowOptions) => Promise<FastlaneAuthenticatedCustomerResult>;
5621
- getSession: () => Promise<{
5622
- sessionId: string;
5623
- }>;
5624
- };
5625
- profile: {
5626
- showShippingAddressSelector: () => Promise<FastlaneShippingAddressSelectorResult>;
5627
- };
5628
- setLocale: (locale: string) => void;
5629
- ConsentComponent: () => Promise<{
5630
- getRenderState: () => Promise<FastlaneConsentRenderState>;
5631
- }>;
5632
- FastlaneWatermarkComponent: (options: {
5633
- includeAdditionalInfo: boolean;
5634
- }) => Promise<{
5635
- render: (container: any) => null;
5636
- }>;
5637
- }
5638
- interface FastlaneConsentRenderState {
5639
- showConsent: boolean;
5640
- defaultToggleState?: boolean;
5641
- termsAndConditionsLink?: string;
5642
- termsAndConditionsVersion?: string;
5643
- privacyPolicyLink?: string;
5644
- }
5645
- interface FastlaneOptions {
5646
- intendedExperience: 'externalProcessorCustomConsent';
5647
- metadata?: {
5648
- geoLocOverride?: string;
5649
- };
5650
- }
5651
- interface AuthenticationFlowOptions {
5652
- }
5653
- interface CardPaymentSource {
5654
- brand: string;
5655
- expiry: string;
5656
- lastDigits: string;
5657
- name: string;
5658
- billingAddress: FastlaneAddress;
5659
- }
5660
- /**
5661
- * External types
5662
- */
5663
- interface FastlaneShippingAddressSelectorResult {
5664
- selectionChanged: boolean;
5665
- selectedAddress: FastlaneShipping;
5666
- }
5667
- interface FastlaneAuthenticatedCustomerSucceeded {
5668
- authenticationState: 'succeeded';
5669
- profileData: FastlaneProfile;
5670
- }
5671
- interface FastlaneAuthenticatedCustomerFailed {
5672
- authenticationState: 'failed' | 'canceled' | 'not_found';
5673
- profileData: undefined;
5674
- }
5675
- type FastlaneAuthenticatedCustomerResult = FastlaneAuthenticatedCustomerSucceeded | FastlaneAuthenticatedCustomerFailed;
5676
- interface FastlaneAddress {
5677
- addressLine1: string;
5678
- addressLine2: string;
5679
- adminArea1: string;
5680
- adminArea2: string;
5681
- postalCode: string;
5682
- countryCode: string;
5683
- phone: {
5684
- nationalNumber: string;
5685
- countryCode: string;
5686
- };
5687
- }
5688
- interface FastlaneShipping {
5689
- name: {
5690
- firstName: string;
5691
- lastName: string;
5692
- fullName: string;
5693
- };
5694
- address: FastlaneAddress;
5695
- phoneNumber: {
5696
- nationalNumber: string;
5697
- countryCode: string;
5698
- };
5699
- }
5700
- interface FastlaneProfile {
5701
- name: {
5702
- firstName: string;
5703
- lastName: string;
5704
- fullName: string;
5705
- };
5706
- shippingAddress: FastlaneShipping;
5707
- card?: {
5708
- id: string;
5709
- paymentSource: {
5710
- card: CardPaymentSource;
5711
- };
5712
- };
5713
- }
5714
- type FastlaneComponentConfiguration = {
5715
- paymentType: 'fastlane';
5716
- configuration: {
5717
- fastlaneSessionId: string;
5718
- email: string;
5719
- tokenId: string;
5720
- lastFour: string;
5721
- brand: string;
5722
- };
5723
- };
5724
- type FastlaneCardComponentConfiguration = {
5725
- paymentType: 'card';
5726
- configuration: {
5727
- fastlaneConfiguration?: FastlaneSignupConfiguration;
5728
- };
5729
- };
5730
- type FastlaneSignupConfiguration = FastlaneConsentRenderState & {
5731
- fastlaneSessionId?: string;
5732
- telephoneNumber?: string;
5733
- };
5734
- interface FastlaneData {
5735
- consentShown: boolean;
5736
- fastlaneSessionId: string;
5737
- consentGiven: boolean;
5738
- consentVersion?: string;
5739
- telephoneNumber?: string;
5740
- }
5741
- type FastlanePaymentMethodConfiguration = FastlaneComponentConfiguration | FastlaneCardComponentConfiguration;
5742
- interface FastlaneSDKConfiguration {
5743
- clientKey: string;
5744
- environment: CoreConfiguration['environment'];
5745
- locale?: 'en-US' | 'es-US' | 'fr-RS' | 'zh-US';
5746
- analytics?: Pick<AnalyticsOptions, 'enabled'>;
5747
- /**
5748
- * Used to force the Fastlane SDK to return the consent details in case the shopper is not recognized.
5749
- * Use-case: Developer is testing the flow in another country outside US, which would not get consent details.
5750
- *
5751
- * This configuration should not be used for 'live' environment
5752
- */
5753
- forceConsentDetails?: boolean;
5754
- }
5755
- interface FastlaneConfiguration extends UIElementProps {
5756
- /**
5757
- * Card token ID, used to process the payment
5758
- */
5759
- tokenId: string;
5760
- /**
5761
- * Fastlane session ID
5762
- */
5763
- fastlaneSessionId: string;
5764
- /**
5765
- * Initial last four digits displayed once the Component is rendered
5766
- */
5767
- lastFour: string;
5768
- /**
5769
- * Initial brand displayed once the Component is rendered
5770
- */
5771
- brand: string;
5772
- /**
5773
- * Shopper's email (it will be used in the future to re-authenticate using Fastlane SDK within the Component)
5774
- */
5775
- email: string;
5776
- /**
5777
- * Used internally by Drop-in. Displays the brand images inside the Drop-in payment method header
5778
- * @internal
5779
- */
5780
- keepBrandsVisible?: boolean;
5781
- /**
5782
- * Property returned by the backend. Contains the list of brands supported by Fastlane component
5783
- * @internal
5784
- */
5785
- brands?: string[];
5930
+ };
5931
+ browserInfo: BrowserInfo;
5932
+ };
5933
+ }
5934
+
5935
+ declare class PayByBankUS extends RedirectElement {
5936
+ static readonly type: TxVariants;
5937
+ protected formatProps(props: any): any;
5938
+ formatData(): {
5939
+ paymentMethod: {
5940
+ storedPaymentMethodId: string;
5941
+ type: string;
5942
+ };
5943
+ browserInfo: BrowserInfo;
5944
+ };
5945
+ get displayName(): string;
5946
+ get additionalInfo(): string;
5947
+ get brands(): PaymentMethodBrand[];
5948
+ protected componentToRender(): h.JSX.Element;
5786
5949
  }
5787
5950
 
5788
5951
  declare class Fastlane extends UIElement<FastlaneConfiguration> {
@@ -5993,6 +6156,7 @@ declare class PayToElement extends UIElement<PayToConfiguration> {
5993
6156
  }) => void;
5994
6157
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
5995
6158
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
6159
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
5996
6160
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
5997
6161
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
5998
6162
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -6007,7 +6171,7 @@ declare class PayToElement extends UIElement<PayToConfiguration> {
6007
6171
  }) => void;
6008
6172
  environment?: string;
6009
6173
  session?: Session;
6010
- onComplete?: (state: any, element: UIElement) => void;
6174
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
6011
6175
  isInstantPayment?: boolean;
6012
6176
  isStoredPaymentMethod?: boolean;
6013
6177
  oneClick?: boolean;
@@ -6022,7 +6186,7 @@ declare class PayToElement extends UIElement<PayToConfiguration> {
6022
6186
  loadingContext?: string;
6023
6187
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
6024
6188
  clientKey?: string;
6025
- elementRef?: any;
6189
+ elementRef?: UIElement;
6026
6190
  i18n?: Language;
6027
6191
  label?: string;
6028
6192
  paymentMethodType?: string;
@@ -6089,7 +6253,7 @@ interface IssuerListProps extends BaseEnrollmentProps {
6089
6253
  * @internal
6090
6254
  */
6091
6255
  onSubmitAnalytics?: (aObj: AbstractAnalyticsEvent) => void;
6092
- onChange?(payload: OnChangeData): void;
6256
+ onChange?(payload: IssuerListState): void;
6093
6257
  }
6094
6258
 
6095
6259
  interface PaymentProps extends IPayByBankPixAwait {
@@ -6524,164 +6688,85 @@ interface IDropin {
6524
6688
  closeActivePaymentMethod: () => void;
6525
6689
  }
6526
6690
 
6527
- interface SFError {
6528
- isValid?: boolean;
6529
- errorMessage?: string;
6530
- errorI18n?: string;
6531
- error: string;
6532
- rootNode: HTMLElement;
6533
- detectedBrands?: string[];
6534
- }
6535
- interface SFStateErrorObj {
6536
- [key: string]: SFError;
6691
+ interface CampaignContentProps {
6692
+ logoUrl?: string;
6693
+ nonprofitDescription?: string;
6694
+ nonprofitName?: string;
6695
+ causeName?: string;
6696
+ nonprofitUrl?: string;
6697
+ bannerUrl?: string;
6537
6698
  }
6538
6699
 
6539
- interface ValidationRuleErrorObj {
6540
- [key: string]: ValidationRuleResult;
6541
- }
6542
- interface AriaAttributes {
6543
- 'aria-relevant'?: 'additions' | 'all' | 'removals' | 'text' | 'additions text';
6544
- 'aria-live'?: 'off' | 'polite' | 'assertive';
6545
- 'aria-atomic'?: 'true' | 'false';
6546
- }
6547
- interface SRPanelProps extends BaseElementProps {
6548
- enabled?: boolean;
6549
- node?: string;
6550
- showPanel?: boolean;
6551
- moveFocus?: boolean;
6552
- id?: string;
6553
- ariaAttributes?: AriaAttributes;
6700
+ type Donation = RoundupDonation | FixedAmountsDonation;
6701
+ type DonationType = 'roundup' | 'fixedAmounts';
6702
+ interface RoundupDonation {
6703
+ type: 'roundup';
6704
+ currency: string;
6705
+ maxRoundupAmount: number;
6554
6706
  }
6555
- type SRPanelConfig = Pick<SRPanelProps, 'enabled' | 'node' | 'showPanel' | 'moveFocus' | 'id' | 'ariaAttributes'>;
6556
- interface GenericError {
6557
- isValid: boolean;
6558
- errorMessage: string;
6559
- error: string;
6707
+ interface FixedAmountsDonation {
6708
+ type: 'fixedAmounts';
6709
+ currency: string;
6710
+ values: Array<number>;
6560
6711
  }
6561
-
6562
- /**
6563
- * A panel meant to hold messages that will be read out by ScreenReaders on an aria-live="polite" basis
6564
- * Expects a string or string array of message to add to the panel to be read out
6565
- * For testing purposes can be made visible
6566
- */
6567
- declare class SRPanel extends BaseElement<SRPanelProps> {
6568
- static readonly type = "srPanel";
6569
- static readonly defaultProps: Partial<SRPanelProps>;
6570
- private readonly srPanelContainer;
6571
- private readonly id;
6572
- private readonly showPanel;
6573
- private readonly _enabled;
6574
- private readonly _moveFocus;
6575
- private componentRef;
6576
- constructor(checkout: ICore, props?: SRPanelProps);
6577
- setComponentRef: (ref: any) => void;
6578
- get enabled(): boolean;
6579
- get moveFocus(): boolean;
6580
- setAriaProps(ariaAttributes: AriaAttributes): void;
6581
- setMessages: (messages: string[] | string | null) => void;
6582
- render(): h.JSX.Element;
6712
+ interface DonationAmount {
6713
+ currency: string;
6714
+ value: number;
6583
6715
  }
6584
-
6585
- interface BaseElementProps {
6586
- order?: Order;
6587
- modules?: {
6588
- srPanel?: SRPanel;
6589
- analytics?: IAnalytics;
6590
- resources?: Resources;
6591
- risk?: RiskElement;
6716
+ interface DonationPayload {
6717
+ data: {
6718
+ amount: DonationAmount;
6592
6719
  };
6720
+ isValid?: boolean;
6721
+ }
6722
+ interface DonationComponentProps extends CampaignContentProps {
6723
+ donation: Donation;
6593
6724
  /**
6594
- * Identifies if the Element is the DropIn element
6725
+ * The original transaction amount.
6595
6726
  */
6596
- isDropin?: boolean;
6597
- }
6598
- interface IBaseElement {
6599
- data: object;
6600
- state: any;
6601
- props: any;
6602
- _id: string;
6603
- _component: any;
6604
- render(): ComponentChild | Error;
6605
- mount(domNode: HTMLElement | string): IBaseElement;
6606
- update(props: any): IBaseElement;
6607
- unmount(): IBaseElement;
6608
- remove(): void;
6609
- activate(): void;
6727
+ commercialTxAmount: number;
6728
+ termsAndConditionsUrl?: string;
6729
+ causeName?: string;
6730
+ showCancelButton?: boolean;
6731
+ onDonate: (payload: DonationPayload) => void;
6732
+ onCancel?: (payload: DonationPayload) => void;
6733
+ onChange?: (payload: DonationPayload) => void;
6734
+ onAmountSelected: (payload: DonationPayload) => void;
6735
+ setComponentRef: (ref: ComponentMethodsRef) => void;
6610
6736
  }
6611
6737
 
6612
- type CoreCallbacks = Pick<CoreConfiguration, 'beforeRedirect' | 'beforeSubmit' | 'onSubmit' | 'onAdditionalDetails' | 'onPaymentFailed' | 'onPaymentCompleted' | 'onOrderUpdated' | 'onPaymentMethodsRequest' | 'onChange' | 'onActionHandled' | 'onError' | 'onEnterKeyPressed' | 'donation'>;
6613
- type StatusFromAction = 'redirect' | 'loading' | 'custom';
6614
- type UIElementProps = {
6615
- paymentMethodId?: string;
6616
- storedPaymentMethodId?: string;
6617
- } & BaseElementProps & CoreCallbacks & {
6618
- environment?: string;
6619
- session?: Session;
6620
- onComplete?: (state: any, element: UIElement) => void;
6621
- isInstantPayment?: boolean;
6622
- /**
6623
- * Flags if the element is Stored payment method
6624
- * @internal
6625
- */
6626
- isStoredPaymentMethod?: boolean;
6627
- /**
6628
- * Flag if the element is Stored payment method.
6629
- * Perhaps can be deprecated and we use the one above?
6630
- * @internal
6631
- */
6632
- oneClick?: boolean;
6633
- /**
6634
- * Stored payment method id
6635
- * @internal
6636
- */
6637
- storedPaymentMethodId?: string;
6638
- /**
6639
- * Status set when creating the Component from action
6640
- * @internal
6641
- */
6642
- statusType?: StatusFromAction;
6643
- type?: string;
6644
- name?: string;
6645
- icon?: string;
6646
- amount?: PaymentAmount;
6647
- secondaryAmount?: PaymentAmount;
6648
- /**
6649
- * Show/Hide pay button
6650
- * @defaultValue true
6651
- */
6652
- showPayButton?: boolean;
6653
- /** @internal */
6654
- payButton?: (options: PayButtonProps) => h.JSX.Element;
6655
- /** @internal */
6656
- loadingContext?: string;
6657
- /** @internal */
6658
- createFromAction?: (action: PaymentAction, props: object) => UIElement;
6659
- /** @internal */
6660
- clientKey?: string;
6661
- /** @internal */
6662
- elementRef?: any;
6663
- /** @internal */
6664
- i18n?: Language;
6738
+ declare class DonationElement extends UIElement<DonationConfiguration> {
6739
+ static readonly type = TxVariants.donation;
6740
+ private readonly isInServiceMode;
6741
+ constructor(checkout: ICore, props: DonationProps);
6665
6742
  /**
6666
- * The shopper’s issuer account label. It can be available for stored payment method
6667
- * @internal
6743
+ * Type guard to determine if props are for "service" mode.
6744
+ *
6745
+ * The "service" mode is used in the /sessions flow:
6746
+ * - if the /payments response mandates it, we consult the /sessions/donationCampaigns endpoint on behalf of the merchant, and mount any found Donation Campaigns.
6747
+ *
6748
+ * The opposite of this mode is the "direct" mode, used in the Advanced flow:
6749
+ * - the merchant makes their own call to the /donationCampaigns endpoint and provides the Donation Campaign directly to the component.
6668
6750
  */
6669
- label?: string;
6751
+ private static isServiceMode;
6752
+ static readonly defaultProps: {
6753
+ onCancel: () => void;
6754
+ onDonate: () => void;
6755
+ };
6756
+ private initialiseServiceMode;
6670
6757
  /**
6671
- * Returned after the payments call, when an action is returned. It represents the payment method tx variant
6672
- * that was used for the payment
6673
- * @internal
6758
+ * Returns the component payment data ready to submit to the Checkout API
6674
6759
  */
6675
- paymentMethodType?: string;
6760
+ get data(): any;
6676
6761
  /**
6677
- * Reference to the action object found in a /payments response. This, in most cases, is passed on to the onActionHandled callback
6762
+ * Returns whether the component state is valid or not
6678
6763
  */
6679
- originalAction?: PaymentAction;
6680
- };
6681
- type UIElementStatus = 'ready' | 'loading' | 'error' | 'success';
6682
- interface ComponentMethodsRef {
6683
- showValidation?: () => void;
6684
- setStatus?(status: UIElementStatus): void;
6764
+ get isValid(): any;
6765
+ setState(newState: any): void;
6766
+ donate(): void;
6767
+ cancel(): void;
6768
+ amountSelected(state: DonationPayload): void;
6769
+ protected componentToRender(): h.JSX.Element;
6685
6770
  }
6686
6771
 
6687
6772
  type DonationConfiguration = UIElementProps & Omit<DonationComponentProps, 'onDonate' | 'onCancel'> & {
@@ -6720,7 +6805,7 @@ interface DonationOptions {
6720
6805
  }
6721
6806
  interface DonationCampaignOptions {
6722
6807
  rootNode: HTMLElement | string;
6723
- commercialTxAmount: number;
6808
+ commercialTxAmount?: number;
6724
6809
  }
6725
6810
  /**
6726
6811
  * Union type for Donation component instantiation.
@@ -6872,6 +6957,7 @@ interface ICore {
6872
6957
  getComponent(txVariant: string): NewableComponent | undefined;
6873
6958
  createFromAction(action: PaymentAction, options?: any): UIElement;
6874
6959
  storeElementReference(element: UIElement): void;
6960
+ processPayment(data: PaymentData): void;
6875
6961
  options: CoreConfiguration;
6876
6962
  modules: CoreModules;
6877
6963
  paymentMethodsResponse: PaymentMethods$1;
@@ -6887,6 +6973,7 @@ type CoreModules = Readonly<{
6887
6973
  type PaymentCompletedData = SessionsResponse | {
6888
6974
  resultCode: ResultCode;
6889
6975
  donationToken?: string;
6976
+ askDonation?: boolean;
6890
6977
  };
6891
6978
  type PaymentFailedData = SessionsResponse | {
6892
6979
  resultCode: ResultCode;
@@ -6899,6 +6986,9 @@ type SubmitActions = {
6899
6986
  resolve: (response: CheckoutAdvancedFlowResponse) => void;
6900
6987
  reject: (error?: Pick<CheckoutAdvancedFlowResponse, 'error'>) => void;
6901
6988
  };
6989
+ type ReviewDetails = {
6990
+ orderStatus?: OrderStatus;
6991
+ };
6902
6992
  type AdditionalDetailsData = {
6903
6993
  data: {
6904
6994
  details: {
@@ -6915,29 +7005,23 @@ type AdditionalDetailsActions = {
6915
7005
  reject: () => void;
6916
7006
  };
6917
7007
  type BeforeSubmitActions = {
6918
- resolve: (data: PaymentData & {
6919
- billingAddress?: AddressData;
6920
- deliveryAddress?: AddressData;
6921
- shopperEmail?: string;
6922
- shopperName?: string;
6923
- }) => void;
7008
+ resolve: (data: PaymentData) => void;
6924
7009
  reject: () => void;
6925
7010
  };
7011
+ type OnChangeDataErrors = Record<string, {
7012
+ isValid: boolean;
7013
+ errorMessage: string;
7014
+ errorI18n: string;
7015
+ error?: string;
7016
+ rootNode?: HTMLElement;
7017
+ }>;
6926
7018
  type OnChangeData = {
6927
7019
  data: PaymentData;
6928
7020
  isValid: boolean;
6929
7021
  valid?: {
6930
7022
  [fieldKey: string]: boolean;
6931
7023
  };
6932
- errors?: {
6933
- [fieldKey: string]: {
6934
- isValid: boolean;
6935
- errorMessage: string;
6936
- errorI18n: string;
6937
- error: string;
6938
- rootNode: HTMLElement;
6939
- };
6940
- };
7024
+ errors?: OnChangeDataErrors;
6941
7025
  };
6942
7026
  interface CoreConfiguration {
6943
7027
  /**
@@ -7066,6 +7150,17 @@ interface CoreConfiguration {
7066
7150
  * @param actions
7067
7151
  */
7068
7152
  onSubmit?(state: SubmitData, component: UIElement, actions: SubmitActions): void;
7153
+ /**
7154
+ * Called before the payment is submitted, allowing the shopper to review their payment details.
7155
+ *
7156
+ * Note: payment methods that manage their own payment submission internally (e.g. Klarna (Klarna widget flow), PayPal, Apple Pay, Google Pay, AmazonPay, ANCV, PayByBankPix)
7157
+ * bypass this callback internally to avoid interrupting their native experiences.
7158
+ *
7159
+ * @param state
7160
+ * @param component
7161
+ * @param reviewDetails - Additional data relevant to the review page. Currently holds the 'orderStatus', when a partial payment order is in progress.
7162
+ */
7163
+ onReview?(state: PaymentData, component: UIElement, reviewDetails: ReviewDetails): void;
7069
7164
  /**
7070
7165
  * Callback used in the Advanced flow to perform the /payments/details API call.
7071
7166
  *
@@ -7087,6 +7182,12 @@ interface CoreConfiguration {
7087
7182
  * @internal - used by PBL
7088
7183
  */
7089
7184
  afterAdditionalDetails?(component: UIElement): void;
7185
+ /**
7186
+ * Callback called when an action (for example a QR code or 3D Secure 2 authentication screen) needs to be mounted by the merchant.
7187
+ *
7188
+ * @param actionElement - The UIElement representing the action, which needs to get mounted on the page for the user to interact with.
7189
+ */
7190
+ onAction?(actionElement: UIElement): void;
7090
7191
  /**
7091
7192
  * Callback called when an action (for example a QR code or 3D Secure 2 authentication screen) is shown to the shopper.
7092
7193
  *
@@ -7151,12 +7252,12 @@ interface CoreConfiguration {
7151
7252
  };
7152
7253
  }
7153
7254
 
7154
- declare abstract class BaseElement<P extends BaseElementProps> implements IBaseElement {
7255
+ declare abstract class BaseElement<P extends BaseElementProps, S extends BaseElementState = BaseElementState> implements IBaseElement<P> {
7155
7256
  readonly _id: string;
7156
7257
  readonly core: ICore;
7157
7258
  props: P;
7158
- state: any;
7159
- _component: any;
7259
+ state: S;
7260
+ _component: ComponentChild | undefined;
7160
7261
  protected _node: HTMLElement;
7161
7262
  protected static readonly defaultProps: {};
7162
7263
  constructor(checkout: ICore, props?: P);
@@ -7170,10 +7271,10 @@ declare abstract class BaseElement<P extends BaseElementProps> implements IBaseE
7170
7271
  * Executed on the `data` getter.
7171
7272
  * Returns the component data necessary for the /payments request
7172
7273
  */
7173
- protected formatData(): any;
7274
+ protected formatData(): PaymentData;
7174
7275
  protected submitAnalytics(_analyticsObj?: AbstractAnalyticsEvent): any;
7175
7276
  protected handleKeyDown(_e: TargetedKeyboardEvent<HTMLInputElement>): any;
7176
- protected setState(newState: object): void;
7277
+ protected setState(newState: S): void;
7177
7278
  /**
7178
7279
  * Returns the component payment data ready to submit to the Checkout API
7179
7280
  * Note: this does not ensure validity, check isValid first
@@ -7217,7 +7318,7 @@ declare abstract class UIElement<P extends UIElementProps = UIElementProps> exte
7217
7318
  /**
7218
7319
  * componentRef is a ref to the primary component inside the subclass that extends UIElement e.g. CardInput.tsx (which sits inside Card.tsx)
7219
7320
  */
7220
- protected componentRef: any;
7321
+ protected componentRef: ComponentMethodsRef | undefined;
7221
7322
  protected resources: Resources;
7222
7323
  /**
7223
7324
  * elementRef is a ref to the subclass that extends UIElement e.g. Card.tsx or Dropin.tsx
@@ -7273,18 +7374,19 @@ declare abstract class UIElement<P extends UIElementProps = UIElementProps> exte
7273
7374
  * - If Drop-in, will set status for Dropin component, and then it will propagate the new status for the active payment method component
7274
7375
  * - If Component, it will set its own status
7275
7376
  */
7276
- setElementStatus(status: UIElementStatus, props?: any): this;
7377
+ setElementStatus(status: UIElementStatus): this;
7277
7378
  /**
7278
7379
  * componentRef is a ref to the primary component inside that subclass e.g. CardInput.tsx
7279
7380
  */
7280
- setStatus(status: UIElementStatus, props?: any): this;
7381
+ setStatus(status: UIElementStatus): this;
7281
7382
  protected onChange(): void;
7282
7383
  protected submitAnalytics(event: AbstractAnalyticsEvent): void;
7283
7384
  submit(): void;
7385
+ executePaymentsCall(): void;
7284
7386
  protected makePaymentsCall(): Promise<CheckoutAdvancedFlowResponse | CheckoutSessionPaymentResponse>;
7285
7387
  private submitUsingAdvancedFlow;
7286
7388
  private submitUsingSessionsFlow;
7287
- protected onComplete(state: any): void;
7389
+ protected onComplete(state: AdditionalDetailsData): void;
7288
7390
  protected handleError: (error: AdyenCheckoutError) => void;
7289
7391
  protected handleAdditionalDetails(state: AdditionalDetailsData): void;
7290
7392
  private makeAdditionalDetailsCall;
@@ -7622,17 +7724,31 @@ interface PaymentData extends PaymentMethodData {
7622
7724
  orderData: string;
7623
7725
  pspReference: string;
7624
7726
  };
7625
- clientStateDataIndicator: boolean;
7727
+ clientStateDataIndicator?: boolean;
7626
7728
  sessionData?: string;
7627
7729
  storePaymentMethod?: boolean;
7628
7730
  billingAddress?: AddressData;
7629
7731
  deliveryAddress?: AddressData;
7732
+ socialSecurityNumber?: string;
7733
+ installments?: {
7734
+ value: number;
7735
+ };
7736
+ shopperEmail?: string;
7737
+ shopperName?: {
7738
+ firstName: string;
7739
+ lastName: string;
7740
+ };
7741
+ telephoneNumber?: string;
7742
+ dateOfBirth?: string;
7743
+ bankAccount?: BankDetailsSchema;
7744
+ beneficiaryId?: string;
7630
7745
  }
7631
7746
  type ResultCode = 'AuthenticationFinished' | 'AuthenticationNotRequired' | 'Authorised' | 'Cancelled' | 'ChallengeShopper' | 'Error' | 'IdentifyShopper' | 'PartiallyAuthorised' | 'Pending' | 'PresentToShopper' | 'Received' | 'RedirectShopper' | 'Refused';
7632
7747
  type SessionsResponse = {
7633
7748
  sessionData: string;
7634
7749
  sessionResult: string;
7635
7750
  resultCode: ResultCode;
7751
+ askDonation?: boolean;
7636
7752
  };
7637
7753
  interface PaymentMethodsRequestData {
7638
7754
  order?: Order;
@@ -7718,7 +7834,7 @@ interface CardConfiguration extends UIElementProps {
7718
7834
  *
7719
7835
  * - merchant set config option
7720
7836
  */
7721
- billingAddressMode?: 'full' | 'partial' | 'none';
7837
+ billingAddressMode?: `${AddressModeOptions}`;
7722
7838
  /**
7723
7839
  * Show Address fields
7724
7840
  * @defaultValue `false`
@@ -8128,13 +8244,14 @@ type DualBrandingChangeHandler = (brandValue: string) => void;
8128
8244
  declare class CardElement extends UIElement<CardConfiguration> {
8129
8245
  static readonly type: TxVariants;
8130
8246
  private readonly clickToPayService;
8247
+ protected componentRef: CardInputRef | undefined;
8131
8248
  /**
8132
8249
  * Reference to the 'ClickToPayComponent'
8133
8250
  */
8134
8251
  private clickToPayRef;
8135
8252
  constructor(checkout: ICore, props?: CardConfiguration);
8136
8253
  protected static readonly defaultProps: any;
8137
- setStatus(status: UIElementStatus, props?: any): this;
8254
+ setStatus(status: UIElementStatus): this;
8138
8255
  private readonly setClickToPayRef;
8139
8256
  protected getPaymentMethodConfigFromResponse(componentProps: CardConfiguration): RawPaymentMethod;
8140
8257
  formatProps(props: CardConfiguration): CardConfiguration;
@@ -8143,11 +8260,11 @@ declare class CardElement extends UIElement<CardConfiguration> {
8143
8260
  */
8144
8261
  formatData(): CardElementData;
8145
8262
  protected beforeRender(configSetByMerchant?: CardConfiguration): void;
8146
- updateStyles(stylesObj: any): this;
8147
- setFocusOn(fieldName: any): this;
8148
- onBrand: (event: any) => void;
8263
+ updateStyles(stylesObj: StylesObject): this;
8264
+ setFocusOn(fieldName: string): this;
8265
+ onBrand: (event: CardBrandData) => void;
8149
8266
  processBinLookupResponse(binLookupResponse: BinLookupResponse | null, isReset?: boolean): this;
8150
- handleUnsupportedCard(errObj: any): this;
8267
+ handleUnsupportedCard(errObj: CardErrorData): this;
8151
8268
  private readonly handleClickToPaySubmit;
8152
8269
  onBinLookup(obj: CardBinLookupData): void;
8153
8270
  private readonly onConfigSuccess;
@@ -8194,7 +8311,7 @@ declare class ThreeDS2DeviceFingerprint extends UIElement<ThreeDS2DeviceFingerpr
8194
8311
  dataKey: string;
8195
8312
  type: string;
8196
8313
  };
8197
- private callSubmit3DS2Fingerprint;
8314
+ private readonly callSubmit3DS2Fingerprint;
8198
8315
  protected beforeRender(): void;
8199
8316
  protected onActionHandled: (rtnObj: ActionHandledReturnObject) => void;
8200
8317
  /**
@@ -8248,6 +8365,7 @@ declare class PayMeElement extends QRLoaderContainer {
8248
8365
  }) => void;
8249
8366
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
8250
8367
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
8368
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
8251
8369
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
8252
8370
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
8253
8371
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -8262,7 +8380,7 @@ declare class PayMeElement extends QRLoaderContainer {
8262
8380
  }) => void;
8263
8381
  environment?: string;
8264
8382
  session?: Session;
8265
- onComplete?: (state: any, element: UIElement) => void;
8383
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
8266
8384
  isInstantPayment?: boolean;
8267
8385
  isStoredPaymentMethod?: boolean;
8268
8386
  oneClick?: boolean;
@@ -8276,7 +8394,7 @@ declare class PayMeElement extends QRLoaderContainer {
8276
8394
  loadingContext?: string;
8277
8395
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
8278
8396
  clientKey?: string;
8279
- elementRef?: any;
8397
+ elementRef?: UIElement;
8280
8398
  i18n?: Language;
8281
8399
  label?: string;
8282
8400
  paymentMethodType?: string;
@@ -8288,7 +8406,8 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8288
8406
  static readonly type = TxVariants.dropin;
8289
8407
  protected static readonly defaultProps: DropinConfiguration;
8290
8408
  dropinRef: any;
8291
- private paymentMethodsConfiguration;
8409
+ elementRef: DropinElement;
8410
+ private readonly paymentMethodsConfiguration;
8292
8411
  /**
8293
8412
  * Reference to the component created from `handleAction` (Ex.: ThreeDS2Challenge)
8294
8413
  */
@@ -8300,7 +8419,7 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8300
8419
  constructor(checkout: ICore, props?: DropinConfiguration);
8301
8420
  protected reportIntegrationFlavor(): void;
8302
8421
  protected storeElementRefOnCore(): void;
8303
- formatProps(props: any): {
8422
+ formatProps(props: DropinConfiguration): {
8304
8423
  instantPaymentTypes: InstantPaymentTypes[];
8305
8424
  paymentMethodsConfiguration?: PaymentMethodsConfiguration;
8306
8425
  paymentMethodComponents?: NewableComponent[];
@@ -8338,6 +8457,7 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8338
8457
  }) => void;
8339
8458
  beforeSubmit?: (state: PaymentData, component: UIElement, actions: BeforeSubmitActions) => Promise<void> | void;
8340
8459
  onSubmit?: (state: SubmitData, component: UIElement, actions: SubmitActions) => void;
8460
+ onReview?: (state: PaymentData, component: UIElement, reviewDetails: ReviewDetails) => void;
8341
8461
  onActionHandled?: (actionHandled: ActionHandledReturnObject) => void;
8342
8462
  onAdditionalDetails?: (state: AdditionalDetailsData, component: UIElement, actions: AdditionalDetailsActions) => void;
8343
8463
  onChange?: (state: OnChangeData, component: UIElement) => void;
@@ -8352,7 +8472,7 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8352
8472
  }) => void;
8353
8473
  environment?: string;
8354
8474
  session?: Session;
8355
- onComplete?: (state: any, element: UIElement) => void;
8475
+ onComplete?: (state: BaseElementState, element: UIElement) => void;
8356
8476
  isInstantPayment?: boolean;
8357
8477
  isStoredPaymentMethod?: boolean;
8358
8478
  oneClick?: boolean;
@@ -8367,7 +8487,7 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8367
8487
  loadingContext?: string;
8368
8488
  createFromAction?: (action: PaymentAction, props: object) => UIElement;
8369
8489
  clientKey?: string;
8370
- elementRef?: any;
8490
+ elementRef?: UIElement;
8371
8491
  i18n?: Language;
8372
8492
  label?: string;
8373
8493
  paymentMethodType?: string;
@@ -8375,7 +8495,8 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8375
8495
  };
8376
8496
  get isValid(): boolean;
8377
8497
  showValidation(): this;
8378
- setStatus(status: any, props?: {}): this;
8498
+ setElementStatus(status: UIElementStatus, props?: Record<string, unknown>): this;
8499
+ setStatus(status: UIElementStatus, props?: Record<string, unknown>): this;
8379
8500
  get activePaymentMethod(): any;
8380
8501
  get data(): any;
8381
8502
  displayFinalAnimation(type: 'success' | 'error'): void;
@@ -8401,7 +8522,7 @@ declare class DropinElement extends UIElement<DropinConfiguration> implements ID
8401
8522
  /**
8402
8523
  * Creates the Drop-in elements
8403
8524
  */
8404
- private handleCreate;
8525
+ private readonly handleCreate;
8405
8526
  handleAction(action: PaymentAction, props?: {}): this | null;
8406
8527
  /**
8407
8528
  * handleOrder is implemented so we don't trigger a callback like in the components
@@ -8710,6 +8831,7 @@ declare class Core implements ICore {
8710
8831
  * @returns props for a new UIElement
8711
8832
  */
8712
8833
  getCorePropsForComponent(): any;
8834
+ processPayment(data: PaymentData): void;
8713
8835
  storeElementReference(element: UIElement): void;
8714
8836
  /**
8715
8837
  * @internal
@@ -8735,4 +8857,4 @@ declare namespace AdyenCheckout {
8735
8857
  }
8736
8858
 
8737
8859
  export { ANCVElement as ANCV, AchElement as Ach, AddressElement as Address, AdyenCheckout, AdyenCheckoutError, Affirm, AfterPay, AfterPayB2B, AmazonPayElement as AmazonPay, ApplePayElement as ApplePay, Atome, BacsElement as BacsDirectDebit, BancontactElement as Bancontact, BankTransferElement as BankTransfer, BCMCMobileElement as BcmcMobile, BillDeskOnlineElement as BillDeskOnline, BillDeskWalletElement as BillDeskWallet, BlikElement as Blik, BoletoElement as Boleto, CardElement as Card, CashAppPay, ClickToPayElement as ClickToPay, Core, CustomCard, DokuElement as Doku, DonationElement as Donation, DotpayElement as Dotpay, DragonpayElement as Dragonpay, DropinElement as Dropin, DuitNowElement as DuitNow, EPSElement as EPS, EcontextElement as Econtext, FacilyPay10x as FacilPay10x, FacilyPay12x as FacilPay12x, FacilyPay3x as FacilPay3x, FacilyPay4x as FacilPay4x, FacilyPay6x as FacilPay6x, Fastlane, FastlaneSDK, GiftcardElement as Giftcard, GiropayElement as Giropay, GooglePay, Iris, IrisMode, KlarnaPayments as Klarna, MBWayElement as MBWay, MealVoucherFRElement as MealVoucherFR, MolPayEBankingMYElement as MolPayEBankingMY, MolPayEBankingTHElement as MolPayEBankingTH, MolPayEbankingVNElement as MolPayEBankingVN, MultibancoElement as Multibanco, OnlineBankingCZElement as OnlineBankingCZ, OnlineBankingFI, OnlineBankingINElement as OnlineBankingIN, OnlineBankingPL, OnlineBankingSKElement as OnlineBankingSK, OxxoElement as Oxxo, PayByBank, PayByBankPixElement as PayByBankPix, PayByBankUS, PayMeElement as PayMe, PayNowElement as PayNow, PaypalElement as PayPal, PayToElement as PayTo, PayuNetCashcardElement as PayuCashcard, PayuNetBankingElement as PayuNetBanking, PersonalDetailsElement as PersonalDetails, PixElement as Pix, PreAuthorizedDebitCanada, PromptPayElement as PromptPay, RatePay, RatePayDirectDebit, RedirectElement as Redirect, Riverty, SepaElement as SepaDirectDebit, SwishElement as Swish, ThreeDS2Challenge, ThreeDS2DeviceFingerprint, TrustlyElement as Trustly, TwintElement as Twint, UIElement, UPI, VippsElement as Vipps, WalletINElement as WalletIN, WeChatPayElement as WeChat, index_d as components, initializeFastlane };
8738
- export type { ANCVConfiguration, ANCVDataState, AchConfiguration, AchPlaceholders, ActionDescriptionType, ActionHandledReturnObject, AdditionalDetailsActions, AdditionalDetailsData, AddressData, AddressField, AmazonPayBackendConfiguration, AmazonPayButtonProps, AmazonPayButtonSettings, AmazonPayComponentProps, AmazonPayConfiguration, AmazonPayElementData, AmazonWindowObject, App, ApplePayButtonStyle, ApplePayButtonType, ApplePayConfiguration, ApplePayElementData, ApplePayPaymentAuthorizationResult, ApplePayPaymentOrderDetails, ApplePaySessionRequest, ApplePayWebConfiguration, AwaitComponentProps, AwaitConfiguration, BankDetailsSchema, BankTransferConfiguration, BankTransferSchema, BankTransferState, BeforeSubmitActions, BinLookupResponse, BinLookupResponseRaw, BoletoConfiguration, BoletoElementProps, BoletoInputDataState, BoletoInputErrorState, BoletoInputValidState, BrandConfiguration, BrandObject, BrowserInfo, CReqData, CardAllValidData, CardAutoCompleteData, CardBackendConfiguration, CardBinLookupData, CardBinValueData, CardBrandData, CardBrandsConfiguration, CardConfigSuccessData, CardConfiguration, CardElementData, CardErrorData, CardFieldValidData, CardFocusData, CardLoadData, CardPlaceholders, CashAppPayConfiguration, CashAppPayElementData, CashAppPayEventData, ChallengeData, ChallengeResolveData, ChallengeWindowSize, ChangeActionOptions, ChangePaymentDetailsButtonProps, ChargeAmount, CheckoutAdvancedFlowResponse, CheckoutDetailsRequest, CheckoutSession, CheckoutSessionConfig, ClickToPayConfiguration, ClickToPayPaymentData, ClickToPayProps, ClickToPayScheme, CommonVoucherProps, ComponentFocusObject, ComponentMethodsRef, CoreConfiguration, CoreModules, Currency, CustomCardConfiguration, CustomTranslations, DecodeObject, DeliverySpecifications, DokuVoucherResultProps, DonationCampaign, DonationCampaignOptions, DonationConfiguration, DonationOptions, DonationProps, DragonpayConfiguraton, DragonpayInputData, DragonpayInputIssuerItem, DragonpayInputProps, DragonpayVoucherResultProps, DropinComponentProps, DropinComponentState, DropinConfiguration, DropinStatus, DropinStatusProps, DualBrandButtons, DualBrandSelectElement, DualBrandingChangeHandler, EcontextConfiguration, EcontextInputSchema, EcontextVoucherResultProps, ErrorCodeObject, ExtendedMerchantInfo, FastlaneAddress, FastlaneAuthenticatedCustomerResult, FastlaneConfiguration, FastlaneConsentRenderState, FastlaneData, FastlaneOptions, FastlanePaymentMethodConfiguration, FastlaneProfile, FastlaneSDKConfiguration, FastlaneShipping, FastlaneShippingAddressSelectorResult, FastlaneSignupConfiguration, FastlaneWindowInstance, FieldsetVisibility, FingerPrintData, FingerprintResolveData, FundingSource, FundingSourceKeys, GiftCardBalanceCheckErrorType, GiftCardConfiguration, GiftCardElementData, GiftCardValidationError, GooglePayConfiguration, GooglePaymentDataRequest, ICore, IDropin, InstantPaymentTypes, Intent, IrisConfiguration, IrisData, IrisState, IssuerListConfiguration, IssuerListData, KlarnaAction, KlarnaAdditionalDetailsData, KlarnaComponentRef, KlarnaConfiguration, KlarnaSdkData, KlarnaWidgetAuthorizeResponse, KlarnaWidgetProps, LedgerCurrencies, MandateFrequencyType, MandateType, OnChangeData, OpenInvoiceActiveFieldsets, OpenInvoiceConfiguration, OpenInvoiceFieldsetsRefs, OpenInvoiceProps, OpenInvoiceStateData, OpenInvoiceStateError, OpenInvoiceStateValid, OpenInvoiceVisibility, Order, OrderButtonProps, OrderStatus, PayPalConfiguration, PayToConfiguration, PayToData, PayToPlaceholdersType, PayloadJSON, PaymentAction, PaymentActionsType, PaymentAmount, PaymentCompletedData, PaymentData, PaymentFailedData, PaymentMethodBrand, PaymentMethodData, PaymentMethodDisplayMode, PaymentMethodGroup, PaymentMethodOptions, PaymentMethods, PaymentMethodsConfiguration, PaymentMethodsRequestData, PaymentMethodsResponse, PaymentResponseData, PersonalDetailsSchema, PixConfiguration, PixElementData, PostMsgParseErrorObject, PreAuthorizedDebitCanadaConfiguration, PreAuthorizedDebitCanadaPlaceholders, ProcessedPaymentStatusResponse, QRLoaderConfiguration, RawPaymentMethod, RawPaymentResponse, RawPaymentStatusResponse, RawStoredPaymentMethod, RecurringMetadata, RedirectConfiguration, Region, ResultCode, ResultObject, ResultValue, SepaConfiguration, SepaElementData, SessionsResponse, SignOutButtonProps, SocialSecurityMode, StatusFromAction, SubmitActions, SubmitData, SupportedLocale, SupportedPayPalFundingSources, ThreeDS2ActionProps, ThreeDS2ChallengeConfiguration, ThreeDS2ConfigProps, ThreeDS2DeviceFingerprintConfiguration, ThreeDS2FingerprintResponse, ThreeDS2FlowObject, ThreeDS2FlowProps, ThreeDS2Token, UIElementProps, UIElementStatus, UPIAppList, UPIConfiguration, UpdateAmazonCheckoutSessionRequest, UpiMode, UpiPaymentData, UpiType, ValidationError, VoucherConfiguration, VoucherDetail, VoucherProps, balanceCheckResponseType, onBalanceCheckCallbackType, onOrderCancelData, onOrderCancelInternalCallback, onOrderCancelType, onOrderRequestCallbackType, onOrderUpdatedCallbackType, onRequiringConfirmationCallbackType };
8860
+ export type { ANCVConfiguration, ANCVDataState, AchConfiguration, AchPlaceholders, ActionDescriptionType, ActionHandledReturnObject, AdditionalDetailsActions, AdditionalDetailsData, AddressData, AddressField, AmazonPayBackendConfiguration, AmazonPayButtonProps, AmazonPayButtonSettings, AmazonPayComponentProps, AmazonPayComponentRef, AmazonPayConfiguration, AmazonPayElementData, AmazonWindowObject, App, ApplePayButtonStyle, ApplePayButtonType, ApplePayConfiguration, ApplePayElementData, ApplePayPaymentAuthorizationResult, ApplePayPaymentOrderDetails, ApplePaySessionRequest, ApplePayWebConfiguration, AwaitComponentProps, AwaitConfiguration, BankDetailsSchema, BankTransferConfiguration, BankTransferSchema, BankTransferState, BeforeSubmitActions, BinLookupResponse, BinLookupResponseRaw, BoletoConfiguration, BoletoElementProps, BoletoInputDataState, BoletoInputErrorState, BoletoInputValidState, BrandConfiguration, BrandObject, BrowserInfo, CReqData, CardAllValidData, CardAutoCompleteData, CardBackendConfiguration, CardBinLookupData, CardBinValueData, CardBrandData, CardBrandsConfiguration, CardConfigSuccessData, CardConfiguration, CardElementData, CardErrorData, CardFieldValidData, CardFocusData, CardLoadData, CardPlaceholders, CashAppPayConfiguration, CashAppPayElementData, CashAppPayEventData, ChallengeData, ChallengeResolveData, ChallengeWindowSize, ChangeActionOptions, ChangePaymentDetailsButtonProps, ChargeAmount, CheckoutAdvancedFlowResponse, CheckoutDetailsRequest, CheckoutSession, CheckoutSessionConfig, ClickToPayConfiguration, ClickToPayPaymentData, ClickToPayProps, ClickToPayScheme, CommonVoucherProps, ComponentFocusObject, ComponentMethodsRef, CoreConfiguration, CoreModules, Currency, CustomCardConfiguration, CustomTranslations, DecodeObject, DeliverySpecifications, DokuVoucherResultProps, DonationCampaign, DonationCampaignOptions, DonationConfiguration, DonationOptions, DonationProps, DragonpayConfiguraton, DragonpayInputData, DragonpayInputIssuerItem, DragonpayInputProps, DragonpayVoucherResultProps, DropinComponentProps, DropinComponentState, DropinConfiguration, DropinStatus, DropinStatusProps, DualBrandButtons, DualBrandSelectElement, DualBrandingChangeHandler, EcontextConfiguration, EcontextInputSchema, EcontextVoucherResultProps, ErrorCodeObject, ExtendedMerchantInfo, FastlaneAddress, FastlaneAuthenticatedCustomerResult, FastlaneConfiguration, FastlaneConsentRenderState, FastlaneData, FastlaneOptions, FastlanePaymentMethodConfiguration, FastlaneProfile, FastlaneSDKConfiguration, FastlaneShipping, FastlaneShippingAddressSelectorResult, FastlaneSignupConfiguration, FastlaneWindowInstance, FieldsetVisibility, FingerPrintData, FingerprintResolveData, FundingSource, FundingSourceKeys, GiftCardBalanceCheckErrorType, GiftCardConfiguration, GiftCardElementData, GiftCardValidationError, GooglePayConfiguration, GooglePaymentDataRequest, ICore, IDropin, InstantPaymentTypes, Intent, IrisConfiguration, IrisData, IrisState, IssuerListConfiguration, IssuerListData, KlarnaAction, KlarnaAdditionalDetailsData, KlarnaComponentRef, KlarnaConfiguration, KlarnaSdkData, KlarnaWidgetAuthorizeResponse, KlarnaWidgetProps, LedgerCurrencies, MandateFrequencyType, MandateType, OnChangeData, OnChangeDataErrors, OpenInvoiceActiveFieldsets, OpenInvoiceConfiguration, OpenInvoiceFieldsetsRefs, OpenInvoiceProps, OpenInvoiceState, OpenInvoiceStateData, OpenInvoiceStateError, OpenInvoiceStateValid, OpenInvoiceVisibility, Order, OrderButtonProps, OrderStatus, PayPalConfiguration, PayToConfiguration, PayToData, PayToPlaceholdersType, PayloadJSON, PaymentAction, PaymentActionsType, PaymentAmount, PaymentCompletedData, PaymentData, PaymentFailedData, PaymentMethodBrand, PaymentMethodData, PaymentMethodDisplayMode, PaymentMethodGroup, PaymentMethodOptions, PaymentMethods, PaymentMethodsConfiguration, PaymentMethodsRequestData, PaymentMethodsResponse, PaymentResponseData, PersonalDetailsSchema, PixConfiguration, PixElementData, PostMsgParseErrorObject, PreAuthorizedDebitCanadaConfiguration, PreAuthorizedDebitCanadaPlaceholders, ProcessedPaymentStatusResponse, QRLoaderConfiguration, RawPaymentMethod, RawPaymentResponse, RawPaymentStatusResponse, RawStoredPaymentMethod, RecurringMetadata, RedirectConfiguration, Region, ResultCode, ResultObject, ResultValue, ReviewDetails, SepaConfiguration, SepaElementData, SessionsResponse, SignOutButtonProps, SocialSecurityMode, StatusFromAction, SubmitActions, SubmitData, SupportedLocale, SupportedPayPalFundingSources, ThreeDS2ActionProps, ThreeDS2ChallengeConfiguration, ThreeDS2ConfigProps, ThreeDS2DeviceFingerprintConfiguration, ThreeDS2FingerprintResponse, ThreeDS2FlowObject, ThreeDS2FlowProps, ThreeDS2Token, UIElementProps, UIElementStatus, UPIAppList, UPIConfiguration, UpdateAmazonCheckoutSessionRequest, UpiMode, UpiPaymentData, UpiType, ValidationError, VoucherConfiguration, VoucherDetail, VoucherProps, balanceCheckResponseType, onBalanceCheckCallbackType, onOrderCancelData, onOrderCancelInternalCallback, onOrderCancelType, onOrderRequestCallbackType, onOrderUpdatedCallbackType, onRequiringConfirmationCallbackType };