@gofynd/fdk-client-javascript 3.10.0 → 3.12.0

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 (36) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +16 -6
  4. package/sdk/application/Catalog/CatalogApplicationClient.js +71 -12
  5. package/sdk/common/Constant.d.ts +5 -0
  6. package/sdk/common/Constant.js +5 -0
  7. package/sdk/partner/Theme/ThemePartnerModel.d.ts +3 -2
  8. package/sdk/partner/Theme/ThemePartnerModel.js +5 -2
  9. package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +80 -80
  10. package/sdk/platform/Cart/CartPlatformApplicationValidator.js +48 -48
  11. package/sdk/platform/Cart/CartPlatformModel.d.ts +193 -35
  12. package/sdk/platform/Cart/CartPlatformModel.js +103 -46
  13. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +14 -48
  14. package/sdk/platform/Catalog/CatalogPlatformClient.js +85 -338
  15. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +210 -765
  16. package/sdk/platform/Catalog/CatalogPlatformModel.js +112 -394
  17. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +15 -71
  18. package/sdk/platform/Catalog/CatalogPlatformValidator.js +14 -60
  19. package/sdk/platform/Content/ContentPlatformModel.d.ts +3 -2
  20. package/sdk/platform/Content/ContentPlatformModel.js +5 -2
  21. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +36 -0
  22. package/sdk/platform/Order/OrderPlatformApplicationClient.js +252 -0
  23. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +34 -1
  24. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +42 -0
  25. package/sdk/platform/Order/OrderPlatformClient.d.ts +70 -8
  26. package/sdk/platform/Order/OrderPlatformClient.js +454 -8
  27. package/sdk/platform/Order/OrderPlatformModel.d.ts +1851 -431
  28. package/sdk/platform/Order/OrderPlatformModel.js +1171 -448
  29. package/sdk/platform/Order/OrderPlatformValidator.d.ts +150 -16
  30. package/sdk/platform/Order/OrderPlatformValidator.js +105 -9
  31. package/sdk/platform/Theme/ThemePlatformModel.d.ts +3 -2
  32. package/sdk/platform/Theme/ThemePlatformModel.js +5 -2
  33. package/sdk/platform/User/UserPlatformModel.d.ts +2 -2
  34. package/sdk/platform/User/UserPlatformModel.js +2 -2
  35. package/utility.d.ts +3 -0
  36. package/utility.js +7 -0
@@ -21,8 +21,8 @@ const CartPlatformModel = require("./CartPlatformModel");
21
21
 
22
22
  /**
23
23
  * @typedef ApplyCouponParam
24
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
25
- * source header, to be used to identify source of order creation.
24
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
25
+ * identify source of order creation.
26
26
  * @property {boolean} [i]
27
27
  * @property {boolean} [b]
28
28
  * @property {boolean} [p]
@@ -33,8 +33,8 @@ const CartPlatformModel = require("./CartPlatformModel");
33
33
 
34
34
  /**
35
35
  * @typedef ApplyLoyaltyPointsParam
36
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
37
- * source header, to be used to identify source of order creation.
36
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
37
+ * identify source of order creation.
38
38
  * @property {string} [id] - The unique identifier of the cart.
39
39
  * @property {boolean} [i] - Select `true` to retrieve all the items added in the cart.
40
40
  * @property {boolean} [b] - Select `true` to retrieve the price breakup of cart items.
@@ -44,15 +44,15 @@ const CartPlatformModel = require("./CartPlatformModel");
44
44
 
45
45
  /**
46
46
  * @typedef CheckCartServiceabilityParam
47
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
48
- * source header, to be used to identify source of order creation.
47
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
48
+ * identify source of order creation.
49
49
  * @property {CartPlatformModel.OpenApiCartServiceabilityCreation} body
50
50
  */
51
51
 
52
52
  /**
53
53
  * @typedef CheckoutCartParam
54
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
55
- * source header, to be used to identify source of order creation.
54
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
55
+ * identify source of order creation.
56
56
  * @property {CartPlatformModel.OpenApiPlatformCheckoutReq} body
57
57
  */
58
58
 
@@ -89,8 +89,8 @@ const CartPlatformModel = require("./CartPlatformModel");
89
89
 
90
90
  /**
91
91
  * @typedef FetchAndvalidateCartItemsParam
92
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
93
- * source header, to be used to identify source of order creation.
92
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
93
+ * identify source of order creation.
94
94
  * @property {CartPlatformModel.OpenapiCartDetailsCreation} body
95
95
  */
96
96
 
@@ -154,8 +154,8 @@ const CartPlatformModel = require("./CartPlatformModel");
154
154
 
155
155
  /**
156
156
  * @typedef GetCartParam
157
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
158
- * source header, to be used to identify source of order creation.
157
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
158
+ * identify source of order creation.
159
159
  * @property {string} [id] - The unique identifier of the cart
160
160
  * @property {string} [userId] - Option to fetch cart for the provided user_id.
161
161
  * @property {string} [orderType] - The order type of shipment HomeDelivery - If
@@ -308,15 +308,15 @@ const CartPlatformModel = require("./CartPlatformModel");
308
308
 
309
309
  /**
310
310
  * @typedef OverrideCartParam
311
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
312
- * source header, to be used to identify source of order creation.
311
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
312
+ * identify source of order creation.
313
313
  * @property {CartPlatformModel.OverrideCheckoutReq} body
314
314
  */
315
315
 
316
316
  /**
317
317
  * @typedef PlatformAddItemsParam
318
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
319
- * source header, to be used to identify source of order creation.
318
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
319
+ * identify source of order creation.
320
320
  * @property {boolean} [i] - This is a boolean value. Select `true` to retrieve
321
321
  * all the items added in the cart.
322
322
  * @property {boolean} [b] - This is a boolean value. Select `true` to retrieve
@@ -332,24 +332,24 @@ const CartPlatformModel = require("./CartPlatformModel");
332
332
 
333
333
  /**
334
334
  * @typedef PlatformCheckoutCartParam
335
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
336
- * source header, to be used to identify source of order creation.
335
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
336
+ * identify source of order creation.
337
337
  * @property {string} [id] - The unique identifier of the cart
338
338
  * @property {CartPlatformModel.PlatformCartCheckoutDetailCreation} body
339
339
  */
340
340
 
341
341
  /**
342
342
  * @typedef PlatformCheckoutCartV2Param
343
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
344
- * source header, to be used to identify source of order creation.
343
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
344
+ * identify source of order creation.
345
345
  * @property {string} [id] - The unique identifier of the cart
346
346
  * @property {CartPlatformModel.PlatformCartCheckoutDetailV2Creation} body
347
347
  */
348
348
 
349
349
  /**
350
350
  * @typedef PlatformUpdateCartParam
351
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
352
- * source header, to be used to identify source of order creation.
351
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
352
+ * identify source of order creation.
353
353
  * @property {string} [id] - The unique identifier of the cart
354
354
  * @property {boolean} [i] - This is a boolean value. Select `true` to retrieve
355
355
  * all the items added in the cart.
@@ -371,8 +371,8 @@ const CartPlatformModel = require("./CartPlatformModel");
371
371
 
372
372
  /**
373
373
  * @typedef RemoveCouponParam
374
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
375
- * source header, to be used to identify source of order creation.
374
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
375
+ * identify source of order creation.
376
376
  * @property {string} [uid]
377
377
  * @property {boolean} [buyNow]
378
378
  */
@@ -384,8 +384,8 @@ const CartPlatformModel = require("./CartPlatformModel");
384
384
 
385
385
  /**
386
386
  * @typedef SelectAddressParam
387
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
388
- * source header, to be used to identify source of order creation.
387
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
388
+ * identify source of order creation.
389
389
  * @property {string} [cartId]
390
390
  * @property {boolean} [buyNow]
391
391
  * @property {boolean} [i]
@@ -395,8 +395,8 @@ const CartPlatformModel = require("./CartPlatformModel");
395
395
 
396
396
  /**
397
397
  * @typedef SelectPaymentModeParam
398
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
399
- * source header, to be used to identify source of order creation.
398
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
399
+ * identify source of order creation.
400
400
  * @property {string} [id]
401
401
  * @property {boolean} [buyNow]
402
402
  * @property {string} [orderType]
@@ -405,8 +405,8 @@ const CartPlatformModel = require("./CartPlatformModel");
405
405
 
406
406
  /**
407
407
  * @typedef SelectPaymentModeV2Param
408
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
409
- * source header, to be used to identify source of order creation.
408
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
409
+ * identify source of order creation.
410
410
  * @property {string} [id]
411
411
  * @property {boolean} [buyNow]
412
412
  * @property {string} [orderType]
@@ -500,8 +500,8 @@ const CartPlatformModel = require("./CartPlatformModel");
500
500
 
501
501
  /**
502
502
  * @typedef ValidateCouponForPaymentParam
503
- * @property {CartPlatformModel.OrderingSource} [xOrderingSource] - Ordering
504
- * source header, to be used to identify source of order creation.
503
+ * @property {string} [xOrderingSource] - Ordering source header, to be used to
504
+ * identify source of order creation.
505
505
  * @property {string} [id]
506
506
  * @property {boolean} [buyNow]
507
507
  * @property {string} [addressId]
@@ -538,7 +538,7 @@ class CartPlatformApplicationValidator {
538
538
  /** @returns {ApplyCouponParam} */
539
539
  static applyCoupon() {
540
540
  return Joi.object({
541
- xOrderingSource: CartPlatformModel.OrderingSource(),
541
+ xOrderingSource: Joi.string().allow(""),
542
542
 
543
543
  i: Joi.boolean(),
544
544
  b: Joi.boolean(),
@@ -552,7 +552,7 @@ class CartPlatformApplicationValidator {
552
552
  /** @returns {ApplyLoyaltyPointsParam} */
553
553
  static applyLoyaltyPoints() {
554
554
  return Joi.object({
555
- xOrderingSource: CartPlatformModel.OrderingSource(),
555
+ xOrderingSource: Joi.string().allow(""),
556
556
 
557
557
  id: Joi.string().allow(""),
558
558
  i: Joi.boolean(),
@@ -565,7 +565,7 @@ class CartPlatformApplicationValidator {
565
565
  /** @returns {CheckCartServiceabilityParam} */
566
566
  static checkCartServiceability() {
567
567
  return Joi.object({
568
- xOrderingSource: CartPlatformModel.OrderingSource(),
568
+ xOrderingSource: Joi.string().allow(""),
569
569
 
570
570
  body: CartPlatformModel.OpenApiCartServiceabilityCreation().required(),
571
571
  }).required();
@@ -574,7 +574,7 @@ class CartPlatformApplicationValidator {
574
574
  /** @returns {CheckoutCartParam} */
575
575
  static checkoutCart() {
576
576
  return Joi.object({
577
- xOrderingSource: CartPlatformModel.OrderingSource(),
577
+ xOrderingSource: Joi.string().allow(""),
578
578
 
579
579
  body: CartPlatformModel.OpenApiPlatformCheckoutReq().required(),
580
580
  }).required();
@@ -626,7 +626,7 @@ class CartPlatformApplicationValidator {
626
626
  /** @returns {FetchAndvalidateCartItemsParam} */
627
627
  static fetchAndvalidateCartItems() {
628
628
  return Joi.object({
629
- xOrderingSource: CartPlatformModel.OrderingSource(),
629
+ xOrderingSource: Joi.string().allow(""),
630
630
 
631
631
  body: CartPlatformModel.OpenapiCartDetailsCreation().required(),
632
632
  }).required();
@@ -708,7 +708,7 @@ class CartPlatformApplicationValidator {
708
708
  /** @returns {GetCartParam} */
709
709
  static getCart() {
710
710
  return Joi.object({
711
- xOrderingSource: CartPlatformModel.OrderingSource(),
711
+ xOrderingSource: Joi.string().allow(""),
712
712
 
713
713
  id: Joi.string().allow(""),
714
714
  userId: Joi.string().allow(""),
@@ -887,7 +887,7 @@ class CartPlatformApplicationValidator {
887
887
  /** @returns {OverrideCartParam} */
888
888
  static overrideCart() {
889
889
  return Joi.object({
890
- xOrderingSource: CartPlatformModel.OrderingSource(),
890
+ xOrderingSource: Joi.string().allow(""),
891
891
 
892
892
  body: CartPlatformModel.OverrideCheckoutReq().required(),
893
893
  }).required();
@@ -896,7 +896,7 @@ class CartPlatformApplicationValidator {
896
896
  /** @returns {PlatformAddItemsParam} */
897
897
  static platformAddItems() {
898
898
  return Joi.object({
899
- xOrderingSource: CartPlatformModel.OrderingSource(),
899
+ xOrderingSource: Joi.string().allow(""),
900
900
 
901
901
  i: Joi.boolean(),
902
902
  b: Joi.boolean(),
@@ -910,7 +910,7 @@ class CartPlatformApplicationValidator {
910
910
  /** @returns {PlatformCheckoutCartParam} */
911
911
  static platformCheckoutCart() {
912
912
  return Joi.object({
913
- xOrderingSource: CartPlatformModel.OrderingSource(),
913
+ xOrderingSource: Joi.string().allow(""),
914
914
 
915
915
  id: Joi.string().allow(""),
916
916
  body: CartPlatformModel.PlatformCartCheckoutDetailCreation().required(),
@@ -920,7 +920,7 @@ class CartPlatformApplicationValidator {
920
920
  /** @returns {PlatformCheckoutCartV2Param} */
921
921
  static platformCheckoutCartV2() {
922
922
  return Joi.object({
923
- xOrderingSource: CartPlatformModel.OrderingSource(),
923
+ xOrderingSource: Joi.string().allow(""),
924
924
 
925
925
  id: Joi.string().allow(""),
926
926
  body: CartPlatformModel.PlatformCartCheckoutDetailV2Creation().required(),
@@ -930,7 +930,7 @@ class CartPlatformApplicationValidator {
930
930
  /** @returns {PlatformUpdateCartParam} */
931
931
  static platformUpdateCart() {
932
932
  return Joi.object({
933
- xOrderingSource: CartPlatformModel.OrderingSource(),
933
+ xOrderingSource: Joi.string().allow(""),
934
934
 
935
935
  id: Joi.string().allow(""),
936
936
  i: Joi.boolean(),
@@ -952,7 +952,7 @@ class CartPlatformApplicationValidator {
952
952
  /** @returns {RemoveCouponParam} */
953
953
  static removeCoupon() {
954
954
  return Joi.object({
955
- xOrderingSource: CartPlatformModel.OrderingSource(),
955
+ xOrderingSource: Joi.string().allow(""),
956
956
 
957
957
  uid: Joi.string().allow(""),
958
958
  buyNow: Joi.boolean(),
@@ -969,7 +969,7 @@ class CartPlatformApplicationValidator {
969
969
  /** @returns {SelectAddressParam} */
970
970
  static selectAddress() {
971
971
  return Joi.object({
972
- xOrderingSource: CartPlatformModel.OrderingSource(),
972
+ xOrderingSource: Joi.string().allow(""),
973
973
 
974
974
  cartId: Joi.string().allow(""),
975
975
  buyNow: Joi.boolean(),
@@ -982,7 +982,7 @@ class CartPlatformApplicationValidator {
982
982
  /** @returns {SelectPaymentModeParam} */
983
983
  static selectPaymentMode() {
984
984
  return Joi.object({
985
- xOrderingSource: CartPlatformModel.OrderingSource(),
985
+ xOrderingSource: Joi.string().allow(""),
986
986
 
987
987
  id: Joi.string().allow(""),
988
988
  buyNow: Joi.boolean(),
@@ -994,7 +994,7 @@ class CartPlatformApplicationValidator {
994
994
  /** @returns {SelectPaymentModeV2Param} */
995
995
  static selectPaymentModeV2() {
996
996
  return Joi.object({
997
- xOrderingSource: CartPlatformModel.OrderingSource(),
997
+ xOrderingSource: Joi.string().allow(""),
998
998
 
999
999
  id: Joi.string().allow(""),
1000
1000
  buyNow: Joi.boolean(),
@@ -1110,7 +1110,7 @@ class CartPlatformApplicationValidator {
1110
1110
  /** @returns {ValidateCouponForPaymentParam} */
1111
1111
  static validateCouponForPayment() {
1112
1112
  return Joi.object({
1113
- xOrderingSource: CartPlatformModel.OrderingSource(),
1113
+ xOrderingSource: Joi.string().allow(""),
1114
1114
 
1115
1115
  id: Joi.string().allow(""),
1116
1116
  buyNow: Joi.boolean(),
@@ -331,8 +331,8 @@ export = CartPlatformModel;
331
331
  * @property {CompareObject} [cart_quantity]
332
332
  * @property {string[]} [available_zones] - List of all zones on which promotion
333
333
  * is applicable
334
- * @property {number[]} [item_exclude_company] - List of all company id on which
335
- * promotion is not applicable
334
+ * @property {number[]} [item_exclude_company] - List of all company ids on
335
+ * which promotion is not applicable
336
336
  * @property {number[]} [item_id] - List of all item ids on which promotion is applicable
337
337
  * @property {number[]} [item_l1_category] - List of all L1 category on which
338
338
  * promotion is applicable
@@ -353,8 +353,8 @@ export = CartPlatformModel;
353
353
  * promotion is not applicable
354
354
  * @property {number[]} [item_department] - List of all departments ids on which
355
355
  * promotion is applicable
356
- * @property {number[]} [item_exclude_store] - List of all item store ids on
357
- * which promotion is not applicable
356
+ * @property {number[]} [item_exclude_store] - List of all store ids on which
357
+ * promotion is not applicable
358
358
  * @property {number[]} [item_brand] - List of all brand ids on which promotion
359
359
  * is applicable
360
360
  * @property {number[]} [item_exclude_department] - List of all department ids
@@ -377,10 +377,46 @@ export = CartPlatformModel;
377
377
  * @property {string[]} [item_sku] - List of all item sku on which promotion is applicable
378
378
  * @property {ItemSizeMapping} [meta]
379
379
  */
380
+ /**
381
+ * @typedef DiscountItemCriteria
382
+ * @property {number[]} [item_store] - List of all store ids on which promotion
383
+ * is applicable
384
+ * @property {number[]} [item_company] - List of all company ids on which
385
+ * promotion is applicable
386
+ * @property {number[]} [item_brand] - List of all brand ids on which promotion
387
+ * is applicable
388
+ * @property {number[]} [item_exclude_brand] - List of all brand ids on which
389
+ * promotion is not applicable
390
+ * @property {number[]} [item_category] - List of all L3 category on which
391
+ * promotion is applicable
392
+ * @property {number[]} [item_exclude_category] - List of all L3 category on
393
+ * which promotion is not applicable
394
+ * @property {number[]} [item_l1_category] - List of all L1 category on which
395
+ * promotion is applicable
396
+ * @property {number[]} [item_exclude_l1_category] - List of all item ids on
397
+ * which promotion is not applicable
398
+ * @property {number[]} [item_l2_category] - List of all L2 category on which
399
+ * promotion is applicable
400
+ * @property {number[]} [item_exclude_l2_category] - List of all L2 category on
401
+ * which promotion is not applicable
402
+ * @property {number[]} [item_department] - List of all departments ids on which
403
+ * promotion is applicable
404
+ * @property {number[]} [item_exclude_department] - List of all department ids
405
+ * on which promotion is not applicable
406
+ * @property {number[]} [item_id] - List of all item ids on which promotion is applicable
407
+ * @property {number[]} [item_exclude_id] - List of all item ids on which
408
+ * promotion is not applicable
409
+ * @property {string[]} [buy_rules] - Buy rules that apply to this discount
410
+ * @property {string[]} [available_zones] - List of all zones ids on which
411
+ * promotion is applicable
412
+ * @property {string[]} [product_tags] - Product tags that qualify for the discount
413
+ * @property {boolean} [all_items] - Whether the discount applies to all items
414
+ */
380
415
  /**
381
416
  * @typedef DiscountOffer
382
417
  * @property {number} [max_discount_amount] - Maximum discount amount in promotion
383
- * @property {number} [discount_price] - Discount price in promotion
418
+ * @property {number} [discount_price] - Discount price which is price after
419
+ * deducting discount amount in fixed price promotion
384
420
  * @property {boolean} [apportion_discount] - Flag to distribute discount for each article
385
421
  * @property {boolean} [partial_can_ret] - Flag indicated return the product partially
386
422
  * @property {number} [max_usage_per_transaction] - Maximum usage per
@@ -390,6 +426,8 @@ export = CartPlatformModel;
390
426
  * @property {number} [discount_amount] - Discount amount in promotion
391
427
  * @property {number} [discount_percentage] - Discount percentage in promotion
392
428
  * @property {number} [max_offer_quantity] - Maximum quantity of product in promotion
429
+ * @property {number} [item_sequence_number] - Cart sequence number of item for
430
+ * which offer is valid
393
431
  */
394
432
  /**
395
433
  * @typedef DiscountRule
@@ -1251,6 +1289,7 @@ export = CartPlatformModel;
1251
1289
  * @property {ProductPriceInfo} [price_per_unit]
1252
1290
  * @property {PromoMeta} [promo_meta]
1253
1291
  * @property {Object} [custom_order] - Whether MTO (Make to Order) is enabled or not.
1292
+ * @property {string} [item_type] - Type of the item in cart.
1254
1293
  */
1255
1294
  /**
1256
1295
  * @typedef OpenapiCartDetailsResult
@@ -2439,17 +2478,30 @@ export = CartPlatformModel;
2439
2478
  * @property {string} [size] - Selected size for the free gift item.
2440
2479
  * @property {string[]} [item_images_url] - List of free gift product images URL
2441
2480
  */
2481
+ /**
2482
+ * @typedef DiscountOfferRule
2483
+ * @property {string} [discount_type] - Discount offer type of the promotion
2484
+ * @property {DiscountOffer} [offer]
2485
+ * @property {DiscountItemCriteria} [item_criteria]
2486
+ * @property {string} [buy_condition] - Logical condition expression for buy rules
2487
+ * @property {number} [discounted_price] - Price of product after applying this
2488
+ * discount rule of promotion. Note - returned only when store id is provided
2489
+ * in request params.
2490
+ * @property {string[]} [matched_buy_rules] - List of buy rules that are
2491
+ * matching with item for this promotion
2492
+ * @property {ItemSizeMapping} [meta]
2493
+ */
2442
2494
  /**
2443
2495
  * @typedef PromotionOffer
2444
2496
  * @property {string} [id] - Promotion unique identifier
2445
- * @property {Object} [buy_rules] - Buy rules of promotions
2497
+ * @property {BuyRuleItemCriteria} [buy_rules]
2446
2498
  * @property {string} [offer_text] - Offer title of promotion that used to display
2447
2499
  * @property {string} [promotion_type] - Type of Promotion like percentage,
2448
2500
  * amount, bogo etc.
2449
2501
  * @property {string} [promotion_name] - Name of the promotion
2450
2502
  * @property {string} [promotion_group] - Group of promotion belongs to
2451
2503
  * @property {string} [valid_till] - Datetime ISOString for promotion end date
2452
- * @property {Object[]} [discount_rules] - Discount rules of promotions
2504
+ * @property {DiscountOfferRule[]} [discount_rules] - Discount rules of promotions
2453
2505
  * @property {FreeGiftItems[]} [free_gift_items] - Details of free gift items
2454
2506
  * @property {string} [description] - Offer details including T&C
2455
2507
  */
@@ -2482,20 +2534,10 @@ export = CartPlatformModel;
2482
2534
  * @property {string} message - A brief description of the error encountered.
2483
2535
  * @property {string} field - The field in the request that caused the error.
2484
2536
  */
2485
- /**
2486
- * @typedef {| "storefront"
2487
- * | "store_os_pos"
2488
- * | "kiosk"
2489
- * | "scan_go"
2490
- * | "smart_trolley"
2491
- * | "marketplace"
2492
- * | "social_commerce"
2493
- * | "ondc"} OrderingSource
2494
- */
2495
2537
  declare class CartPlatformModel {
2496
2538
  }
2497
2539
  declare namespace CartPlatformModel {
2498
- export { RedeemLoyaltyPoints, CouponDateMeta, Ownership, CouponAuthor, State, PaymentAllowValue, PaymentModes, PriceRange, PostOrder, BulkBundleRestriction, UsesRemaining, UsesRestriction, Restrictions, Validation, CouponAction, CouponSchedule, Rule, DisplayMetaDict, DisplayMeta, Identifier, Validity, RuleDefinition, CouponAdd, Page, CouponsResult, SuccessMessage, OperationErrorResult, CouponUpdate, CouponPartialUpdate, CouponCreateResult, DisplayMeta1, Ownership1, CompareObject, ItemSizeMapping, ItemCriteria, BuyRuleItemCriteria, DiscountOffer, DiscountRule, PaymentAllowValue1, PromotionPaymentModes, UserRegistered, PostOrder1, UsesRemaining1, UsesRestriction1, Restrictions1, PromotionSchedule, PromotionAction, PromotionAuthor, Visibility, PromotionDateMeta, PromotionListItem, PromotionsResult, PromotionAdd, PromotionAddResult, PromotionUpdate, PromotionUpdateResult, PromotionPartialUpdate, ActivePromosResult, Charges, DeliveryCharges, CartMetaConfigUpdate, CartMetaConfigAdd, Article, PriceAdjustmentRestrictions, Collection, PriceAdjustmentUpdate, PriceAdjustment, PriceAdjustmentResult, GetPriceAdjustmentResult, PriceAdjustmentAdd, DistributionRule, Distribution, DistributionLogic, CartItem, OpenapiCartDetailsCreation, CouponBreakup, DisplayBreakup, LoyaltyPoints, RawBreakup, CartBreakup, ProductImage, Tags, BaseInfo, ActionQuery, ProductActionParams, ProductActionPage, ProductAction, CategoryInfo, CartProduct, BasePrice, ArticlePriceInfo, StoreInfo, FulfillmentOptionSchema, StoreTimingSchema, StoreHoursSchema, PickupStoreDetailSchema, ProductArticle, Ownership2, DiscountRulesApp, AppliedFreeArticles, BuyRules, AppliedPromotion, PromiseFormatted, PromiseISOFormat, PromiseTimestamp, ShipmentPromise, CouponDetails, ProductPrice, ProductPriceInfo, ProductMaxQuantityInfo, CartProductIdentifer, ProductAvailabilitySize, ProductAvailability, PromoMeta, CartProductInfo, OpenapiCartDetailsResult, OpenApiErrorResult, ShippingAddress, OpenApiCartServiceabilityCreation, OpenApiCartServiceabilityResult, OpenApiFiles, CartItemMeta, MultiTenderPaymentMeta, MultiTenderPaymentMethod, OpenApiOrderItem, OpenApiPlatformCheckoutReq, OpenApiCheckoutResult, AbandonedCart, AbandonedCartResult, PaymentSelectionLock, CartCurrency, CartDetailCoupon, ChargesThreshold, DeliveryChargesConfig, CartCommonConfig, PlatformAlternatePickupPerson, CartDetailResult, AddProductCart, AddCartCreation, AddCartDetailResult, CartItemInfo, UpdateProductCart, FreeGiftItemCreation, UpdateCartCreation, UpdateCartDetailResult, OverrideCartItemPromo, OverrideCartItem, OverrideCheckoutReq, OverrideCheckoutData, OverrideCheckoutResult, GetShareCartLinkCreation, GetShareCartLinkResult, SharedCartDetails, SharedCart, SharedCartResult, CartList, MultiCartResult, UpdateUserCartMapping, UserInfo, UserCartMappingResult, PlatformAddCartDetails, PlatformUpdateCartDetails, DeleteCartDetails, DeleteCartDetailResult, CartItemCountResult, DiscountRules, Coupon, PageCoupon, GetCouponResult, ApplyCouponDetails, GeoLocation, PlatformAddress, ValidationConfig, PlatformGetAddressesDetails, SaveAddressDetails, UpdateAddressDetails, DeleteAddressResult, PlatformSelectCartAddress, ShipmentArticle, PlatformShipmentDetails, PlatformCartShipmentsResult, UpdateCartShipmentItem, UpdateCartShipmentCreation, PlatformCartMetaCreation, CartMetaDetails, CartMetaMissingDetails, StaffCheckout, CustomerDetails, Files, CartCheckoutCustomMeta, OrderTag, PlatformCartCheckoutDetailCreation, CheckCart, CartCheckoutDetails, CartCheckoutResult, CartDeliveryModesDetails, PickupStoreDetail, StoreDetails, CartPaymentUpdate, CouponValidity, PaymentCouponValidate, PaymentMeta, PaymentMethod, PlatformCartCheckoutDetailV2Creation, UpdateCartPaymentRequestV2, PriceMinMax, ItemPriceDetails, ArticlePriceDetails, FreeGiftItems, PromotionOffer, PromotionOffersDetails, PromotionPaymentOffer, PromotionPaymentOffersDetails, ValidationError, OrderingSource };
2540
+ export { RedeemLoyaltyPoints, CouponDateMeta, Ownership, CouponAuthor, State, PaymentAllowValue, PaymentModes, PriceRange, PostOrder, BulkBundleRestriction, UsesRemaining, UsesRestriction, Restrictions, Validation, CouponAction, CouponSchedule, Rule, DisplayMetaDict, DisplayMeta, Identifier, Validity, RuleDefinition, CouponAdd, Page, CouponsResult, SuccessMessage, OperationErrorResult, CouponUpdate, CouponPartialUpdate, CouponCreateResult, DisplayMeta1, Ownership1, CompareObject, ItemSizeMapping, ItemCriteria, BuyRuleItemCriteria, DiscountItemCriteria, DiscountOffer, DiscountRule, PaymentAllowValue1, PromotionPaymentModes, UserRegistered, PostOrder1, UsesRemaining1, UsesRestriction1, Restrictions1, PromotionSchedule, PromotionAction, PromotionAuthor, Visibility, PromotionDateMeta, PromotionListItem, PromotionsResult, PromotionAdd, PromotionAddResult, PromotionUpdate, PromotionUpdateResult, PromotionPartialUpdate, ActivePromosResult, Charges, DeliveryCharges, CartMetaConfigUpdate, CartMetaConfigAdd, Article, PriceAdjustmentRestrictions, Collection, PriceAdjustmentUpdate, PriceAdjustment, PriceAdjustmentResult, GetPriceAdjustmentResult, PriceAdjustmentAdd, DistributionRule, Distribution, DistributionLogic, CartItem, OpenapiCartDetailsCreation, CouponBreakup, DisplayBreakup, LoyaltyPoints, RawBreakup, CartBreakup, ProductImage, Tags, BaseInfo, ActionQuery, ProductActionParams, ProductActionPage, ProductAction, CategoryInfo, CartProduct, BasePrice, ArticlePriceInfo, StoreInfo, FulfillmentOptionSchema, StoreTimingSchema, StoreHoursSchema, PickupStoreDetailSchema, ProductArticle, Ownership2, DiscountRulesApp, AppliedFreeArticles, BuyRules, AppliedPromotion, PromiseFormatted, PromiseISOFormat, PromiseTimestamp, ShipmentPromise, CouponDetails, ProductPrice, ProductPriceInfo, ProductMaxQuantityInfo, CartProductIdentifer, ProductAvailabilitySize, ProductAvailability, PromoMeta, CartProductInfo, OpenapiCartDetailsResult, OpenApiErrorResult, ShippingAddress, OpenApiCartServiceabilityCreation, OpenApiCartServiceabilityResult, OpenApiFiles, CartItemMeta, MultiTenderPaymentMeta, MultiTenderPaymentMethod, OpenApiOrderItem, OpenApiPlatformCheckoutReq, OpenApiCheckoutResult, AbandonedCart, AbandonedCartResult, PaymentSelectionLock, CartCurrency, CartDetailCoupon, ChargesThreshold, DeliveryChargesConfig, CartCommonConfig, PlatformAlternatePickupPerson, CartDetailResult, AddProductCart, AddCartCreation, AddCartDetailResult, CartItemInfo, UpdateProductCart, FreeGiftItemCreation, UpdateCartCreation, UpdateCartDetailResult, OverrideCartItemPromo, OverrideCartItem, OverrideCheckoutReq, OverrideCheckoutData, OverrideCheckoutResult, GetShareCartLinkCreation, GetShareCartLinkResult, SharedCartDetails, SharedCart, SharedCartResult, CartList, MultiCartResult, UpdateUserCartMapping, UserInfo, UserCartMappingResult, PlatformAddCartDetails, PlatformUpdateCartDetails, DeleteCartDetails, DeleteCartDetailResult, CartItemCountResult, DiscountRules, Coupon, PageCoupon, GetCouponResult, ApplyCouponDetails, GeoLocation, PlatformAddress, ValidationConfig, PlatformGetAddressesDetails, SaveAddressDetails, UpdateAddressDetails, DeleteAddressResult, PlatformSelectCartAddress, ShipmentArticle, PlatformShipmentDetails, PlatformCartShipmentsResult, UpdateCartShipmentItem, UpdateCartShipmentCreation, PlatformCartMetaCreation, CartMetaDetails, CartMetaMissingDetails, StaffCheckout, CustomerDetails, Files, CartCheckoutCustomMeta, OrderTag, PlatformCartCheckoutDetailCreation, CheckCart, CartCheckoutDetails, CartCheckoutResult, CartDeliveryModesDetails, PickupStoreDetail, StoreDetails, CartPaymentUpdate, CouponValidity, PaymentCouponValidate, PaymentMeta, PaymentMethod, PlatformCartCheckoutDetailV2Creation, UpdateCartPaymentRequestV2, PriceMinMax, ItemPriceDetails, ArticlePriceDetails, FreeGiftItems, DiscountOfferRule, PromotionOffer, PromotionOffersDetails, PromotionPaymentOffer, PromotionPaymentOffersDetails, ValidationError };
2499
2541
  }
2500
2542
  /** @returns {RedeemLoyaltyPoints} */
2501
2543
  declare function RedeemLoyaltyPoints(): RedeemLoyaltyPoints;
@@ -3286,8 +3328,8 @@ type BuyRuleItemCriteria = {
3286
3328
  */
3287
3329
  available_zones?: string[];
3288
3330
  /**
3289
- * - List of all company id on which
3290
- * promotion is not applicable
3331
+ * - List of all company ids on
3332
+ * which promotion is not applicable
3291
3333
  */
3292
3334
  item_exclude_company?: number[];
3293
3335
  /**
@@ -3338,8 +3380,8 @@ type BuyRuleItemCriteria = {
3338
3380
  */
3339
3381
  item_department?: number[];
3340
3382
  /**
3341
- * - List of all item store ids on
3342
- * which promotion is not applicable
3383
+ * - List of all store ids on which
3384
+ * promotion is not applicable
3343
3385
  */
3344
3386
  item_exclude_store?: number[];
3345
3387
  /**
@@ -3394,6 +3436,96 @@ type BuyRuleItemCriteria = {
3394
3436
  item_sku?: string[];
3395
3437
  meta?: ItemSizeMapping;
3396
3438
  };
3439
+ /** @returns {DiscountItemCriteria} */
3440
+ declare function DiscountItemCriteria(): DiscountItemCriteria;
3441
+ type DiscountItemCriteria = {
3442
+ /**
3443
+ * - List of all store ids on which promotion
3444
+ * is applicable
3445
+ */
3446
+ item_store?: number[];
3447
+ /**
3448
+ * - List of all company ids on which
3449
+ * promotion is applicable
3450
+ */
3451
+ item_company?: number[];
3452
+ /**
3453
+ * - List of all brand ids on which promotion
3454
+ * is applicable
3455
+ */
3456
+ item_brand?: number[];
3457
+ /**
3458
+ * - List of all brand ids on which
3459
+ * promotion is not applicable
3460
+ */
3461
+ item_exclude_brand?: number[];
3462
+ /**
3463
+ * - List of all L3 category on which
3464
+ * promotion is applicable
3465
+ */
3466
+ item_category?: number[];
3467
+ /**
3468
+ * - List of all L3 category on
3469
+ * which promotion is not applicable
3470
+ */
3471
+ item_exclude_category?: number[];
3472
+ /**
3473
+ * - List of all L1 category on which
3474
+ * promotion is applicable
3475
+ */
3476
+ item_l1_category?: number[];
3477
+ /**
3478
+ * - List of all item ids on
3479
+ * which promotion is not applicable
3480
+ */
3481
+ item_exclude_l1_category?: number[];
3482
+ /**
3483
+ * - List of all L2 category on which
3484
+ * promotion is applicable
3485
+ */
3486
+ item_l2_category?: number[];
3487
+ /**
3488
+ * - List of all L2 category on
3489
+ * which promotion is not applicable
3490
+ */
3491
+ item_exclude_l2_category?: number[];
3492
+ /**
3493
+ * - List of all departments ids on which
3494
+ * promotion is applicable
3495
+ */
3496
+ item_department?: number[];
3497
+ /**
3498
+ * - List of all department ids
3499
+ * on which promotion is not applicable
3500
+ */
3501
+ item_exclude_department?: number[];
3502
+ /**
3503
+ * - List of all item ids on which promotion is applicable
3504
+ */
3505
+ item_id?: number[];
3506
+ /**
3507
+ * - List of all item ids on which
3508
+ * promotion is not applicable
3509
+ */
3510
+ item_exclude_id?: number[];
3511
+ /**
3512
+ * - Buy rules that apply to this discount
3513
+ */
3514
+ buy_rules?: string[];
3515
+ /**
3516
+ * - List of all zones ids on which
3517
+ * promotion is applicable
3518
+ */
3519
+ available_zones?: string[];
3520
+ /**
3521
+ * - Product tags that qualify for the discount
3522
+ */
3523
+ product_tags?: string[];
3524
+ /**
3525
+ * - Whether the discount applies to all items
3526
+ */
3527
+ all_items?: boolean;
3528
+ };
3397
3529
  /** @returns {DiscountOffer} */
3398
3530
  declare function DiscountOffer(): DiscountOffer;
3399
3531
  type DiscountOffer = {
@@ -3402,7 +3534,8 @@ type DiscountOffer = {
3402
3534
  */
3403
3535
  max_discount_amount?: number;
3404
3536
  /**
3405
- * - Discount price in promotion
3537
+ * - Discount price which is price after
3538
+ * deducting discount amount in fixed price promotion
3406
3539
  */
3407
3540
  discount_price?: number;
3408
3541
  /**
@@ -3438,6 +3571,11 @@ type DiscountOffer = {
3438
3571
  * - Maximum quantity of product in promotion
3439
3572
  */
3440
3573
  max_offer_quantity?: number;
3574
+ /**
3575
+ * - Cart sequence number of item for
3576
+ * which offer is valid
3577
+ */
3578
+ item_sequence_number?: number;
3441
3579
  };
3442
3580
  /** @returns {DiscountRule} */
3443
3581
  declare function DiscountRule(): DiscountRule;
@@ -5544,6 +5682,10 @@ type CartProductInfo = {
5544
5682
  * - Whether MTO (Make to Order) is enabled or not.
5545
5683
  */
5546
5684
  custom_order?: any;
5685
+ /**
5686
+ * - Type of the item in cart.
5687
+ */
5688
+ item_type?: string;
5547
5689
  };
5548
5690
  /** @returns {OpenapiCartDetailsResult} */
5549
5691
  declare function OpenapiCartDetailsResult(): OpenapiCartDetailsResult;
@@ -8614,6 +8756,32 @@ type FreeGiftItems = {
8614
8756
  */
8615
8757
  item_images_url?: string[];
8616
8758
  };
8759
+ /** @returns {DiscountOfferRule} */
8760
+ declare function DiscountOfferRule(): DiscountOfferRule;
8761
+ type DiscountOfferRule = {
8762
+ /**
8763
+ * - Discount offer type of the promotion
8764
+ */
8765
+ discount_type?: string;
8766
+ offer?: DiscountOffer;
8767
+ item_criteria?: DiscountItemCriteria;
8768
+ /**
8769
+ * - Logical condition expression for buy rules
8770
+ */
8771
+ buy_condition?: string;
8772
+ /**
8773
+ * - Price of product after applying this
8774
+ * discount rule of promotion. Note - returned only when store id is provided
8775
+ * in request params.
8776
+ */
8777
+ discounted_price?: number;
8778
+ /**
8779
+ * - List of buy rules that are
8780
+ * matching with item for this promotion
8781
+ */
8782
+ matched_buy_rules?: string[];
8783
+ meta?: ItemSizeMapping;
8784
+ };
8617
8785
  /** @returns {PromotionOffer} */
8618
8786
  declare function PromotionOffer(): PromotionOffer;
8619
8787
  type PromotionOffer = {
@@ -8621,10 +8789,7 @@ type PromotionOffer = {
8621
8789
  * - Promotion unique identifier
8622
8790
  */
8623
8791
  id?: string;
8624
- /**
8625
- * - Buy rules of promotions
8626
- */
8627
- buy_rules?: any;
8792
+ buy_rules?: BuyRuleItemCriteria;
8628
8793
  /**
8629
8794
  * - Offer title of promotion that used to display
8630
8795
  */
@@ -8649,7 +8814,7 @@ type PromotionOffer = {
8649
8814
  /**
8650
8815
  * - Discount rules of promotions
8651
8816
  */
8652
- discount_rules?: any[];
8817
+ discount_rules?: DiscountOfferRule[];
8653
8818
  /**
8654
8819
  * - Details of free gift items
8655
8820
  */
@@ -8734,10 +8899,3 @@ type ValidationError = {
8734
8899
  */
8735
8900
  field: string;
8736
8901
  };
8737
- /**
8738
- * Enum: OrderingSource Used By: Cart
8739
- *
8740
- * @returns {OrderingSource}
8741
- */
8742
- declare function OrderingSource(): OrderingSource;
8743
- type OrderingSource = "storefront" | "store_os_pos" | "kiosk" | "scan_go" | "smart_trolley" | "marketplace" | "social_commerce" | "ondc";