addio-admin-sdk 1.7.144 → 1.7.146

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 (574) hide show
  1. package/.babelrc +17 -17
  2. package/.env +15 -0
  3. package/.env.dev +14 -14
  4. package/.github/workflows/run_unit_test.yaml +48 -48
  5. package/addio-sdk-doc.md +1473 -1473
  6. package/changelog.md +564 -564
  7. package/dist/Interfaces/Address/index.d.ts +21 -21
  8. package/dist/Interfaces/Address/index.js +16 -16
  9. package/dist/Interfaces/Algolia/index.d.ts +177 -177
  10. package/dist/Interfaces/Algolia/index.js +2 -2
  11. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  12. package/dist/Interfaces/Attachement/index.js +2 -2
  13. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  14. package/dist/Interfaces/Attribute/index.js +10 -10
  15. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  16. package/dist/Interfaces/BGJob/index.js +25 -25
  17. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  18. package/dist/Interfaces/BaseClass/index.js +2 -2
  19. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  20. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  21. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  22. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  23. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  24. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  25. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  26. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  27. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  28. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  29. package/dist/Interfaces/Booking/index.d.ts +74 -74
  30. package/dist/Interfaces/Booking/index.js +17 -17
  31. package/dist/Interfaces/Brand/index.d.ts +15 -15
  32. package/dist/Interfaces/Brand/index.js +2 -2
  33. package/dist/Interfaces/CMS/index.d.ts +28 -28
  34. package/dist/Interfaces/CMS/index.js +5 -5
  35. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  36. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  37. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  38. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  39. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  40. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  41. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  42. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  43. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  44. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  45. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  46. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  47. package/dist/Interfaces/Cart/index.d.ts +444 -444
  48. package/dist/Interfaces/Cart/index.js +197 -197
  49. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  50. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  51. package/dist/Interfaces/CashDrawers/index.d.ts +37 -37
  52. package/dist/Interfaces/CashDrawers/index.js +19 -19
  53. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  54. package/dist/Interfaces/Catalogue/index.js +37 -37
  55. package/dist/Interfaces/Category/index.d.ts +33 -33
  56. package/dist/Interfaces/Category/index.js +2 -2
  57. package/dist/Interfaces/Chart/index.d.ts +11 -11
  58. package/dist/Interfaces/Chart/index.js +2 -2
  59. package/dist/Interfaces/Class/index.d.ts +8 -8
  60. package/dist/Interfaces/Class/index.js +2 -2
  61. package/dist/Interfaces/Consent/index.d.ts +6 -6
  62. package/dist/Interfaces/Consent/index.js +2 -2
  63. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  64. package/dist/Interfaces/Context/IContextProps.js +2 -2
  65. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  66. package/dist/Interfaces/Context/IContextState.js +2 -2
  67. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  68. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  69. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  70. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  71. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  72. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  73. package/dist/Interfaces/Customer/index.d.ts +104 -104
  74. package/dist/Interfaces/Customer/index.js +148 -148
  75. package/dist/Interfaces/Declination/index.d.ts +117 -117
  76. package/dist/Interfaces/Declination/index.js +66 -66
  77. package/dist/Interfaces/Document/index.d.ts +8 -8
  78. package/dist/Interfaces/Document/index.js +2 -2
  79. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  80. package/dist/Interfaces/Elastic/index.js +2 -2
  81. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  82. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  83. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  84. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  85. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  86. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  87. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  88. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  89. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  90. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  91. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  92. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  93. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  94. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  95. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  96. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  97. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  98. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  99. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  100. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  101. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  102. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  103. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  104. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  105. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  106. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  107. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  108. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  109. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  110. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  111. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  112. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  113. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  114. package/dist/Interfaces/Email/IEmail.js +60 -60
  115. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  116. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  117. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  118. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  119. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  120. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  121. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  122. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  123. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  124. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  125. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  126. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  127. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  128. package/dist/Interfaces/ExportSchema/index.js +2 -2
  129. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  130. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  131. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  132. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  133. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  134. package/dist/Interfaces/ExternalService/index.js +2 -2
  135. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  136. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  137. package/dist/Interfaces/G2/index.d.ts +556 -556
  138. package/dist/Interfaces/G2/index.js +38 -38
  139. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  140. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  141. package/dist/Interfaces/Indexed/Product/index.d.ts +105 -105
  142. package/dist/Interfaces/Indexed/Product/index.js +253 -253
  143. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  144. package/dist/Interfaces/Inventory/index.js +8 -8
  145. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  146. package/dist/Interfaces/Invoice/index.js +2 -2
  147. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  148. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  149. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  150. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  151. package/dist/Interfaces/Menu/index.d.ts +40 -40
  152. package/dist/Interfaces/Menu/index.js +16 -16
  153. package/dist/Interfaces/Note/index.d.ts +10 -10
  154. package/dist/Interfaces/Note/index.js +7 -7
  155. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  156. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  157. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  158. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  159. package/dist/Interfaces/Order/index.d.ts +4 -4
  160. package/dist/Interfaces/Order/index.js +2 -2
  161. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  162. package/dist/Interfaces/Org/IRelUser.js +2 -2
  163. package/dist/Interfaces/Org/index.d.ts +29 -29
  164. package/dist/Interfaces/Org/index.js +12 -12
  165. package/dist/Interfaces/Payment/index.d.ts +26 -26
  166. package/dist/Interfaces/Payment/index.js +14 -14
  167. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  168. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  169. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  170. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  171. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  172. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  173. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  174. package/dist/Interfaces/Product/IPricing.js +180 -180
  175. package/dist/Interfaces/Product/index.d.ts +138 -138
  176. package/dist/Interfaces/Product/index.js +64 -64
  177. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  178. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  179. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  180. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  181. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  182. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  183. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  184. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  185. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  186. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  187. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  188. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  189. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  190. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  191. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  192. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  193. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  194. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  195. package/dist/Interfaces/Quote/index.d.ts +5 -5
  196. package/dist/Interfaces/Quote/index.js +2 -2
  197. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  198. package/dist/Interfaces/Refunds/index.js +2 -2
  199. package/dist/Interfaces/Rules/IDiscountRule.d.ts +155 -155
  200. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  201. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  202. package/dist/Interfaces/Schedule/index.js +2 -2
  203. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  204. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  205. package/dist/Interfaces/Services/IService.d.ts +16 -16
  206. package/dist/Interfaces/Services/IService.js +2 -2
  207. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  208. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  209. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  210. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  211. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  212. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  213. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  214. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  215. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  216. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  217. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  218. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  219. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  220. package/dist/Interfaces/Slider/GR.js +271 -271
  221. package/dist/Interfaces/Slider/index.d.ts +30 -30
  222. package/dist/Interfaces/Slider/index.js +2 -2
  223. package/dist/Interfaces/Space/IExternalService.d.ts +53 -53
  224. package/dist/Interfaces/Space/IExternalService.js +44 -44
  225. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  226. package/dist/Interfaces/Space/IMember.js +9 -9
  227. package/dist/Interfaces/Space/index.d.ts +407 -405
  228. package/dist/Interfaces/Space/index.js +174 -174
  229. package/dist/Interfaces/Space/index.js.map +1 -1
  230. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  231. package/dist/Interfaces/Specials/gr.js +2 -2
  232. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  233. package/dist/Interfaces/StockNotification/index.js +2 -2
  234. package/dist/Interfaces/Store/index.d.ts +63 -63
  235. package/dist/Interfaces/Store/index.js +27 -27
  236. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  237. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  238. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  239. package/dist/Interfaces/Supplier/index.js +24 -24
  240. package/dist/Interfaces/TCG/index.d.ts +161 -161
  241. package/dist/Interfaces/TCG/index.js +54 -54
  242. package/dist/Interfaces/Tag/index.d.ts +18 -18
  243. package/dist/Interfaces/Tag/index.js +2 -2
  244. package/dist/Interfaces/Tax/index.d.ts +13 -13
  245. package/dist/Interfaces/Tax/index.js +2 -2
  246. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  247. package/dist/Interfaces/TransferRequest/index.js +46 -46
  248. package/dist/Interfaces/Translation/index.d.ts +8 -8
  249. package/dist/Interfaces/Translation/index.js +5 -5
  250. package/dist/Interfaces/Update/index.d.ts +10 -10
  251. package/dist/Interfaces/Update/index.js +2 -2
  252. package/dist/Interfaces/User/IUser.d.ts +65 -65
  253. package/dist/Interfaces/User/IUser.js +8 -8
  254. package/dist/Interfaces/Version/index.d.ts +11 -11
  255. package/dist/Interfaces/Version/index.js +2 -2
  256. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  257. package/dist/Interfaces/Wishlist/index.js +2 -2
  258. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  259. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  260. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  261. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  262. package/dist/constants/enums.d.ts +6 -6
  263. package/dist/constants/enums.js +10 -10
  264. package/dist/constants/services.d.ts +2 -2
  265. package/dist/constants/services.js +117 -117
  266. package/dist/constants/version.d.ts +2 -2
  267. package/dist/constants/version.js +5 -5
  268. package/dist/index.d.ts +50 -50
  269. package/dist/index.js +266 -266
  270. package/dist/lib/Attribute/index.d.ts +14 -14
  271. package/dist/lib/Attribute/index.js +186 -186
  272. package/dist/lib/BGJob/index.d.ts +9 -9
  273. package/dist/lib/BGJob/index.js +216 -216
  274. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  275. package/dist/lib/BackgroundWorker/index.js +59 -59
  276. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  277. package/dist/lib/Blog/BlogArticle.js +10 -10
  278. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  279. package/dist/lib/Blog/BlogAuthor.js +10 -10
  280. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  281. package/dist/lib/Blog/BlogCategory.js +10 -10
  282. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  283. package/dist/lib/Blog/BlogKeyword.js +10 -10
  284. package/dist/lib/Booking/index.d.ts +85 -85
  285. package/dist/lib/Booking/index.js +596 -596
  286. package/dist/lib/Brand/index.d.ts +26 -26
  287. package/dist/lib/Brand/index.js +131 -131
  288. package/dist/lib/Cart/index.d.ts +335 -335
  289. package/dist/lib/Cart/index.js +3981 -3977
  290. package/dist/lib/Cart/index.js.map +1 -1
  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/Queue/index.d.ts +40 -40
  388. package/dist/lib/Queue/index.js +254 -254
  389. package/dist/lib/Schedule/index.d.ts +5 -5
  390. package/dist/lib/Schedule/index.js +12 -12
  391. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  392. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  393. package/dist/lib/Service/index.d.ts +13 -13
  394. package/dist/lib/Service/index.js +21 -21
  395. package/dist/lib/Shipment/index.d.ts +28 -28
  396. package/dist/lib/Shipment/index.js +370 -370
  397. package/dist/lib/Slider/index.d.ts +22 -22
  398. package/dist/lib/Slider/index.js +119 -119
  399. package/dist/lib/Space/index.d.ts +1150 -1150
  400. package/dist/lib/Space/index.js +5792 -5792
  401. package/dist/lib/StockNotification/index.d.ts +4 -4
  402. package/dist/lib/StockNotification/index.js +6 -6
  403. package/dist/lib/Store/index.d.ts +5 -5
  404. package/dist/lib/Store/index.js +12 -12
  405. package/dist/lib/Supplier/Command.d.ts +5 -5
  406. package/dist/lib/Supplier/Command.js +10 -10
  407. package/dist/lib/Supplier/index.d.ts +25 -25
  408. package/dist/lib/Supplier/index.js +27 -27
  409. package/dist/lib/Tags/index.d.ts +6 -6
  410. package/dist/lib/Tags/index.js +26 -26
  411. package/dist/lib/Tax/index.d.ts +8 -8
  412. package/dist/lib/Tax/index.js +54 -54
  413. package/dist/lib/TransferRequest/index.d.ts +290 -290
  414. package/dist/lib/TransferRequest/index.js +1026 -1026
  415. package/dist/lib/Update/index.d.ts +10 -10
  416. package/dist/lib/Update/index.js +22 -22
  417. package/dist/lib/User/index.d.ts +89 -89
  418. package/dist/lib/User/index.js +328 -328
  419. package/dist/lib/Wishlist/index.d.ts +5 -5
  420. package/dist/lib/Wishlist/index.js +10 -10
  421. package/dist/lib/base.d.ts +14 -14
  422. package/dist/lib/base.js +62 -62
  423. package/dist/lib/baseService.d.ts +17 -17
  424. package/dist/lib/baseService.js +69 -69
  425. package/dist/rules/GR/constants/data.d.ts +26 -26
  426. package/dist/rules/GR/constants/data.js +81 -81
  427. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  428. package/dist/rules/GR/constants/expedition.js +9 -9
  429. package/dist/rules/GR/constants/products.d.ts +22 -22
  430. package/dist/rules/GR/constants/products.js +263 -263
  431. package/dist/rules/GR/interfaces/cart.d.ts +84 -84
  432. package/dist/rules/GR/interfaces/cart.js +41 -41
  433. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  434. package/dist/rules/GR/interfaces/data.js +114 -114
  435. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  436. package/dist/rules/GR/interfaces/products.js +10 -10
  437. package/dist/rules/GR/utils/cart.d.ts +95 -95
  438. package/dist/rules/GR/utils/cart.js +839 -836
  439. package/dist/rules/GR/utils/cart.js.map +1 -1
  440. package/dist/rules/GR/utils/data.d.ts +3 -3
  441. package/dist/rules/GR/utils/data.js +28 -28
  442. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  443. package/dist/rules/GR/utils/expedition.js +2016 -2016
  444. package/dist/rules/GR/utils/g2.d.ts +209 -209
  445. package/dist/rules/GR/utils/g2.js +999 -999
  446. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  447. package/dist/rules/GR/utils/invoices.js +215 -215
  448. package/dist/rules/GR/utils/products.d.ts +277 -277
  449. package/dist/rules/GR/utils/products.js +1350 -1350
  450. package/dist/rules/GR/utils/upsells.d.ts +111 -111
  451. package/dist/rules/GR/utils/upsells.js +215 -215
  452. package/dist/services/database/BaseProvider.d.ts +29 -29
  453. package/dist/services/database/BaseProvider.js +28 -28
  454. package/dist/services/database/BatchUtils.d.ts +14 -14
  455. package/dist/services/database/BatchUtils.js +43 -43
  456. package/dist/services/database/Config.d.ts +2 -2
  457. package/dist/services/database/Config.js +5 -5
  458. package/dist/services/database/DatabaseService.d.ts +125 -125
  459. package/dist/services/database/DatabaseService.js +237 -237
  460. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  461. package/dist/services/database/FirebaseProvider.js +235 -235
  462. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  463. package/dist/services/database/NotFirebaseProvider.js +262 -262
  464. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  465. package/dist/services/g2/G2OrderSlip.js +228 -228
  466. package/dist/services/g2/utils.d.ts +19 -19
  467. package/dist/services/g2/utils.js +953 -953
  468. package/dist/services/logs/index.d.ts +23 -23
  469. package/dist/services/logs/index.js +66 -66
  470. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +52 -52
  471. package/dist/services/marketplace/BaseMarketServiceClass.js +111 -111
  472. package/dist/services/marketplace/CardtraderServiceClass.d.ts +17 -17
  473. package/dist/services/marketplace/CardtraderServiceClass.js +139 -139
  474. package/dist/services/marketplace/utils.d.ts +14 -14
  475. package/dist/services/marketplace/utils.js +29 -29
  476. package/dist/services/products/BaseClass.d.ts +50 -50
  477. package/dist/services/products/BaseClass.js +66 -66
  478. package/dist/services/products/TCGService.d.ts +32 -32
  479. package/dist/services/products/TCGService.js +555 -555
  480. package/dist/services/products/utils.d.ts +31 -31
  481. package/dist/services/products/utils.js +144 -144
  482. package/dist/utils/algolia.d.ts +46 -46
  483. package/dist/utils/algolia.js +21 -21
  484. package/dist/utils/anonymisation.d.ts +54 -54
  485. package/dist/utils/anonymisation.js +280 -280
  486. package/dist/utils/array.d.ts +5 -5
  487. package/dist/utils/array.js +14 -14
  488. package/dist/utils/aws.d.ts +36 -36
  489. package/dist/utils/aws.js +154 -154
  490. package/dist/utils/booking.d.ts +30 -30
  491. package/dist/utils/booking.js +127 -127
  492. package/dist/utils/cart.d.ts +259 -259
  493. package/dist/utils/cart.js +1145 -1145
  494. package/dist/utils/categories.d.ts +2 -2
  495. package/dist/utils/categories.js +54 -54
  496. package/dist/utils/cmv.d.ts +10 -10
  497. package/dist/utils/cmv.js +107 -107
  498. package/dist/utils/console.d.ts +6 -6
  499. package/dist/utils/console.js +59 -59
  500. package/dist/utils/context.d.ts +20 -20
  501. package/dist/utils/context.js +61 -61
  502. package/dist/utils/currency.d.ts +6 -6
  503. package/dist/utils/currency.js +91 -91
  504. package/dist/utils/data.d.ts +31 -31
  505. package/dist/utils/data.js +296 -296
  506. package/dist/utils/date.d.ts +1 -1
  507. package/dist/utils/date.js +16 -16
  508. package/dist/utils/dimensions.d.ts +3 -3
  509. package/dist/utils/dimensions.js +16 -16
  510. package/dist/utils/discount.d.ts +164 -164
  511. package/dist/utils/discount.js +1111 -1111
  512. package/dist/utils/errors.d.ts +113 -113
  513. package/dist/utils/errors.js +113 -113
  514. package/dist/utils/file-admin.d.ts +8 -8
  515. package/dist/utils/file-admin.js +39 -39
  516. package/dist/utils/file.d.ts +39 -39
  517. package/dist/utils/file.js +208 -208
  518. package/dist/utils/firebase-admin.d.ts +11 -11
  519. package/dist/utils/firebase-admin.js +73 -73
  520. package/dist/utils/firebase.d.ts +58 -58
  521. package/dist/utils/firebase.js +148 -148
  522. package/dist/utils/import.d.ts +1 -1
  523. package/dist/utils/import.js +21 -21
  524. package/dist/utils/inventories.d.ts +101 -101
  525. package/dist/utils/inventories.js +467 -467
  526. package/dist/utils/locale.d.ts +24 -24
  527. package/dist/utils/locale.js +89 -89
  528. package/dist/utils/mailchimp.d.ts +58 -58
  529. package/dist/utils/mailchimp.js +531 -531
  530. package/dist/utils/mathUtils.d.ts +17 -17
  531. package/dist/utils/mathUtils.js +324 -324
  532. package/dist/utils/mongodb.d.ts +1 -1
  533. package/dist/utils/mongodb.js +22 -22
  534. package/dist/utils/object.d.ts +32 -32
  535. package/dist/utils/object.js +133 -133
  536. package/dist/utils/payment.d.ts +10 -10
  537. package/dist/utils/payment.js +23 -23
  538. package/dist/utils/products.d.ts +39 -39
  539. package/dist/utils/products.js +195 -195
  540. package/dist/utils/promiseToPurchase.d.ts +88 -88
  541. package/dist/utils/promiseToPurchase.js +229 -229
  542. package/dist/utils/prosprsearch.d.ts +42 -42
  543. package/dist/utils/prosprsearch.js +216 -216
  544. package/dist/utils/refunds.d.ts +2 -2
  545. package/dist/utils/refunds.js +21 -21
  546. package/dist/utils/sdc.d.ts +10 -10
  547. package/dist/utils/sdc.js +1309 -1309
  548. package/dist/utils/searchIndexes.d.ts +58 -58
  549. package/dist/utils/searchIndexes.js +247 -247
  550. package/dist/utils/services.d.ts +42 -42
  551. package/dist/utils/services.js +409 -409
  552. package/dist/utils/shipment.d.ts +110 -110
  553. package/dist/utils/shipment.js +345 -345
  554. package/dist/utils/simpletexting.d.ts +2 -2
  555. package/dist/utils/simpletexting.js +45 -45
  556. package/dist/utils/sliders.d.ts +4 -4
  557. package/dist/utils/sliders.js +24 -24
  558. package/dist/utils/string.d.ts +16 -16
  559. package/dist/utils/string.js +192 -192
  560. package/dist/utils/tcgService.d.ts +74 -74
  561. package/dist/utils/tcgService.js +308 -308
  562. package/dist/utils/tools.d.ts +5 -5
  563. package/dist/utils/tools.js +13 -13
  564. package/dist/utils/transferRequests.d.ts +43 -43
  565. package/dist/utils/transferRequests.js +67 -67
  566. package/dist/utils/update.d.ts +7 -7
  567. package/dist/utils/update.js +137 -137
  568. package/dist/utils/weight.d.ts +3 -3
  569. package/dist/utils/weight.js +16 -16
  570. package/dist/utils/zones.d.ts +11 -11
  571. package/dist/utils/zones.js +218 -218
  572. package/package.json +107 -107
  573. package/publish.sh +143 -143
  574. package/readme.md +182 -182
@@ -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;