addio-admin-sdk 1.7.144 → 1.7.145

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 (575) hide show
  1. package/.babelrc +17 -17
  2. package/.claude/settings.local.json +7 -0
  3. package/.env +14 -0
  4. package/.env.dev +14 -14
  5. package/.github/workflows/run_unit_test.yaml +48 -48
  6. package/addio-sdk-doc.md +1473 -1473
  7. package/changelog.md +564 -564
  8. package/dist/Interfaces/Address/index.d.ts +21 -21
  9. package/dist/Interfaces/Address/index.js +16 -16
  10. package/dist/Interfaces/Algolia/index.d.ts +177 -177
  11. package/dist/Interfaces/Algolia/index.js +2 -2
  12. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  13. package/dist/Interfaces/Attachement/index.js +2 -2
  14. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  15. package/dist/Interfaces/Attribute/index.js +10 -10
  16. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  17. package/dist/Interfaces/BGJob/index.js +25 -25
  18. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  19. package/dist/Interfaces/BaseClass/index.js +2 -2
  20. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  21. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  22. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  23. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  24. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  25. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  26. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  27. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  28. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  29. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  30. package/dist/Interfaces/Booking/index.d.ts +74 -74
  31. package/dist/Interfaces/Booking/index.js +17 -17
  32. package/dist/Interfaces/Brand/index.d.ts +15 -15
  33. package/dist/Interfaces/Brand/index.js +2 -2
  34. package/dist/Interfaces/CMS/index.d.ts +28 -28
  35. package/dist/Interfaces/CMS/index.js +5 -5
  36. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  37. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  38. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  39. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  40. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  41. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  42. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  43. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  44. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  45. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  46. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  47. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  48. package/dist/Interfaces/Cart/index.d.ts +444 -444
  49. package/dist/Interfaces/Cart/index.js +197 -197
  50. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  51. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  52. package/dist/Interfaces/CashDrawers/index.d.ts +37 -37
  53. package/dist/Interfaces/CashDrawers/index.js +19 -19
  54. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  55. package/dist/Interfaces/Catalogue/index.js +37 -37
  56. package/dist/Interfaces/Category/index.d.ts +33 -33
  57. package/dist/Interfaces/Category/index.js +2 -2
  58. package/dist/Interfaces/Chart/index.d.ts +11 -11
  59. package/dist/Interfaces/Chart/index.js +2 -2
  60. package/dist/Interfaces/Class/index.d.ts +8 -8
  61. package/dist/Interfaces/Class/index.js +2 -2
  62. package/dist/Interfaces/Consent/index.d.ts +6 -6
  63. package/dist/Interfaces/Consent/index.js +2 -2
  64. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  65. package/dist/Interfaces/Context/IContextProps.js +2 -2
  66. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  67. package/dist/Interfaces/Context/IContextState.js +2 -2
  68. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  69. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  70. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  71. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  72. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  73. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  74. package/dist/Interfaces/Customer/index.d.ts +104 -104
  75. package/dist/Interfaces/Customer/index.js +148 -148
  76. package/dist/Interfaces/Declination/index.d.ts +117 -117
  77. package/dist/Interfaces/Declination/index.js +66 -66
  78. package/dist/Interfaces/Document/index.d.ts +8 -8
  79. package/dist/Interfaces/Document/index.js +2 -2
  80. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  81. package/dist/Interfaces/Elastic/index.js +2 -2
  82. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  83. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  84. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  85. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  86. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  87. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  89. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  90. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  91. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  92. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  93. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  94. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  95. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  96. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  97. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  98. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  99. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  100. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  101. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  102. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  103. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  104. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  105. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  106. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  107. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  108. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  109. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  110. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  111. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  112. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  113. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  114. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  115. package/dist/Interfaces/Email/IEmail.js +60 -60
  116. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  117. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  118. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  119. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  120. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  121. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  122. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  123. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  124. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  125. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  126. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  127. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  128. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  129. package/dist/Interfaces/ExportSchema/index.js +2 -2
  130. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  131. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  132. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  133. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  134. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  135. package/dist/Interfaces/ExternalService/index.js +2 -2
  136. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  137. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  138. package/dist/Interfaces/G2/index.d.ts +556 -556
  139. package/dist/Interfaces/G2/index.js +38 -38
  140. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  141. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  142. package/dist/Interfaces/Indexed/Product/index.d.ts +105 -105
  143. package/dist/Interfaces/Indexed/Product/index.js +253 -253
  144. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  145. package/dist/Interfaces/Inventory/index.js +8 -8
  146. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  147. package/dist/Interfaces/Invoice/index.js +2 -2
  148. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  149. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  150. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  151. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  152. package/dist/Interfaces/Menu/index.d.ts +40 -40
  153. package/dist/Interfaces/Menu/index.js +16 -16
  154. package/dist/Interfaces/Note/index.d.ts +10 -10
  155. package/dist/Interfaces/Note/index.js +7 -7
  156. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  157. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  158. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  159. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  160. package/dist/Interfaces/Order/index.d.ts +4 -4
  161. package/dist/Interfaces/Order/index.js +2 -2
  162. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  163. package/dist/Interfaces/Org/IRelUser.js +2 -2
  164. package/dist/Interfaces/Org/index.d.ts +29 -29
  165. package/dist/Interfaces/Org/index.js +12 -12
  166. package/dist/Interfaces/Payment/index.d.ts +26 -26
  167. package/dist/Interfaces/Payment/index.js +14 -14
  168. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  169. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  170. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  171. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  172. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  173. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  174. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  175. package/dist/Interfaces/Product/IPricing.js +180 -180
  176. package/dist/Interfaces/Product/index.d.ts +138 -138
  177. package/dist/Interfaces/Product/index.js +64 -64
  178. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  179. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  180. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  181. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  182. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  183. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  184. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  185. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  186. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  187. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  188. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  189. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  190. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  191. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  192. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  193. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  194. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  195. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  196. package/dist/Interfaces/Quote/index.d.ts +5 -5
  197. package/dist/Interfaces/Quote/index.js +2 -2
  198. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  199. package/dist/Interfaces/Refunds/index.js +2 -2
  200. package/dist/Interfaces/Rules/IDiscountRule.d.ts +155 -155
  201. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  202. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  203. package/dist/Interfaces/Schedule/index.js +2 -2
  204. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  205. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  206. package/dist/Interfaces/Services/IService.d.ts +16 -16
  207. package/dist/Interfaces/Services/IService.js +2 -2
  208. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  209. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  210. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  211. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  212. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  213. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  214. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  215. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  216. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  217. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  218. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  219. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  220. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  221. package/dist/Interfaces/Slider/GR.js +271 -271
  222. package/dist/Interfaces/Slider/index.d.ts +30 -30
  223. package/dist/Interfaces/Slider/index.js +2 -2
  224. package/dist/Interfaces/Space/IExternalService.d.ts +53 -53
  225. package/dist/Interfaces/Space/IExternalService.js +44 -44
  226. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  227. package/dist/Interfaces/Space/IMember.js +9 -9
  228. package/dist/Interfaces/Space/index.d.ts +407 -405
  229. package/dist/Interfaces/Space/index.js +174 -174
  230. package/dist/Interfaces/Space/index.js.map +1 -1
  231. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  232. package/dist/Interfaces/Specials/gr.js +2 -2
  233. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  234. package/dist/Interfaces/StockNotification/index.js +2 -2
  235. package/dist/Interfaces/Store/index.d.ts +63 -63
  236. package/dist/Interfaces/Store/index.js +27 -27
  237. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  238. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  239. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  240. package/dist/Interfaces/Supplier/index.js +24 -24
  241. package/dist/Interfaces/TCG/index.d.ts +161 -161
  242. package/dist/Interfaces/TCG/index.js +54 -54
  243. package/dist/Interfaces/Tag/index.d.ts +18 -18
  244. package/dist/Interfaces/Tag/index.js +2 -2
  245. package/dist/Interfaces/Tax/index.d.ts +13 -13
  246. package/dist/Interfaces/Tax/index.js +2 -2
  247. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  248. package/dist/Interfaces/TransferRequest/index.js +46 -46
  249. package/dist/Interfaces/Translation/index.d.ts +8 -8
  250. package/dist/Interfaces/Translation/index.js +5 -5
  251. package/dist/Interfaces/Update/index.d.ts +10 -10
  252. package/dist/Interfaces/Update/index.js +2 -2
  253. package/dist/Interfaces/User/IUser.d.ts +65 -65
  254. package/dist/Interfaces/User/IUser.js +8 -8
  255. package/dist/Interfaces/Version/index.d.ts +11 -11
  256. package/dist/Interfaces/Version/index.js +2 -2
  257. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  258. package/dist/Interfaces/Wishlist/index.js +2 -2
  259. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  260. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  261. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  262. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  263. package/dist/constants/enums.d.ts +6 -6
  264. package/dist/constants/enums.js +10 -10
  265. package/dist/constants/services.d.ts +2 -2
  266. package/dist/constants/services.js +117 -117
  267. package/dist/constants/version.d.ts +2 -2
  268. package/dist/constants/version.js +5 -5
  269. package/dist/index.d.ts +50 -50
  270. package/dist/index.js +266 -266
  271. package/dist/lib/Attribute/index.d.ts +14 -14
  272. package/dist/lib/Attribute/index.js +186 -186
  273. package/dist/lib/BGJob/index.d.ts +9 -9
  274. package/dist/lib/BGJob/index.js +216 -216
  275. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  276. package/dist/lib/BackgroundWorker/index.js +59 -59
  277. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  278. package/dist/lib/Blog/BlogArticle.js +10 -10
  279. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  280. package/dist/lib/Blog/BlogAuthor.js +10 -10
  281. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  282. package/dist/lib/Blog/BlogCategory.js +10 -10
  283. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  284. package/dist/lib/Blog/BlogKeyword.js +10 -10
  285. package/dist/lib/Booking/index.d.ts +85 -85
  286. package/dist/lib/Booking/index.js +596 -596
  287. package/dist/lib/Brand/index.d.ts +26 -26
  288. package/dist/lib/Brand/index.js +131 -131
  289. package/dist/lib/Cart/index.d.ts +335 -335
  290. package/dist/lib/Cart/index.js +3977 -3977
  291. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  292. package/dist/lib/CartReservedQuantities/index.js +159 -159
  293. package/dist/lib/CashDrawerShift/index.d.ts +83 -83
  294. package/dist/lib/CashDrawerShift/index.js +205 -205
  295. package/dist/lib/Catalogue/index.d.ts +15 -15
  296. package/dist/lib/Catalogue/index.js +78 -78
  297. package/dist/lib/Category/index.d.ts +34 -34
  298. package/dist/lib/Category/index.js +230 -230
  299. package/dist/lib/Class/index.d.ts +16 -16
  300. package/dist/lib/Class/index.js +66 -66
  301. package/dist/lib/Consent/index.d.ts +4 -4
  302. package/dist/lib/Consent/index.js +29 -29
  303. package/dist/lib/Customer/index.d.ts +30 -30
  304. package/dist/lib/Customer/index.js +92 -92
  305. package/dist/lib/Declination/index.d.ts +9 -9
  306. package/dist/lib/Declination/index.js +26 -26
  307. package/dist/lib/Discount/index.d.ts +27 -27
  308. package/dist/lib/Discount/index.js +493 -493
  309. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  310. package/dist/lib/ElasticSearch/index.js +50 -50
  311. package/dist/lib/Elavon/index.d.ts +18 -18
  312. package/dist/lib/Elavon/index.js +135 -135
  313. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  314. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  315. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  316. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  317. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  318. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  319. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  320. package/dist/lib/Email/ApplicationEmail.js +24 -24
  321. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  322. package/dist/lib/Email/BackInStockEmail.js +24 -24
  323. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  324. package/dist/lib/Email/ContactEmail.js +24 -24
  325. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  326. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  327. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  328. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  329. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  330. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  331. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  332. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  333. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  334. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  335. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  336. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  337. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  338. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  339. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  340. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  341. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  342. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  343. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  344. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  345. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  346. package/dist/lib/Email/WelcomeEmail.js +24 -24
  347. package/dist/lib/Email/index.d.ts +16 -16
  348. package/dist/lib/Email/index.js +31 -31
  349. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  350. package/dist/lib/ExternalService/Ebay.js +124 -124
  351. package/dist/lib/ExternalService/index.d.ts +5 -5
  352. package/dist/lib/ExternalService/index.js +10 -10
  353. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  354. package/dist/lib/FirstOrderTracking/index.js +10 -10
  355. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  356. package/dist/lib/Indexed/IndexedCart.js +91 -91
  357. package/dist/lib/Indexed/Product.d.ts +17 -17
  358. package/dist/lib/Indexed/Product.js +98 -98
  359. package/dist/lib/Inventory/index.d.ts +112 -112
  360. package/dist/lib/Inventory/index.js +492 -492
  361. package/dist/lib/Invoice/index.d.ts +16 -16
  362. package/dist/lib/Invoice/index.js +21 -21
  363. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  364. package/dist/lib/MarketplacePublication/index.js +426 -426
  365. package/dist/lib/Menu/index.d.ts +11 -11
  366. package/dist/lib/Menu/index.js +107 -107
  367. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  368. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  369. package/dist/lib/Note/index.d.ts +4 -4
  370. package/dist/lib/Note/index.js +6 -6
  371. package/dist/lib/Order/index.d.ts +27 -27
  372. package/dist/lib/Order/index.js +56 -56
  373. package/dist/lib/Org/index.d.ts +68 -68
  374. package/dist/lib/Org/index.js +216 -216
  375. package/dist/lib/PandaPay/index.d.ts +16 -16
  376. package/dist/lib/PandaPay/index.js +176 -176
  377. package/dist/lib/Paysafe/index.d.ts +11 -11
  378. package/dist/lib/Paysafe/index.js +41 -41
  379. package/dist/lib/Product/index.d.ts +182 -182
  380. package/dist/lib/Product/index.js +847 -847
  381. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  382. package/dist/lib/ProductAttribute/index.js +45 -45
  383. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  384. package/dist/lib/PromiseToPurchase/index.js +343 -343
  385. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  386. package/dist/lib/PurchaseOrder/index.js +28 -28
  387. package/dist/lib/Schedule/index.d.ts +5 -5
  388. package/dist/lib/Schedule/index.js +12 -12
  389. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  390. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  391. package/dist/lib/Service/index.d.ts +13 -13
  392. package/dist/lib/Service/index.js +21 -21
  393. package/dist/lib/Shipment/index.d.ts +28 -28
  394. package/dist/lib/Shipment/index.js +370 -370
  395. package/dist/lib/Slider/index.d.ts +22 -22
  396. package/dist/lib/Slider/index.js +119 -119
  397. package/dist/lib/Space/index.d.ts +1150 -1150
  398. package/dist/lib/Space/index.js +5792 -5792
  399. package/dist/lib/StockNotification/index.d.ts +4 -4
  400. package/dist/lib/StockNotification/index.js +6 -6
  401. package/dist/lib/Store/index.d.ts +5 -5
  402. package/dist/lib/Store/index.js +12 -12
  403. package/dist/lib/Supplier/Command.d.ts +5 -5
  404. package/dist/lib/Supplier/Command.js +10 -10
  405. package/dist/lib/Supplier/index.d.ts +25 -25
  406. package/dist/lib/Supplier/index.js +27 -27
  407. package/dist/lib/Tags/index.d.ts +6 -6
  408. package/dist/lib/Tags/index.js +26 -26
  409. package/dist/lib/Tax/index.d.ts +8 -8
  410. package/dist/lib/Tax/index.js +54 -54
  411. package/dist/lib/TransferRequest/index.d.ts +290 -290
  412. package/dist/lib/TransferRequest/index.js +1026 -1026
  413. package/dist/lib/Update/index.d.ts +10 -10
  414. package/dist/lib/Update/index.js +22 -22
  415. package/dist/lib/User/index.d.ts +89 -89
  416. package/dist/lib/User/index.js +328 -328
  417. package/dist/lib/Wishlist/index.d.ts +5 -5
  418. package/dist/lib/Wishlist/index.js +10 -10
  419. package/dist/lib/base.d.ts +14 -14
  420. package/dist/lib/base.js +62 -62
  421. package/dist/lib/baseService.d.ts +17 -17
  422. package/dist/lib/baseService.js +69 -69
  423. package/dist/rules/GR/constants/data.d.ts +26 -26
  424. package/dist/rules/GR/constants/data.js +81 -81
  425. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  426. package/dist/rules/GR/constants/expedition.js +9 -9
  427. package/dist/rules/GR/constants/products.d.ts +22 -22
  428. package/dist/rules/GR/constants/products.js +263 -263
  429. package/dist/rules/GR/interfaces/cart.d.ts +84 -84
  430. package/dist/rules/GR/interfaces/cart.js +41 -41
  431. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  432. package/dist/rules/GR/interfaces/data.js +114 -114
  433. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  434. package/dist/rules/GR/interfaces/products.js +10 -10
  435. package/dist/rules/GR/utils/cart.d.ts +95 -95
  436. package/dist/rules/GR/utils/cart.js +839 -836
  437. package/dist/rules/GR/utils/cart.js.map +1 -1
  438. package/dist/rules/GR/utils/data.d.ts +3 -3
  439. package/dist/rules/GR/utils/data.js +28 -28
  440. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  441. package/dist/rules/GR/utils/expedition.js +2016 -2016
  442. package/dist/rules/GR/utils/g2.d.ts +209 -209
  443. package/dist/rules/GR/utils/g2.js +999 -999
  444. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  445. package/dist/rules/GR/utils/invoices.js +215 -215
  446. package/dist/rules/GR/utils/products.d.ts +277 -277
  447. package/dist/rules/GR/utils/products.js +1350 -1350
  448. package/dist/rules/GR/utils/upsells.d.ts +111 -111
  449. package/dist/rules/GR/utils/upsells.js +215 -215
  450. package/dist/services/database/BaseProvider.d.ts +29 -29
  451. package/dist/services/database/BaseProvider.js +28 -28
  452. package/dist/services/database/BatchUtils.d.ts +14 -14
  453. package/dist/services/database/BatchUtils.js +43 -43
  454. package/dist/services/database/Config.d.ts +2 -2
  455. package/dist/services/database/Config.js +5 -5
  456. package/dist/services/database/DatabaseService.d.ts +125 -125
  457. package/dist/services/database/DatabaseService.js +237 -237
  458. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  459. package/dist/services/database/FirebaseProvider.js +235 -235
  460. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  461. package/dist/services/database/NotFirebaseProvider.js +262 -262
  462. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  463. package/dist/services/g2/G2OrderSlip.js +228 -228
  464. package/dist/services/g2/utils.d.ts +19 -19
  465. package/dist/services/g2/utils.js +953 -953
  466. package/dist/services/logs/index.d.ts +23 -23
  467. package/dist/services/logs/index.js +66 -66
  468. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +52 -52
  469. package/dist/services/marketplace/BaseMarketServiceClass.js +111 -111
  470. package/dist/services/marketplace/CardtraderServiceClass.d.ts +17 -17
  471. package/dist/services/marketplace/CardtraderServiceClass.js +139 -139
  472. package/dist/services/marketplace/utils.d.ts +14 -14
  473. package/dist/services/marketplace/utils.js +29 -29
  474. package/dist/services/products/BaseClass.d.ts +50 -50
  475. package/dist/services/products/BaseClass.js +66 -66
  476. package/dist/services/products/TCGService.d.ts +32 -32
  477. package/dist/services/products/TCGService.js +555 -555
  478. package/dist/services/products/utils.d.ts +31 -31
  479. package/dist/services/products/utils.js +144 -144
  480. package/dist/utils/algolia.d.ts +46 -46
  481. package/dist/utils/algolia.js +21 -21
  482. package/dist/utils/anonymisation.d.ts +54 -54
  483. package/dist/utils/anonymisation.js +280 -280
  484. package/dist/utils/array.d.ts +5 -5
  485. package/dist/utils/array.js +14 -14
  486. package/dist/utils/aws.d.ts +36 -36
  487. package/dist/utils/aws.js +154 -154
  488. package/dist/utils/booking.d.ts +30 -30
  489. package/dist/utils/booking.js +127 -127
  490. package/dist/utils/cart.d.ts +259 -259
  491. package/dist/utils/cart.js +1145 -1145
  492. package/dist/utils/categories.d.ts +2 -2
  493. package/dist/utils/categories.js +54 -54
  494. package/dist/utils/cmv.d.ts +10 -10
  495. package/dist/utils/cmv.js +107 -107
  496. package/dist/utils/console.d.ts +6 -6
  497. package/dist/utils/console.js +59 -59
  498. package/dist/utils/context.d.ts +20 -20
  499. package/dist/utils/context.js +61 -61
  500. package/dist/utils/currency.d.ts +6 -6
  501. package/dist/utils/currency.js +91 -91
  502. package/dist/utils/data.d.ts +31 -31
  503. package/dist/utils/data.js +296 -296
  504. package/dist/utils/date.d.ts +1 -1
  505. package/dist/utils/date.js +16 -16
  506. package/dist/utils/dimensions.d.ts +3 -3
  507. package/dist/utils/dimensions.js +16 -16
  508. package/dist/utils/discount.d.ts +164 -164
  509. package/dist/utils/discount.js +1111 -1111
  510. package/dist/utils/errors.d.ts +113 -113
  511. package/dist/utils/errors.js +113 -113
  512. package/dist/utils/file-admin.d.ts +8 -8
  513. package/dist/utils/file-admin.js +39 -39
  514. package/dist/utils/file.d.ts +39 -39
  515. package/dist/utils/file.js +208 -208
  516. package/dist/utils/firebase-admin.d.ts +11 -11
  517. package/dist/utils/firebase-admin.js +73 -73
  518. package/dist/utils/firebase.d.ts +58 -58
  519. package/dist/utils/firebase.js +148 -148
  520. package/dist/utils/import.d.ts +1 -1
  521. package/dist/utils/import.js +21 -21
  522. package/dist/utils/inventories.d.ts +101 -101
  523. package/dist/utils/inventories.js +467 -467
  524. package/dist/utils/locale.d.ts +24 -24
  525. package/dist/utils/locale.js +89 -89
  526. package/dist/utils/mailchimp.d.ts +58 -58
  527. package/dist/utils/mailchimp.js +531 -531
  528. package/dist/utils/mathUtils.d.ts +17 -17
  529. package/dist/utils/mathUtils.js +324 -324
  530. package/dist/utils/mongodb.d.ts +1 -1
  531. package/dist/utils/mongodb.js +22 -22
  532. package/dist/utils/object.d.ts +32 -32
  533. package/dist/utils/object.js +133 -133
  534. package/dist/utils/payment.d.ts +10 -10
  535. package/dist/utils/payment.js +23 -23
  536. package/dist/utils/products.d.ts +39 -39
  537. package/dist/utils/products.js +195 -195
  538. package/dist/utils/promiseToPurchase.d.ts +88 -88
  539. package/dist/utils/promiseToPurchase.js +229 -229
  540. package/dist/utils/prosprsearch.d.ts +42 -42
  541. package/dist/utils/prosprsearch.js +216 -216
  542. package/dist/utils/refunds.d.ts +2 -2
  543. package/dist/utils/refunds.js +21 -21
  544. package/dist/utils/sdc.d.ts +10 -10
  545. package/dist/utils/sdc.js +1309 -1309
  546. package/dist/utils/searchIndexes.d.ts +58 -58
  547. package/dist/utils/searchIndexes.js +247 -247
  548. package/dist/utils/services.d.ts +42 -42
  549. package/dist/utils/services.js +409 -409
  550. package/dist/utils/shipment.d.ts +110 -110
  551. package/dist/utils/shipment.js +345 -345
  552. package/dist/utils/simpletexting.d.ts +2 -2
  553. package/dist/utils/simpletexting.js +45 -45
  554. package/dist/utils/sliders.d.ts +4 -4
  555. package/dist/utils/sliders.js +24 -24
  556. package/dist/utils/string.d.ts +16 -16
  557. package/dist/utils/string.js +192 -192
  558. package/dist/utils/tcgService.d.ts +74 -74
  559. package/dist/utils/tcgService.js +308 -308
  560. package/dist/utils/tools.d.ts +5 -5
  561. package/dist/utils/tools.js +13 -13
  562. package/dist/utils/transferRequests.d.ts +43 -43
  563. package/dist/utils/transferRequests.js +67 -67
  564. package/dist/utils/update.d.ts +7 -7
  565. package/dist/utils/update.js +137 -137
  566. package/dist/utils/weight.d.ts +3 -3
  567. package/dist/utils/weight.js +16 -16
  568. package/dist/utils/zones.d.ts +11 -11
  569. package/dist/utils/zones.js +218 -218
  570. package/package.json +107 -107
  571. package/publish.sh +143 -143
  572. package/readme.md +182 -182
  573. package/dist/lib/Queue/index.d.ts +0 -40
  574. package/dist/lib/Queue/index.js +0 -255
  575. package/dist/lib/Queue/index.js.map +0 -1
@@ -1,277 +1,277 @@
1
- import { IFilledDimensionUnits } from '../../../Interfaces/Declination';
2
- import IIndexedProduct from '../../../Interfaces/Indexed/Product';
3
- import ITranslation from '../../../Interfaces/Translation';
4
- import IAttribute, { IAttributeValue } from '../../../Interfaces/Attribute';
5
- import ICart, { ICartItem, ICartItemWithSubItem, IIndexedDeclination } from '../../../Interfaces/Cart';
6
- import IAddress from '../../../Interfaces/Address';
7
- import IStore from '../../../Interfaces/Store';
8
- import { ICustomPriceItem } from '../../../Interfaces/G2';
9
- import { IProductRecommendation } from '../../../Interfaces/Product';
10
- import IInventoryItem from '../../../Interfaces/Product/IInventoryItem';
11
- import ICustomer from '../../../Interfaces/Customer';
12
- import IDiscountRule from '../../../Interfaces/Rules/IDiscountRule';
13
- import ILang from '../../../utils/string';
14
- import { IConcreteOrder, IGrassProduct, IVracType } from '../interfaces/products';
15
- import { TExpeditionMethod, TFeesAppliedResponse } from '../interfaces/cart';
16
- /**
17
- * @description Returns sell unit label in correct language for a specific product's other_units
18
- * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
19
- * @param {string | undefined} locale The language in which we want to return the label
20
- * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
21
- * @param {boolean} options.returnPlural If plural version should be returned
22
- * @param {boolean} options.returnShortByDefault If short version should be prioritized
23
- */
24
- export declare const getProductSellUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
25
- returnPlural?: boolean;
26
- returnShortByDefault?: boolean;
27
- }) => string;
28
- /**
29
- * @description Returns unit label in correct language for a specific product's other_units
30
- * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
31
- * @param {string} type The unit type to check
32
- * @param {string | undefined} locale The language in which we want to return the label
33
- * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
34
- * @param {boolean} options.returnPlural If plural version should be returned
35
- * @param {boolean} options.returnShortByDefault If short version should be prioritized
36
- */
37
- export declare const getProductUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit', locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
38
- returnPlural?: boolean;
39
- returnShortByDefault?: boolean;
40
- }) => string;
41
- /**
42
- * Returns the unit label for a specific slug
43
- * @param {string} unitSlug The slug of the unit for which we want to get the label
44
- * @param {string | undefined} locale The language in which we want to get the label
45
- * @param {boolean} getPluralVersion Optionnal - If the plural version should be returned instead.
46
- * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
47
- * @param {boolean} returnShortByDefault Optionnal - If the short version should be prioritized
48
- */
49
- export declare const getUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, getPluralVersion?: boolean, returnUnitForSlugs?: string[], returnShortByDefault?: boolean) => string;
50
- /**
51
- * Returns the plural unit label for a specific slug
52
- * @deprecated Should use getUnitLabelWithSlug instead (with props getPluralVersion=true)
53
- * @param {string} unitSlug The slug of the unit for which we want to get the label
54
- * @param {string | undefined} locale The language in which we want to get the label
55
- * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
56
- */
57
- export declare const getPluralUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, returnUnitForSlugs?: string[], useShortIfDifferent?: boolean) => string;
58
- export declare const getCorrectPluralSellUnit: (sellUnit: {
59
- unit?: ILang;
60
- value: number;
61
- }, locale?: string) => string;
62
- export declare const productUnitSupportsDecimals: (unitSlug: string, isService?: boolean) => boolean;
63
- export declare const getProductAttributes: (product: IIndexedProduct) => {
64
- colors: string[];
65
- dimensions: string[];
66
- formats: string[];
67
- };
68
- export declare const getDescriptionLength: (description: ITranslation[], locale?: string) => number;
69
- export declare const getDescriptionString: (showFullDesc: boolean, maxLength: number, description: ITranslation[], locale?: string) => string;
70
- /**
71
- * Returns rounded product sell_unit quantities depending on current value, value of secondary input if existant and sale unit per command step ratio found in product.
72
- * @param value {number} - Current quantity as entered by user in first input
73
- * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
74
- * @param value2 {number | undefined} - Current quantity as entered by user in second input (possibly undefined)
75
- * @param targetIsSecondaryInput {boolean} - If action was triggered from secondary input (defaults to false)
76
- */
77
- export declare const getRoundedSellUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, value2: number | undefined, targetIsSecondaryInput?: boolean) => {
78
- qte1: number;
79
- qte2?: number | undefined;
80
- };
81
- /**
82
- * Returns rounded product quantities depending on current value per command step ratio found in product.
83
- * @param value {number} - Current quantity as entered by user in first input
84
- * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
85
- * @param type {'sale_unit' | 'inventory_unit'} - Quantity type for computing
86
- */
87
- export declare const getRoundedUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit') => number;
88
- /**
89
- *
90
- * @param {string} stringToSplit
91
- * @param {string} dummyStringToReplace.currentValue, optionnal, default : '%%-%%'. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
92
- * @param {string} dummyStringToReplace.newValue, optionnal, default : ' - '. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
93
- * @returns {string[]}
94
- */
95
- export declare const splitOnDashes: (stringToSplit: string, dummyStringToReplace?: {
96
- currentValue: string;
97
- newValue: string;
98
- }) => string[];
99
- /**
100
- * Get product name as array. Array created mostly by splitting name on dash symbol (and variations).
101
- * @param {IIndexedVariationAlgolia | IIndexedProduct} product
102
- * @param {string | undefined} locale
103
- * @returns {string[]} - Position 0 is the "commum section" of the name, and position 1 should contain all specifics (ex. color, size, etc...)
104
- */
105
- export declare const getProdName: (product: any, locale: string | undefined, platform?: 'web' | 'pos', attributes?: IAttribute[]) => string[];
106
- /**
107
- * Function getParentProductCategoryGroup
108
- * @param prod - Product to check
109
- */
110
- export declare const getParentProductCategoryGroup: (prod: IIndexedProduct) => 'gazon' | 'beton' | 'vrac' | 'other';
111
- /**
112
- * Function getProductFormOptions - Returns all AttributeValues for product to construct options in add to cart form
113
- * @param product - Product to check
114
- * @param attributes - Array of IAttributes to fetch info from
115
- */
116
- export declare const getProductFormOptions: (product: IIndexedProduct, attributes: IAttribute[]) => {
117
- allColors: IAttributeValue[];
118
- allDimensions: IAttributeValue[];
119
- allFormats: IAttributeValue[];
120
- };
121
- /**
122
- * @description Checks if product is of type by checking TYPE attribute value. Works with indexed product or cart item.
123
- * @param product
124
- * @param type
125
- * @param excludeUndefined If excludeUndefined is true, products without the "type" attribute will return true
126
- * @returns boolean
127
- */
128
- export declare const checkIfProductIsOfType: (product: Partial<IIndexedProduct | ICartItem>, type: string, excludeUndefined?: boolean) => boolean;
129
- /**
130
- * Check if provided sku/slug corresponds to a non-speciality grass item
131
- * @param sku Grass item's sku
132
- * @param slug Grass item's parent product slug
133
- * @param onlyBaseGrass Optionnal. If provided data should only be compared to base grass (aka Kentucky)
134
- */
135
- export declare const checkIfIsNonSpecialityGrass: (sku: string, slug: string, onlyBaseGrass?: boolean) => boolean;
136
- export declare const checkIfProductIsInstallation: (item: IIndexedDeclination) => boolean;
137
- /**
138
- * Returns array of installation items found in provided array
139
- * @param items - Array of cart items or IIndexedDeclinations to check
140
- */
141
- export declare const getAllInstallFromItems: (items: (ICartItem | IIndexedDeclination)[]) => (ICartItem | IIndexedDeclination)[];
142
- /**
143
- * Function fuseGrassProducts
144
- * @description - Returns items with only one apparent grass product (used for detail customers).
145
- * ** FOR DISPLAY PURPOSES ONLY - Always save grass products separatly in ICart **
146
- * @param recursiveItems - ICartItems with subitems (object created for display purposes)
147
- */
148
- export declare const fuseGrassProducts: (recursiveItems: ICartItemWithSubItem[], isPro?: boolean) => ICartItemWithSubItem[];
149
- export declare const isMinQtyFee: (slug: string) => boolean;
150
- export declare const getAllMinGrassQuantities: (grassProduct: IGrassProduct, isPro: boolean) => {
151
- pickup: number;
152
- shipping: number;
153
- install: number;
154
- };
155
- export declare const getMinQtyFeeText: (parent_slug: string | undefined, grassProduct: IGrassProduct, isPro: boolean, locale?: string, expeditionMethod?: string, shortVersion?: boolean) => string;
156
- export declare const getMinQtyFeeAmountText: (parent_slug: string | undefined, locale: string | undefined, servicesFees: ICartItem[], showMinFeeAmount?: boolean) => string;
157
- export declare const getGrassQteText: (chosenDeclination: IIndexedDeclination | undefined, locale?: string) => string;
158
- export declare const getGrassServicesFees: (grassProduct: IGrassProduct, isPro: boolean, useFees: boolean, expeditionMethod: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string, allStores: IStore[], chosenGrass: ICartItem, baseGrass?: ICartItem, customPriceList?: ICustomPriceItem[]) => Promise<ICartItem[]>;
159
- export declare const getGrassSubQuestionsByType: (type: 'install' | 'pro') => import("../interfaces/products").IGrassSubQuestion[];
160
- /**
161
- * @description For grass products. Over 1480pi2, if installation, quantities are rounded to rolls (10pi2) if pickup, and to half pal. if shipping
162
- * @param grassProduct
163
- * @param cartData
164
- * @returns quantity rounded to rolls with items to change or undefined
165
- */
166
- export declare const handleGrassProductQtyRoundForShipping: (cartData: ICart, grassProduct: IGrassProduct | undefined) => {
167
- rounded: number;
168
- itemsToChange: {
169
- sku: string;
170
- qte: number;
171
- }[];
172
- } | undefined;
173
- /**
174
- * Function roundGrassQte
175
- * @description Returns rounded grass quantity depending on current qty, if customer selected installation and pallet unit (if defined)
176
- * @param currentQte {number} - Current quantity as entered by user in input
177
- * @param isShipping {boolean} - Whether customer has selected installation option
178
- * @param palUnit {IFilledDimensionUnits | undefined} - Pallet FilledDimensionUnit (possibly undefined)
179
- */
180
- export declare const roundGrassQte: (currentQte: number, isShipping: boolean, palUnit: IFilledDimensionUnits | undefined) => number;
181
- /**
182
- * Detects if customer has "Installation tout inclus".
183
- * @param customPriceList - Customer custom price list
184
- * @return All inclusive installation if exists, undefined otherwise
185
- */
186
- export declare const getInstallationAllInclusiveFromPriceList: (customPriceList: ICustomPriceItem[] | undefined) => ICustomPriceItem | undefined;
187
- /**
188
- * Checks if all-inclusive installation is active.
189
- * @param hasInstallation - Whether the cart/form contains an installation
190
- * @param isPro - Whether the customer is a pro
191
- * @param customPriceList - Customer custom price list
192
- * @returns true if all-inclusive installation is active
193
- */
194
- export declare const isInstallAllInclusiveActive: (hasInstallation: boolean, isPro: boolean, customPriceList: ICustomPriceItem[] | undefined) => boolean;
195
- /**
196
- * Force )$ to kentucky base grass and sod delivery fee if install all-inclusive.
197
- * @param item - The cart item to potentially override
198
- * @returns The item with zeroed price if applicable, or the original item
199
- */
200
- export declare const applyAllInclusiveOverrides: (item: ICartItem) => ICartItem;
201
- export declare const shouldHideItemInCheckout: (item: ICartItem, allItems: ICartItem[]) => boolean;
202
- export declare const matchesFuelSurchargeParent: (surchargeSku: string, item: ICartItem) => boolean;
203
- export declare const getInstallationArray: (qte: number, baseGrassUpsells: IProductRecommendation[] | undefined, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, locale: string | undefined, isPro: boolean, chosenSku: string, customPriceList?: ICustomPriceItem[], returnOtherFees?: {
204
- engrais?: boolean;
205
- roulage?: boolean;
206
- }) => Promise<ICartItem[]>;
207
- export declare const getInstallItemPrice: (parentSlug: string, servicesFees: ICartItem[]) => number | undefined;
208
- export declare const getConcreteQteText: (declination: IIndexedDeclination, locale?: string) => string;
209
- /**
210
- * @description returns all items in cart where attribute AVAILABILITY contains wanted type.
211
- * @param cartData
212
- * @param availabilityType
213
- */
214
- export declare const getConcreteItemsByAvailability: (cartData: ICart, availabilityType: 'en-stock' | 'epuisement-stocks' | 'delais-a-prevoir' | 'aucune-production-prevue', returnTrueIfUndefined?: boolean) => ICartItem[];
215
- /**
216
- * Function getVracType - constructs vrac helper object is cart contains vrac or vrac associated items.
217
- * @param stores
218
- * @param cartData
219
- * @param getInventoryItemCallback
220
- * @param inventoryItemArray
221
- * @returns IVracType object containing vrac_type enum value and vrac_store_ids where vrac items are available
222
- */
223
- export declare const getVracType: (stores: IStore[], cartData: ICart, getInventoryItemCallback: (sku: string) => Promise<IInventoryItem | undefined>, inventoyItemArray?: IInventoryItem[]) => Promise<IVracType | undefined>;
224
- /**
225
- * Get all possible fees for a cart with basic info, to show approx. fee total before all data is saved in cart
226
- *
227
- * @param useFees If local fee array should be used, to save database calls
228
- * @param newCart Current cart data
229
- * @param deliveryType If fees should be checked for a pick-up or shipping order
230
- * @param fetchProduct Callback function for product fetch
231
- * @param getIfAddressIsInsideZones Callback function for zone check
232
- * @param getDistanceFromAddress Callback function to check distance with provided address
233
- * @param locale User's locale (fr or en)
234
- * @param allStores Full store array for space
235
- * @param isPro If customer associated with cart is a pro customer
236
- * @param grassProduct Constructed grass product from cart (with extra data for checks)
237
- * @param concreteOrder Constructed concrete products from cart (with extra data for checks)
238
- * @param settings.addOnePalletToPickup Optionnal - If additionnal pal. should be added for order
239
- * @param settings.saveToShippingPayload Optional - If data collected should be saved to cart's shipping_payload
240
- * @param settings.useStoreAddress Optionnal - Provided store ID for which the address should be used for check
241
- * @param settings.useDeliveryAddress Optionnal - If current carts shipping address should be used for check
242
- * @param settings.useAvailableVracStores Optionnal - Provided array of store IDs available for vrac order
243
- * @param customPriceList Optionnal - If pro customer with G2 custom price list and custom prices should be checked
244
- */
245
- export declare const fetchFeesBeforeCart: (useFees: boolean, newCart: ICart, deliveryType: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string | undefined, allStores: IStore[], isPro: boolean, grassProduct?: IGrassProduct, concreteOrder?: IConcreteOrder, settings?: {
246
- addOnePalletToPickup?: boolean;
247
- saveToShippingPayload?: boolean;
248
- useStoreAddress?: string;
249
- useDeliveryAddress?: boolean;
250
- useAvailableVracStores?: string[];
251
- }, customPriceList?: ICustomPriceItem[]) => Promise<TFeesAppliedResponse>;
252
- /**
253
- * Check if pro custom promo info should be shown for customer for a specific product.
254
- * @param userData
255
- * @param isPro
256
- * @param product
257
- * @param customMinPrice
258
- */
259
- export declare const shouldShowProCustomPromo: (userData: ICustomer | null, isPro: boolean, product: any, customMinPrice?: ICustomPriceItem) => boolean;
260
- export declare const applyProCustomPromo: (decli: IIndexedDeclination, userData: ICustomer) => {
261
- discount_rules?: undefined;
262
- promo_price?: undefined;
263
- } | {
264
- discount_rules: IDiscountRule[];
265
- promo_price: {
266
- currency: string;
267
- amount: number;
268
- };
269
- };
270
- export declare const getFormattedProdGR: (decli: IIndexedDeclination, productSlug: string, isPro?: boolean) => IIndexedDeclination;
271
- /**
272
- * Checks if a 0.00$ reg_price item should be considered "hidden" or not.
273
- * @param item - The indexedDecli or cartItem to check
274
- * @param productSlug - The parent product's slug (in case it is not found in item)
275
- * @param isUpsellOfInstallProd - Optionnal. If item is upsell of install product (additionnal fee for installation)
276
- */
277
- export declare const shouldHideItemIfRegPriceIs0: (item: IIndexedDeclination | ICartItem, productSlug: string, isUpsellOfInstallProd?: boolean) => boolean;
1
+ import { IFilledDimensionUnits } from '../../../Interfaces/Declination';
2
+ import IIndexedProduct from '../../../Interfaces/Indexed/Product';
3
+ import ITranslation from '../../../Interfaces/Translation';
4
+ import IAttribute, { IAttributeValue } from '../../../Interfaces/Attribute';
5
+ import ICart, { ICartItem, ICartItemWithSubItem, IIndexedDeclination } from '../../../Interfaces/Cart';
6
+ import IAddress from '../../../Interfaces/Address';
7
+ import IStore from '../../../Interfaces/Store';
8
+ import { ICustomPriceItem } from '../../../Interfaces/G2';
9
+ import { IProductRecommendation } from '../../../Interfaces/Product';
10
+ import IInventoryItem from '../../../Interfaces/Product/IInventoryItem';
11
+ import ICustomer from '../../../Interfaces/Customer';
12
+ import IDiscountRule from '../../../Interfaces/Rules/IDiscountRule';
13
+ import ILang from '../../../utils/string';
14
+ import { IConcreteOrder, IGrassProduct, IVracType } from '../interfaces/products';
15
+ import { TExpeditionMethod, TFeesAppliedResponse } from '../interfaces/cart';
16
+ /**
17
+ * @description Returns sell unit label in correct language for a specific product's other_units
18
+ * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
19
+ * @param {string | undefined} locale The language in which we want to return the label
20
+ * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
21
+ * @param {boolean} options.returnPlural If plural version should be returned
22
+ * @param {boolean} options.returnShortByDefault If short version should be prioritized
23
+ */
24
+ export declare const getProductSellUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
25
+ returnPlural?: boolean;
26
+ returnShortByDefault?: boolean;
27
+ }) => string;
28
+ /**
29
+ * @description Returns unit label in correct language for a specific product's other_units
30
+ * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
31
+ * @param {string} type The unit type to check
32
+ * @param {string | undefined} locale The language in which we want to return the label
33
+ * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
34
+ * @param {boolean} options.returnPlural If plural version should be returned
35
+ * @param {boolean} options.returnShortByDefault If short version should be prioritized
36
+ */
37
+ export declare const getProductUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit', locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
38
+ returnPlural?: boolean;
39
+ returnShortByDefault?: boolean;
40
+ }) => string;
41
+ /**
42
+ * Returns the unit label for a specific slug
43
+ * @param {string} unitSlug The slug of the unit for which we want to get the label
44
+ * @param {string | undefined} locale The language in which we want to get the label
45
+ * @param {boolean} getPluralVersion Optionnal - If the plural version should be returned instead.
46
+ * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
47
+ * @param {boolean} returnShortByDefault Optionnal - If the short version should be prioritized
48
+ */
49
+ export declare const getUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, getPluralVersion?: boolean, returnUnitForSlugs?: string[], returnShortByDefault?: boolean) => string;
50
+ /**
51
+ * Returns the plural unit label for a specific slug
52
+ * @deprecated Should use getUnitLabelWithSlug instead (with props getPluralVersion=true)
53
+ * @param {string} unitSlug The slug of the unit for which we want to get the label
54
+ * @param {string | undefined} locale The language in which we want to get the label
55
+ * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
56
+ */
57
+ export declare const getPluralUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, returnUnitForSlugs?: string[], useShortIfDifferent?: boolean) => string;
58
+ export declare const getCorrectPluralSellUnit: (sellUnit: {
59
+ unit?: ILang;
60
+ value: number;
61
+ }, locale?: string) => string;
62
+ export declare const productUnitSupportsDecimals: (unitSlug: string, isService?: boolean) => boolean;
63
+ export declare const getProductAttributes: (product: IIndexedProduct) => {
64
+ colors: string[];
65
+ dimensions: string[];
66
+ formats: string[];
67
+ };
68
+ export declare const getDescriptionLength: (description: ITranslation[], locale?: string) => number;
69
+ export declare const getDescriptionString: (showFullDesc: boolean, maxLength: number, description: ITranslation[], locale?: string) => string;
70
+ /**
71
+ * Returns rounded product sell_unit quantities depending on current value, value of secondary input if existant and sale unit per command step ratio found in product.
72
+ * @param value {number} - Current quantity as entered by user in first input
73
+ * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
74
+ * @param value2 {number | undefined} - Current quantity as entered by user in second input (possibly undefined)
75
+ * @param targetIsSecondaryInput {boolean} - If action was triggered from secondary input (defaults to false)
76
+ */
77
+ export declare const getRoundedSellUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, value2: number | undefined, targetIsSecondaryInput?: boolean) => {
78
+ qte1: number;
79
+ qte2?: number | undefined;
80
+ };
81
+ /**
82
+ * Returns rounded product quantities depending on current value per command step ratio found in product.
83
+ * @param value {number} - Current quantity as entered by user in first input
84
+ * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
85
+ * @param type {'sale_unit' | 'inventory_unit'} - Quantity type for computing
86
+ */
87
+ export declare const getRoundedUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit') => number;
88
+ /**
89
+ *
90
+ * @param {string} stringToSplit
91
+ * @param {string} dummyStringToReplace.currentValue, optionnal, default : '%%-%%'. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
92
+ * @param {string} dummyStringToReplace.newValue, optionnal, default : ' - '. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
93
+ * @returns {string[]}
94
+ */
95
+ export declare const splitOnDashes: (stringToSplit: string, dummyStringToReplace?: {
96
+ currentValue: string;
97
+ newValue: string;
98
+ }) => string[];
99
+ /**
100
+ * Get product name as array. Array created mostly by splitting name on dash symbol (and variations).
101
+ * @param {IIndexedVariationAlgolia | IIndexedProduct} product
102
+ * @param {string | undefined} locale
103
+ * @returns {string[]} - Position 0 is the "commum section" of the name, and position 1 should contain all specifics (ex. color, size, etc...)
104
+ */
105
+ export declare const getProdName: (product: any, locale: string | undefined, platform?: 'web' | 'pos', attributes?: IAttribute[]) => string[];
106
+ /**
107
+ * Function getParentProductCategoryGroup
108
+ * @param prod - Product to check
109
+ */
110
+ export declare const getParentProductCategoryGroup: (prod: IIndexedProduct) => 'gazon' | 'beton' | 'vrac' | 'other';
111
+ /**
112
+ * Function getProductFormOptions - Returns all AttributeValues for product to construct options in add to cart form
113
+ * @param product - Product to check
114
+ * @param attributes - Array of IAttributes to fetch info from
115
+ */
116
+ export declare const getProductFormOptions: (product: IIndexedProduct, attributes: IAttribute[]) => {
117
+ allColors: IAttributeValue[];
118
+ allDimensions: IAttributeValue[];
119
+ allFormats: IAttributeValue[];
120
+ };
121
+ /**
122
+ * @description Checks if product is of type by checking TYPE attribute value. Works with indexed product or cart item.
123
+ * @param product
124
+ * @param type
125
+ * @param excludeUndefined If excludeUndefined is true, products without the "type" attribute will return true
126
+ * @returns boolean
127
+ */
128
+ export declare const checkIfProductIsOfType: (product: Partial<IIndexedProduct | ICartItem>, type: string, excludeUndefined?: boolean) => boolean;
129
+ /**
130
+ * Check if provided sku/slug corresponds to a non-speciality grass item
131
+ * @param sku Grass item's sku
132
+ * @param slug Grass item's parent product slug
133
+ * @param onlyBaseGrass Optionnal. If provided data should only be compared to base grass (aka Kentucky)
134
+ */
135
+ export declare const checkIfIsNonSpecialityGrass: (sku: string, slug: string, onlyBaseGrass?: boolean) => boolean;
136
+ export declare const checkIfProductIsInstallation: (item: IIndexedDeclination) => boolean;
137
+ /**
138
+ * Returns array of installation items found in provided array
139
+ * @param items - Array of cart items or IIndexedDeclinations to check
140
+ */
141
+ export declare const getAllInstallFromItems: (items: (ICartItem | IIndexedDeclination)[]) => (ICartItem | IIndexedDeclination)[];
142
+ /**
143
+ * Function fuseGrassProducts
144
+ * @description - Returns items with only one apparent grass product (used for detail customers).
145
+ * ** FOR DISPLAY PURPOSES ONLY - Always save grass products separatly in ICart **
146
+ * @param recursiveItems - ICartItems with subitems (object created for display purposes)
147
+ */
148
+ export declare const fuseGrassProducts: (recursiveItems: ICartItemWithSubItem[], isPro?: boolean) => ICartItemWithSubItem[];
149
+ export declare const isMinQtyFee: (slug: string) => boolean;
150
+ export declare const getAllMinGrassQuantities: (grassProduct: IGrassProduct, isPro: boolean) => {
151
+ pickup: number;
152
+ shipping: number;
153
+ install: number;
154
+ };
155
+ export declare const getMinQtyFeeText: (parent_slug: string | undefined, grassProduct: IGrassProduct, isPro: boolean, locale?: string, expeditionMethod?: string, shortVersion?: boolean) => string;
156
+ export declare const getMinQtyFeeAmountText: (parent_slug: string | undefined, locale: string | undefined, servicesFees: ICartItem[], showMinFeeAmount?: boolean) => string;
157
+ export declare const getGrassQteText: (chosenDeclination: IIndexedDeclination | undefined, locale?: string) => string;
158
+ export declare const getGrassServicesFees: (grassProduct: IGrassProduct, isPro: boolean, useFees: boolean, expeditionMethod: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string, allStores: IStore[], chosenGrass: ICartItem, baseGrass?: ICartItem, customPriceList?: ICustomPriceItem[]) => Promise<ICartItem[]>;
159
+ export declare const getGrassSubQuestionsByType: (type: 'install' | 'pro') => import("../interfaces/products").IGrassSubQuestion[];
160
+ /**
161
+ * @description For grass products. Over 1480pi2, if installation, quantities are rounded to rolls (10pi2) if pickup, and to half pal. if shipping
162
+ * @param grassProduct
163
+ * @param cartData
164
+ * @returns quantity rounded to rolls with items to change or undefined
165
+ */
166
+ export declare const handleGrassProductQtyRoundForShipping: (cartData: ICart, grassProduct: IGrassProduct | undefined) => {
167
+ rounded: number;
168
+ itemsToChange: {
169
+ sku: string;
170
+ qte: number;
171
+ }[];
172
+ } | undefined;
173
+ /**
174
+ * Function roundGrassQte
175
+ * @description Returns rounded grass quantity depending on current qty, if customer selected installation and pallet unit (if defined)
176
+ * @param currentQte {number} - Current quantity as entered by user in input
177
+ * @param isShipping {boolean} - Whether customer has selected installation option
178
+ * @param palUnit {IFilledDimensionUnits | undefined} - Pallet FilledDimensionUnit (possibly undefined)
179
+ */
180
+ export declare const roundGrassQte: (currentQte: number, isShipping: boolean, palUnit: IFilledDimensionUnits | undefined) => number;
181
+ /**
182
+ * Detects if customer has "Installation tout inclus".
183
+ * @param customPriceList - Customer custom price list
184
+ * @return All inclusive installation if exists, undefined otherwise
185
+ */
186
+ export declare const getInstallationAllInclusiveFromPriceList: (customPriceList: ICustomPriceItem[] | undefined) => ICustomPriceItem | undefined;
187
+ /**
188
+ * Checks if all-inclusive installation is active.
189
+ * @param hasInstallation - Whether the cart/form contains an installation
190
+ * @param isPro - Whether the customer is a pro
191
+ * @param customPriceList - Customer custom price list
192
+ * @returns true if all-inclusive installation is active
193
+ */
194
+ export declare const isInstallAllInclusiveActive: (hasInstallation: boolean, isPro: boolean, customPriceList: ICustomPriceItem[] | undefined) => boolean;
195
+ /**
196
+ * Force )$ to kentucky base grass and sod delivery fee if install all-inclusive.
197
+ * @param item - The cart item to potentially override
198
+ * @returns The item with zeroed price if applicable, or the original item
199
+ */
200
+ export declare const applyAllInclusiveOverrides: (item: ICartItem) => ICartItem;
201
+ export declare const shouldHideItemInCheckout: (item: ICartItem, allItems: ICartItem[]) => boolean;
202
+ export declare const matchesFuelSurchargeParent: (surchargeSku: string, item: ICartItem) => boolean;
203
+ export declare const getInstallationArray: (qte: number, baseGrassUpsells: IProductRecommendation[] | undefined, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, locale: string | undefined, isPro: boolean, chosenSku: string, customPriceList?: ICustomPriceItem[], returnOtherFees?: {
204
+ engrais?: boolean;
205
+ roulage?: boolean;
206
+ }) => Promise<ICartItem[]>;
207
+ export declare const getInstallItemPrice: (parentSlug: string, servicesFees: ICartItem[]) => number | undefined;
208
+ export declare const getConcreteQteText: (declination: IIndexedDeclination, locale?: string) => string;
209
+ /**
210
+ * @description returns all items in cart where attribute AVAILABILITY contains wanted type.
211
+ * @param cartData
212
+ * @param availabilityType
213
+ */
214
+ export declare const getConcreteItemsByAvailability: (cartData: ICart, availabilityType: 'en-stock' | 'epuisement-stocks' | 'delais-a-prevoir' | 'aucune-production-prevue', returnTrueIfUndefined?: boolean) => ICartItem[];
215
+ /**
216
+ * Function getVracType - constructs vrac helper object is cart contains vrac or vrac associated items.
217
+ * @param stores
218
+ * @param cartData
219
+ * @param getInventoryItemCallback
220
+ * @param inventoryItemArray
221
+ * @returns IVracType object containing vrac_type enum value and vrac_store_ids where vrac items are available
222
+ */
223
+ export declare const getVracType: (stores: IStore[], cartData: ICart, getInventoryItemCallback: (sku: string) => Promise<IInventoryItem | undefined>, inventoyItemArray?: IInventoryItem[]) => Promise<IVracType | undefined>;
224
+ /**
225
+ * Get all possible fees for a cart with basic info, to show approx. fee total before all data is saved in cart
226
+ *
227
+ * @param useFees If local fee array should be used, to save database calls
228
+ * @param newCart Current cart data
229
+ * @param deliveryType If fees should be checked for a pick-up or shipping order
230
+ * @param fetchProduct Callback function for product fetch
231
+ * @param getIfAddressIsInsideZones Callback function for zone check
232
+ * @param getDistanceFromAddress Callback function to check distance with provided address
233
+ * @param locale User's locale (fr or en)
234
+ * @param allStores Full store array for space
235
+ * @param isPro If customer associated with cart is a pro customer
236
+ * @param grassProduct Constructed grass product from cart (with extra data for checks)
237
+ * @param concreteOrder Constructed concrete products from cart (with extra data for checks)
238
+ * @param settings.addOnePalletToPickup Optionnal - If additionnal pal. should be added for order
239
+ * @param settings.saveToShippingPayload Optional - If data collected should be saved to cart's shipping_payload
240
+ * @param settings.useStoreAddress Optionnal - Provided store ID for which the address should be used for check
241
+ * @param settings.useDeliveryAddress Optionnal - If current carts shipping address should be used for check
242
+ * @param settings.useAvailableVracStores Optionnal - Provided array of store IDs available for vrac order
243
+ * @param customPriceList Optionnal - If pro customer with G2 custom price list and custom prices should be checked
244
+ */
245
+ export declare const fetchFeesBeforeCart: (useFees: boolean, newCart: ICart, deliveryType: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string | undefined, allStores: IStore[], isPro: boolean, grassProduct?: IGrassProduct, concreteOrder?: IConcreteOrder, settings?: {
246
+ addOnePalletToPickup?: boolean;
247
+ saveToShippingPayload?: boolean;
248
+ useStoreAddress?: string;
249
+ useDeliveryAddress?: boolean;
250
+ useAvailableVracStores?: string[];
251
+ }, customPriceList?: ICustomPriceItem[]) => Promise<TFeesAppliedResponse>;
252
+ /**
253
+ * Check if pro custom promo info should be shown for customer for a specific product.
254
+ * @param userData
255
+ * @param isPro
256
+ * @param product
257
+ * @param customMinPrice
258
+ */
259
+ export declare const shouldShowProCustomPromo: (userData: ICustomer | null, isPro: boolean, product: any, customMinPrice?: ICustomPriceItem) => boolean;
260
+ export declare const applyProCustomPromo: (decli: IIndexedDeclination, userData: ICustomer) => {
261
+ discount_rules?: undefined;
262
+ promo_price?: undefined;
263
+ } | {
264
+ discount_rules: IDiscountRule[];
265
+ promo_price: {
266
+ currency: string;
267
+ amount: number;
268
+ };
269
+ };
270
+ export declare const getFormattedProdGR: (decli: IIndexedDeclination, productSlug: string, isPro?: boolean) => IIndexedDeclination;
271
+ /**
272
+ * Checks if a 0.00$ reg_price item should be considered "hidden" or not.
273
+ * @param item - The indexedDecli or cartItem to check
274
+ * @param productSlug - The parent product's slug (in case it is not found in item)
275
+ * @param isUpsellOfInstallProd - Optionnal. If item is upsell of install product (additionnal fee for installation)
276
+ */
277
+ export declare const shouldHideItemIfRegPriceIs0: (item: IIndexedDeclination | ICartItem, productSlug: string, isUpsellOfInstallProd?: boolean) => boolean;