@zonos/elements 1.3.18-alpha.2 → 1.3.18-alpha.4

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 (341) hide show
  1. package/README.md +341 -96
  2. package/dist/cjs/{cart-941a31dd.js → cart-72b0bccc.js} +34 -85
  3. package/dist/cjs/index.cjs.js +628 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/logError-4e2f2020.js +58 -0
  6. package/dist/cjs/{submitGtag-9210b4fe.js → submitGtag-b0c8de90.js} +3 -2
  7. package/dist/cjs/zonos-address_8.cjs.entry.js +13 -12
  8. package/dist/cjs/zonos-badge_2.cjs.entry.js +3 -3
  9. package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
  10. package/dist/cjs/zonos-card_2.cjs.entry.js +7 -6
  11. package/dist/cjs/zonos-cart-items_11.cjs.entry.js +11 -10
  12. package/dist/cjs/zonos-checkout.cjs.entry.js +20 -15
  13. package/dist/cjs/zonos-controller.cjs.entry.js +47 -20
  14. package/dist/cjs/zonos-country-flag.cjs.entry.js +2 -1
  15. package/dist/cjs/zonos-country-select_3.cjs.entry.js +6 -5
  16. package/dist/cjs/zonos-elements.cjs.js +1 -1
  17. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +2 -1
  18. package/dist/cjs/zonos-hello.cjs.entry.js +10 -9
  19. package/dist/cjs/zonos-input.cjs.entry.js +4 -4
  20. package/dist/cjs/zonos-link.cjs.entry.js +1 -1
  21. package/dist/cjs/zonos-payment.cjs.entry.js +3 -2
  22. package/dist/collection/__mocks__/zonos-url/index.js +1 -0
  23. package/dist/collection/__tests__/build-utils/urlCheckOne.js +1 -1
  24. package/dist/collection/collection-manifest.json +1 -1
  25. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +4 -9
  26. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +8 -4
  27. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +3 -3
  28. package/dist/collection/components/common/zonos-badge/zonos-badge.js +3 -3
  29. package/dist/collection/components/common/zonos-button/zonos-button.js +3 -3
  30. package/dist/collection/components/common/zonos-card/zonos-card.js +3 -3
  31. package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +3 -3
  32. package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +3 -3
  33. package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +2 -2
  34. package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +3 -3
  35. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +2 -2
  36. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +2 -2
  37. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +3 -3
  38. package/dist/collection/components/common/zonos-input/zonos-input.js +4 -4
  39. package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -2
  40. package/dist/collection/components/common/{component-template/zonos-link → zonos-link}/zonos-link.js +1 -1
  41. package/dist/collection/components/main/zonos-controller.js +41 -6
  42. package/dist/collection/components/stripe/zonos-address/zonos-address.js +3 -3
  43. package/dist/collection/components/utils/hello/setZCountryUrlParam.js +5 -1
  44. package/dist/collection/environment.js +0 -2
  45. package/dist/collection/index.js +1 -0
  46. package/dist/collection/scripts/_extractZonosQaUrl.js +26 -0
  47. package/dist/collection/scripts/_getZonosQaUrl.js +44 -0
  48. package/dist/collection/scripts/{loadStripe.js → _loadStripe.js} +1 -1
  49. package/dist/collection/scripts/{zonosBase.js → _zonosBase.js} +29 -6
  50. package/dist/collection/scripts/index.js +2 -0
  51. package/dist/collection/types/generated/graphql.customer.types.js +1 -0
  52. package/dist/collection/types/generated/graphql.frontend.types.js +1 -0
  53. package/dist/esm/{cart-cc593c2b.js → cart-1a37e002.js} +7 -56
  54. package/dist/esm/index.js +625 -0
  55. package/dist/esm/loader.js +1 -1
  56. package/dist/esm/logError-c456c092.js +55 -0
  57. package/dist/esm/{submitGtag-e50f903f.js → submitGtag-754935b4.js} +2 -1
  58. package/dist/esm/zonos-address_8.entry.js +11 -10
  59. package/dist/esm/zonos-badge_2.entry.js +3 -3
  60. package/dist/esm/zonos-button_3.entry.js +3 -3
  61. package/dist/esm/zonos-card_2.entry.js +7 -6
  62. package/dist/esm/zonos-cart-items_11.entry.js +11 -10
  63. package/dist/esm/zonos-checkout.entry.js +8 -3
  64. package/dist/esm/zonos-controller.entry.js +30 -3
  65. package/dist/esm/zonos-country-flag.entry.js +2 -1
  66. package/dist/esm/zonos-country-select_3.entry.js +6 -5
  67. package/dist/esm/zonos-elements.js +1 -1
  68. package/dist/esm/zonos-hello-dialog.entry.js +2 -1
  69. package/dist/esm/zonos-hello.entry.js +2 -1
  70. package/dist/esm/zonos-input.entry.js +4 -4
  71. package/dist/esm/zonos-link.entry.js +1 -1
  72. package/dist/esm/zonos-payment.entry.js +2 -1
  73. package/dist/esm-es5/cart-1a37e002.js +1 -0
  74. package/dist/esm-es5/index.js +1 -0
  75. package/dist/esm-es5/loader.js +1 -1
  76. package/dist/esm-es5/logError-c456c092.js +1 -0
  77. package/dist/esm-es5/submitGtag-754935b4.js +1 -0
  78. package/dist/esm-es5/zonos-address_8.entry.js +1 -1
  79. package/dist/esm-es5/zonos-badge_2.entry.js +1 -1
  80. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  81. package/dist/esm-es5/zonos-card_2.entry.js +1 -1
  82. package/dist/esm-es5/zonos-cart-items_11.entry.js +1 -1
  83. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  84. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  85. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  86. package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
  87. package/dist/esm-es5/zonos-elements.js +1 -1
  88. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  89. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  90. package/dist/esm-es5/zonos-input.entry.js +1 -1
  91. package/dist/esm-es5/zonos-link.entry.js +1 -1
  92. package/dist/esm-es5/zonos-payment.entry.js +1 -1
  93. package/dist/scripts/index.d.ts +3908 -0
  94. package/dist/scripts/index.js +1 -0
  95. package/dist/scripts/loadZonos.d.ts +3954 -0
  96. package/dist/scripts/loadZonos.js +1 -1
  97. package/dist/scripts/zonos.js +1 -1
  98. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +5 -7
  99. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +2 -2
  100. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +2 -2
  101. package/dist/types/components/main/zonos-controller.d.ts +6 -1
  102. package/dist/types/components/store/checkout/stripe.d.ts +1 -1
  103. package/dist/types/components/store/zonosStore.d.ts +1 -1
  104. package/dist/types/components/stripe/zonos-address/zonos-address.d.ts +2 -2
  105. package/dist/types/components/utils/styles.d.ts +1 -0
  106. package/dist/types/components.d.ts +22 -14
  107. package/dist/types/index.d.ts +1 -0
  108. package/dist/types/scripts/_extractZonosQaUrl.d.ts +11 -0
  109. package/dist/types/scripts/_getZonosQaUrl.d.ts +4 -0
  110. package/dist/types/scripts/{loadStripe.d.ts → _loadStripe.d.ts} +1 -1
  111. package/dist/types/scripts/{zonosBase.d.ts → _zonosBase.d.ts} +36 -2
  112. package/dist/types/scripts/index.d.ts +2 -0
  113. package/dist/types/types/checkout/CheckoutConfig.d.ts +5 -0
  114. package/dist/types/types/checkout/api/CalculateLandedCostRequest.d.ts +9 -0
  115. package/dist/types/types/generated/graphql.customer.types.d.ts +1 -0
  116. package/dist/types/types/generated/graphql.customer.types.ts +3 -0
  117. package/dist/types/types/generated/graphql.frontend.types.d.ts +1 -0
  118. package/dist/types/types/generated/graphql.frontend.types.ts +1 -0
  119. package/dist/types/types/global.d.ts +1 -1
  120. package/dist/zonos-elements/index.esm.js +1 -0
  121. package/dist/zonos-elements/p-0878369a.entry.js +1 -0
  122. package/dist/zonos-elements/p-0d1c06d7.entry.js +1 -0
  123. package/dist/zonos-elements/{p-9aab3ad7.entry.js → p-0d5b5bcc.entry.js} +1 -1
  124. package/dist/zonos-elements/p-1491717a.entry.js +1 -0
  125. package/dist/zonos-elements/p-14ff42fe.system.entry.js +1 -0
  126. package/dist/zonos-elements/p-2800c274.system.entry.js +1 -0
  127. package/dist/zonos-elements/p-2e02a76f.system.entry.js +1 -0
  128. package/dist/zonos-elements/{p-020a9b86.entry.js → p-3ba8838a.entry.js} +1 -1
  129. package/dist/zonos-elements/p-4594a125.js +1 -0
  130. package/dist/zonos-elements/p-483e1724.entry.js +1 -0
  131. package/dist/zonos-elements/{p-d0bc8902.system.entry.js → p-4f72bfee.system.entry.js} +1 -1
  132. package/dist/zonos-elements/p-58be220f.system.js +1 -0
  133. package/dist/zonos-elements/{p-9e9c318b.entry.js → p-58fc8ec1.entry.js} +1 -1
  134. package/dist/zonos-elements/p-63db40b9.system.js +1 -0
  135. package/dist/zonos-elements/p-6449c92b.js +1 -0
  136. package/dist/zonos-elements/p-6746455b.system.entry.js +1 -0
  137. package/dist/zonos-elements/{p-c20e5430.entry.js → p-6cb9812b.entry.js} +1 -1
  138. package/dist/zonos-elements/p-7487ef47.entry.js +1 -0
  139. package/dist/zonos-elements/p-7b2d367b.entry.js +1 -0
  140. package/dist/zonos-elements/p-9389cc42.system.entry.js +1 -0
  141. package/dist/zonos-elements/p-9be6c62b.system.js +1 -0
  142. package/dist/zonos-elements/p-9c242e4b.system.entry.js +1 -0
  143. package/dist/zonos-elements/p-a37796e1.entry.js +1 -0
  144. package/dist/zonos-elements/p-afb89d65.entry.js +1 -0
  145. package/dist/zonos-elements/p-bbb84165.system.entry.js +1 -0
  146. package/dist/zonos-elements/{p-96b8c9ba.system.entry.js → p-bdfa3705.system.entry.js} +1 -1
  147. package/dist/zonos-elements/p-c195e980.system.entry.js +1 -0
  148. package/dist/zonos-elements/p-c87c76d4.entry.js +1 -0
  149. package/dist/zonos-elements/p-d9011df9.entry.js +1 -0
  150. package/dist/zonos-elements/{p-3e26d7b3.system.entry.js → p-dda78e8e.system.entry.js} +1 -1
  151. package/dist/zonos-elements/p-de9e610d.system.entry.js +1 -0
  152. package/dist/zonos-elements/p-e0bf9666.system.js +1 -1
  153. package/dist/zonos-elements/p-eaa335e1.js +1 -0
  154. package/dist/zonos-elements/{p-e13bfbda.system.entry.js → p-ed3524ae.system.entry.js} +1 -1
  155. package/dist/zonos-elements/p-f5b14bab.system.js +1 -0
  156. package/dist/zonos-elements/p-f9a42a3c.system.entry.js +1 -0
  157. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  158. package/package.json +4 -2
  159. package/dist/components/ILanguage.js +0 -24
  160. package/dist/components/classes.js +0 -12
  161. package/dist/components/containsNonLatinChars.js +0 -21
  162. package/dist/components/formatCurrency.js +0 -11
  163. package/dist/components/getBorderRadius.js +0 -18
  164. package/dist/components/index.d.ts +0 -33
  165. package/dist/components/index.js +0 -1
  166. package/dist/components/isCheckoutMobile.js +0 -6
  167. package/dist/components/isColorVariable.js +0 -14
  168. package/dist/components/isDarkColor.js +0 -1199
  169. package/dist/components/stripe.js +0 -1691
  170. package/dist/components/submitGtag.js +0 -19
  171. package/dist/components/trackConversionEvent.js +0 -37
  172. package/dist/components/translationStore.js +0 -5611
  173. package/dist/components/zonos-address-display.d.ts +0 -11
  174. package/dist/components/zonos-address-display.js +0 -6
  175. package/dist/components/zonos-address-display2.js +0 -64
  176. package/dist/components/zonos-address-form.d.ts +0 -11
  177. package/dist/components/zonos-address-form.js +0 -6
  178. package/dist/components/zonos-address-form2.js +0 -84
  179. package/dist/components/zonos-address-update-dialog.d.ts +0 -11
  180. package/dist/components/zonos-address-update-dialog.js +0 -6
  181. package/dist/components/zonos-address-update-dialog2.js +0 -264
  182. package/dist/components/zonos-address.d.ts +0 -11
  183. package/dist/components/zonos-address.js +0 -6
  184. package/dist/components/zonos-address2.js +0 -176
  185. package/dist/components/zonos-badge.d.ts +0 -11
  186. package/dist/components/zonos-badge.js +0 -6
  187. package/dist/components/zonos-badge2.js +0 -61
  188. package/dist/components/zonos-banner.d.ts +0 -11
  189. package/dist/components/zonos-banner.js +0 -6
  190. package/dist/components/zonos-banner2.js +0 -95
  191. package/dist/components/zonos-button.d.ts +0 -11
  192. package/dist/components/zonos-button.js +0 -6
  193. package/dist/components/zonos-button2.js +0 -186
  194. package/dist/components/zonos-card.d.ts +0 -11
  195. package/dist/components/zonos-card.js +0 -6
  196. package/dist/components/zonos-card2.js +0 -57
  197. package/dist/components/zonos-cart-items.d.ts +0 -11
  198. package/dist/components/zonos-cart-items.js +0 -6
  199. package/dist/components/zonos-cart-items2.js +0 -57
  200. package/dist/components/zonos-cart-restricted-items.d.ts +0 -11
  201. package/dist/components/zonos-cart-restricted-items.js +0 -6
  202. package/dist/components/zonos-cart-restricted-items2.js +0 -135
  203. package/dist/components/zonos-cart-subtotal.d.ts +0 -11
  204. package/dist/components/zonos-cart-subtotal.js +0 -6
  205. package/dist/components/zonos-cart-subtotal2.js +0 -91
  206. package/dist/components/zonos-checkbox.d.ts +0 -11
  207. package/dist/components/zonos-checkbox.js +0 -6
  208. package/dist/components/zonos-checkbox2.js +0 -96
  209. package/dist/components/zonos-checkout-finish.d.ts +0 -11
  210. package/dist/components/zonos-checkout-finish.js +0 -6
  211. package/dist/components/zonos-checkout-finish2.js +0 -246
  212. package/dist/components/zonos-checkout-footer.d.ts +0 -11
  213. package/dist/components/zonos-checkout-footer.js +0 -6
  214. package/dist/components/zonos-checkout-footer2.js +0 -125
  215. package/dist/components/zonos-checkout-payment.d.ts +0 -11
  216. package/dist/components/zonos-checkout-payment.js +0 -6
  217. package/dist/components/zonos-checkout-payment2.js +0 -104
  218. package/dist/components/zonos-checkout-progress-tabs.d.ts +0 -11
  219. package/dist/components/zonos-checkout-progress-tabs.js +0 -6
  220. package/dist/components/zonos-checkout-progress-tabs2.js +0 -138
  221. package/dist/components/zonos-checkout.d.ts +0 -11
  222. package/dist/components/zonos-checkout.js +0 -1051
  223. package/dist/components/zonos-collapse.d.ts +0 -11
  224. package/dist/components/zonos-collapse.js +0 -6
  225. package/dist/components/zonos-collapse2.js +0 -78
  226. package/dist/components/zonos-component.d.ts +0 -11
  227. package/dist/components/zonos-component.js +0 -48
  228. package/dist/components/zonos-confirm-dialog.d.ts +0 -11
  229. package/dist/components/zonos-confirm-dialog.js +0 -6
  230. package/dist/components/zonos-confirm-dialog2.js +0 -161
  231. package/dist/components/zonos-controller.d.ts +0 -11
  232. package/dist/components/zonos-controller.js +0 -309
  233. package/dist/components/zonos-country-flag.d.ts +0 -11
  234. package/dist/components/zonos-country-flag.js +0 -6
  235. package/dist/components/zonos-country-flag2.js +0 -54
  236. package/dist/components/zonos-country-select.d.ts +0 -11
  237. package/dist/components/zonos-country-select.js +0 -6
  238. package/dist/components/zonos-country-select2.js +0 -1891
  239. package/dist/components/zonos-custom-message.d.ts +0 -11
  240. package/dist/components/zonos-custom-message.js +0 -6
  241. package/dist/components/zonos-custom-message2.js +0 -72
  242. package/dist/components/zonos-customer-info.d.ts +0 -11
  243. package/dist/components/zonos-customer-info.js +0 -6
  244. package/dist/components/zonos-customer-info2.js +0 -316
  245. package/dist/components/zonos-dialog.d.ts +0 -11
  246. package/dist/components/zonos-dialog.js +0 -6
  247. package/dist/components/zonos-dialog2.js +0 -136
  248. package/dist/components/zonos-hello-dialog-footer.d.ts +0 -11
  249. package/dist/components/zonos-hello-dialog-footer.js +0 -6
  250. package/dist/components/zonos-hello-dialog-footer2.js +0 -83
  251. package/dist/components/zonos-hello-dialog.d.ts +0 -11
  252. package/dist/components/zonos-hello-dialog.js +0 -6
  253. package/dist/components/zonos-hello-dialog2.js +0 -305
  254. package/dist/components/zonos-hello.d.ts +0 -11
  255. package/dist/components/zonos-hello.js +0 -879
  256. package/dist/components/zonos-icon.d.ts +0 -11
  257. package/dist/components/zonos-icon.js +0 -6
  258. package/dist/components/zonos-icon2.js +0 -55
  259. package/dist/components/zonos-input.d.ts +0 -11
  260. package/dist/components/zonos-input.js +0 -6
  261. package/dist/components/zonos-input2.js +0 -78
  262. package/dist/components/zonos-language-select.d.ts +0 -11
  263. package/dist/components/zonos-language-select.js +0 -6
  264. package/dist/components/zonos-language-select2.js +0 -88
  265. package/dist/components/zonos-link-authentication.d.ts +0 -11
  266. package/dist/components/zonos-link-authentication.js +0 -6
  267. package/dist/components/zonos-link-authentication2.js +0 -80
  268. package/dist/components/zonos-link.d.ts +0 -11
  269. package/dist/components/zonos-link.js +0 -43
  270. package/dist/components/zonos-logo.d.ts +0 -11
  271. package/dist/components/zonos-logo.js +0 -49
  272. package/dist/components/zonos-notification.d.ts +0 -11
  273. package/dist/components/zonos-notification.js +0 -6
  274. package/dist/components/zonos-notification2.js +0 -92
  275. package/dist/components/zonos-payment.d.ts +0 -11
  276. package/dist/components/zonos-payment.js +0 -6
  277. package/dist/components/zonos-payment2.js +0 -77
  278. package/dist/components/zonos-review.d.ts +0 -11
  279. package/dist/components/zonos-review.js +0 -6
  280. package/dist/components/zonos-review2.js +0 -89
  281. package/dist/components/zonos-select-dialog-header.d.ts +0 -11
  282. package/dist/components/zonos-select-dialog-header.js +0 -6
  283. package/dist/components/zonos-select-dialog-header2.js +0 -71
  284. package/dist/components/zonos-shipping-rich-radio.d.ts +0 -11
  285. package/dist/components/zonos-shipping-rich-radio.js +0 -6
  286. package/dist/components/zonos-shipping-rich-radio2.js +0 -88
  287. package/dist/components/zonos-shipping.d.ts +0 -11
  288. package/dist/components/zonos-shipping.js +0 -6
  289. package/dist/components/zonos-shipping2.js +0 -159
  290. package/dist/components/zonos-spinner.d.ts +0 -11
  291. package/dist/components/zonos-spinner.js +0 -6
  292. package/dist/components/zonos-spinner2.js +0 -43
  293. package/dist/components/zonos-text.d.ts +0 -11
  294. package/dist/components/zonos-text.js +0 -6
  295. package/dist/components/zonos-text2.js +0 -182
  296. package/dist/components/zonos-tooltip.d.ts +0 -11
  297. package/dist/components/zonos-tooltip.js +0 -6
  298. package/dist/components/zonos-tooltip2.js +0 -48
  299. package/dist/components/zonos-v-stack.d.ts +0 -11
  300. package/dist/components/zonos-v-stack.js +0 -6
  301. package/dist/components/zonos-v-stack2.js +0 -38
  302. package/dist/components/zonosStore.js +0 -2881
  303. package/dist/esm-es5/cart-cc593c2b.js +0 -1
  304. package/dist/esm-es5/submitGtag-e50f903f.js +0 -1
  305. package/dist/scripts/checkIfLoadVersionDomain.js +0 -1
  306. package/dist/scripts/extractZonosQaUrl.js +0 -1
  307. package/dist/scripts/getTempCartById.js +0 -1
  308. package/dist/scripts/loadStripe.js +0 -1
  309. package/dist/scripts/stripe.js +0 -1
  310. package/dist/scripts/zonosBase.js +0 -1
  311. package/dist/zonos-elements/p-04030a48.entry.js +0 -1
  312. package/dist/zonos-elements/p-0e892292.entry.js +0 -1
  313. package/dist/zonos-elements/p-0fac99e7.entry.js +0 -1
  314. package/dist/zonos-elements/p-1795c760.system.entry.js +0 -1
  315. package/dist/zonos-elements/p-24ac1c6f.entry.js +0 -1
  316. package/dist/zonos-elements/p-26a60a6e.entry.js +0 -1
  317. package/dist/zonos-elements/p-32744531.entry.js +0 -1
  318. package/dist/zonos-elements/p-35ac375a.system.entry.js +0 -1
  319. package/dist/zonos-elements/p-3bc88c3c.system.entry.js +0 -1
  320. package/dist/zonos-elements/p-4caaaaeb.system.entry.js +0 -1
  321. package/dist/zonos-elements/p-50ea2036.system.js +0 -1
  322. package/dist/zonos-elements/p-5e783394.entry.js +0 -1
  323. package/dist/zonos-elements/p-6366e7e3.entry.js +0 -1
  324. package/dist/zonos-elements/p-7c8ee4b9.system.entry.js +0 -1
  325. package/dist/zonos-elements/p-80ea85b8.entry.js +0 -1
  326. package/dist/zonos-elements/p-8da16d53.system.js +0 -1
  327. package/dist/zonos-elements/p-98a0b694.system.entry.js +0 -1
  328. package/dist/zonos-elements/p-b98cdf39.system.entry.js +0 -1
  329. package/dist/zonos-elements/p-d7b8c1c1.system.entry.js +0 -1
  330. package/dist/zonos-elements/p-dd0fd351.entry.js +0 -1
  331. package/dist/zonos-elements/p-e015cb0e.js +0 -1
  332. package/dist/zonos-elements/p-e1fbd05d.system.entry.js +0 -1
  333. package/dist/zonos-elements/p-e553dd19.js +0 -1
  334. package/dist/zonos-elements/p-e6fa0ebc.system.js +0 -1
  335. package/dist/zonos-elements/p-f6546bf4.system.entry.js +0 -1
  336. /package/dist/collection/components/common/{component-template/zonos-link → zonos-link}/zonos-link.css +0 -0
  337. /package/dist/collection/scripts/{checkIfLoadVersionDomain.js → _checkIfLoadVersionDomain.js} +0 -0
  338. /package/dist/collection/scripts/{stripe.js → _stripe.js} +0 -0
  339. /package/dist/types/components/common/{component-template/zonos-link → zonos-link}/zonos-link.d.ts +0 -0
  340. /package/dist/types/scripts/{checkIfLoadVersionDomain.d.ts → _checkIfLoadVersionDomain.d.ts} +0 -0
  341. /package/dist/types/scripts/{stripe.d.ts → _stripe.d.ts} +0 -0
@@ -0,0 +1,3954 @@
1
+ import { StripeConstructor, StripeAddressElementChangeEvent, ContactOption, PaymentIntent, Stripe } from '@stripe/stripe-js';
2
+ import { BrowserOptions } from '@sentry/browser';
3
+ import { z } from 'zod';
4
+ import { HTMLStencilElement, JSXBase } from '@stencil/core/internal';
5
+
6
+ declare const analyticsProviderStatus: {
7
+ readonly Disabled: "DISABLED";
8
+ readonly Enabled: "ENABLED";
9
+ };
10
+ type AnalyticsProviderStatus = (typeof analyticsProviderStatus)[keyof typeof analyticsProviderStatus];
11
+ declare const analyticsProviderType: {
12
+ readonly FacebookPixel: "FACEBOOK_PIXEL";
13
+ readonly GoogleAnalytics: "GOOGLE_ANALYTICS";
14
+ };
15
+ type AnalyticsProviderType = (typeof analyticsProviderType)[keyof typeof analyticsProviderType];
16
+ declare const checkoutSubscriptionStatus: {
17
+ readonly Active: "ACTIVE";
18
+ readonly Inactive: "INACTIVE";
19
+ readonly Paused: "PAUSED";
20
+ };
21
+ type CheckoutSubscriptionStatus = (typeof checkoutSubscriptionStatus)[keyof typeof checkoutSubscriptionStatus];
22
+ declare const checkoutSuccessBehavior: {
23
+ readonly CloseModal: "CLOSE_MODAL";
24
+ readonly RedirectToSuccessPage: "REDIRECT_TO_SUCCESS_PAGE";
25
+ readonly ZonosSuccessPage: "ZONOS_SUCCESS_PAGE";
26
+ };
27
+ type CheckoutSuccessBehavior = (typeof checkoutSuccessBehavior)[keyof typeof checkoutSuccessBehavior];
28
+ declare const checkoutVisibilityStatus: {
29
+ readonly Disabled: "DISABLED";
30
+ readonly Enabled: "ENABLED";
31
+ };
32
+ type CheckoutVisibilityStatus = (typeof checkoutVisibilityStatus)[keyof typeof checkoutVisibilityStatus];
33
+ declare const countryCode: {
34
+ readonly Ad: "AD";
35
+ readonly Ae: "AE";
36
+ readonly Af: "AF";
37
+ readonly Ag: "AG";
38
+ readonly Ai: "AI";
39
+ readonly Al: "AL";
40
+ readonly Am: "AM";
41
+ readonly Ao: "AO";
42
+ readonly Aq: "AQ";
43
+ readonly Ar: "AR";
44
+ readonly As: "AS";
45
+ readonly At: "AT";
46
+ readonly Au: "AU";
47
+ readonly Aw: "AW";
48
+ readonly Ax: "AX";
49
+ readonly Az: "AZ";
50
+ readonly Ba: "BA";
51
+ readonly Bb: "BB";
52
+ readonly Bd: "BD";
53
+ readonly Be: "BE";
54
+ readonly Bf: "BF";
55
+ readonly Bg: "BG";
56
+ readonly Bh: "BH";
57
+ readonly Bi: "BI";
58
+ readonly Bj: "BJ";
59
+ readonly Bl: "BL";
60
+ readonly Bm: "BM";
61
+ readonly Bn: "BN";
62
+ readonly Bo: "BO";
63
+ readonly Bq: "BQ";
64
+ readonly Br: "BR";
65
+ readonly Bs: "BS";
66
+ readonly Bt: "BT";
67
+ readonly Bv: "BV";
68
+ readonly Bw: "BW";
69
+ readonly By: "BY";
70
+ readonly Bz: "BZ";
71
+ readonly Ca: "CA";
72
+ readonly Cc: "CC";
73
+ readonly Cd: "CD";
74
+ readonly Cf: "CF";
75
+ readonly Cg: "CG";
76
+ readonly Ch: "CH";
77
+ readonly Ci: "CI";
78
+ readonly Ck: "CK";
79
+ readonly Cl: "CL";
80
+ readonly Cm: "CM";
81
+ readonly Cn: "CN";
82
+ readonly Co: "CO";
83
+ readonly Cr: "CR";
84
+ readonly Cu: "CU";
85
+ readonly Cv: "CV";
86
+ readonly Cw: "CW";
87
+ readonly Cx: "CX";
88
+ readonly Cy: "CY";
89
+ readonly Cz: "CZ";
90
+ readonly De: "DE";
91
+ readonly Dj: "DJ";
92
+ readonly Dk: "DK";
93
+ readonly Dm: "DM";
94
+ readonly Do: "DO";
95
+ readonly Dz: "DZ";
96
+ readonly Ec: "EC";
97
+ readonly Ee: "EE";
98
+ readonly Eg: "EG";
99
+ readonly Eh: "EH";
100
+ readonly Er: "ER";
101
+ readonly Es: "ES";
102
+ readonly Et: "ET";
103
+ readonly Fi: "FI";
104
+ readonly Fj: "FJ";
105
+ readonly Fk: "FK";
106
+ readonly Fm: "FM";
107
+ readonly Fo: "FO";
108
+ readonly Fr: "FR";
109
+ readonly Ga: "GA";
110
+ readonly Gb: "GB";
111
+ readonly Gd: "GD";
112
+ readonly Ge: "GE";
113
+ readonly Gf: "GF";
114
+ readonly Gg: "GG";
115
+ readonly Gh: "GH";
116
+ readonly Gi: "GI";
117
+ readonly Gl: "GL";
118
+ readonly Gm: "GM";
119
+ readonly Gn: "GN";
120
+ readonly Gp: "GP";
121
+ readonly Gq: "GQ";
122
+ readonly Gr: "GR";
123
+ readonly Gs: "GS";
124
+ readonly Gt: "GT";
125
+ readonly Gu: "GU";
126
+ readonly Gw: "GW";
127
+ readonly Gy: "GY";
128
+ readonly Hk: "HK";
129
+ readonly Hm: "HM";
130
+ readonly Hn: "HN";
131
+ readonly Hr: "HR";
132
+ readonly Ht: "HT";
133
+ readonly Hu: "HU";
134
+ readonly Ic: "IC";
135
+ readonly Id: "ID";
136
+ readonly Ie: "IE";
137
+ readonly Il: "IL";
138
+ readonly Im: "IM";
139
+ readonly In: "IN";
140
+ readonly Io: "IO";
141
+ readonly Iq: "IQ";
142
+ readonly Ir: "IR";
143
+ readonly Is: "IS";
144
+ readonly It: "IT";
145
+ readonly Je: "JE";
146
+ readonly Jm: "JM";
147
+ readonly Jo: "JO";
148
+ readonly Jp: "JP";
149
+ readonly Ke: "KE";
150
+ readonly Kg: "KG";
151
+ readonly Kh: "KH";
152
+ readonly Ki: "KI";
153
+ readonly Km: "KM";
154
+ readonly Kn: "KN";
155
+ readonly Kp: "KP";
156
+ readonly Kr: "KR";
157
+ readonly Kw: "KW";
158
+ readonly Ky: "KY";
159
+ readonly Kz: "KZ";
160
+ readonly La: "LA";
161
+ readonly Lb: "LB";
162
+ readonly Lc: "LC";
163
+ readonly Li: "LI";
164
+ readonly Lk: "LK";
165
+ readonly Lr: "LR";
166
+ readonly Ls: "LS";
167
+ readonly Lt: "LT";
168
+ readonly Lu: "LU";
169
+ readonly Lv: "LV";
170
+ readonly Ly: "LY";
171
+ readonly Ma: "MA";
172
+ readonly Mc: "MC";
173
+ readonly Md: "MD";
174
+ readonly Me: "ME";
175
+ readonly Mf: "MF";
176
+ readonly Mg: "MG";
177
+ readonly Mh: "MH";
178
+ readonly Mk: "MK";
179
+ readonly Ml: "ML";
180
+ readonly Mm: "MM";
181
+ readonly Mn: "MN";
182
+ readonly Mo: "MO";
183
+ readonly Mp: "MP";
184
+ readonly Mq: "MQ";
185
+ readonly Mr: "MR";
186
+ readonly Ms: "MS";
187
+ readonly Mt: "MT";
188
+ readonly Mu: "MU";
189
+ readonly Mv: "MV";
190
+ readonly Mw: "MW";
191
+ readonly Mx: "MX";
192
+ readonly My: "MY";
193
+ readonly Mz: "MZ";
194
+ readonly Na: "NA";
195
+ readonly Nc: "NC";
196
+ readonly Ne: "NE";
197
+ readonly Nf: "NF";
198
+ readonly Ng: "NG";
199
+ readonly Ni: "NI";
200
+ readonly Nl: "NL";
201
+ readonly No: "NO";
202
+ readonly Np: "NP";
203
+ readonly Nr: "NR";
204
+ readonly Nu: "NU";
205
+ readonly Nz: "NZ";
206
+ readonly Om: "OM";
207
+ readonly Pa: "PA";
208
+ readonly Pe: "PE";
209
+ readonly Pf: "PF";
210
+ readonly Pg: "PG";
211
+ readonly Ph: "PH";
212
+ readonly Pk: "PK";
213
+ readonly Pl: "PL";
214
+ readonly Pm: "PM";
215
+ readonly Pn: "PN";
216
+ readonly Pr: "PR";
217
+ readonly Ps: "PS";
218
+ readonly Pt: "PT";
219
+ readonly Pw: "PW";
220
+ readonly Py: "PY";
221
+ readonly Qa: "QA";
222
+ readonly Re: "RE";
223
+ readonly Ro: "RO";
224
+ readonly Rs: "RS";
225
+ readonly Ru: "RU";
226
+ readonly Rw: "RW";
227
+ readonly Sa: "SA";
228
+ readonly Sb: "SB";
229
+ readonly Sc: "SC";
230
+ readonly Sd: "SD";
231
+ readonly Se: "SE";
232
+ readonly Sg: "SG";
233
+ readonly Sh: "SH";
234
+ readonly Si: "SI";
235
+ readonly Sj: "SJ";
236
+ readonly Sk: "SK";
237
+ readonly Sl: "SL";
238
+ readonly Sm: "SM";
239
+ readonly Sn: "SN";
240
+ readonly So: "SO";
241
+ readonly Sr: "SR";
242
+ readonly Ss: "SS";
243
+ readonly St: "ST";
244
+ readonly Sv: "SV";
245
+ readonly Sx: "SX";
246
+ readonly Sy: "SY";
247
+ readonly Sz: "SZ";
248
+ readonly Tc: "TC";
249
+ readonly Td: "TD";
250
+ readonly Tf: "TF";
251
+ readonly Tg: "TG";
252
+ readonly Th: "TH";
253
+ readonly Tj: "TJ";
254
+ readonly Tk: "TK";
255
+ readonly Tl: "TL";
256
+ readonly Tm: "TM";
257
+ readonly Tn: "TN";
258
+ readonly To: "TO";
259
+ readonly Tr: "TR";
260
+ readonly Tt: "TT";
261
+ readonly Tv: "TV";
262
+ readonly Tw: "TW";
263
+ readonly Tz: "TZ";
264
+ readonly Ua: "UA";
265
+ readonly Ug: "UG";
266
+ readonly Um: "UM";
267
+ readonly Us: "US";
268
+ readonly Uy: "UY";
269
+ readonly Uz: "UZ";
270
+ readonly Va: "VA";
271
+ readonly Vc: "VC";
272
+ readonly Ve: "VE";
273
+ readonly Vg: "VG";
274
+ readonly Vi: "VI";
275
+ readonly Vn: "VN";
276
+ readonly Vu: "VU";
277
+ readonly Wf: "WF";
278
+ readonly Ws: "WS";
279
+ readonly Ye: "YE";
280
+ readonly Yt: "YT";
281
+ readonly Za: "ZA";
282
+ readonly Zm: "ZM";
283
+ readonly Zw: "ZW";
284
+ };
285
+ type CountryCode = (typeof countryCode)[keyof typeof countryCode];
286
+ declare const currencyCode: {
287
+ readonly Aed: "AED";
288
+ readonly Afn: "AFN";
289
+ readonly All: "ALL";
290
+ readonly Amd: "AMD";
291
+ readonly Ang: "ANG";
292
+ readonly Aoa: "AOA";
293
+ readonly Ars: "ARS";
294
+ readonly Aud: "AUD";
295
+ readonly Awg: "AWG";
296
+ readonly Azn: "AZN";
297
+ readonly Bam: "BAM";
298
+ readonly Bbd: "BBD";
299
+ readonly Bdt: "BDT";
300
+ readonly Bgn: "BGN";
301
+ readonly Bhd: "BHD";
302
+ readonly Bif: "BIF";
303
+ readonly Bmd: "BMD";
304
+ readonly Bnd: "BND";
305
+ readonly Bob: "BOB";
306
+ readonly Brl: "BRL";
307
+ readonly Bsd: "BSD";
308
+ readonly Btc: "BTC";
309
+ readonly Btn: "BTN";
310
+ readonly Bwp: "BWP";
311
+ readonly Byn: "BYN";
312
+ readonly Byr: "BYR";
313
+ readonly Bzd: "BZD";
314
+ readonly Cad: "CAD";
315
+ readonly Cdf: "CDF";
316
+ readonly Chf: "CHF";
317
+ readonly Clf: "CLF";
318
+ readonly Clp: "CLP";
319
+ readonly Cny: "CNY";
320
+ readonly Cop: "COP";
321
+ readonly Crc: "CRC";
322
+ readonly Cuc: "CUC";
323
+ readonly Cup: "CUP";
324
+ readonly Cve: "CVE";
325
+ readonly Czk: "CZK";
326
+ readonly Djf: "DJF";
327
+ readonly Dkk: "DKK";
328
+ readonly Dop: "DOP";
329
+ readonly Dzd: "DZD";
330
+ readonly Egp: "EGP";
331
+ readonly Ern: "ERN";
332
+ readonly Etb: "ETB";
333
+ readonly Eur: "EUR";
334
+ readonly Fjd: "FJD";
335
+ readonly Fkp: "FKP";
336
+ readonly Gbp: "GBP";
337
+ readonly Gel: "GEL";
338
+ readonly Ggp: "GGP";
339
+ readonly Ghs: "GHS";
340
+ readonly Gip: "GIP";
341
+ readonly Gmd: "GMD";
342
+ readonly Gnf: "GNF";
343
+ readonly Gtq: "GTQ";
344
+ readonly Gyd: "GYD";
345
+ readonly Hkd: "HKD";
346
+ readonly Hnl: "HNL";
347
+ readonly Hrk: "HRK";
348
+ readonly Htg: "HTG";
349
+ readonly Huf: "HUF";
350
+ readonly Idr: "IDR";
351
+ readonly Ils: "ILS";
352
+ readonly Imp: "IMP";
353
+ readonly Inr: "INR";
354
+ readonly Iqd: "IQD";
355
+ readonly Irr: "IRR";
356
+ readonly Isk: "ISK";
357
+ readonly Jep: "JEP";
358
+ readonly Jmd: "JMD";
359
+ readonly Jod: "JOD";
360
+ readonly Jpy: "JPY";
361
+ readonly Kes: "KES";
362
+ readonly Kgs: "KGS";
363
+ readonly Khr: "KHR";
364
+ readonly Kmf: "KMF";
365
+ readonly Kpw: "KPW";
366
+ readonly Krw: "KRW";
367
+ readonly Kwd: "KWD";
368
+ readonly Kyd: "KYD";
369
+ readonly Kzt: "KZT";
370
+ readonly Lak: "LAK";
371
+ readonly Lbp: "LBP";
372
+ readonly Lkr: "LKR";
373
+ readonly Lrd: "LRD";
374
+ readonly Lsl: "LSL";
375
+ readonly Ltl: "LTL";
376
+ readonly Lvl: "LVL";
377
+ readonly Lyd: "LYD";
378
+ readonly Mad: "MAD";
379
+ readonly Mdl: "MDL";
380
+ readonly Mga: "MGA";
381
+ readonly Mkd: "MKD";
382
+ readonly Mmk: "MMK";
383
+ readonly Mnt: "MNT";
384
+ readonly Mop: "MOP";
385
+ readonly Mro: "MRO";
386
+ readonly Mur: "MUR";
387
+ readonly Mvr: "MVR";
388
+ readonly Mwk: "MWK";
389
+ readonly Mxn: "MXN";
390
+ readonly Myr: "MYR";
391
+ readonly Mzn: "MZN";
392
+ readonly Nad: "NAD";
393
+ readonly Ngn: "NGN";
394
+ readonly Nio: "NIO";
395
+ readonly Nok: "NOK";
396
+ readonly Npr: "NPR";
397
+ readonly Nzd: "NZD";
398
+ readonly Omr: "OMR";
399
+ readonly Pab: "PAB";
400
+ readonly Pen: "PEN";
401
+ readonly Pgk: "PGK";
402
+ readonly Php: "PHP";
403
+ readonly Pkr: "PKR";
404
+ readonly Pln: "PLN";
405
+ readonly Pyg: "PYG";
406
+ readonly Qar: "QAR";
407
+ readonly Ron: "RON";
408
+ readonly Rsd: "RSD";
409
+ readonly Rub: "RUB";
410
+ readonly Rwf: "RWF";
411
+ readonly Sar: "SAR";
412
+ readonly Sbd: "SBD";
413
+ readonly Scr: "SCR";
414
+ readonly Sdg: "SDG";
415
+ readonly Sek: "SEK";
416
+ readonly Sgd: "SGD";
417
+ readonly Shp: "SHP";
418
+ readonly Sle: "SLE";
419
+ readonly Sll: "SLL";
420
+ readonly Sos: "SOS";
421
+ readonly Srd: "SRD";
422
+ readonly Std: "STD";
423
+ readonly Svc: "SVC";
424
+ readonly Syp: "SYP";
425
+ readonly Szl: "SZL";
426
+ readonly Thb: "THB";
427
+ readonly Tjs: "TJS";
428
+ readonly Tmt: "TMT";
429
+ readonly Tnd: "TND";
430
+ readonly Top: "TOP";
431
+ readonly Try: "TRY";
432
+ readonly Ttd: "TTD";
433
+ readonly Twd: "TWD";
434
+ readonly Tzs: "TZS";
435
+ readonly Uah: "UAH";
436
+ readonly Ugx: "UGX";
437
+ readonly Usd: "USD";
438
+ readonly Uyu: "UYU";
439
+ readonly Uzs: "UZS";
440
+ readonly Vef: "VEF";
441
+ readonly Vnd: "VND";
442
+ readonly Vuv: "VUV";
443
+ readonly Wst: "WST";
444
+ readonly Xaf: "XAF";
445
+ readonly Xag: "XAG";
446
+ readonly Xau: "XAU";
447
+ readonly Xcd: "XCD";
448
+ readonly Xdr: "XDR";
449
+ readonly Xof: "XOF";
450
+ readonly Xpf: "XPF";
451
+ readonly Yer: "YER";
452
+ readonly Zar: "ZAR";
453
+ readonly Zmk: "ZMK";
454
+ readonly Zmw: "ZMW";
455
+ readonly Zwl: "ZWL";
456
+ };
457
+ type CurrencyCode = (typeof currencyCode)[keyof typeof currencyCode];
458
+ declare const deMinimisThreshold: {
459
+ readonly Above: "ABOVE";
460
+ readonly Below: "BELOW";
461
+ };
462
+ type DeMinimisThreshold = (typeof deMinimisThreshold)[keyof typeof deMinimisThreshold];
463
+ declare const deMinimisType: {
464
+ readonly Duty: "DUTY";
465
+ readonly Fee: "FEE";
466
+ readonly Tax: "TAX";
467
+ };
468
+ type DeMinimisType = (typeof deMinimisType)[keyof typeof deMinimisType];
469
+ declare const elementsUiStyle: {
470
+ readonly Rounded: "ROUNDED";
471
+ readonly Sharp: "SHARP";
472
+ };
473
+ type ElementsUiStyle = (typeof elementsUiStyle)[keyof typeof elementsUiStyle];
474
+ declare const elementsUiTheme: {
475
+ readonly Dark: "DARK";
476
+ readonly Light: "LIGHT";
477
+ readonly System: "SYSTEM";
478
+ };
479
+ type ElementsUiTheme = (typeof elementsUiTheme)[keyof typeof elementsUiTheme];
480
+ declare const exchangeRateType: {
481
+ readonly Guaranteed: "GUARANTEED";
482
+ readonly MidMarket: "MID_MARKET";
483
+ };
484
+ type ExchangeRateType = (typeof exchangeRateType)[keyof typeof exchangeRateType];
485
+ declare const helloCurrencyBehavior: {
486
+ readonly Disabled: "DISABLED";
487
+ readonly Enabled: "ENABLED";
488
+ };
489
+ type HelloCurrencyBehavior = (typeof helloCurrencyBehavior)[keyof typeof helloCurrencyBehavior];
490
+ declare const helloEstimateBehavior: {
491
+ readonly Disabled: "DISABLED";
492
+ readonly Enabled: "ENABLED";
493
+ };
494
+ type HelloEstimateBehavior = (typeof helloEstimateBehavior)[keyof typeof helloEstimateBehavior];
495
+ declare const helloMobileLocation: {
496
+ readonly BottomLeft: "BOTTOM_LEFT";
497
+ readonly BottomRight: "BOTTOM_RIGHT";
498
+ readonly TopLeft: "TOP_LEFT";
499
+ readonly TopRight: "TOP_RIGHT";
500
+ };
501
+ type HelloMobileLocation = (typeof helloMobileLocation)[keyof typeof helloMobileLocation];
502
+ declare const helloPeekMessageBehavior: {
503
+ readonly Disabled: "DISABLED";
504
+ readonly Enabled: "ENABLED";
505
+ };
506
+ type HelloPeekMessageBehavior = (typeof helloPeekMessageBehavior)[keyof typeof helloPeekMessageBehavior];
507
+ declare const helloRestrictionBehavior: {
508
+ readonly Disabled: "DISABLED";
509
+ readonly RestrictAndBlock: "RESTRICT_AND_BLOCK";
510
+ readonly RestrictAndWarn: "RESTRICT_AND_WARN";
511
+ };
512
+ type HelloRestrictionBehavior = (typeof helloRestrictionBehavior)[keyof typeof helloRestrictionBehavior];
513
+ declare const incotermCode: {
514
+ readonly Cif: "CIF";
515
+ readonly Custom: "CUSTOM";
516
+ readonly Dap: "DAP";
517
+ readonly Ddp: "DDP";
518
+ readonly Fob: "FOB";
519
+ };
520
+ type IncotermCode = (typeof incotermCode)[keyof typeof incotermCode];
521
+ declare const itemMeasurementType: {
522
+ readonly Height: "HEIGHT";
523
+ readonly Length: "LENGTH";
524
+ readonly Weight: "WEIGHT";
525
+ readonly Width: "WIDTH";
526
+ };
527
+ type ItemMeasurementType = (typeof itemMeasurementType)[keyof typeof itemMeasurementType];
528
+ declare const itemRestrictionAction: {
529
+ readonly NoMatch: "NO_MATCH";
530
+ readonly ObservationsApply: "OBSERVATIONS_APPLY";
531
+ readonly ProhibitionsApply: "PROHIBITIONS_APPLY";
532
+ readonly RestrictionsApply: "RESTRICTIONS_APPLY";
533
+ };
534
+ type ItemRestrictionAction = (typeof itemRestrictionAction)[keyof typeof itemRestrictionAction];
535
+ declare const itemRestrictionType: {
536
+ readonly Observation: "OBSERVATION";
537
+ readonly Prohibition: "PROHIBITION";
538
+ readonly Restriction: "RESTRICTION";
539
+ };
540
+ type ItemRestrictionType = (typeof itemRestrictionType)[keyof typeof itemRestrictionType];
541
+ declare const itemType: {
542
+ readonly Bundle: "BUNDLE";
543
+ readonly DigitalGood: "DIGITAL_GOOD";
544
+ readonly PartialItem: "PARTIAL_ITEM";
545
+ readonly PhysicalGood: "PHYSICAL_GOOD";
546
+ readonly Service: "SERVICE";
547
+ readonly Subscription: "SUBSCRIPTION";
548
+ };
549
+ type ItemType = (typeof itemType)[keyof typeof itemType];
550
+ declare const itemUnitOfMeasure: {
551
+ readonly Centimeter: "CENTIMETER";
552
+ readonly Foot: "FOOT";
553
+ readonly Gram: "GRAM";
554
+ readonly Inch: "INCH";
555
+ readonly Kilogram: "KILOGRAM";
556
+ readonly Meter: "METER";
557
+ readonly Millimeter: "MILLIMETER";
558
+ readonly Ounce: "OUNCE";
559
+ readonly Pound: "POUND";
560
+ readonly Yard: "YARD";
561
+ };
562
+ type ItemUnitOfMeasure = (typeof itemUnitOfMeasure)[keyof typeof itemUnitOfMeasure];
563
+ declare const landedCostAdjustmentType: {
564
+ readonly CartTotal: "CART_TOTAL";
565
+ readonly Item: "ITEM";
566
+ readonly Shipping: "SHIPPING";
567
+ };
568
+ type LandedCostAdjustmentType = (typeof landedCostAdjustmentType)[keyof typeof landedCostAdjustmentType];
569
+ declare const landedCostGuaranteeCode: {
570
+ readonly InclusivePrice: "INCLUSIVE_PRICE";
571
+ readonly NotApplicable: "NOT_APPLICABLE";
572
+ readonly Zonos: "ZONOS";
573
+ };
574
+ type LandedCostGuaranteeCode = (typeof landedCostGuaranteeCode)[keyof typeof landedCostGuaranteeCode];
575
+ declare const mode: {
576
+ readonly Live: "LIVE";
577
+ readonly Test: "TEST";
578
+ };
579
+ type Mode = (typeof mode)[keyof typeof mode];
580
+ declare const notificationActiveStatus: {
581
+ readonly Disabled: "DISABLED";
582
+ readonly Enabled: "ENABLED";
583
+ };
584
+ type NotificationActiveStatus = (typeof notificationActiveStatus)[keyof typeof notificationActiveStatus];
585
+ declare const orderStatus: {
586
+ readonly Canceled: "CANCELED";
587
+ readonly Completed: "COMPLETED";
588
+ readonly FraudHold: "FRAUD_HOLD";
589
+ readonly Open: "OPEN";
590
+ readonly PaymentFailed: "PAYMENT_FAILED";
591
+ readonly PaymentPending: "PAYMENT_PENDING";
592
+ };
593
+ type OrderStatus = (typeof orderStatus)[keyof typeof orderStatus];
594
+ declare const packagingType: {
595
+ readonly Envelope: "ENVELOPE";
596
+ readonly Flat: "FLAT";
597
+ readonly Package: "PACKAGE";
598
+ readonly Pak: "PAK";
599
+ readonly Parcel: "PARCEL";
600
+ readonly Polybag: "POLYBAG";
601
+ readonly Tube: "TUBE";
602
+ };
603
+ type PackagingType = (typeof packagingType)[keyof typeof packagingType];
604
+ declare const partyType: {
605
+ readonly Destination: "DESTINATION";
606
+ readonly Origin: "ORIGIN";
607
+ readonly Payee: "PAYEE";
608
+ readonly Payor: "PAYOR";
609
+ };
610
+ type PartyType = (typeof partyType)[keyof typeof partyType];
611
+ declare const restrictedItemAction: {
612
+ readonly Block: "BLOCK";
613
+ readonly BlockAll: "BLOCK_ALL";
614
+ readonly Warn: "WARN";
615
+ };
616
+ type RestrictedItemAction = (typeof restrictedItemAction)[keyof typeof restrictedItemAction];
617
+ declare const shipmentAmountType: {
618
+ readonly Buffer: "BUFFER";
619
+ readonly Discount: "DISCOUNT";
620
+ readonly FuelSurcharge: "FUEL_SURCHARGE";
621
+ readonly Insurance: "INSURANCE";
622
+ readonly PublishedRate: "PUBLISHED_RATE";
623
+ readonly Surcharge: "SURCHARGE";
624
+ };
625
+ type ShipmentAmountType = (typeof shipmentAmountType)[keyof typeof shipmentAmountType];
626
+ declare const zonosAttribution: {
627
+ readonly Disabled: "DISABLED";
628
+ readonly Enabled: "ENABLED";
629
+ };
630
+ type ZonosAttribution = (typeof zonosAttribution)[keyof typeof zonosAttribution];
631
+ type CalculateLandedCostMutation = {
632
+ cartonizeWorkflow: Array<{
633
+ id: string;
634
+ items: Array<{
635
+ item: {
636
+ id: string;
637
+ };
638
+ }> | null;
639
+ type: PackagingType;
640
+ } | null> | null;
641
+ checkoutSessionWorkflow: Array<{
642
+ landedCost: {
643
+ id: string;
644
+ } | null;
645
+ subtotals: {
646
+ duties: number;
647
+ exchangeRate: {
648
+ id: string;
649
+ rate: number;
650
+ sourceCurrencyCode: CurrencyCode;
651
+ targetCurrencyCode: CurrencyCode;
652
+ type: ExchangeRateType;
653
+ };
654
+ fees: number;
655
+ items: number;
656
+ landedCostTotal: number;
657
+ presentmentCurrencyCode: CurrencyCode;
658
+ shipping: number;
659
+ taxes: number;
660
+ total: number;
661
+ };
662
+ }> | null;
663
+ itemCreateWorkflow: Array<{
664
+ amount: number;
665
+ description: string | null;
666
+ id: string;
667
+ imageUrl: string | null;
668
+ name: string | null;
669
+ quantity: number;
670
+ restriction: {
671
+ action: RestrictedItemAction;
672
+ reason: string;
673
+ } | null;
674
+ sku: string | null;
675
+ }>;
676
+ landedCostCalculateWorkflow: Array<{
677
+ appliedAdjustments: Array<{
678
+ amount: number;
679
+ item: {
680
+ amount: number;
681
+ } | null;
682
+ type: LandedCostAdjustmentType | null;
683
+ } | null> | null;
684
+ deMinimis: Array<{
685
+ formula: string;
686
+ method: IncotermCode;
687
+ note: string;
688
+ threshold: DeMinimisThreshold;
689
+ type: DeMinimisType;
690
+ }>;
691
+ duties: Array<{
692
+ amount: number;
693
+ currencyCode: CurrencyCode;
694
+ }>;
695
+ fees: Array<{
696
+ amount: number;
697
+ currencyCode: CurrencyCode;
698
+ }>;
699
+ id: string;
700
+ landedCostGuaranteeCode: LandedCostGuaranteeCode;
701
+ method: IncotermCode;
702
+ shipmentRating: {
703
+ amount: number;
704
+ displayName: string;
705
+ currencyCode: CurrencyCode;
706
+ id: string;
707
+ maxTransitAt: string | null;
708
+ minTransitAt: string | null;
709
+ };
710
+ taxes: Array<{
711
+ amount: number;
712
+ currencyCode: CurrencyCode;
713
+ }>;
714
+ } | null> | null;
715
+ partyCreateWorkflow: Array<{
716
+ id: string;
717
+ organization: string;
718
+ type: PartyType | null;
719
+ }>;
720
+ shipmentRatingCalculateWorkflow: Array<{
721
+ amount: number;
722
+ currencyCode: CurrencyCode;
723
+ displayName: string;
724
+ id: string;
725
+ maxTransitAt: string | null;
726
+ minTransitAt: string | null;
727
+ }>;
728
+ };
729
+ type CheckItemRestrictionsMutation = {
730
+ itemRestrictionApply: {
731
+ id: string;
732
+ items: Array<{
733
+ action: ItemRestrictionAction | null;
734
+ id: string;
735
+ itemDescription: string | null;
736
+ itemRestrictions: Array<{
737
+ hsCode: string;
738
+ id: string;
739
+ note: string;
740
+ sources: Array<string | null> | null;
741
+ type: ItemRestrictionType;
742
+ } | null> | null;
743
+ } | null>;
744
+ };
745
+ };
746
+ type GetOrderQuery = {
747
+ order: {
748
+ accountOrderNumber: string | null;
749
+ amountSubtotals: {
750
+ duties: number;
751
+ fees: number;
752
+ items: number;
753
+ shipping: number;
754
+ taxes: number;
755
+ variance: number;
756
+ };
757
+ createdAt: string;
758
+ currencyCode: CurrencyCode;
759
+ id: string;
760
+ items: Array<{
761
+ amount: number;
762
+ attributes: Array<{
763
+ key: string | null;
764
+ value: string | null;
765
+ } | null> | null;
766
+ countryOfOrigin: CountryCode | null;
767
+ description: string | null;
768
+ hsCode: string | null;
769
+ metadata: Array<{
770
+ key: string | null;
771
+ value: string | null;
772
+ } | null> | null;
773
+ name: string | null;
774
+ productId: string;
775
+ quantity: number;
776
+ sku: string | null;
777
+ }> | null;
778
+ landedCosts: Array<{
779
+ amountSubtotals: {
780
+ duties: number;
781
+ fees: number;
782
+ items: number;
783
+ landedCostTotal: number;
784
+ shipping: number;
785
+ taxes: number;
786
+ } | null;
787
+ appliedAdjustments: Array<{
788
+ Adjustment: {
789
+ amount: number;
790
+ } | null;
791
+ amount: number;
792
+ item: {
793
+ amount: number;
794
+ name: string | null;
795
+ } | null;
796
+ } | null> | null;
797
+ duties: Array<{
798
+ exchangeRate: {
799
+ rate: number;
800
+ sourceCurrencyCode: CurrencyCode;
801
+ targetCurrencyCode: CurrencyCode;
802
+ } | null;
803
+ }>;
804
+ shipmentRating: {
805
+ amount: number;
806
+ currencyCode: CurrencyCode;
807
+ details: Array<{
808
+ amount: number;
809
+ carrierCode: string;
810
+ type: ShipmentAmountType;
811
+ }> | null;
812
+ displayName: string;
813
+ id: string;
814
+ serviceLevelCode: string;
815
+ };
816
+ }> | null;
817
+ metadata: Array<{
818
+ key: string;
819
+ value: string;
820
+ } | null> | null;
821
+ mode: Mode;
822
+ parties: Array<{
823
+ location: {
824
+ administrativeArea: string | null;
825
+ administrativeAreaCode: string | null;
826
+ countryCode: CountryCode;
827
+ line1: string | null;
828
+ line2: string | null;
829
+ line3: string | null;
830
+ line4: string | null;
831
+ locality: string | null;
832
+ longitude: number | null;
833
+ postalCode: string | null;
834
+ } | null;
835
+ person: {
836
+ companyName: string | null;
837
+ email: string | null;
838
+ firstName: string | null;
839
+ lastName: string | null;
840
+ phone: string | null;
841
+ } | null;
842
+ type: PartyType | null;
843
+ }> | null;
844
+ root: {
845
+ exchangeRates: Array<{
846
+ rate: number;
847
+ sourceCurrencyCode: CurrencyCode;
848
+ targetCurrencyCode: CurrencyCode;
849
+ type: ExchangeRateType;
850
+ }>;
851
+ } | null;
852
+ status: OrderStatus;
853
+ trackingNumbers: Array<string | null> | null;
854
+ } | null;
855
+ };
856
+
857
+ type CustomEventMap = {
858
+ legacyCheckoutError: string;
859
+ 'zonos-checkout-success': {
860
+ message: string;
861
+ };
862
+ };
863
+
864
+ declare const envClientSchema: z.ZodObject<{
865
+ NEXT_PUBLIC_FLAG_URL: z.ZodString;
866
+ NEXT_PUBLIC_ZONOS_API_KEY: z.ZodString;
867
+ NEXT_PUBLIC_ZONOS_CDN_URL: z.ZodString;
868
+ NEXT_PUBLIC_ZONOS_JS_DELIVR_CDN_URL: z.ZodString;
869
+ NEXT_PUBLIC_ZONOS_PACKAGE_VERSION: z.ZodString;
870
+ NEXT_PUBLIC_ZONOS_ROUTE_URL: z.ZodString;
871
+ }, "strip", z.ZodTypeAny, {
872
+ NEXT_PUBLIC_FLAG_URL: string;
873
+ NEXT_PUBLIC_ZONOS_API_KEY: string;
874
+ NEXT_PUBLIC_ZONOS_CDN_URL: string;
875
+ NEXT_PUBLIC_ZONOS_JS_DELIVR_CDN_URL: string;
876
+ NEXT_PUBLIC_ZONOS_PACKAGE_VERSION: string;
877
+ NEXT_PUBLIC_ZONOS_ROUTE_URL: string;
878
+ }, {
879
+ NEXT_PUBLIC_FLAG_URL: string;
880
+ NEXT_PUBLIC_ZONOS_API_KEY: string;
881
+ NEXT_PUBLIC_ZONOS_CDN_URL: string;
882
+ NEXT_PUBLIC_ZONOS_JS_DELIVR_CDN_URL: string;
883
+ NEXT_PUBLIC_ZONOS_PACKAGE_VERSION: string;
884
+ NEXT_PUBLIC_ZONOS_ROUTE_URL: string;
885
+ }>;
886
+ interface Env extends z.infer<typeof envClientSchema> {
887
+ }
888
+
889
+ /* eslint-disable no-relative-import-paths/no-relative-import-paths */
890
+
891
+ declare global {
892
+ // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
893
+ interface Document {
894
+ addEventListener<K extends keyof CustomEventMap>(
895
+ type: K,
896
+ listener: (this: Document, ev: CustomEvent<CustomEventMap[K]>) => void,
897
+ ): void;
898
+ }
899
+
900
+ // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
901
+ interface Window {
902
+ Sentry?: {
903
+ init: (config: BrowserOptions) => void;
904
+ };
905
+ Stripe?: StripeConstructor;
906
+ Zonos: Zonos$1;
907
+ /**
908
+ * A flag to determine if the current page is a BigCommerce page
909
+ */
910
+ bcConfig?: unknown;
911
+ /**
912
+ * A flag to determine if the current page is a BigCommerce page
913
+ */
914
+ stencilBootstrap?: unknown;
915
+ sentryOnLoad?: () => void;
916
+ }
917
+
918
+ namespace NodeJS {
919
+ // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
920
+ interface ProcessEnv extends Env {}
921
+ }
922
+ }
923
+
924
+ type TranslatedText = {
925
+ [key: string]: string;
926
+ };
927
+ type EnteredInfo = {
928
+ city: string;
929
+ country: CountryCode;
930
+ email: string;
931
+ line1: string;
932
+ line2: string;
933
+ name: string;
934
+ phone: string;
935
+ postal_code: string;
936
+ state: string;
937
+ };
938
+ type ValidateAddressFields = Omit<StripeAddressElementChangeEvent['value']['address'], 'country'> & {
939
+ name: string;
940
+ };
941
+ type TranslatedAddressObject = {
942
+ [key in keyof ValidateAddressFields]?: TranslatedText;
943
+ };
944
+
945
+ type SubmitEventData = {
946
+ billingAddress: Record<keyof TranslatedAddressObject, string> | null;
947
+ shippingAddress: Record<keyof TranslatedAddressObject, string>;
948
+ };
949
+
950
+ declare const colorPrefixes: readonly ["blue", "cyan", "green", "orange", "purple", "red", "gray", "glass"];
951
+ declare const colorContrasts: readonly ["100", "200", "300", "400", "500", "600", "700", "800", "900", "1000"];
952
+ type ColorContrast = (typeof colorContrasts)[number];
953
+ type ColorPrefix = (typeof colorPrefixes)[number];
954
+ type Color = 'gray-0' | 'gray-50' | 'glass-0' | 'glass-50' | `${ColorPrefix}-${ColorContrast}` | 'gray-1100' | 'gray-1200' | 'glass-1100' | 'glass-1200';
955
+ declare const checkboxColorPrefix: readonly ["blue", "cyan", "green", "orange", "purple", "red", "gray"];
956
+ type CheckboxColorPrefix = (typeof checkboxColorPrefix)[number];
957
+
958
+ type BannerIntent = 'default' | 'error' | 'success' | 'warning' | 'info';
959
+
960
+ declare const textOptions: {
961
+ readonly pageHeader: {
962
+ readonly label: "Page Header (3XL) · 34px (2.125rem)";
963
+ readonly size: "3xl";
964
+ readonly tag: "h2";
965
+ readonly weight: 900;
966
+ };
967
+ readonly secondaryPageHeader: {
968
+ readonly label: "Secondary Page Header (3XL) • 34px, 500 \"Medium\"";
969
+ readonly size: "3xl";
970
+ readonly tag: "h2";
971
+ readonly weight: 500;
972
+ };
973
+ readonly header: {
974
+ readonly label: "Header (2XL) · 28px (1.75rem)";
975
+ readonly size: "2xl";
976
+ readonly tag: "h3";
977
+ readonly weight: 700;
978
+ };
979
+ readonly descriptionHeader: {
980
+ readonly label: "Description Header (2XL) · 28px (1.75rem)";
981
+ readonly size: "2xl";
982
+ readonly tag: "h3";
983
+ readonly weight: 700;
984
+ };
985
+ readonly title: {
986
+ readonly label: "Title (XL) • 22px (1.375rem)";
987
+ readonly size: "xl";
988
+ readonly tag: "h4";
989
+ readonly weight: 600;
990
+ };
991
+ readonly boldSubheader: {
992
+ readonly label: "Bold Subheader (L) • 18px (1.125rem)";
993
+ readonly size: "l";
994
+ readonly tag: "h5";
995
+ readonly weight: 700;
996
+ };
997
+ readonly semiBoldSubheader: {
998
+ readonly label: "Semi Bold Subheader (L / H4) • 18px (1.125rem)";
999
+ readonly size: "l";
1000
+ readonly tag: "h5";
1001
+ readonly weight: 600;
1002
+ };
1003
+ readonly subheader: {
1004
+ readonly label: "Subheader (L) • 18px (1.125rem)";
1005
+ readonly size: "l";
1006
+ readonly tag: "h5";
1007
+ readonly weight: 500;
1008
+ };
1009
+ readonly boldLabel: {
1010
+ readonly label: "Bold Label (Base) • 14px (.875rem)";
1011
+ readonly size: "base";
1012
+ readonly tag: "span";
1013
+ readonly weight: 700;
1014
+ };
1015
+ readonly semiBoldLabel: {
1016
+ readonly label: "Semi Bold Label (Base) • 14px (.875rem)";
1017
+ readonly size: "base";
1018
+ readonly tag: "span";
1019
+ readonly weight: 600;
1020
+ };
1021
+ readonly label: {
1022
+ readonly label: "Label (Base) • 14px (.875rem)";
1023
+ readonly size: "base";
1024
+ readonly tag: "span";
1025
+ readonly weight: 500;
1026
+ };
1027
+ readonly body: {
1028
+ readonly label: "Body (Base) • 14px (.875rem)";
1029
+ readonly size: "base";
1030
+ readonly tag: "span";
1031
+ readonly weight: 400;
1032
+ };
1033
+ readonly smallHeader: {
1034
+ readonly label: "Small header (S) • 12px (.75rem)";
1035
+ readonly size: "s";
1036
+ readonly tag: "span";
1037
+ readonly weight: 600;
1038
+ };
1039
+ readonly caption: {
1040
+ readonly label: "Caption (S) • 12px (.75rem)";
1041
+ readonly size: "s";
1042
+ readonly tag: "span";
1043
+ readonly weight: 400;
1044
+ };
1045
+ readonly hintText: {
1046
+ readonly label: "Hint text (XS) • 10px (.625rem)";
1047
+ readonly size: "xs";
1048
+ readonly tag: "span";
1049
+ readonly weight: 400;
1050
+ };
1051
+ };
1052
+ type TextOptions = typeof textOptions;
1053
+ type Size = TextOptions[keyof TextOptions]['size'];
1054
+ type Type = keyof TextOptions;
1055
+ type FontWeight = TextOptions[keyof TextOptions]['weight'] | 800;
1056
+
1057
+ type NotificationInit = {
1058
+ message: string;
1059
+ /**
1060
+ * Time in milliseconds
1061
+ * @default 4000
1062
+ */
1063
+ timeout?: number;
1064
+ /**
1065
+ * Type of notification
1066
+ * @default 'success'
1067
+ */
1068
+ type?: 'error' | 'success' | 'warning';
1069
+ };
1070
+
1071
+ type Items = CheckItemRestrictionsMutation['itemRestrictionApply']['items'];
1072
+ type RestrictedItem = Items[number] & {
1073
+ name?: string;
1074
+ };
1075
+
1076
+ type ShippingRichRadioItem = {
1077
+ caption?: string;
1078
+ label: string;
1079
+ price: string;
1080
+ sublabel?: string;
1081
+ value: string | number;
1082
+ };
1083
+
1084
+ type SpinnerColor = 'primary' | 'info' | 'success' | 'danger' | 'warning' | 'black' | 'white';
1085
+
1086
+ type GridSpacing = 0 | 4 | 8 | 12 | 16 | 20 | 24 | 32 | 40;
1087
+
1088
+ /* eslint-disable */
1089
+ /* tslint:disable */
1090
+ /**
1091
+ * This is an autogenerated file created by the Stencil compiler.
1092
+ * It contains typing information for all components that exist in this project.
1093
+ */
1094
+
1095
+ declare namespace Components {
1096
+ interface ZonosAddress {
1097
+ /**
1098
+ * Default address for stripe
1099
+ */
1100
+ "defaultAddress": ContactOption | null;
1101
+ /**
1102
+ * The title text for the address element
1103
+ */
1104
+ "titleText": string;
1105
+ /**
1106
+ * The type of address element to render
1107
+ */
1108
+ "type": 'billing' | 'shipping';
1109
+ }
1110
+ interface ZonosAddressDisplay {
1111
+ /**
1112
+ * Title for the address display
1113
+ */
1114
+ "addressType": 'shipping' | 'billing';
1115
+ /**
1116
+ * Address to show up
1117
+ */
1118
+ "currentAddress": EnteredInfo;
1119
+ }
1120
+ interface ZonosAddressForm {
1121
+ /**
1122
+ * Title for the address form
1123
+ */
1124
+ "addressType": 'shipping' | 'billing';
1125
+ /**
1126
+ * Address to show up
1127
+ */
1128
+ "currentAddress": EnteredInfo;
1129
+ /**
1130
+ * Translated address
1131
+ */
1132
+ "translatedAddress": TranslatedAddressObject;
1133
+ }
1134
+ interface ZonosAddressUpdateDialog {
1135
+ /**
1136
+ * Billing address that user has entered (optional if billing is the same as shipping)
1137
+ */
1138
+ "billingAddress": EnteredInfo | null;
1139
+ /**
1140
+ * Whether or not the continue button is loading
1141
+ */
1142
+ "continueLoading": boolean;
1143
+ /**
1144
+ * Whether or not the dialog is loading
1145
+ */
1146
+ "dialogLoading": boolean;
1147
+ /**
1148
+ * Whether or not the dialog is open
1149
+ */
1150
+ "dialogOpen": boolean;
1151
+ /**
1152
+ * Whether or not the dialog is open
1153
+ */
1154
+ "isMobile": boolean;
1155
+ /**
1156
+ * Shipping address that user has entered
1157
+ */
1158
+ "shippingAddress": EnteredInfo;
1159
+ /**
1160
+ * Button color of the submit button
1161
+ */
1162
+ "submitBtnColor"?: string;
1163
+ /**
1164
+ * Button type of the submit button
1165
+ */
1166
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
1167
+ /**
1168
+ * Translated address fields that GPT has translated
1169
+ */
1170
+ "translatedBillingAddress": TranslatedAddressObject;
1171
+ /**
1172
+ * Translated address fields that GPT has translated
1173
+ */
1174
+ "translatedShippingAddress": TranslatedAddressObject;
1175
+ }
1176
+ interface ZonosBadge {
1177
+ /**
1178
+ * The size of the badge
1179
+ * @default 24
1180
+ */
1181
+ "badgeColor": ColorPrefix;
1182
+ /**
1183
+ * Whether or not the badge is bold
1184
+ * @default false
1185
+ */
1186
+ "bold": boolean;
1187
+ /**
1188
+ * The icon element to display
1189
+ * @default null
1190
+ */
1191
+ "icon"?: HTMLZonosIconElement;
1192
+ /**
1193
+ * Position the icon to the right when icon is specified
1194
+ * @default false
1195
+ */
1196
+ "iconRight": boolean;
1197
+ /**
1198
+ * Whether or not the badge is rounded
1199
+ * @default false
1200
+ */
1201
+ "rounded": boolean;
1202
+ /**
1203
+ * The size of the badge
1204
+ * @default 'default'
1205
+ */
1206
+ "size": 'small' | 'default';
1207
+ }
1208
+ interface ZonosBanner {
1209
+ /**
1210
+ * Whether or not the banner is bold
1211
+ */
1212
+ "bannerTitle"?: string;
1213
+ /**
1214
+ * Intent of the banner (success, warning, error)
1215
+ */
1216
+ "intent"?: BannerIntent;
1217
+ }
1218
+ interface ZonosButton {
1219
+ /**
1220
+ * The color of the button text and svg **NOTE**: If the button `variant` is set to 'standard', backgroundColor will be disregarded
1221
+ */
1222
+ "backgroundColor"?: Color | (string & { _placeholder?: never });
1223
+ /**
1224
+ * The border style of the button
1225
+ * @default ROUNDED
1226
+ */
1227
+ "borderStyle"?: ElementsUiStyle;
1228
+ /**
1229
+ * The color of the button text and svg
1230
+ */
1231
+ "buttonColor"?: Color | (string & { _placeholder?: never });
1232
+ /**
1233
+ * The icon element to display
1234
+ * @default null
1235
+ */
1236
+ "icon": HTMLZonosIconElement | null;
1237
+ /**
1238
+ * Whether or not the icon is on the right
1239
+ * @default false
1240
+ */
1241
+ "iconRight"?: boolean;
1242
+ /**
1243
+ * Whether or not the button is disabled
1244
+ * @note Prop should not conflict name with native html attribute if the prop is also affected by another prop. The issue is the component has internal disabled
1245
+ * @prop ().
1246
+ * @prop decorator is to watch the update of the attribute of the component in the dom. And `disabled` prop is not an only factor to determine the component is disabled. isLoading
1247
+ * @prop () also affect that. <Host> is also referred to a component itself, if disabled prop is true, the `zonos-button` will have disabled attribute. So let's say when the loading state is true, and the component consume the zonos-button doesn't pass the disabled prop down. It accidentally turns the disabled prop on even thought the disabled state is not changed from the outside.
1248
+ */
1249
+ "isDisabled": boolean;
1250
+ /**
1251
+ * Whether or not the button is loading
1252
+ */
1253
+ "loading": boolean;
1254
+ /**
1255
+ * Whether or not the button has a background
1256
+ * @default false
1257
+ */
1258
+ "noBackground": boolean;
1259
+ /**
1260
+ * Whether or not the button has a left padding
1261
+ */
1262
+ "noPaddingLeft": boolean;
1263
+ /**
1264
+ * Whether or not the button has a right padding
1265
+ */
1266
+ "noPaddingRight": boolean;
1267
+ /**
1268
+ * The size of the button
1269
+ * @default 'sm'
1270
+ */
1271
+ "size": 'sm' | 'md' | 'lg';
1272
+ /**
1273
+ * The theme of the button
1274
+ */
1275
+ "theme"?: ElementsUiTheme;
1276
+ /**
1277
+ * The variance of the button
1278
+ * @note If the button `variant` is set to 'standard', backgroundColor will be disregarded
1279
+ * @default standard
1280
+ */
1281
+ "variant": | 'primary'
1282
+ | 'success'
1283
+ | 'subtle'
1284
+ | 'outline'
1285
+ | 'standard'
1286
+ | 'danger'
1287
+ | 'warning';
1288
+ /**
1289
+ * Whether or not the button has a box shadow
1290
+ */
1291
+ "withBoxShadow": boolean;
1292
+ }
1293
+ interface ZonosCard {
1294
+ /**
1295
+ * The actions to display in the header of the card
1296
+ */
1297
+ "actions"?: HTMLElement;
1298
+ /**
1299
+ * The actions to display in the footer of the card
1300
+ */
1301
+ "footerActions"?: HTMLElement;
1302
+ /**
1303
+ * The content to display in the footer of the card
1304
+ */
1305
+ "footerContent"?: HTMLElement;
1306
+ /**
1307
+ * The height of the footer in pixels
1308
+ */
1309
+ "footerHeight"?: number;
1310
+ /**
1311
+ * The label to display in the header of the card
1312
+ */
1313
+ "label"?: HTMLElement;
1314
+ /**
1315
+ * The spacing to apply between elements in the card
1316
+ */
1317
+ "spacing"?: string;
1318
+ }
1319
+ interface ZonosCartItems {
1320
+ }
1321
+ interface ZonosCartRestrictedItems {
1322
+ /**
1323
+ * This is to hide the section when the parent collapse on mobile
1324
+ */
1325
+ "hide": boolean;
1326
+ }
1327
+ interface ZonosCartSubtotal {
1328
+ }
1329
+ interface ZonosCheckbox {
1330
+ /**
1331
+ * background color of the checkbox
1332
+ */
1333
+ "backgroundColor": | CheckboxColorPrefix
1334
+ | (string & { _placeholder?: never });
1335
+ /**
1336
+ * The border style of the button
1337
+ * @default ROUNDED
1338
+ */
1339
+ "borderStyle"?: ElementsUiStyle;
1340
+ /**
1341
+ * Font size of the checkbox text
1342
+ */
1343
+ "fontSize": Size;
1344
+ /**
1345
+ * Whether or not the checkbox is checked
1346
+ */
1347
+ "isChecked": boolean;
1348
+ /**
1349
+ * Whether or not the checkbox is disabled
1350
+ */
1351
+ "isDisabled": boolean;
1352
+ /**
1353
+ * The label of the checkbox
1354
+ */
1355
+ "label"?: string;
1356
+ /**
1357
+ * Size of the checkbox
1358
+ */
1359
+ "size": 12 | 16 | 24;
1360
+ }
1361
+ interface ZonosCheckout {
1362
+ /**
1363
+ * Override appearance config
1364
+ */
1365
+ "appearanceSettingsOverride"?: Partial<AppearanceConfig>;
1366
+ /**
1367
+ * Close dialog action
1368
+ */
1369
+ "closeDialogHandler": (props?: { confirmed: boolean; }) => Promise<void>;
1370
+ /**
1371
+ * Default address to use for the checkout (preview mode)
1372
+ */
1373
+ "defaultAddress": StripeStoreContactOption | null;
1374
+ /**
1375
+ * Force dialog to be open
1376
+ */
1377
+ "forceDialogOpen": boolean;
1378
+ /**
1379
+ * Setup all of the event listeners for the component on first load
1380
+ */
1381
+ "init": () => Promise<void>;
1382
+ /**
1383
+ * Flag to determine if the checkout is on mobile
1384
+ */
1385
+ "mobile": boolean;
1386
+ /**
1387
+ * Preview checkout without needing to click on the button. This would be useful for demo purpose
1388
+ */
1389
+ "preview": boolean;
1390
+ /**
1391
+ * For storybook to set to finish step, this is to trigger in the story for zonos-checkout-finish
1392
+ */
1393
+ "setToFinishStep": (forcePaymentStatus?: PaymentIntent['status']) => Promise<void>;
1394
+ }
1395
+ interface ZonosCheckoutFinish {
1396
+ /**
1397
+ * The border radius style of the dialog
1398
+ */
1399
+ "borderRadius": ElementsUiStyle;
1400
+ /**
1401
+ * Override the notification message and title, bypass checking stripe payment status
1402
+ */
1403
+ "overrideNotification"?: {
1404
+ messages: string[];
1405
+ title: string;
1406
+ type: 'success' | 'error';
1407
+ };
1408
+ /**
1409
+ * Force status to test the UI for storybook
1410
+ */
1411
+ "storybookForceStatus"?: PaymentIntent['status'];
1412
+ }
1413
+ interface ZonosCheckoutFooter {
1414
+ /**
1415
+ * Theme to change the color of the logo
1416
+ */
1417
+ "dataTheme"?: ElementsUiTheme;
1418
+ /**
1419
+ * Override mobile mode
1420
+ */
1421
+ "mobile": boolean;
1422
+ }
1423
+ interface ZonosCheckoutPayment {
1424
+ /**
1425
+ * Whether or not the continue button is loading
1426
+ */
1427
+ "continueLoading": boolean;
1428
+ /**
1429
+ * Error occurred during payment
1430
+ */
1431
+ "paymentError": boolean;
1432
+ /**
1433
+ * Submit button main color
1434
+ */
1435
+ "submitBtnColor"?: string;
1436
+ /**
1437
+ * Whether or not the checkout is in mobile mode
1438
+ */
1439
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
1440
+ }
1441
+ interface ZonosCheckoutProgressTabs {
1442
+ /**
1443
+ * Background color of the parent that's wrapped around the tab progress bar
1444
+ */
1445
+ "backgroundColor"?: Color | (string & { _placeholder?: never }) | null;
1446
+ /**
1447
+ * Set the tab items data. This is to be used in storybook
1448
+ */
1449
+ "setTabItems": (tabItems: TabItems) => Promise<void>;
1450
+ /**
1451
+ * Set selected tab. Only set the tab if it's clickable
1452
+ */
1453
+ "setTabSelected": (tabValue: TabItem['value']) => Promise<void>;
1454
+ /**
1455
+ * Color of the tab progress bar and label, override the secondary color of the appearance settings
1456
+ */
1457
+ "tabColor"?: string | null;
1458
+ }
1459
+ interface ZonosCollapse {
1460
+ /**
1461
+ * Collapsed size when collapsed
1462
+ */
1463
+ "collapseSize": number;
1464
+ /**
1465
+ * Collapsed state of the element
1466
+ */
1467
+ "collapsed": boolean;
1468
+ }
1469
+ interface ZonosComponent {
1470
+ /**
1471
+ * The first name
1472
+ */
1473
+ "first": string;
1474
+ /**
1475
+ * The last name
1476
+ */
1477
+ "last": string;
1478
+ /**
1479
+ * The middle name
1480
+ */
1481
+ "middle": string;
1482
+ }
1483
+ interface ZonosConfirmDialog {
1484
+ /**
1485
+ * Cancel button text
1486
+ */
1487
+ "dialogCancelBtnText": string;
1488
+ /**
1489
+ * Confirm button text
1490
+ */
1491
+ "dialogConfirmBtnText": string;
1492
+ /**
1493
+ * Dialog intent (for icon and button color)
1494
+ * @default "info"
1495
+ */
1496
+ "dialogIntent": 'info' | 'danger' | 'warn';
1497
+ /**
1498
+ * Whether or not the dialog is open
1499
+ */
1500
+ "dialogOpen": boolean;
1501
+ /**
1502
+ * Dialog subtitle text
1503
+ * @default "" No subtitle
1504
+ */
1505
+ "dialogSubtitle": string;
1506
+ /**
1507
+ * Dialog title text
1508
+ * @default "Are you sure?"
1509
+ */
1510
+ "dialogTitle": string;
1511
+ /**
1512
+ * Whether or not the dialog is open
1513
+ */
1514
+ "isMobile": boolean;
1515
+ /**
1516
+ * Whether or not to close the dialog when clicking outside of it
1517
+ * @default false
1518
+ */
1519
+ "noClickOutside": boolean;
1520
+ /**
1521
+ * Submit button main color
1522
+ */
1523
+ "submitBtnColor"?: string;
1524
+ }
1525
+ interface ZonosController {
1526
+ /**
1527
+ * The zonos config object
1528
+ */
1529
+ "config": LoadZonosParamsConfig;
1530
+ /**
1531
+ * Get appearance from setting
1532
+ */
1533
+ "getAppearanceSetting": () => Promise<AppearanceConfig>;
1534
+ /**
1535
+ * Method to initialize checkout element
1536
+ */
1537
+ "initCheckoutElement": (stripe: Stripe) => Promise<void>;
1538
+ /**
1539
+ * Override the setting
1540
+ * @param config config that need to override the default setting
1541
+ */
1542
+ "overrideConfig": (config: LoadZonosParamsConfig) => Promise<void>;
1543
+ /**
1544
+ * Override country code for storybook
1545
+ */
1546
+ "overrideCountry": (countryCode: CountryCode) => Promise<void>;
1547
+ /**
1548
+ * Setup google font
1549
+ */
1550
+ "setupGoogleFont": (overrideFont?: string) => Promise<void>;
1551
+ /**
1552
+ * Show notification
1553
+ */
1554
+ "showNotification": (notification: NotificationInit) => Promise<void>;
1555
+ /**
1556
+ * Update the organizationName
1557
+ */
1558
+ "updateOrganizationName": (organizationName: string) => Promise<void>;
1559
+ /**
1560
+ * The zonos api key
1561
+ */
1562
+ "zonosApiKey": string;
1563
+ }
1564
+ interface ZonosCountryFlag {
1565
+ /**
1566
+ * The country code for the flag
1567
+ * @default localizationStore.selectedCountryCode
1568
+ * @example 'US'
1569
+ */
1570
+ "countryCode": CountryCode | null;
1571
+ /**
1572
+ * The size of the flag
1573
+ */
1574
+ "size"?: number;
1575
+ }
1576
+ interface ZonosCountrySelect {
1577
+ /**
1578
+ * Function to close the country select
1579
+ * @default () => {}
1580
+ */
1581
+ "handleOnClose": () => void;
1582
+ }
1583
+ interface ZonosCustomMessage {
1584
+ /**
1585
+ * The custom message icon
1586
+ */
1587
+ "icon": string;
1588
+ /**
1589
+ * The custom message text
1590
+ */
1591
+ "message": string;
1592
+ }
1593
+ interface ZonosCustomerInfo {
1594
+ /**
1595
+ * Whether or not the continue button is loading
1596
+ */
1597
+ "continueLoading": boolean;
1598
+ /**
1599
+ * Default address to use for the checkout (preview mode)
1600
+ */
1601
+ "defaultAddress": StripeStoreContactOption | null;
1602
+ /**
1603
+ * Whether or not the dialog is open
1604
+ */
1605
+ "isMobile": boolean;
1606
+ /**
1607
+ * Submit button main color
1608
+ */
1609
+ "submitBtnColor"?: string;
1610
+ /**
1611
+ * Whether or not the checkout is in mobile mode
1612
+ */
1613
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
1614
+ }
1615
+ interface ZonosDialog {
1616
+ /**
1617
+ * The border style of the button
1618
+ * @default ROUNDED
1619
+ */
1620
+ "borderStyle"?: ElementsUiStyle;
1621
+ /**
1622
+ * The header text for the dialog
1623
+ */
1624
+ "headerText": string;
1625
+ /**
1626
+ * The height of the dialog (max-width still 90vh)
1627
+ */
1628
+ "height"?: string;
1629
+ /**
1630
+ * Load loading spinner for the dialog or not
1631
+ */
1632
+ "isLoading": boolean;
1633
+ /**
1634
+ * The min height of the dialog
1635
+ */
1636
+ "minHeight"?: string;
1637
+ /**
1638
+ * Flag to determine if the checkout is on mobile
1639
+ */
1640
+ "mobile": boolean;
1641
+ /**
1642
+ * Whether or not to have body padding
1643
+ * @default false
1644
+ */
1645
+ "noBodyPadding": boolean;
1646
+ /**
1647
+ * Whether or not to have body padding
1648
+ * @default false
1649
+ */
1650
+ "noBorder": boolean;
1651
+ /**
1652
+ * Whether or not to close the dialog when clicking outside of it
1653
+ * @default false
1654
+ */
1655
+ "noClickOutside": boolean;
1656
+ /**
1657
+ * Whether or not to show the close button
1658
+ * @default false
1659
+ */
1660
+ "noCloseButton": boolean;
1661
+ /**
1662
+ * Whether or not to show the header
1663
+ * @default false
1664
+ */
1665
+ "noHeader": boolean;
1666
+ /**
1667
+ * Whether or not the dialog is open
1668
+ * @default false
1669
+ */
1670
+ "open": boolean;
1671
+ /**
1672
+ * The width of the dialog
1673
+ * @default 460px
1674
+ */
1675
+ "width": string;
1676
+ }
1677
+ interface ZonosHello {
1678
+ /**
1679
+ * Force left animation instead of detecting which side has more space
1680
+ * @default false
1681
+ */
1682
+ "animateFromLeftOverride"?: boolean;
1683
+ /**
1684
+ * Override the appearance settings
1685
+ */
1686
+ "appearanceSettingsOverride"?: Partial<AppearanceConfig>;
1687
+ /**
1688
+ * This method will convert the currency and return the converted value
1689
+ * @returns number
1690
+ */
1691
+ "convert": (value: number) => Promise<number>;
1692
+ /**
1693
+ * This method will call convert and format, and return the converted and formatted string
1694
+ * @returns string
1695
+ */
1696
+ "convertAndFormat": (value: number) => Promise<string>;
1697
+ /**
1698
+ * This method will trigger the currency conversion and display the converted value
1699
+ * @returns void
1700
+ */
1701
+ "displayCurrency": () => Promise<void>;
1702
+ /**
1703
+ * This method will format the currency and return the formatted string
1704
+ * @returns number
1705
+ */
1706
+ "format": (value: number) => Promise<string>;
1707
+ /**
1708
+ * Force mobile styling instead of media query and use the passed location value
1709
+ * @default false
1710
+ */
1711
+ "mobileLocationOverride"?: HelloMobileLocation;
1712
+ /**
1713
+ * This method show the hello dialog
1714
+ * @returns void
1715
+ */
1716
+ "openHelloDialog": (value: boolean) => Promise<void>;
1717
+ }
1718
+ interface ZonosHelloDialog {
1719
+ /**
1720
+ * Force left animation instead of detecting which side has more space
1721
+ * @default false
1722
+ */
1723
+ "animateFromLeftOverride"?: boolean;
1724
+ /**
1725
+ * Override the appearance settings
1726
+ */
1727
+ "appearanceSettings"?: Partial<AppearanceConfig>;
1728
+ /**
1729
+ * Whether or not the dialog is open
1730
+ */
1731
+ "isOpen": boolean;
1732
+ /**
1733
+ * Force mobile styling instead of media query and use the passed location value
1734
+ * @default false
1735
+ */
1736
+ "mobileLocationOverride"?: HelloMobileLocation;
1737
+ /**
1738
+ * Item restrictions array if any
1739
+ * @default []
1740
+ */
1741
+ "restrictedItems": RestrictedItem[];
1742
+ /**
1743
+ * The function to set the open state
1744
+ * @default () => {}
1745
+ */
1746
+ "setIsOpen": (isOpen: boolean) => void;
1747
+ }
1748
+ interface ZonosHelloDialogFooter {
1749
+ /**
1750
+ * Appearance settings
1751
+ */
1752
+ "appearanceSettings"?: Partial<AppearanceConfig>;
1753
+ /**
1754
+ * Whether or not the country select dialog is open
1755
+ * @default false
1756
+ */
1757
+ "setShowCountrySelect": (value: boolean) => void;
1758
+ /**
1759
+ * Whether or not the language select dialog is open
1760
+ * @default false
1761
+ */
1762
+ "setShowLanguageSelect": (value: boolean) => void;
1763
+ }
1764
+ interface ZonosIcon {
1765
+ /**
1766
+ * Determines if the icon should be auto height instead of square
1767
+ * @default false
1768
+ */
1769
+ "autoHeight": boolean;
1770
+ /**
1771
+ * The content of the icon (full svg)
1772
+ * @example import RemoveIcon from './assets/removeIcon.svg'; ... <zonos-icon content={RemoveIcon}></zonos-icon> // or <zonos-icon content="<svg>...</svg>"></zonos-icon>
1773
+ */
1774
+ "content": string;
1775
+ /**
1776
+ * Color of the SVG
1777
+ * @default 'gray-1200'
1778
+ */
1779
+ "iconColor": Color | (string & { _placeholder?: never });
1780
+ /**
1781
+ * The size of the icon
1782
+ * @default 24
1783
+ */
1784
+ "size": number;
1785
+ }
1786
+ interface ZonosInput {
1787
+ /**
1788
+ * Input label
1789
+ */
1790
+ "inputLabel": string;
1791
+ /**
1792
+ * Placeholder for the input
1793
+ */
1794
+ "inputPlaceholder": string;
1795
+ /**
1796
+ * Input size
1797
+ */
1798
+ "inputSize": 'sm' | 'md' | 'lg' | 'xl';
1799
+ /**
1800
+ * Value of the input
1801
+ */
1802
+ "inputValue": string;
1803
+ /**
1804
+ * Disables the input
1805
+ */
1806
+ "isDisabled": boolean;
1807
+ /**
1808
+ * Error state of the input
1809
+ */
1810
+ "isError": boolean;
1811
+ }
1812
+ interface ZonosLanguageSelect {
1813
+ /**
1814
+ * Function to close the language select
1815
+ * @default () => {}
1816
+ */
1817
+ "handleOnClose": () => void;
1818
+ }
1819
+ interface ZonosLink {
1820
+ /**
1821
+ * The href for the link
1822
+ */
1823
+ "href": string;
1824
+ /**
1825
+ * The title attribute for the link
1826
+ */
1827
+ "linkTitle"?: string;
1828
+ /**
1829
+ * The rel attribute for the link
1830
+ */
1831
+ "rel"?: string;
1832
+ /**
1833
+ * The target attribute for the link
1834
+ */
1835
+ "target"?: string;
1836
+ }
1837
+ interface ZonosLinkAuthentication {
1838
+ /**
1839
+ * Default email for stripe
1840
+ */
1841
+ "defaultEmail": string | null;
1842
+ /**
1843
+ * The title text for the authentication element
1844
+ */
1845
+ "titleText": string;
1846
+ }
1847
+ interface ZonosLogo {
1848
+ /**
1849
+ * Theme to change the color of the logo
1850
+ */
1851
+ "theme": ElementsUiTheme;
1852
+ /**
1853
+ * The width of the logo
1854
+ */
1855
+ "width": string;
1856
+ }
1857
+ interface ZonosNotification {
1858
+ /**
1859
+ * Show a notification
1860
+ */
1861
+ "showNotification": (notification: NotificationInit) => Promise<void>;
1862
+ }
1863
+ interface ZonosPayment {
1864
+ /**
1865
+ * The title text for the authentication element
1866
+ */
1867
+ "titleText"?: string;
1868
+ }
1869
+ interface ZonosReview {
1870
+ /**
1871
+ * Whether or not to show the collapse icon This is controled from the collapsed state of the zonos-collapse component to show the collapse icon
1872
+ */
1873
+ "collapsed": boolean;
1874
+ /**
1875
+ * Whether or not the component is being rendered with mobile styles
1876
+ */
1877
+ "mobile": boolean;
1878
+ }
1879
+ interface ZonosSelectDialogHeader {
1880
+ /**
1881
+ * Callback to do something on close
1882
+ * @default () => {}
1883
+ */
1884
+ "handleOnClose": () => void;
1885
+ /**
1886
+ * The label for the select dialog
1887
+ */
1888
+ "label": string;
1889
+ }
1890
+ interface ZonosShipping {
1891
+ /**
1892
+ * Whether or not the continue button is loading
1893
+ */
1894
+ "continueLoading": boolean;
1895
+ /**
1896
+ * Submit button main color
1897
+ */
1898
+ "submitBtnColor"?: string;
1899
+ /**
1900
+ * Whether or not the checkout is in mobile mode
1901
+ */
1902
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
1903
+ }
1904
+ interface ZonosShippingRichRadio {
1905
+ /**
1906
+ * Override border color of the radio item
1907
+ */
1908
+ "borderColor"?: Color | (string & { _placeholder?: never });
1909
+ /**
1910
+ * Override border color of the radio item
1911
+ */
1912
+ "borderStyle"?: ElementsUiStyle;
1913
+ /**
1914
+ * Initial selected value
1915
+ */
1916
+ "initialSelectedValue"?: string | number;
1917
+ /**
1918
+ * List of items to display
1919
+ */
1920
+ "items": ShippingRichRadioItem[];
1921
+ /**
1922
+ * Theme of the radio item
1923
+ */
1924
+ "theme"?: ElementsUiTheme;
1925
+ }
1926
+ interface ZonosSpinner {
1927
+ /**
1928
+ * The size of the spinner
1929
+ * @default 32
1930
+ */
1931
+ "size": number;
1932
+ /**
1933
+ * Color of the spinner
1934
+ */
1935
+ "spinnerColor"?: SpinnerColor;
1936
+ }
1937
+ interface ZonosText {
1938
+ /**
1939
+ * The tag to use for the text
1940
+ */
1941
+ "content"?: string;
1942
+ /**
1943
+ * The size of the text
1944
+ */
1945
+ "size"?: Size;
1946
+ /**
1947
+ * The icon element to display
1948
+ */
1949
+ "textColor": Color | (string & { _placeholder?: never });
1950
+ /**
1951
+ * Type of the text to display
1952
+ */
1953
+ "type": Type;
1954
+ /**
1955
+ * The weight of the text
1956
+ */
1957
+ "weight"?: FontWeight;
1958
+ }
1959
+ interface ZonosTooltip {
1960
+ /**
1961
+ * The title of the tooltip
1962
+ */
1963
+ "label": string;
1964
+ /**
1965
+ * The subtitle of the tooltip
1966
+ */
1967
+ "subtitle": string;
1968
+ }
1969
+ interface ZonosVStack {
1970
+ /**
1971
+ * The spacing between elements in the stack
1972
+ * @default 24
1973
+ */
1974
+ "spacing": GridSpacing;
1975
+ }
1976
+ }
1977
+ interface ZonosAddressCustomEvent<T> extends CustomEvent<T> {
1978
+ detail: T;
1979
+ target: HTMLZonosAddressElement;
1980
+ }
1981
+ interface ZonosAddressFormCustomEvent<T> extends CustomEvent<T> {
1982
+ detail: T;
1983
+ target: HTMLZonosAddressFormElement;
1984
+ }
1985
+ interface ZonosAddressUpdateDialogCustomEvent<T> extends CustomEvent<T> {
1986
+ detail: T;
1987
+ target: HTMLZonosAddressUpdateDialogElement;
1988
+ }
1989
+ interface ZonosCheckboxCustomEvent<T> extends CustomEvent<T> {
1990
+ detail: T;
1991
+ target: HTMLZonosCheckboxElement;
1992
+ }
1993
+ interface ZonosCheckoutFinishCustomEvent<T> extends CustomEvent<T> {
1994
+ detail: T;
1995
+ target: HTMLZonosCheckoutFinishElement;
1996
+ }
1997
+ interface ZonosCheckoutPaymentCustomEvent<T> extends CustomEvent<T> {
1998
+ detail: T;
1999
+ target: HTMLZonosCheckoutPaymentElement;
2000
+ }
2001
+ interface ZonosConfirmDialogCustomEvent<T> extends CustomEvent<T> {
2002
+ detail: T;
2003
+ target: HTMLZonosConfirmDialogElement;
2004
+ }
2005
+ interface ZonosControllerCustomEvent<T> extends CustomEvent<T> {
2006
+ detail: T;
2007
+ target: HTMLZonosControllerElement;
2008
+ }
2009
+ interface ZonosCustomerInfoCustomEvent<T> extends CustomEvent<T> {
2010
+ detail: T;
2011
+ target: HTMLZonosCustomerInfoElement;
2012
+ }
2013
+ interface ZonosDialogCustomEvent<T> extends CustomEvent<T> {
2014
+ detail: T;
2015
+ target: HTMLZonosDialogElement;
2016
+ }
2017
+ interface ZonosHelloDialogCustomEvent<T> extends CustomEvent<T> {
2018
+ detail: T;
2019
+ target: HTMLZonosHelloDialogElement;
2020
+ }
2021
+ interface ZonosInputCustomEvent<T> extends CustomEvent<T> {
2022
+ detail: T;
2023
+ target: HTMLZonosInputElement;
2024
+ }
2025
+ interface ZonosShippingCustomEvent<T> extends CustomEvent<T> {
2026
+ detail: T;
2027
+ target: HTMLZonosShippingElement;
2028
+ }
2029
+ interface ZonosShippingRichRadioCustomEvent<T> extends CustomEvent<T> {
2030
+ detail: T;
2031
+ target: HTMLZonosShippingRichRadioElement;
2032
+ }
2033
+ declare global {
2034
+ interface HTMLZonosAddressElementEventMap {
2035
+ "invalidCharacters": boolean;
2036
+ }
2037
+ interface HTMLZonosAddressElement extends Components.ZonosAddress, HTMLStencilElement {
2038
+ addEventListener<K extends keyof HTMLZonosAddressElementEventMap>(type: K, listener: (this: HTMLZonosAddressElement, ev: ZonosAddressCustomEvent<HTMLZonosAddressElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2039
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2040
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2041
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2042
+ removeEventListener<K extends keyof HTMLZonosAddressElementEventMap>(type: K, listener: (this: HTMLZonosAddressElement, ev: ZonosAddressCustomEvent<HTMLZonosAddressElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2043
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2044
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2045
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2046
+ }
2047
+ var HTMLZonosAddressElement: {
2048
+ prototype: HTMLZonosAddressElement;
2049
+ new (): HTMLZonosAddressElement;
2050
+ };
2051
+ interface HTMLZonosAddressDisplayElement extends Components.ZonosAddressDisplay, HTMLStencilElement {
2052
+ }
2053
+ var HTMLZonosAddressDisplayElement: {
2054
+ prototype: HTMLZonosAddressDisplayElement;
2055
+ new (): HTMLZonosAddressDisplayElement;
2056
+ };
2057
+ interface HTMLZonosAddressFormElementEventMap {
2058
+ "addressChange": EnteredInfo;
2059
+ }
2060
+ interface HTMLZonosAddressFormElement extends Components.ZonosAddressForm, HTMLStencilElement {
2061
+ addEventListener<K extends keyof HTMLZonosAddressFormElementEventMap>(type: K, listener: (this: HTMLZonosAddressFormElement, ev: ZonosAddressFormCustomEvent<HTMLZonosAddressFormElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2062
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2063
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2064
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2065
+ removeEventListener<K extends keyof HTMLZonosAddressFormElementEventMap>(type: K, listener: (this: HTMLZonosAddressFormElement, ev: ZonosAddressFormCustomEvent<HTMLZonosAddressFormElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2066
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2067
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2068
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2069
+ }
2070
+ var HTMLZonosAddressFormElement: {
2071
+ prototype: HTMLZonosAddressFormElement;
2072
+ new (): HTMLZonosAddressFormElement;
2073
+ };
2074
+ interface HTMLZonosAddressUpdateDialogElementEventMap {
2075
+ "closeDialog": void;
2076
+ "continueClicked": SubmitEventData;
2077
+ }
2078
+ interface HTMLZonosAddressUpdateDialogElement extends Components.ZonosAddressUpdateDialog, HTMLStencilElement {
2079
+ addEventListener<K extends keyof HTMLZonosAddressUpdateDialogElementEventMap>(type: K, listener: (this: HTMLZonosAddressUpdateDialogElement, ev: ZonosAddressUpdateDialogCustomEvent<HTMLZonosAddressUpdateDialogElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2080
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2081
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2082
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2083
+ removeEventListener<K extends keyof HTMLZonosAddressUpdateDialogElementEventMap>(type: K, listener: (this: HTMLZonosAddressUpdateDialogElement, ev: ZonosAddressUpdateDialogCustomEvent<HTMLZonosAddressUpdateDialogElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2084
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2085
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2086
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2087
+ }
2088
+ var HTMLZonosAddressUpdateDialogElement: {
2089
+ prototype: HTMLZonosAddressUpdateDialogElement;
2090
+ new (): HTMLZonosAddressUpdateDialogElement;
2091
+ };
2092
+ interface HTMLZonosBadgeElement extends Components.ZonosBadge, HTMLStencilElement {
2093
+ }
2094
+ var HTMLZonosBadgeElement: {
2095
+ prototype: HTMLZonosBadgeElement;
2096
+ new (): HTMLZonosBadgeElement;
2097
+ };
2098
+ interface HTMLZonosBannerElement extends Components.ZonosBanner, HTMLStencilElement {
2099
+ }
2100
+ var HTMLZonosBannerElement: {
2101
+ prototype: HTMLZonosBannerElement;
2102
+ new (): HTMLZonosBannerElement;
2103
+ };
2104
+ interface HTMLZonosButtonElement extends Components.ZonosButton, HTMLStencilElement {
2105
+ }
2106
+ var HTMLZonosButtonElement: {
2107
+ prototype: HTMLZonosButtonElement;
2108
+ new (): HTMLZonosButtonElement;
2109
+ };
2110
+ interface HTMLZonosCardElement extends Components.ZonosCard, HTMLStencilElement {
2111
+ }
2112
+ var HTMLZonosCardElement: {
2113
+ prototype: HTMLZonosCardElement;
2114
+ new (): HTMLZonosCardElement;
2115
+ };
2116
+ interface HTMLZonosCartItemsElement extends Components.ZonosCartItems, HTMLStencilElement {
2117
+ }
2118
+ var HTMLZonosCartItemsElement: {
2119
+ prototype: HTMLZonosCartItemsElement;
2120
+ new (): HTMLZonosCartItemsElement;
2121
+ };
2122
+ interface HTMLZonosCartRestrictedItemsElement extends Components.ZonosCartRestrictedItems, HTMLStencilElement {
2123
+ }
2124
+ var HTMLZonosCartRestrictedItemsElement: {
2125
+ prototype: HTMLZonosCartRestrictedItemsElement;
2126
+ new (): HTMLZonosCartRestrictedItemsElement;
2127
+ };
2128
+ interface HTMLZonosCartSubtotalElement extends Components.ZonosCartSubtotal, HTMLStencilElement {
2129
+ }
2130
+ var HTMLZonosCartSubtotalElement: {
2131
+ prototype: HTMLZonosCartSubtotalElement;
2132
+ new (): HTMLZonosCartSubtotalElement;
2133
+ };
2134
+ interface HTMLZonosCheckboxElementEventMap {
2135
+ "checkboxSelected": boolean;
2136
+ }
2137
+ interface HTMLZonosCheckboxElement extends Components.ZonosCheckbox, HTMLStencilElement {
2138
+ addEventListener<K extends keyof HTMLZonosCheckboxElementEventMap>(type: K, listener: (this: HTMLZonosCheckboxElement, ev: ZonosCheckboxCustomEvent<HTMLZonosCheckboxElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2139
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2140
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2141
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2142
+ removeEventListener<K extends keyof HTMLZonosCheckboxElementEventMap>(type: K, listener: (this: HTMLZonosCheckboxElement, ev: ZonosCheckboxCustomEvent<HTMLZonosCheckboxElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2143
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2144
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2145
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2146
+ }
2147
+ var HTMLZonosCheckboxElement: {
2148
+ prototype: HTMLZonosCheckboxElement;
2149
+ new (): HTMLZonosCheckboxElement;
2150
+ };
2151
+ interface HTMLZonosCheckoutElement extends Components.ZonosCheckout, HTMLStencilElement {
2152
+ }
2153
+ var HTMLZonosCheckoutElement: {
2154
+ prototype: HTMLZonosCheckoutElement;
2155
+ new (): HTMLZonosCheckoutElement;
2156
+ };
2157
+ interface HTMLZonosCheckoutFinishElementEventMap {
2158
+ "closeClick": void;
2159
+ }
2160
+ interface HTMLZonosCheckoutFinishElement extends Components.ZonosCheckoutFinish, HTMLStencilElement {
2161
+ addEventListener<K extends keyof HTMLZonosCheckoutFinishElementEventMap>(type: K, listener: (this: HTMLZonosCheckoutFinishElement, ev: ZonosCheckoutFinishCustomEvent<HTMLZonosCheckoutFinishElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2162
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2163
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2164
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2165
+ removeEventListener<K extends keyof HTMLZonosCheckoutFinishElementEventMap>(type: K, listener: (this: HTMLZonosCheckoutFinishElement, ev: ZonosCheckoutFinishCustomEvent<HTMLZonosCheckoutFinishElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2166
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2167
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2168
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2169
+ }
2170
+ var HTMLZonosCheckoutFinishElement: {
2171
+ prototype: HTMLZonosCheckoutFinishElement;
2172
+ new (): HTMLZonosCheckoutFinishElement;
2173
+ };
2174
+ interface HTMLZonosCheckoutFooterElement extends Components.ZonosCheckoutFooter, HTMLStencilElement {
2175
+ }
2176
+ var HTMLZonosCheckoutFooterElement: {
2177
+ prototype: HTMLZonosCheckoutFooterElement;
2178
+ new (): HTMLZonosCheckoutFooterElement;
2179
+ };
2180
+ interface HTMLZonosCheckoutPaymentElementEventMap {
2181
+ "continueClicked": void;
2182
+ }
2183
+ interface HTMLZonosCheckoutPaymentElement extends Components.ZonosCheckoutPayment, HTMLStencilElement {
2184
+ addEventListener<K extends keyof HTMLZonosCheckoutPaymentElementEventMap>(type: K, listener: (this: HTMLZonosCheckoutPaymentElement, ev: ZonosCheckoutPaymentCustomEvent<HTMLZonosCheckoutPaymentElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2185
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2186
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2187
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2188
+ removeEventListener<K extends keyof HTMLZonosCheckoutPaymentElementEventMap>(type: K, listener: (this: HTMLZonosCheckoutPaymentElement, ev: ZonosCheckoutPaymentCustomEvent<HTMLZonosCheckoutPaymentElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2189
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2190
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2191
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2192
+ }
2193
+ var HTMLZonosCheckoutPaymentElement: {
2194
+ prototype: HTMLZonosCheckoutPaymentElement;
2195
+ new (): HTMLZonosCheckoutPaymentElement;
2196
+ };
2197
+ interface HTMLZonosCheckoutProgressTabsElement extends Components.ZonosCheckoutProgressTabs, HTMLStencilElement {
2198
+ }
2199
+ var HTMLZonosCheckoutProgressTabsElement: {
2200
+ prototype: HTMLZonosCheckoutProgressTabsElement;
2201
+ new (): HTMLZonosCheckoutProgressTabsElement;
2202
+ };
2203
+ interface HTMLZonosCollapseElement extends Components.ZonosCollapse, HTMLStencilElement {
2204
+ }
2205
+ var HTMLZonosCollapseElement: {
2206
+ prototype: HTMLZonosCollapseElement;
2207
+ new (): HTMLZonosCollapseElement;
2208
+ };
2209
+ interface HTMLZonosComponentElement extends Components.ZonosComponent, HTMLStencilElement {
2210
+ }
2211
+ var HTMLZonosComponentElement: {
2212
+ prototype: HTMLZonosComponentElement;
2213
+ new (): HTMLZonosComponentElement;
2214
+ };
2215
+ interface HTMLZonosConfirmDialogElementEventMap {
2216
+ "confirmClicked": void;
2217
+ "cancelClicked": void;
2218
+ }
2219
+ interface HTMLZonosConfirmDialogElement extends Components.ZonosConfirmDialog, HTMLStencilElement {
2220
+ addEventListener<K extends keyof HTMLZonosConfirmDialogElementEventMap>(type: K, listener: (this: HTMLZonosConfirmDialogElement, ev: ZonosConfirmDialogCustomEvent<HTMLZonosConfirmDialogElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2221
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2222
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2223
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2224
+ removeEventListener<K extends keyof HTMLZonosConfirmDialogElementEventMap>(type: K, listener: (this: HTMLZonosConfirmDialogElement, ev: ZonosConfirmDialogCustomEvent<HTMLZonosConfirmDialogElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2225
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2226
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2227
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2228
+ }
2229
+ var HTMLZonosConfirmDialogElement: {
2230
+ prototype: HTMLZonosConfirmDialogElement;
2231
+ new (): HTMLZonosConfirmDialogElement;
2232
+ };
2233
+ interface HTMLZonosControllerElementEventMap {
2234
+ "stripeInitEvent": { publishableKey: string };
2235
+ }
2236
+ interface HTMLZonosControllerElement extends Components.ZonosController, HTMLStencilElement {
2237
+ addEventListener<K extends keyof HTMLZonosControllerElementEventMap>(type: K, listener: (this: HTMLZonosControllerElement, ev: ZonosControllerCustomEvent<HTMLZonosControllerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2238
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2239
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2240
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2241
+ removeEventListener<K extends keyof HTMLZonosControllerElementEventMap>(type: K, listener: (this: HTMLZonosControllerElement, ev: ZonosControllerCustomEvent<HTMLZonosControllerElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2242
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2243
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2244
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2245
+ }
2246
+ var HTMLZonosControllerElement: {
2247
+ prototype: HTMLZonosControllerElement;
2248
+ new (): HTMLZonosControllerElement;
2249
+ };
2250
+ interface HTMLZonosCountryFlagElement extends Components.ZonosCountryFlag, HTMLStencilElement {
2251
+ }
2252
+ var HTMLZonosCountryFlagElement: {
2253
+ prototype: HTMLZonosCountryFlagElement;
2254
+ new (): HTMLZonosCountryFlagElement;
2255
+ };
2256
+ interface HTMLZonosCountrySelectElement extends Components.ZonosCountrySelect, HTMLStencilElement {
2257
+ }
2258
+ var HTMLZonosCountrySelectElement: {
2259
+ prototype: HTMLZonosCountrySelectElement;
2260
+ new (): HTMLZonosCountrySelectElement;
2261
+ };
2262
+ interface HTMLZonosCustomMessageElement extends Components.ZonosCustomMessage, HTMLStencilElement {
2263
+ }
2264
+ var HTMLZonosCustomMessageElement: {
2265
+ prototype: HTMLZonosCustomMessageElement;
2266
+ new (): HTMLZonosCustomMessageElement;
2267
+ };
2268
+ interface HTMLZonosCustomerInfoElementEventMap {
2269
+ "continueClicked": void;
2270
+ }
2271
+ interface HTMLZonosCustomerInfoElement extends Components.ZonosCustomerInfo, HTMLStencilElement {
2272
+ addEventListener<K extends keyof HTMLZonosCustomerInfoElementEventMap>(type: K, listener: (this: HTMLZonosCustomerInfoElement, ev: ZonosCustomerInfoCustomEvent<HTMLZonosCustomerInfoElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2273
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2274
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2275
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2276
+ removeEventListener<K extends keyof HTMLZonosCustomerInfoElementEventMap>(type: K, listener: (this: HTMLZonosCustomerInfoElement, ev: ZonosCustomerInfoCustomEvent<HTMLZonosCustomerInfoElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2277
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2278
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2279
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2280
+ }
2281
+ var HTMLZonosCustomerInfoElement: {
2282
+ prototype: HTMLZonosCustomerInfoElement;
2283
+ new (): HTMLZonosCustomerInfoElement;
2284
+ };
2285
+ interface HTMLZonosDialogElementEventMap {
2286
+ "closeDialog": void;
2287
+ }
2288
+ interface HTMLZonosDialogElement extends Components.ZonosDialog, HTMLStencilElement {
2289
+ addEventListener<K extends keyof HTMLZonosDialogElementEventMap>(type: K, listener: (this: HTMLZonosDialogElement, ev: ZonosDialogCustomEvent<HTMLZonosDialogElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2290
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2291
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2292
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2293
+ removeEventListener<K extends keyof HTMLZonosDialogElementEventMap>(type: K, listener: (this: HTMLZonosDialogElement, ev: ZonosDialogCustomEvent<HTMLZonosDialogElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2294
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2295
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2296
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2297
+ }
2298
+ var HTMLZonosDialogElement: {
2299
+ prototype: HTMLZonosDialogElement;
2300
+ new (): HTMLZonosDialogElement;
2301
+ };
2302
+ interface HTMLZonosHelloElement extends Components.ZonosHello, HTMLStencilElement {
2303
+ }
2304
+ var HTMLZonosHelloElement: {
2305
+ prototype: HTMLZonosHelloElement;
2306
+ new (): HTMLZonosHelloElement;
2307
+ };
2308
+ interface HTMLZonosHelloDialogElementEventMap {
2309
+ "closeDialog": void;
2310
+ }
2311
+ interface HTMLZonosHelloDialogElement extends Components.ZonosHelloDialog, HTMLStencilElement {
2312
+ addEventListener<K extends keyof HTMLZonosHelloDialogElementEventMap>(type: K, listener: (this: HTMLZonosHelloDialogElement, ev: ZonosHelloDialogCustomEvent<HTMLZonosHelloDialogElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2313
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2314
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2315
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2316
+ removeEventListener<K extends keyof HTMLZonosHelloDialogElementEventMap>(type: K, listener: (this: HTMLZonosHelloDialogElement, ev: ZonosHelloDialogCustomEvent<HTMLZonosHelloDialogElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2317
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2318
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2319
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2320
+ }
2321
+ var HTMLZonosHelloDialogElement: {
2322
+ prototype: HTMLZonosHelloDialogElement;
2323
+ new (): HTMLZonosHelloDialogElement;
2324
+ };
2325
+ interface HTMLZonosHelloDialogFooterElement extends Components.ZonosHelloDialogFooter, HTMLStencilElement {
2326
+ }
2327
+ var HTMLZonosHelloDialogFooterElement: {
2328
+ prototype: HTMLZonosHelloDialogFooterElement;
2329
+ new (): HTMLZonosHelloDialogFooterElement;
2330
+ };
2331
+ interface HTMLZonosIconElement extends Components.ZonosIcon, HTMLStencilElement {
2332
+ }
2333
+ var HTMLZonosIconElement: {
2334
+ prototype: HTMLZonosIconElement;
2335
+ new (): HTMLZonosIconElement;
2336
+ };
2337
+ interface HTMLZonosInputElementEventMap {
2338
+ "inputChange": string;
2339
+ }
2340
+ interface HTMLZonosInputElement extends Components.ZonosInput, HTMLStencilElement {
2341
+ addEventListener<K extends keyof HTMLZonosInputElementEventMap>(type: K, listener: (this: HTMLZonosInputElement, ev: ZonosInputCustomEvent<HTMLZonosInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2342
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2343
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2344
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2345
+ removeEventListener<K extends keyof HTMLZonosInputElementEventMap>(type: K, listener: (this: HTMLZonosInputElement, ev: ZonosInputCustomEvent<HTMLZonosInputElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2346
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2347
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2348
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2349
+ }
2350
+ var HTMLZonosInputElement: {
2351
+ prototype: HTMLZonosInputElement;
2352
+ new (): HTMLZonosInputElement;
2353
+ };
2354
+ interface HTMLZonosLanguageSelectElement extends Components.ZonosLanguageSelect, HTMLStencilElement {
2355
+ }
2356
+ var HTMLZonosLanguageSelectElement: {
2357
+ prototype: HTMLZonosLanguageSelectElement;
2358
+ new (): HTMLZonosLanguageSelectElement;
2359
+ };
2360
+ interface HTMLZonosLinkElement extends Components.ZonosLink, HTMLStencilElement {
2361
+ }
2362
+ var HTMLZonosLinkElement: {
2363
+ prototype: HTMLZonosLinkElement;
2364
+ new (): HTMLZonosLinkElement;
2365
+ };
2366
+ interface HTMLZonosLinkAuthenticationElement extends Components.ZonosLinkAuthentication, HTMLStencilElement {
2367
+ }
2368
+ var HTMLZonosLinkAuthenticationElement: {
2369
+ prototype: HTMLZonosLinkAuthenticationElement;
2370
+ new (): HTMLZonosLinkAuthenticationElement;
2371
+ };
2372
+ interface HTMLZonosLogoElement extends Components.ZonosLogo, HTMLStencilElement {
2373
+ }
2374
+ var HTMLZonosLogoElement: {
2375
+ prototype: HTMLZonosLogoElement;
2376
+ new (): HTMLZonosLogoElement;
2377
+ };
2378
+ interface HTMLZonosNotificationElement extends Components.ZonosNotification, HTMLStencilElement {
2379
+ }
2380
+ var HTMLZonosNotificationElement: {
2381
+ prototype: HTMLZonosNotificationElement;
2382
+ new (): HTMLZonosNotificationElement;
2383
+ };
2384
+ interface HTMLZonosPaymentElement extends Components.ZonosPayment, HTMLStencilElement {
2385
+ }
2386
+ var HTMLZonosPaymentElement: {
2387
+ prototype: HTMLZonosPaymentElement;
2388
+ new (): HTMLZonosPaymentElement;
2389
+ };
2390
+ interface HTMLZonosReviewElement extends Components.ZonosReview, HTMLStencilElement {
2391
+ }
2392
+ var HTMLZonosReviewElement: {
2393
+ prototype: HTMLZonosReviewElement;
2394
+ new (): HTMLZonosReviewElement;
2395
+ };
2396
+ interface HTMLZonosSelectDialogHeaderElement extends Components.ZonosSelectDialogHeader, HTMLStencilElement {
2397
+ }
2398
+ var HTMLZonosSelectDialogHeaderElement: {
2399
+ prototype: HTMLZonosSelectDialogHeaderElement;
2400
+ new (): HTMLZonosSelectDialogHeaderElement;
2401
+ };
2402
+ interface HTMLZonosShippingElementEventMap {
2403
+ "continueClicked": void;
2404
+ }
2405
+ interface HTMLZonosShippingElement extends Components.ZonosShipping, HTMLStencilElement {
2406
+ addEventListener<K extends keyof HTMLZonosShippingElementEventMap>(type: K, listener: (this: HTMLZonosShippingElement, ev: ZonosShippingCustomEvent<HTMLZonosShippingElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2407
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2408
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2409
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2410
+ removeEventListener<K extends keyof HTMLZonosShippingElementEventMap>(type: K, listener: (this: HTMLZonosShippingElement, ev: ZonosShippingCustomEvent<HTMLZonosShippingElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2411
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2412
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2413
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2414
+ }
2415
+ var HTMLZonosShippingElement: {
2416
+ prototype: HTMLZonosShippingElement;
2417
+ new (): HTMLZonosShippingElement;
2418
+ };
2419
+ interface HTMLZonosShippingRichRadioElementEventMap {
2420
+ "radioSelected": ShippingRichRadioItem;
2421
+ }
2422
+ interface HTMLZonosShippingRichRadioElement extends Components.ZonosShippingRichRadio, HTMLStencilElement {
2423
+ addEventListener<K extends keyof HTMLZonosShippingRichRadioElementEventMap>(type: K, listener: (this: HTMLZonosShippingRichRadioElement, ev: ZonosShippingRichRadioCustomEvent<HTMLZonosShippingRichRadioElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2424
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2425
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2426
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2427
+ removeEventListener<K extends keyof HTMLZonosShippingRichRadioElementEventMap>(type: K, listener: (this: HTMLZonosShippingRichRadioElement, ev: ZonosShippingRichRadioCustomEvent<HTMLZonosShippingRichRadioElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2428
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2429
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2430
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2431
+ }
2432
+ var HTMLZonosShippingRichRadioElement: {
2433
+ prototype: HTMLZonosShippingRichRadioElement;
2434
+ new (): HTMLZonosShippingRichRadioElement;
2435
+ };
2436
+ interface HTMLZonosSpinnerElement extends Components.ZonosSpinner, HTMLStencilElement {
2437
+ }
2438
+ var HTMLZonosSpinnerElement: {
2439
+ prototype: HTMLZonosSpinnerElement;
2440
+ new (): HTMLZonosSpinnerElement;
2441
+ };
2442
+ interface HTMLZonosTextElement extends Components.ZonosText, HTMLStencilElement {
2443
+ }
2444
+ var HTMLZonosTextElement: {
2445
+ prototype: HTMLZonosTextElement;
2446
+ new (): HTMLZonosTextElement;
2447
+ };
2448
+ interface HTMLZonosTooltipElement extends Components.ZonosTooltip, HTMLStencilElement {
2449
+ }
2450
+ var HTMLZonosTooltipElement: {
2451
+ prototype: HTMLZonosTooltipElement;
2452
+ new (): HTMLZonosTooltipElement;
2453
+ };
2454
+ interface HTMLZonosVStackElement extends Components.ZonosVStack, HTMLStencilElement {
2455
+ }
2456
+ var HTMLZonosVStackElement: {
2457
+ prototype: HTMLZonosVStackElement;
2458
+ new (): HTMLZonosVStackElement;
2459
+ };
2460
+ interface HTMLElementTagNameMap {
2461
+ "zonos-address": HTMLZonosAddressElement;
2462
+ "zonos-address-display": HTMLZonosAddressDisplayElement;
2463
+ "zonos-address-form": HTMLZonosAddressFormElement;
2464
+ "zonos-address-update-dialog": HTMLZonosAddressUpdateDialogElement;
2465
+ "zonos-badge": HTMLZonosBadgeElement;
2466
+ "zonos-banner": HTMLZonosBannerElement;
2467
+ "zonos-button": HTMLZonosButtonElement;
2468
+ "zonos-card": HTMLZonosCardElement;
2469
+ "zonos-cart-items": HTMLZonosCartItemsElement;
2470
+ "zonos-cart-restricted-items": HTMLZonosCartRestrictedItemsElement;
2471
+ "zonos-cart-subtotal": HTMLZonosCartSubtotalElement;
2472
+ "zonos-checkbox": HTMLZonosCheckboxElement;
2473
+ "zonos-checkout": HTMLZonosCheckoutElement;
2474
+ "zonos-checkout-finish": HTMLZonosCheckoutFinishElement;
2475
+ "zonos-checkout-footer": HTMLZonosCheckoutFooterElement;
2476
+ "zonos-checkout-payment": HTMLZonosCheckoutPaymentElement;
2477
+ "zonos-checkout-progress-tabs": HTMLZonosCheckoutProgressTabsElement;
2478
+ "zonos-collapse": HTMLZonosCollapseElement;
2479
+ "zonos-component": HTMLZonosComponentElement;
2480
+ "zonos-confirm-dialog": HTMLZonosConfirmDialogElement;
2481
+ "zonos-controller": HTMLZonosControllerElement;
2482
+ "zonos-country-flag": HTMLZonosCountryFlagElement;
2483
+ "zonos-country-select": HTMLZonosCountrySelectElement;
2484
+ "zonos-custom-message": HTMLZonosCustomMessageElement;
2485
+ "zonos-customer-info": HTMLZonosCustomerInfoElement;
2486
+ "zonos-dialog": HTMLZonosDialogElement;
2487
+ "zonos-hello": HTMLZonosHelloElement;
2488
+ "zonos-hello-dialog": HTMLZonosHelloDialogElement;
2489
+ "zonos-hello-dialog-footer": HTMLZonosHelloDialogFooterElement;
2490
+ "zonos-icon": HTMLZonosIconElement;
2491
+ "zonos-input": HTMLZonosInputElement;
2492
+ "zonos-language-select": HTMLZonosLanguageSelectElement;
2493
+ "zonos-link": HTMLZonosLinkElement;
2494
+ "zonos-link-authentication": HTMLZonosLinkAuthenticationElement;
2495
+ "zonos-logo": HTMLZonosLogoElement;
2496
+ "zonos-notification": HTMLZonosNotificationElement;
2497
+ "zonos-payment": HTMLZonosPaymentElement;
2498
+ "zonos-review": HTMLZonosReviewElement;
2499
+ "zonos-select-dialog-header": HTMLZonosSelectDialogHeaderElement;
2500
+ "zonos-shipping": HTMLZonosShippingElement;
2501
+ "zonos-shipping-rich-radio": HTMLZonosShippingRichRadioElement;
2502
+ "zonos-spinner": HTMLZonosSpinnerElement;
2503
+ "zonos-text": HTMLZonosTextElement;
2504
+ "zonos-tooltip": HTMLZonosTooltipElement;
2505
+ "zonos-v-stack": HTMLZonosVStackElement;
2506
+ }
2507
+ }
2508
+ declare namespace LocalJSX {
2509
+ interface ZonosAddress {
2510
+ /**
2511
+ * Default address for stripe
2512
+ */
2513
+ "defaultAddress"?: ContactOption | null;
2514
+ /**
2515
+ * Event to emit when address is not containing allowed character sets
2516
+ */
2517
+ "onInvalidCharacters"?: (event: ZonosAddressCustomEvent<boolean>) => void;
2518
+ /**
2519
+ * The title text for the address element
2520
+ */
2521
+ "titleText": string;
2522
+ /**
2523
+ * The type of address element to render
2524
+ */
2525
+ "type": 'billing' | 'shipping';
2526
+ }
2527
+ interface ZonosAddressDisplay {
2528
+ /**
2529
+ * Title for the address display
2530
+ */
2531
+ "addressType": 'shipping' | 'billing';
2532
+ /**
2533
+ * Address to show up
2534
+ */
2535
+ "currentAddress": EnteredInfo;
2536
+ }
2537
+ interface ZonosAddressForm {
2538
+ /**
2539
+ * Title for the address form
2540
+ */
2541
+ "addressType": 'shipping' | 'billing';
2542
+ /**
2543
+ * Address to show up
2544
+ */
2545
+ "currentAddress": EnteredInfo;
2546
+ /**
2547
+ * Event to emit when the address is changed
2548
+ */
2549
+ "onAddressChange"?: (event: ZonosAddressFormCustomEvent<EnteredInfo>) => void;
2550
+ /**
2551
+ * Translated address
2552
+ */
2553
+ "translatedAddress": TranslatedAddressObject;
2554
+ }
2555
+ interface ZonosAddressUpdateDialog {
2556
+ /**
2557
+ * Billing address that user has entered (optional if billing is the same as shipping)
2558
+ */
2559
+ "billingAddress": EnteredInfo | null;
2560
+ /**
2561
+ * Whether or not the continue button is loading
2562
+ */
2563
+ "continueLoading"?: boolean;
2564
+ /**
2565
+ * Whether or not the dialog is loading
2566
+ */
2567
+ "dialogLoading": boolean;
2568
+ /**
2569
+ * Whether or not the dialog is open
2570
+ */
2571
+ "dialogOpen"?: boolean;
2572
+ /**
2573
+ * Whether or not the dialog is open
2574
+ */
2575
+ "isMobile"?: boolean;
2576
+ /**
2577
+ * Close dialog button click
2578
+ */
2579
+ "onCloseDialog"?: (event: ZonosAddressUpdateDialogCustomEvent<void>) => void;
2580
+ /**
2581
+ * Event to emit when the continue button is clicked
2582
+ */
2583
+ "onContinueClicked"?: (event: ZonosAddressUpdateDialogCustomEvent<SubmitEventData>) => void;
2584
+ /**
2585
+ * Shipping address that user has entered
2586
+ */
2587
+ "shippingAddress": EnteredInfo;
2588
+ /**
2589
+ * Button color of the submit button
2590
+ */
2591
+ "submitBtnColor"?: string;
2592
+ /**
2593
+ * Button type of the submit button
2594
+ */
2595
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
2596
+ /**
2597
+ * Translated address fields that GPT has translated
2598
+ */
2599
+ "translatedBillingAddress": TranslatedAddressObject;
2600
+ /**
2601
+ * Translated address fields that GPT has translated
2602
+ */
2603
+ "translatedShippingAddress": TranslatedAddressObject;
2604
+ }
2605
+ interface ZonosBadge {
2606
+ /**
2607
+ * The size of the badge
2608
+ * @default 24
2609
+ */
2610
+ "badgeColor"?: ColorPrefix;
2611
+ /**
2612
+ * Whether or not the badge is bold
2613
+ * @default false
2614
+ */
2615
+ "bold"?: boolean;
2616
+ /**
2617
+ * The icon element to display
2618
+ * @default null
2619
+ */
2620
+ "icon"?: HTMLZonosIconElement;
2621
+ /**
2622
+ * Position the icon to the right when icon is specified
2623
+ * @default false
2624
+ */
2625
+ "iconRight"?: boolean;
2626
+ /**
2627
+ * Whether or not the badge is rounded
2628
+ * @default false
2629
+ */
2630
+ "rounded"?: boolean;
2631
+ /**
2632
+ * The size of the badge
2633
+ * @default 'default'
2634
+ */
2635
+ "size"?: 'small' | 'default';
2636
+ }
2637
+ interface ZonosBanner {
2638
+ /**
2639
+ * Whether or not the banner is bold
2640
+ */
2641
+ "bannerTitle"?: string;
2642
+ /**
2643
+ * Intent of the banner (success, warning, error)
2644
+ */
2645
+ "intent"?: BannerIntent;
2646
+ }
2647
+ interface ZonosButton {
2648
+ /**
2649
+ * The color of the button text and svg **NOTE**: If the button `variant` is set to 'standard', backgroundColor will be disregarded
2650
+ */
2651
+ "backgroundColor"?: Color | (string & { _placeholder?: never });
2652
+ /**
2653
+ * The border style of the button
2654
+ * @default ROUNDED
2655
+ */
2656
+ "borderStyle"?: ElementsUiStyle;
2657
+ /**
2658
+ * The color of the button text and svg
2659
+ */
2660
+ "buttonColor"?: Color | (string & { _placeholder?: never });
2661
+ /**
2662
+ * The icon element to display
2663
+ * @default null
2664
+ */
2665
+ "icon"?: HTMLZonosIconElement | null;
2666
+ /**
2667
+ * Whether or not the icon is on the right
2668
+ * @default false
2669
+ */
2670
+ "iconRight"?: boolean;
2671
+ /**
2672
+ * Whether or not the button is disabled
2673
+ * @note Prop should not conflict name with native html attribute if the prop is also affected by another prop. The issue is the component has internal disabled
2674
+ * @prop ().
2675
+ * @prop decorator is to watch the update of the attribute of the component in the dom. And `disabled` prop is not an only factor to determine the component is disabled. isLoading
2676
+ * @prop () also affect that. <Host> is also referred to a component itself, if disabled prop is true, the `zonos-button` will have disabled attribute. So let's say when the loading state is true, and the component consume the zonos-button doesn't pass the disabled prop down. It accidentally turns the disabled prop on even thought the disabled state is not changed from the outside.
2677
+ */
2678
+ "isDisabled"?: boolean;
2679
+ /**
2680
+ * Whether or not the button is loading
2681
+ */
2682
+ "loading"?: boolean;
2683
+ /**
2684
+ * Whether or not the button has a background
2685
+ * @default false
2686
+ */
2687
+ "noBackground"?: boolean;
2688
+ /**
2689
+ * Whether or not the button has a left padding
2690
+ */
2691
+ "noPaddingLeft"?: boolean;
2692
+ /**
2693
+ * Whether or not the button has a right padding
2694
+ */
2695
+ "noPaddingRight"?: boolean;
2696
+ /**
2697
+ * The size of the button
2698
+ * @default 'sm'
2699
+ */
2700
+ "size"?: 'sm' | 'md' | 'lg';
2701
+ /**
2702
+ * The theme of the button
2703
+ */
2704
+ "theme"?: ElementsUiTheme;
2705
+ /**
2706
+ * The variance of the button
2707
+ * @note If the button `variant` is set to 'standard', backgroundColor will be disregarded
2708
+ * @default standard
2709
+ */
2710
+ "variant"?: | 'primary'
2711
+ | 'success'
2712
+ | 'subtle'
2713
+ | 'outline'
2714
+ | 'standard'
2715
+ | 'danger'
2716
+ | 'warning';
2717
+ /**
2718
+ * Whether or not the button has a box shadow
2719
+ */
2720
+ "withBoxShadow"?: boolean;
2721
+ }
2722
+ interface ZonosCard {
2723
+ /**
2724
+ * The actions to display in the header of the card
2725
+ */
2726
+ "actions"?: HTMLElement;
2727
+ /**
2728
+ * The actions to display in the footer of the card
2729
+ */
2730
+ "footerActions"?: HTMLElement;
2731
+ /**
2732
+ * The content to display in the footer of the card
2733
+ */
2734
+ "footerContent"?: HTMLElement;
2735
+ /**
2736
+ * The height of the footer in pixels
2737
+ */
2738
+ "footerHeight"?: number;
2739
+ /**
2740
+ * The label to display in the header of the card
2741
+ */
2742
+ "label"?: HTMLElement;
2743
+ /**
2744
+ * The spacing to apply between elements in the card
2745
+ */
2746
+ "spacing"?: string;
2747
+ }
2748
+ interface ZonosCartItems {
2749
+ }
2750
+ interface ZonosCartRestrictedItems {
2751
+ /**
2752
+ * This is to hide the section when the parent collapse on mobile
2753
+ */
2754
+ "hide"?: boolean;
2755
+ }
2756
+ interface ZonosCartSubtotal {
2757
+ }
2758
+ interface ZonosCheckbox {
2759
+ /**
2760
+ * background color of the checkbox
2761
+ */
2762
+ "backgroundColor"?: | CheckboxColorPrefix
2763
+ | (string & { _placeholder?: never });
2764
+ /**
2765
+ * The border style of the button
2766
+ * @default ROUNDED
2767
+ */
2768
+ "borderStyle"?: ElementsUiStyle;
2769
+ /**
2770
+ * Font size of the checkbox text
2771
+ */
2772
+ "fontSize"?: Size;
2773
+ /**
2774
+ * Whether or not the checkbox is checked
2775
+ */
2776
+ "isChecked"?: boolean;
2777
+ /**
2778
+ * Whether or not the checkbox is disabled
2779
+ */
2780
+ "isDisabled"?: boolean;
2781
+ /**
2782
+ * The label of the checkbox
2783
+ */
2784
+ "label"?: string;
2785
+ /**
2786
+ * Event to emit when the checkbox is changed
2787
+ */
2788
+ "onCheckboxSelected"?: (event: ZonosCheckboxCustomEvent<boolean>) => void;
2789
+ /**
2790
+ * Size of the checkbox
2791
+ */
2792
+ "size"?: 12 | 16 | 24;
2793
+ }
2794
+ interface ZonosCheckout {
2795
+ /**
2796
+ * Override appearance config
2797
+ */
2798
+ "appearanceSettingsOverride"?: Partial<AppearanceConfig>;
2799
+ /**
2800
+ * Default address to use for the checkout (preview mode)
2801
+ */
2802
+ "defaultAddress"?: StripeStoreContactOption | null;
2803
+ /**
2804
+ * Force dialog to be open
2805
+ */
2806
+ "forceDialogOpen"?: boolean;
2807
+ /**
2808
+ * Flag to determine if the checkout is on mobile
2809
+ */
2810
+ "mobile"?: boolean;
2811
+ /**
2812
+ * Preview checkout without needing to click on the button. This would be useful for demo purpose
2813
+ */
2814
+ "preview"?: boolean;
2815
+ }
2816
+ interface ZonosCheckoutFinish {
2817
+ /**
2818
+ * The border radius style of the dialog
2819
+ */
2820
+ "borderRadius"?: ElementsUiStyle;
2821
+ /**
2822
+ * Event to emit when the continue button is clicked
2823
+ */
2824
+ "onCloseClick"?: (event: ZonosCheckoutFinishCustomEvent<void>) => void;
2825
+ /**
2826
+ * Override the notification message and title, bypass checking stripe payment status
2827
+ */
2828
+ "overrideNotification"?: {
2829
+ messages: string[];
2830
+ title: string;
2831
+ type: 'success' | 'error';
2832
+ };
2833
+ /**
2834
+ * Force status to test the UI for storybook
2835
+ */
2836
+ "storybookForceStatus"?: PaymentIntent['status'];
2837
+ }
2838
+ interface ZonosCheckoutFooter {
2839
+ /**
2840
+ * Theme to change the color of the logo
2841
+ */
2842
+ "dataTheme"?: ElementsUiTheme;
2843
+ /**
2844
+ * Override mobile mode
2845
+ */
2846
+ "mobile"?: boolean;
2847
+ }
2848
+ interface ZonosCheckoutPayment {
2849
+ /**
2850
+ * Whether or not the continue button is loading
2851
+ */
2852
+ "continueLoading"?: boolean;
2853
+ /**
2854
+ * Event to emit when the continue button is clicked
2855
+ */
2856
+ "onContinueClicked"?: (event: ZonosCheckoutPaymentCustomEvent<void>) => void;
2857
+ /**
2858
+ * Error occurred during payment
2859
+ */
2860
+ "paymentError"?: boolean;
2861
+ /**
2862
+ * Submit button main color
2863
+ */
2864
+ "submitBtnColor"?: string;
2865
+ /**
2866
+ * Whether or not the checkout is in mobile mode
2867
+ */
2868
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
2869
+ }
2870
+ interface ZonosCheckoutProgressTabs {
2871
+ /**
2872
+ * Background color of the parent that's wrapped around the tab progress bar
2873
+ */
2874
+ "backgroundColor"?: Color | (string & { _placeholder?: never }) | null;
2875
+ /**
2876
+ * Color of the tab progress bar and label, override the secondary color of the appearance settings
2877
+ */
2878
+ "tabColor"?: string | null;
2879
+ }
2880
+ interface ZonosCollapse {
2881
+ /**
2882
+ * Collapsed size when collapsed
2883
+ */
2884
+ "collapseSize"?: number;
2885
+ /**
2886
+ * Collapsed state of the element
2887
+ */
2888
+ "collapsed"?: boolean;
2889
+ }
2890
+ interface ZonosComponent {
2891
+ /**
2892
+ * The first name
2893
+ */
2894
+ "first"?: string;
2895
+ /**
2896
+ * The last name
2897
+ */
2898
+ "last"?: string;
2899
+ /**
2900
+ * The middle name
2901
+ */
2902
+ "middle"?: string;
2903
+ }
2904
+ interface ZonosConfirmDialog {
2905
+ /**
2906
+ * Cancel button text
2907
+ */
2908
+ "dialogCancelBtnText": string;
2909
+ /**
2910
+ * Confirm button text
2911
+ */
2912
+ "dialogConfirmBtnText": string;
2913
+ /**
2914
+ * Dialog intent (for icon and button color)
2915
+ * @default "info"
2916
+ */
2917
+ "dialogIntent"?: 'info' | 'danger' | 'warn';
2918
+ /**
2919
+ * Whether or not the dialog is open
2920
+ */
2921
+ "dialogOpen"?: boolean;
2922
+ /**
2923
+ * Dialog subtitle text
2924
+ * @default "" No subtitle
2925
+ */
2926
+ "dialogSubtitle"?: string;
2927
+ /**
2928
+ * Dialog title text
2929
+ * @default "Are you sure?"
2930
+ */
2931
+ "dialogTitle"?: string;
2932
+ /**
2933
+ * Whether or not the dialog is open
2934
+ */
2935
+ "isMobile"?: boolean;
2936
+ /**
2937
+ * Whether or not to close the dialog when clicking outside of it
2938
+ * @default false
2939
+ */
2940
+ "noClickOutside"?: boolean;
2941
+ /**
2942
+ * Event to emit when the "Cancel" button is clicked
2943
+ */
2944
+ "onCancelClicked"?: (event: ZonosConfirmDialogCustomEvent<void>) => void;
2945
+ /**
2946
+ * Event to emit when the "Confirm" button is clicked
2947
+ */
2948
+ "onConfirmClicked"?: (event: ZonosConfirmDialogCustomEvent<void>) => void;
2949
+ /**
2950
+ * Submit button main color
2951
+ */
2952
+ "submitBtnColor"?: string;
2953
+ }
2954
+ interface ZonosController {
2955
+ /**
2956
+ * The zonos config object
2957
+ */
2958
+ "config": LoadZonosParamsConfig;
2959
+ /**
2960
+ * Event emitted when stripe is initialized
2961
+ */
2962
+ "onStripeInitEvent"?: (event: ZonosControllerCustomEvent<{ publishableKey: string }>) => void;
2963
+ /**
2964
+ * The zonos api key
2965
+ */
2966
+ "zonosApiKey": string;
2967
+ }
2968
+ interface ZonosCountryFlag {
2969
+ /**
2970
+ * The country code for the flag
2971
+ * @default localizationStore.selectedCountryCode
2972
+ * @example 'US'
2973
+ */
2974
+ "countryCode"?: CountryCode | null;
2975
+ /**
2976
+ * The size of the flag
2977
+ */
2978
+ "size"?: number;
2979
+ }
2980
+ interface ZonosCountrySelect {
2981
+ /**
2982
+ * Function to close the country select
2983
+ * @default () => {}
2984
+ */
2985
+ "handleOnClose"?: () => void;
2986
+ }
2987
+ interface ZonosCustomMessage {
2988
+ /**
2989
+ * The custom message icon
2990
+ */
2991
+ "icon"?: string;
2992
+ /**
2993
+ * The custom message text
2994
+ */
2995
+ "message"?: string;
2996
+ }
2997
+ interface ZonosCustomerInfo {
2998
+ /**
2999
+ * Whether or not the continue button is loading
3000
+ */
3001
+ "continueLoading"?: boolean;
3002
+ /**
3003
+ * Default address to use for the checkout (preview mode)
3004
+ */
3005
+ "defaultAddress"?: StripeStoreContactOption | null;
3006
+ /**
3007
+ * Whether or not the dialog is open
3008
+ */
3009
+ "isMobile"?: boolean;
3010
+ /**
3011
+ * Event to emit when the continue button is clicked
3012
+ */
3013
+ "onContinueClicked"?: (event: ZonosCustomerInfoCustomEvent<void>) => void;
3014
+ /**
3015
+ * Submit button main color
3016
+ */
3017
+ "submitBtnColor"?: string;
3018
+ /**
3019
+ * Whether or not the checkout is in mobile mode
3020
+ */
3021
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
3022
+ }
3023
+ interface ZonosDialog {
3024
+ /**
3025
+ * The border style of the button
3026
+ * @default ROUNDED
3027
+ */
3028
+ "borderStyle"?: ElementsUiStyle;
3029
+ /**
3030
+ * The header text for the dialog
3031
+ */
3032
+ "headerText"?: string;
3033
+ /**
3034
+ * The height of the dialog (max-width still 90vh)
3035
+ */
3036
+ "height"?: string;
3037
+ /**
3038
+ * Load loading spinner for the dialog or not
3039
+ */
3040
+ "isLoading"?: boolean;
3041
+ /**
3042
+ * The min height of the dialog
3043
+ */
3044
+ "minHeight"?: string;
3045
+ /**
3046
+ * Flag to determine if the checkout is on mobile
3047
+ */
3048
+ "mobile"?: boolean;
3049
+ /**
3050
+ * Whether or not to have body padding
3051
+ * @default false
3052
+ */
3053
+ "noBodyPadding"?: boolean;
3054
+ /**
3055
+ * Whether or not to have body padding
3056
+ * @default false
3057
+ */
3058
+ "noBorder"?: boolean;
3059
+ /**
3060
+ * Whether or not to close the dialog when clicking outside of it
3061
+ * @default false
3062
+ */
3063
+ "noClickOutside"?: boolean;
3064
+ /**
3065
+ * Whether or not to show the close button
3066
+ * @default false
3067
+ */
3068
+ "noCloseButton"?: boolean;
3069
+ /**
3070
+ * Whether or not to show the header
3071
+ * @default false
3072
+ */
3073
+ "noHeader"?: boolean;
3074
+ /**
3075
+ * Close dialog button click
3076
+ */
3077
+ "onCloseDialog"?: (event: ZonosDialogCustomEvent<void>) => void;
3078
+ /**
3079
+ * Whether or not the dialog is open
3080
+ * @default false
3081
+ */
3082
+ "open"?: boolean;
3083
+ /**
3084
+ * The width of the dialog
3085
+ * @default 460px
3086
+ */
3087
+ "width"?: string;
3088
+ }
3089
+ interface ZonosHello {
3090
+ /**
3091
+ * Force left animation instead of detecting which side has more space
3092
+ * @default false
3093
+ */
3094
+ "animateFromLeftOverride"?: boolean;
3095
+ /**
3096
+ * Override the appearance settings
3097
+ */
3098
+ "appearanceSettingsOverride"?: Partial<AppearanceConfig>;
3099
+ /**
3100
+ * Force mobile styling instead of media query and use the passed location value
3101
+ * @default false
3102
+ */
3103
+ "mobileLocationOverride"?: HelloMobileLocation;
3104
+ }
3105
+ interface ZonosHelloDialog {
3106
+ /**
3107
+ * Force left animation instead of detecting which side has more space
3108
+ * @default false
3109
+ */
3110
+ "animateFromLeftOverride"?: boolean;
3111
+ /**
3112
+ * Override the appearance settings
3113
+ */
3114
+ "appearanceSettings"?: Partial<AppearanceConfig>;
3115
+ /**
3116
+ * Whether or not the dialog is open
3117
+ */
3118
+ "isOpen"?: boolean;
3119
+ /**
3120
+ * Force mobile styling instead of media query and use the passed location value
3121
+ * @default false
3122
+ */
3123
+ "mobileLocationOverride"?: HelloMobileLocation;
3124
+ /**
3125
+ * Close dialog button click
3126
+ */
3127
+ "onCloseDialog"?: (event: ZonosHelloDialogCustomEvent<void>) => void;
3128
+ /**
3129
+ * Item restrictions array if any
3130
+ * @default []
3131
+ */
3132
+ "restrictedItems"?: RestrictedItem[];
3133
+ /**
3134
+ * The function to set the open state
3135
+ * @default () => {}
3136
+ */
3137
+ "setIsOpen"?: (isOpen: boolean) => void;
3138
+ }
3139
+ interface ZonosHelloDialogFooter {
3140
+ /**
3141
+ * Appearance settings
3142
+ */
3143
+ "appearanceSettings"?: Partial<AppearanceConfig>;
3144
+ /**
3145
+ * Whether or not the country select dialog is open
3146
+ * @default false
3147
+ */
3148
+ "setShowCountrySelect"?: (value: boolean) => void;
3149
+ /**
3150
+ * Whether or not the language select dialog is open
3151
+ * @default false
3152
+ */
3153
+ "setShowLanguageSelect"?: (value: boolean) => void;
3154
+ }
3155
+ interface ZonosIcon {
3156
+ /**
3157
+ * Determines if the icon should be auto height instead of square
3158
+ * @default false
3159
+ */
3160
+ "autoHeight"?: boolean;
3161
+ /**
3162
+ * The content of the icon (full svg)
3163
+ * @example import RemoveIcon from './assets/removeIcon.svg'; ... <zonos-icon content={RemoveIcon}></zonos-icon> // or <zonos-icon content="<svg>...</svg>"></zonos-icon>
3164
+ */
3165
+ "content": string;
3166
+ /**
3167
+ * Color of the SVG
3168
+ * @default 'gray-1200'
3169
+ */
3170
+ "iconColor"?: Color | (string & { _placeholder?: never });
3171
+ /**
3172
+ * The size of the icon
3173
+ * @default 24
3174
+ */
3175
+ "size"?: number;
3176
+ }
3177
+ interface ZonosInput {
3178
+ /**
3179
+ * Input label
3180
+ */
3181
+ "inputLabel": string;
3182
+ /**
3183
+ * Placeholder for the input
3184
+ */
3185
+ "inputPlaceholder"?: string;
3186
+ /**
3187
+ * Input size
3188
+ */
3189
+ "inputSize"?: 'sm' | 'md' | 'lg' | 'xl';
3190
+ /**
3191
+ * Value of the input
3192
+ */
3193
+ "inputValue"?: string;
3194
+ /**
3195
+ * Disables the input
3196
+ */
3197
+ "isDisabled"?: boolean;
3198
+ /**
3199
+ * Error state of the input
3200
+ */
3201
+ "isError"?: boolean;
3202
+ /**
3203
+ * Event to emit when input value changes
3204
+ */
3205
+ "onInputChange"?: (event: ZonosInputCustomEvent<string>) => void;
3206
+ }
3207
+ interface ZonosLanguageSelect {
3208
+ /**
3209
+ * Function to close the language select
3210
+ * @default () => {}
3211
+ */
3212
+ "handleOnClose"?: () => void;
3213
+ }
3214
+ interface ZonosLink {
3215
+ /**
3216
+ * The href for the link
3217
+ */
3218
+ "href"?: string;
3219
+ /**
3220
+ * The title attribute for the link
3221
+ */
3222
+ "linkTitle"?: string;
3223
+ /**
3224
+ * The rel attribute for the link
3225
+ */
3226
+ "rel"?: string;
3227
+ /**
3228
+ * The target attribute for the link
3229
+ */
3230
+ "target"?: string;
3231
+ }
3232
+ interface ZonosLinkAuthentication {
3233
+ /**
3234
+ * Default email for stripe
3235
+ */
3236
+ "defaultEmail"?: string | null;
3237
+ /**
3238
+ * The title text for the authentication element
3239
+ */
3240
+ "titleText": string;
3241
+ }
3242
+ interface ZonosLogo {
3243
+ /**
3244
+ * Theme to change the color of the logo
3245
+ */
3246
+ "theme"?: ElementsUiTheme;
3247
+ /**
3248
+ * The width of the logo
3249
+ */
3250
+ "width"?: string;
3251
+ }
3252
+ interface ZonosNotification {
3253
+ }
3254
+ interface ZonosPayment {
3255
+ /**
3256
+ * The title text for the authentication element
3257
+ */
3258
+ "titleText"?: string;
3259
+ }
3260
+ interface ZonosReview {
3261
+ /**
3262
+ * Whether or not to show the collapse icon This is controled from the collapsed state of the zonos-collapse component to show the collapse icon
3263
+ */
3264
+ "collapsed"?: boolean;
3265
+ /**
3266
+ * Whether or not the component is being rendered with mobile styles
3267
+ */
3268
+ "mobile"?: boolean;
3269
+ }
3270
+ interface ZonosSelectDialogHeader {
3271
+ /**
3272
+ * Callback to do something on close
3273
+ * @default () => {}
3274
+ */
3275
+ "handleOnClose"?: () => void;
3276
+ /**
3277
+ * The label for the select dialog
3278
+ */
3279
+ "label"?: string;
3280
+ }
3281
+ interface ZonosShipping {
3282
+ /**
3283
+ * Whether or not the continue button is loading
3284
+ */
3285
+ "continueLoading"?: boolean;
3286
+ /**
3287
+ * Event to emit when the continue button is clicked
3288
+ */
3289
+ "onContinueClicked"?: (event: ZonosShippingCustomEvent<void>) => void;
3290
+ /**
3291
+ * Submit button main color
3292
+ */
3293
+ "submitBtnColor"?: string;
3294
+ /**
3295
+ * Whether or not the checkout is in mobile mode
3296
+ */
3297
+ "submitBtnType"?: HTMLZonosButtonElement['variant'];
3298
+ }
3299
+ interface ZonosShippingRichRadio {
3300
+ /**
3301
+ * Override border color of the radio item
3302
+ */
3303
+ "borderColor"?: Color | (string & { _placeholder?: never });
3304
+ /**
3305
+ * Override border color of the radio item
3306
+ */
3307
+ "borderStyle"?: ElementsUiStyle;
3308
+ /**
3309
+ * Initial selected value
3310
+ */
3311
+ "initialSelectedValue"?: string | number;
3312
+ /**
3313
+ * List of items to display
3314
+ */
3315
+ "items": ShippingRichRadioItem[];
3316
+ /**
3317
+ * Event emitted when an item is selected
3318
+ */
3319
+ "onRadioSelected"?: (event: ZonosShippingRichRadioCustomEvent<ShippingRichRadioItem>) => void;
3320
+ /**
3321
+ * Theme of the radio item
3322
+ */
3323
+ "theme"?: ElementsUiTheme;
3324
+ }
3325
+ interface ZonosSpinner {
3326
+ /**
3327
+ * The size of the spinner
3328
+ * @default 32
3329
+ */
3330
+ "size"?: number;
3331
+ /**
3332
+ * Color of the spinner
3333
+ */
3334
+ "spinnerColor"?: SpinnerColor;
3335
+ }
3336
+ interface ZonosText {
3337
+ /**
3338
+ * The tag to use for the text
3339
+ */
3340
+ "content"?: string;
3341
+ /**
3342
+ * The size of the text
3343
+ */
3344
+ "size"?: Size;
3345
+ /**
3346
+ * The icon element to display
3347
+ */
3348
+ "textColor"?: Color | (string & { _placeholder?: never });
3349
+ /**
3350
+ * Type of the text to display
3351
+ */
3352
+ "type"?: Type;
3353
+ /**
3354
+ * The weight of the text
3355
+ */
3356
+ "weight"?: FontWeight;
3357
+ }
3358
+ interface ZonosTooltip {
3359
+ /**
3360
+ * The title of the tooltip
3361
+ */
3362
+ "label"?: string;
3363
+ /**
3364
+ * The subtitle of the tooltip
3365
+ */
3366
+ "subtitle"?: string;
3367
+ }
3368
+ interface ZonosVStack {
3369
+ /**
3370
+ * The spacing between elements in the stack
3371
+ * @default 24
3372
+ */
3373
+ "spacing"?: GridSpacing;
3374
+ }
3375
+ interface IntrinsicElements {
3376
+ "zonos-address": ZonosAddress;
3377
+ "zonos-address-display": ZonosAddressDisplay;
3378
+ "zonos-address-form": ZonosAddressForm;
3379
+ "zonos-address-update-dialog": ZonosAddressUpdateDialog;
3380
+ "zonos-badge": ZonosBadge;
3381
+ "zonos-banner": ZonosBanner;
3382
+ "zonos-button": ZonosButton;
3383
+ "zonos-card": ZonosCard;
3384
+ "zonos-cart-items": ZonosCartItems;
3385
+ "zonos-cart-restricted-items": ZonosCartRestrictedItems;
3386
+ "zonos-cart-subtotal": ZonosCartSubtotal;
3387
+ "zonos-checkbox": ZonosCheckbox;
3388
+ "zonos-checkout": ZonosCheckout;
3389
+ "zonos-checkout-finish": ZonosCheckoutFinish;
3390
+ "zonos-checkout-footer": ZonosCheckoutFooter;
3391
+ "zonos-checkout-payment": ZonosCheckoutPayment;
3392
+ "zonos-checkout-progress-tabs": ZonosCheckoutProgressTabs;
3393
+ "zonos-collapse": ZonosCollapse;
3394
+ "zonos-component": ZonosComponent;
3395
+ "zonos-confirm-dialog": ZonosConfirmDialog;
3396
+ "zonos-controller": ZonosController;
3397
+ "zonos-country-flag": ZonosCountryFlag;
3398
+ "zonos-country-select": ZonosCountrySelect;
3399
+ "zonos-custom-message": ZonosCustomMessage;
3400
+ "zonos-customer-info": ZonosCustomerInfo;
3401
+ "zonos-dialog": ZonosDialog;
3402
+ "zonos-hello": ZonosHello;
3403
+ "zonos-hello-dialog": ZonosHelloDialog;
3404
+ "zonos-hello-dialog-footer": ZonosHelloDialogFooter;
3405
+ "zonos-icon": ZonosIcon;
3406
+ "zonos-input": ZonosInput;
3407
+ "zonos-language-select": ZonosLanguageSelect;
3408
+ "zonos-link": ZonosLink;
3409
+ "zonos-link-authentication": ZonosLinkAuthentication;
3410
+ "zonos-logo": ZonosLogo;
3411
+ "zonos-notification": ZonosNotification;
3412
+ "zonos-payment": ZonosPayment;
3413
+ "zonos-review": ZonosReview;
3414
+ "zonos-select-dialog-header": ZonosSelectDialogHeader;
3415
+ "zonos-shipping": ZonosShipping;
3416
+ "zonos-shipping-rich-radio": ZonosShippingRichRadio;
3417
+ "zonos-spinner": ZonosSpinner;
3418
+ "zonos-text": ZonosText;
3419
+ "zonos-tooltip": ZonosTooltip;
3420
+ "zonos-v-stack": ZonosVStack;
3421
+ }
3422
+ }
3423
+
3424
+ declare module "@stencil/core" {
3425
+ export namespace JSX {
3426
+ interface IntrinsicElements {
3427
+ "zonos-address": LocalJSX.ZonosAddress & JSXBase.HTMLAttributes<HTMLZonosAddressElement>;
3428
+ "zonos-address-display": LocalJSX.ZonosAddressDisplay & JSXBase.HTMLAttributes<HTMLZonosAddressDisplayElement>;
3429
+ "zonos-address-form": LocalJSX.ZonosAddressForm & JSXBase.HTMLAttributes<HTMLZonosAddressFormElement>;
3430
+ "zonos-address-update-dialog": LocalJSX.ZonosAddressUpdateDialog & JSXBase.HTMLAttributes<HTMLZonosAddressUpdateDialogElement>;
3431
+ "zonos-badge": LocalJSX.ZonosBadge & JSXBase.HTMLAttributes<HTMLZonosBadgeElement>;
3432
+ "zonos-banner": LocalJSX.ZonosBanner & JSXBase.HTMLAttributes<HTMLZonosBannerElement>;
3433
+ "zonos-button": LocalJSX.ZonosButton & JSXBase.HTMLAttributes<HTMLZonosButtonElement>;
3434
+ "zonos-card": LocalJSX.ZonosCard & JSXBase.HTMLAttributes<HTMLZonosCardElement>;
3435
+ "zonos-cart-items": LocalJSX.ZonosCartItems & JSXBase.HTMLAttributes<HTMLZonosCartItemsElement>;
3436
+ "zonos-cart-restricted-items": LocalJSX.ZonosCartRestrictedItems & JSXBase.HTMLAttributes<HTMLZonosCartRestrictedItemsElement>;
3437
+ "zonos-cart-subtotal": LocalJSX.ZonosCartSubtotal & JSXBase.HTMLAttributes<HTMLZonosCartSubtotalElement>;
3438
+ "zonos-checkbox": LocalJSX.ZonosCheckbox & JSXBase.HTMLAttributes<HTMLZonosCheckboxElement>;
3439
+ "zonos-checkout": LocalJSX.ZonosCheckout & JSXBase.HTMLAttributes<HTMLZonosCheckoutElement>;
3440
+ "zonos-checkout-finish": LocalJSX.ZonosCheckoutFinish & JSXBase.HTMLAttributes<HTMLZonosCheckoutFinishElement>;
3441
+ "zonos-checkout-footer": LocalJSX.ZonosCheckoutFooter & JSXBase.HTMLAttributes<HTMLZonosCheckoutFooterElement>;
3442
+ "zonos-checkout-payment": LocalJSX.ZonosCheckoutPayment & JSXBase.HTMLAttributes<HTMLZonosCheckoutPaymentElement>;
3443
+ "zonos-checkout-progress-tabs": LocalJSX.ZonosCheckoutProgressTabs & JSXBase.HTMLAttributes<HTMLZonosCheckoutProgressTabsElement>;
3444
+ "zonos-collapse": LocalJSX.ZonosCollapse & JSXBase.HTMLAttributes<HTMLZonosCollapseElement>;
3445
+ "zonos-component": LocalJSX.ZonosComponent & JSXBase.HTMLAttributes<HTMLZonosComponentElement>;
3446
+ "zonos-confirm-dialog": LocalJSX.ZonosConfirmDialog & JSXBase.HTMLAttributes<HTMLZonosConfirmDialogElement>;
3447
+ "zonos-controller": LocalJSX.ZonosController & JSXBase.HTMLAttributes<HTMLZonosControllerElement>;
3448
+ "zonos-country-flag": LocalJSX.ZonosCountryFlag & JSXBase.HTMLAttributes<HTMLZonosCountryFlagElement>;
3449
+ "zonos-country-select": LocalJSX.ZonosCountrySelect & JSXBase.HTMLAttributes<HTMLZonosCountrySelectElement>;
3450
+ "zonos-custom-message": LocalJSX.ZonosCustomMessage & JSXBase.HTMLAttributes<HTMLZonosCustomMessageElement>;
3451
+ "zonos-customer-info": LocalJSX.ZonosCustomerInfo & JSXBase.HTMLAttributes<HTMLZonosCustomerInfoElement>;
3452
+ "zonos-dialog": LocalJSX.ZonosDialog & JSXBase.HTMLAttributes<HTMLZonosDialogElement>;
3453
+ "zonos-hello": LocalJSX.ZonosHello & JSXBase.HTMLAttributes<HTMLZonosHelloElement>;
3454
+ "zonos-hello-dialog": LocalJSX.ZonosHelloDialog & JSXBase.HTMLAttributes<HTMLZonosHelloDialogElement>;
3455
+ "zonos-hello-dialog-footer": LocalJSX.ZonosHelloDialogFooter & JSXBase.HTMLAttributes<HTMLZonosHelloDialogFooterElement>;
3456
+ "zonos-icon": LocalJSX.ZonosIcon & JSXBase.HTMLAttributes<HTMLZonosIconElement>;
3457
+ "zonos-input": LocalJSX.ZonosInput & JSXBase.HTMLAttributes<HTMLZonosInputElement>;
3458
+ "zonos-language-select": LocalJSX.ZonosLanguageSelect & JSXBase.HTMLAttributes<HTMLZonosLanguageSelectElement>;
3459
+ "zonos-link": LocalJSX.ZonosLink & JSXBase.HTMLAttributes<HTMLZonosLinkElement>;
3460
+ "zonos-link-authentication": LocalJSX.ZonosLinkAuthentication & JSXBase.HTMLAttributes<HTMLZonosLinkAuthenticationElement>;
3461
+ "zonos-logo": LocalJSX.ZonosLogo & JSXBase.HTMLAttributes<HTMLZonosLogoElement>;
3462
+ "zonos-notification": LocalJSX.ZonosNotification & JSXBase.HTMLAttributes<HTMLZonosNotificationElement>;
3463
+ "zonos-payment": LocalJSX.ZonosPayment & JSXBase.HTMLAttributes<HTMLZonosPaymentElement>;
3464
+ "zonos-review": LocalJSX.ZonosReview & JSXBase.HTMLAttributes<HTMLZonosReviewElement>;
3465
+ "zonos-select-dialog-header": LocalJSX.ZonosSelectDialogHeader & JSXBase.HTMLAttributes<HTMLZonosSelectDialogHeaderElement>;
3466
+ "zonos-shipping": LocalJSX.ZonosShipping & JSXBase.HTMLAttributes<HTMLZonosShippingElement>;
3467
+ "zonos-shipping-rich-radio": LocalJSX.ZonosShippingRichRadio & JSXBase.HTMLAttributes<HTMLZonosShippingRichRadioElement>;
3468
+ "zonos-spinner": LocalJSX.ZonosSpinner & JSXBase.HTMLAttributes<HTMLZonosSpinnerElement>;
3469
+ "zonos-text": LocalJSX.ZonosText & JSXBase.HTMLAttributes<HTMLZonosTextElement>;
3470
+ "zonos-tooltip": LocalJSX.ZonosTooltip & JSXBase.HTMLAttributes<HTMLZonosTooltipElement>;
3471
+ "zonos-v-stack": LocalJSX.ZonosVStack & JSXBase.HTMLAttributes<HTMLZonosVStackElement>;
3472
+ }
3473
+ }
3474
+ }
3475
+
3476
+ type HelloConfig = {
3477
+ anchorElementSelector: string;
3478
+ cartUrlPattern: string | null;
3479
+ currencyBehavior: HelloCurrencyBehavior;
3480
+ currencyElementSelector: string;
3481
+ dutyTaxEstimationBehavior: HelloEstimateBehavior;
3482
+ excludedUrlPatterns: Array<string>;
3483
+ homepageUrlPattern: string | null;
3484
+ mobileLocation: HelloMobileLocation;
3485
+ mode: Mode;
3486
+ organization: string;
3487
+ peekMessageBehavior: HelloPeekMessageBehavior;
3488
+ peekMessageDelay: number;
3489
+ productAddToCartElementSelector: string | null;
3490
+ productDescriptionElementSelector: string | null;
3491
+ productDetailUrlPattern: string | null;
3492
+ productListUrlPattern: string | null;
3493
+ productPriceElementSelector: string | null;
3494
+ productTitleElementSelector: string | null;
3495
+ restrictionBehavior: HelloRestrictionBehavior;
3496
+ };
3497
+
3498
+ type StripeStoreContactOption = {
3499
+ address: {
3500
+ city: string;
3501
+ country: string;
3502
+ line1: string;
3503
+ line2?: string;
3504
+ postal_code: string;
3505
+ state: string;
3506
+ };
3507
+ email: string;
3508
+ name: string;
3509
+ phone?: string;
3510
+ };
3511
+
3512
+ type TabItem = {
3513
+ index: number;
3514
+ isDone: boolean;
3515
+ label: 'Customer' | 'Delivery' | 'Payment';
3516
+ value: 'customer-info' | 'shipping' | 'payment';
3517
+ };
3518
+ type TabItems = Record<TabItem['value'], TabItem>;
3519
+ type ItemMeasurement = {
3520
+ /** Indicates what type of `Measurement`, e.g. weight, specific dim unit. */
3521
+ type?: ItemMeasurementType;
3522
+ /** Indicates the `Measurement` units to be used. */
3523
+ unitOfMeasure?: ItemUnitOfMeasure;
3524
+ /** The `Measurement` value. */
3525
+ value?: number;
3526
+ };
3527
+ type CartItem = {
3528
+ amount: number;
3529
+ attributes?: {
3530
+ key: string;
3531
+ value: string;
3532
+ }[];
3533
+ countryOfOrigin?: string;
3534
+ currencyCode: string;
3535
+ description?: string;
3536
+ hsCode?: string;
3537
+ imageUrl?: string;
3538
+ itemType?: ItemType;
3539
+ measurements?: ItemMeasurement[];
3540
+ metadata?: {
3541
+ key: string;
3542
+ value: string;
3543
+ }[];
3544
+ name: string;
3545
+ productId?: string;
3546
+ quantity: number;
3547
+ sku?: string;
3548
+ };
3549
+
3550
+ type CalculateLandedCostRequest = {
3551
+ billingAddress: {
3552
+ addressLine1: string;
3553
+ addressLine2?: string | undefined;
3554
+ city: string;
3555
+ country: string;
3556
+ postalCode: string;
3557
+ state: string;
3558
+ };
3559
+ billingContact: {
3560
+ firstName: string;
3561
+ lastName: string;
3562
+ phone: string;
3563
+ };
3564
+ checkoutSessionId: string;
3565
+ contact: {
3566
+ email?: string;
3567
+ firstName: string;
3568
+ lastName: string;
3569
+ phone: string;
3570
+ };
3571
+ items: CartItem[];
3572
+ landedCostAdjustments?: {
3573
+ amount: number;
3574
+ type: LandedCostAdjustmentType;
3575
+ }[];
3576
+ metadata?: {
3577
+ key: string;
3578
+ value: string;
3579
+ }[];
3580
+ shippingAddress: {
3581
+ addressLine1: string;
3582
+ addressLine2?: string | undefined;
3583
+ city: string;
3584
+ country: string;
3585
+ postalCode: string;
3586
+ state: string;
3587
+ };
3588
+ };
3589
+
3590
+ type BuildLandedCostParams = {
3591
+ billingAddress: CalculateLandedCostRequest['billingAddress'];
3592
+ billingContact: CalculateLandedCostRequest['billingContact'];
3593
+ checkoutSessionId: string;
3594
+ contact: CalculateLandedCostRequest['contact'];
3595
+ shippingAddress: CalculateLandedCostRequest['shippingAddress'];
3596
+ zonosApiRoute: string;
3597
+ };
3598
+ type BuildLandedCostResponse = Promise<(CalculateLandedCostMutation & {
3599
+ errors?: {
3600
+ message: string;
3601
+ }[];
3602
+ }) | null>;
3603
+
3604
+ type ZonosOrder = GetOrderQuery['order'];
3605
+ type CheckoutConfig = {
3606
+ /**
3607
+ * Validate address to allow specific character sets
3608
+ * @default ALL
3609
+ */
3610
+ allowedCharacterSets?: 'ALL' | 'LATIN';
3611
+ analyticsProviders: Array<{
3612
+ status: AnalyticsProviderStatus;
3613
+ type: AnalyticsProviderType;
3614
+ }>;
3615
+ orderNotifications: {
3616
+ abandonedCart: {
3617
+ delay: number;
3618
+ discountPercent: number;
3619
+ status: {
3620
+ active: NotificationActiveStatus;
3621
+ sendCopiesTo: Array<string>;
3622
+ };
3623
+ };
3624
+ orderCancelled: {
3625
+ active: NotificationActiveStatus;
3626
+ sendCopiesTo: Array<string>;
3627
+ };
3628
+ orderConfirmation: {
3629
+ active: NotificationActiveStatus;
3630
+ sendCopiesTo: Array<string>;
3631
+ } | null;
3632
+ orderShipped: {
3633
+ active: NotificationActiveStatus;
3634
+ sendCopiesTo: Array<string>;
3635
+ };
3636
+ };
3637
+ organization: string;
3638
+ placeOrderButtonSelector: string | null;
3639
+ /**
3640
+ * @param subscriptionStatus subscription status for checkout, checkout only available if subscription status is ENABLED and visibility status is ENABLED
3641
+ *
3642
+ * **NOTE: this value can't be overridden in Zonos.init**
3643
+ */
3644
+ subscriptionStatus: CheckoutSubscriptionStatus;
3645
+ successBehavior: CheckoutSuccessBehavior;
3646
+ successRedirectUrl: string;
3647
+ visibilityStatus: CheckoutVisibilityStatus;
3648
+ /**
3649
+ * Cart info callback for checkout (optional)
3650
+ * @note will use temp cart data if available
3651
+ * User can dispatch an event 'zonos--init-cart-info' to update the cart
3652
+ * @example
3653
+ * const initEvent = new CustomEvent<CartItem[]>('zonos--init-cart-info', {
3654
+ * detail: cartItems,
3655
+ * });
3656
+ * document.body.dispatchEvent(initEvent);
3657
+ * @returns {object[]} - object with the the item info to be added to cart:
3658
+ * - amount: number;
3659
+ * - countryOfOrigin?: string;
3660
+ * - currencyCode: string;
3661
+ * - description?: string;
3662
+ * - hsCode?: string;
3663
+ * - imageUrl?: string;
3664
+ * - name: string;
3665
+ * - productId?: string;
3666
+ * - quantity: number;
3667
+ */
3668
+ buildCartDetail?: () => Promise<CartItem[]>;
3669
+ /**
3670
+ * Calculate landed cost callback for checkout (optional)
3671
+ * @note will use temp cart data if available
3672
+ */
3673
+ buildLandedCost?: (params: BuildLandedCostParams) => BuildLandedCostResponse;
3674
+ /**
3675
+ * Callback trigger when the checkout is closed
3676
+ */
3677
+ onClose?: () => void;
3678
+ /**
3679
+ * Callback trigger when payment succeeds
3680
+ */
3681
+ onOrderSuccess?: (props: {
3682
+ zonosApiRoute: string;
3683
+ zonosOrder: ZonosOrder;
3684
+ }) => Promise<void>;
3685
+ };
3686
+
3687
+ type AppearanceConfig = {
3688
+ colorPrimary?: string;
3689
+ colorSecondary?: string;
3690
+ fontFamily: string;
3691
+ logoUrl: string;
3692
+ style: ElementsUiStyle;
3693
+ theme: ElementsUiTheme;
3694
+ zonosAttribution: ZonosAttribution | null;
3695
+ };
3696
+
3697
+ type TempCartItem = {
3698
+ additionalCharge: boolean;
3699
+ boxNumber: number | null;
3700
+ countryOfOrigin: string | null;
3701
+ description: string | null;
3702
+ discount: boolean;
3703
+ foreignUnitPrice: number | null;
3704
+ giftCard: boolean;
3705
+ height: number | null;
3706
+ id: number | null;
3707
+ imageURL: string | null;
3708
+ itemBrand: string | null;
3709
+ itemCategory: string | null;
3710
+ itemColor: string | null;
3711
+ itemCustomization: string | null;
3712
+ itemDescriptionDetailed: string | null;
3713
+ itemDescriptionLong: string | null;
3714
+ itemDiscountAmount: number | null;
3715
+ itemDoSell: boolean;
3716
+ itemFabricContent: string | null;
3717
+ itemForwarded: boolean;
3718
+ itemHSCode: string | null;
3719
+ itemLtlClass: string | null;
3720
+ itemMaterial: string | null;
3721
+ itemPickingLocation: string | null;
3722
+ itemShipFromLocation: string | null;
3723
+ itemShippingAmount: number | null;
3724
+ itemSize: string | null;
3725
+ itemURL: string | null;
3726
+ itemUnitPriceHide: boolean;
3727
+ length: number | null;
3728
+ nonShippable: boolean;
3729
+ productId: string | null;
3730
+ quantity: number | null;
3731
+ sku: string | null;
3732
+ status: string | null;
3733
+ unitPrice: number | null;
3734
+ weight: number | null;
3735
+ weightUnits: string | null;
3736
+ width: number | null;
3737
+ };
3738
+ type TempCart = {
3739
+ additionalHandling: boolean;
3740
+ boxCount: string | null;
3741
+ /**
3742
+ * @param contShopingUrl should always be set, backend will ensure this. If not set, backend will fallback to the store vendor url
3743
+ */
3744
+ contShoppingURL: string;
3745
+ createdInMillis: number | null;
3746
+ customerId: string | null;
3747
+ customerNote: string | null;
3748
+ discountAmount: number | null;
3749
+ domesticShippingCharge: number | null;
3750
+ exchangeRate: number | null;
3751
+ externalConfirmationPageURL: string | null;
3752
+ footerHtml: string | null;
3753
+ giftCardDescription: string | null;
3754
+ giftCardForeignTotal: number | null;
3755
+ giftCardTotal: number | null;
3756
+ guid: string;
3757
+ iGlobalId: string | null;
3758
+ id: number;
3759
+ iglobalCheckoutFlags: string | null;
3760
+ interpayRateOfferId: string | null;
3761
+ items: TempCartItem[] | null;
3762
+ message: string | null;
3763
+ misc1: string | null;
3764
+ misc2: string | null;
3765
+ misc3: string | null;
3766
+ misc4: string | null;
3767
+ misc5: string | null;
3768
+ misc6: string | null;
3769
+ poAllowed: boolean;
3770
+ referenceId: string | null;
3771
+ shippingAmountOverride: number | null;
3772
+ showForeignCurrency: boolean;
3773
+ storeId: number;
3774
+ usedInMillis: number | null;
3775
+ vendorPassedCurrencyCode: string | null;
3776
+ };
3777
+
3778
+ type CurrencyConverter = (props: {
3779
+ selector?: string;
3780
+ /**
3781
+ * Convert the amount to the target currency in Hello (no locale format)
3782
+ * @param convert amount
3783
+ * @return number
3784
+ * @example
3785
+ * const price = 100; // in USD
3786
+ * convert(100) // return 136.5 when selected country in Hello is Canada
3787
+ */
3788
+ convert: (amount: number) => number;
3789
+ /**
3790
+ * Convert the amount to the target currency and format it in Hello with locale formatting
3791
+ * @param amount
3792
+ * @returns string - CA$136.50
3793
+ * @example
3794
+ * const price = 100;
3795
+ * convertAndFormat(100) // return CA$136.50 when selected country in Hello is Canada
3796
+ */
3797
+ convertAndFormat: (amount: number) => string;
3798
+ /**
3799
+ * Format the given amount to locale format
3800
+ * @param amount
3801
+ * @returns string - CA$100.00
3802
+ * @example
3803
+ * const price = 100
3804
+ * format(100) // return CA$100.00 when selected country in Hello is Canada
3805
+ */
3806
+ format: (amount: number) => string;
3807
+ }) => void;
3808
+ type LoadZonosParamsConfig = {
3809
+ appearance?: Partial<AppearanceConfig>;
3810
+ checkoutSettings?: Partial<CheckoutConfig>;
3811
+ currencyConverter?: CurrencyConverter;
3812
+ helloSettings?: Partial<HelloConfig>;
3813
+ /**
3814
+ * Callback to be called when the country is changed
3815
+ */
3816
+ onCountryChange?: (props: {
3817
+ /**
3818
+ * @param countryCode Updated country code
3819
+ */
3820
+ countryCode: CountryCode;
3821
+ /**
3822
+ * @param currencyCode Updated currency code
3823
+ */
3824
+ currencyCode: CurrencyCode;
3825
+ }) => void;
3826
+ };
3827
+ type LoadZonosParams = LoadZonosParamsConfig & {
3828
+ storeId: number;
3829
+ /**
3830
+ * Temporary cart UUID to be used for legacy zonos checkout. If this is provided, no need to configure `buildCartDetail`, `buildLandedCost` callback, zonosApiKey or storeId
3831
+ * @note This would be deprecated in the future when we fully migrate to new zonos checkout
3832
+ */
3833
+ tempCartUUID?: string;
3834
+ zonosApiKey: string;
3835
+ };
3836
+ interface Zonos$1 {
3837
+ /**
3838
+ * Toggle debug mode (add query param 'zonosDebug=1' to url)
3839
+ * @default false
3840
+ */
3841
+ debug?: boolean;
3842
+ doneInit: boolean;
3843
+ internationalHideSelector: string;
3844
+ isBigCommerce: boolean;
3845
+ isNpm: boolean;
3846
+ /** Flag if already alerted when preview domain is defined and it's connecting production environment */
3847
+ modeAlerted: boolean;
3848
+ storeId: number;
3849
+ /** Stripe instance */
3850
+ stripe: Stripe;
3851
+ tempCartData: TempCart | null;
3852
+ version: string;
3853
+ zonosApiKey: string;
3854
+ /**
3855
+ * Flag to send tracking event to api for conversion testing, since we don't send tracking event to api when in debug/development mode
3856
+ */
3857
+ zonosConversionTest?: boolean;
3858
+ zonosQaUrl: string | null;
3859
+ displayCurrency: () => void;
3860
+ getCurrentTimestamp: () => number;
3861
+ init: (params: LoadZonosParams) => Promise<void>;
3862
+ injectSupportGoogleFont: (fontUrl: string) => void;
3863
+ openHelloDialog: (state?: boolean) => void;
3864
+ setupGoogleFont: (fontFamily: string) => void;
3865
+ showNotification: (props: NotificationInit) => void;
3866
+ updateOrganizationName: (organizationName: string) => void;
3867
+ }
3868
+ declare abstract class Zonos$1 {
3869
+ static zonosApiKey: string;
3870
+ static stripe: Stripe;
3871
+ static storeId: number;
3872
+ static doneInit: boolean;
3873
+ static debug: boolean;
3874
+ static zonosConversionTest: boolean;
3875
+ static isBigCommerce: boolean;
3876
+ /**
3877
+ * By default, the package will load from npm
3878
+ */
3879
+ static isNpm: boolean;
3880
+ static internationalHideSelector: string;
3881
+ static zonosQaUrl: string | null;
3882
+ static version: string;
3883
+ static modeAlerted: boolean;
3884
+ static tempCartData: TempCart | null;
3885
+ static getCurrentTimestamp: () => number;
3886
+ private static zonosController;
3887
+ static init: ({ appearance, checkoutSettings, currencyConverter, helloSettings, onCountryChange, storeId, zonosApiKey, }: LoadZonosParams) => Promise<void>;
3888
+ static displayCurrency: () => void;
3889
+ static openHelloDialog: (value?: boolean) => void;
3890
+ static showNotification: (notification: NotificationInit) => void;
3891
+ static updateOrganizationName: (organizationName: string) => void;
3892
+ private static disablePlaceOrderButtons;
3893
+ private static injectController;
3894
+ private static injectSentryScript;
3895
+ private static injectScript;
3896
+ /**
3897
+ * We now support loading Zonos via npm. For clients using npm, `zonosBase` will always load from the server side. Therefore, the `zonosLoadUrl` defined earlier won't work since it lacks access to client-side APIs such as `window` and `document`.
3898
+ */
3899
+ private static getZonosUrl;
3900
+ private static injectZonosCdn;
3901
+ private static injectStylesheet;
3902
+ private static injectZonosCss;
3903
+ private static injectFonts;
3904
+ static setupGoogleFont: (fontFamily: string) => void;
3905
+ static injectSupportGoogleFont: (fontUrl: string) => void;
3906
+ }
3907
+
3908
+ type InjectScriptType = 'vercel' | 'jsdelivr';
3909
+ type ScriptLoadLogParams = {
3910
+ cdnLoadTime?: number;
3911
+ fallbackLoadTime: number;
3912
+ /**
3913
+ * Detect if the script is failed to load during parallel load
3914
+ */
3915
+ isError?: boolean;
3916
+ metadata?: Record<string, unknown>;
3917
+ scriptLoadUrl: string;
3918
+ storeId: number;
3919
+ type: InjectScriptType;
3920
+ };
3921
+ /**
3922
+ * Temporary zonos class, this is away will be replaced by the real zonos class after the zonos script is loaded
3923
+ */
3924
+ declare abstract class Zonos {
3925
+ static storeId: number;
3926
+ static get isNpm(): boolean;
3927
+ static isBigCommerce: boolean;
3928
+ static requested: boolean;
3929
+ static internationalHideSelector: string;
3930
+ static zonosQaUrl: string | null;
3931
+ static tempCartData: TempCart | null;
3932
+ static zonosApiKey: string | null;
3933
+ static isLegacyCheckout: boolean;
3934
+ static legacyStoreLogo: string | null;
3935
+ static legacyStoreFavicon: string | null;
3936
+ static parallelLoadTimes: ScriptLoadLogParams[];
3937
+ static paralellLoadState: 'on' | 'off';
3938
+ private static loadScriptLogHandler;
3939
+ /**
3940
+ * Parallel load handler to log the performance of both cdn
3941
+ * Save the performance of both cdn info and send the log when both scripts are loaded
3942
+ */
3943
+ private static loadScriptLogParallelHandler;
3944
+ private static legacyCheckoutErrorHandler;
3945
+ private static injectZonos;
3946
+ private static setupCartData;
3947
+ /**
3948
+ * Given that the documentation and several users are already utilizing Zonos.init, this initialization function is designed to retain the parameters for maintaining process integration. It waits for the Zonos script to load, and then invokes the actual initialization function with these parameters.
3949
+ * @param params Actual init loadZonos params
3950
+ */
3951
+ static init: (params: Parameters<Zonos$1['init']>[0]) => Promise<void>;
3952
+ }
3953
+
3954
+ export { Zonos };