@lyxa.ai/marketing 1.0.23 → 1.0.25

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 (153) hide show
  1. package/dist/lib/index.d.ts +1293 -30
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/modules/coupon/routers/coupon.router.d.ts +1298 -35
  4. package/dist/lib/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  5. package/dist/lib/modules/coupon/routers/coupon.router.js +8 -0
  6. package/dist/lib/modules/coupon/routers/coupon.router.js.map +1 -1
  7. package/dist/lib/modules/coupon/services/coupon.service.d.ts +5 -0
  8. package/dist/lib/modules/coupon/services/coupon.service.d.ts.map +1 -1
  9. package/dist/lib/modules/coupon/services/coupon.service.js +110 -1
  10. package/dist/lib/modules/coupon/services/coupon.service.js.map +1 -1
  11. package/dist/lib/modules/coupon/services/index.d.ts +1 -0
  12. package/dist/lib/modules/coupon/services/index.d.ts.map +1 -1
  13. package/dist/lib/modules/coupon/services/index.js +1 -0
  14. package/dist/lib/modules/coupon/services/index.js.map +1 -1
  15. package/dist/lib/modules/coupon/services/individual-store-coupon.service.d.ts +1 -0
  16. package/dist/lib/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  17. package/dist/lib/modules/coupon/services/individual-store-coupon.service.js +15 -1
  18. package/dist/lib/modules/coupon/services/individual-store-coupon.service.js.map +1 -1
  19. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts +14 -0
  20. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -0
  21. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.js +135 -0
  22. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.js.map +1 -0
  23. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts +52 -1
  24. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  25. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts +998 -31
  26. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  27. package/dist/lib/modules/coupon/validations/all-coupons.validation.js +2 -0
  28. package/dist/lib/modules/coupon/validations/all-coupons.validation.js.map +1 -1
  29. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts +11 -0
  30. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  31. package/dist/lib/modules/coupon/validations/coupon.validation.js +5 -1
  32. package/dist/lib/modules/coupon/validations/coupon.validation.js.map +1 -1
  33. package/dist/lib/modules/coupon/validations/index.d.ts +1 -0
  34. package/dist/lib/modules/coupon/validations/index.d.ts.map +1 -1
  35. package/dist/lib/modules/coupon/validations/index.js +1 -0
  36. package/dist/lib/modules/coupon/validations/index.js.map +1 -1
  37. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts +19 -19
  38. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  39. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.js +3 -3
  40. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.js.map +1 -1
  41. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.d.ts +439 -0
  42. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.d.ts.map +1 -0
  43. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.js +22 -0
  44. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.js.map +1 -0
  45. package/dist/types/index.d.ts +1293 -30
  46. package/dist/types/index.d.ts.map +1 -1
  47. package/dist/types/modules/coupon/routers/coupon.router.d.ts +1298 -35
  48. package/dist/types/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  49. package/dist/types/modules/coupon/services/coupon.service.d.ts +5 -0
  50. package/dist/types/modules/coupon/services/coupon.service.d.ts.map +1 -1
  51. package/dist/types/modules/coupon/services/index.d.ts +1 -0
  52. package/dist/types/modules/coupon/services/index.d.ts.map +1 -1
  53. package/dist/types/modules/coupon/services/individual-store-coupon.service.d.ts +1 -0
  54. package/dist/types/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  55. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts +23 -0
  56. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -0
  57. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts +52 -1
  58. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  59. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts +998 -31
  60. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  61. package/dist/types/modules/coupon/validations/coupon.validation.d.ts +11 -0
  62. package/dist/types/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  63. package/dist/types/modules/coupon/validations/index.d.ts +1 -0
  64. package/dist/types/modules/coupon/validations/index.d.ts.map +1 -1
  65. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts +19 -19
  66. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  67. package/dist/types/modules/coupon/validations/shops-categories-coupon.validation.d.ts +448 -0
  68. package/dist/types/modules/coupon/validations/shops-categories-coupon.validation.d.ts.map +1 -0
  69. package/package.json +2 -2
  70. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts +0 -2
  71. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts.map +0 -1
  72. package/dist/lib/modules/loyalty-point-setting/routers/index.js +0 -18
  73. package/dist/lib/modules/loyalty-point-setting/routers/index.js.map +0 -1
  74. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +0 -321
  75. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +0 -1
  76. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js +0 -82
  77. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js.map +0 -1
  78. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts +0 -3
  79. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts.map +0 -1
  80. package/dist/lib/modules/loyalty-point-setting/services/index.js +0 -19
  81. package/dist/lib/modules/loyalty-point-setting/services/index.js.map +0 -1
  82. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +0 -16
  83. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +0 -1
  84. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js +0 -133
  85. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js.map +0 -1
  86. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +0 -16
  87. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +0 -1
  88. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js +0 -156
  89. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js.map +0 -1
  90. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts +0 -3
  91. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts.map +0 -1
  92. package/dist/lib/modules/loyalty-point-setting/transformers/index.js +0 -19
  93. package/dist/lib/modules/loyalty-point-setting/transformers/index.js.map +0 -1
  94. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +0 -8
  95. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +0 -1
  96. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js +0 -7
  97. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js.map +0 -1
  98. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +0 -9
  99. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +0 -1
  100. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js +0 -7
  101. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js.map +0 -1
  102. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts +0 -3
  103. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts.map +0 -1
  104. package/dist/lib/modules/loyalty-point-setting/validations/index.js +0 -19
  105. package/dist/lib/modules/loyalty-point-setting/validations/index.js.map +0 -1
  106. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +0 -170
  107. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +0 -1
  108. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js +0 -19
  109. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js.map +0 -1
  110. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +0 -188
  111. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +0 -1
  112. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js +0 -19
  113. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js.map +0 -1
  114. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts +0 -12
  115. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +0 -1
  116. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js +0 -149
  117. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js.map +0 -1
  118. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +0 -47
  119. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +0 -1
  120. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js +0 -7
  121. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js.map +0 -1
  122. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +0 -504
  123. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +0 -1
  124. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js +0 -34
  125. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js.map +0 -1
  126. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts +0 -2
  127. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts.map +0 -1
  128. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +0 -321
  129. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +0 -1
  130. package/dist/types/modules/loyalty-point-setting/services/index.d.ts +0 -3
  131. package/dist/types/modules/loyalty-point-setting/services/index.d.ts.map +0 -1
  132. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +0 -37
  133. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +0 -1
  134. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +0 -34
  135. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +0 -1
  136. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts +0 -3
  137. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts.map +0 -1
  138. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +0 -8
  139. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +0 -1
  140. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +0 -9
  141. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +0 -1
  142. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts +0 -3
  143. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts.map +0 -1
  144. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +0 -179
  145. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +0 -1
  146. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +0 -197
  147. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +0 -1
  148. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts +0 -21
  149. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +0 -1
  150. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +0 -47
  151. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +0 -1
  152. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +0 -513
  153. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +0 -1
@@ -245,10 +245,11 @@ export declare const AllCouponsValidationSchema: z.ZodUnion<[z.ZodObject<{
245
245
  createdBy?: string | import("mongoose").Types.ObjectId | undefined;
246
246
  isExpired?: boolean | undefined;
247
247
  }>, z.ZodObject<{
248
- couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>;
248
+ couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>;
249
249
  itemTypes: z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>;
250
250
  shops: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>;
251
251
  isShopCoverExpenses: z.ZodDefault<z.ZodBoolean>;
252
+ firstOrderOnly: z.ZodDefault<z.ZodBoolean>;
252
253
  valueType: z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>;
253
254
  value: z.ZodNumber;
254
255
  secondaryCurrencyValue: z.ZodOptional<z.ZodNumber>;
@@ -314,10 +315,11 @@ export declare const AllCouponsValidationSchema: z.ZodUnion<[z.ZodObject<{
314
315
  expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
315
316
  orderLimitPerUser: number | null;
316
317
  isOrderLimitPerUserEnabled: boolean;
317
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
318
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
318
319
  itemTypes: import("@lyxa.ai/core/dist/utilities/enum").ItemType[];
319
320
  shops: import("mongoose").Types.ObjectId[];
320
321
  isShopCoverExpenses: boolean;
322
+ firstOrderOnly: boolean;
321
323
  secondaryCurrencyValue?: number | undefined;
322
324
  secondaryCurrencyMaxDiscountLimit?: number | undefined;
323
325
  secondaryCurrencyMinOrderValue?: number | undefined;
@@ -334,7 +336,7 @@ export declare const AllCouponsValidationSchema: z.ZodUnion<[z.ZodObject<{
334
336
  end?: string | Date | undefined;
335
337
  };
336
338
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
337
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
339
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
338
340
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
339
341
  spendLimit?: number | null | undefined;
340
342
  isSpendLimitEnabled?: boolean | undefined;
@@ -359,6 +361,122 @@ export declare const AllCouponsValidationSchema: z.ZodUnion<[z.ZodObject<{
359
361
  itemTypes?: import("@lyxa.ai/core/dist/utilities/enum").ItemType[] | undefined;
360
362
  shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
361
363
  isShopCoverExpenses?: boolean | undefined;
364
+ firstOrderOnly?: boolean | undefined;
365
+ }>, z.ZodObject<{
366
+ couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>;
367
+ shop: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
368
+ isShopCoverExpenses: z.ZodDefault<z.ZodBoolean>;
369
+ firstOrderOnly: z.ZodDefault<z.ZodBoolean>;
370
+ valueType: z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>;
371
+ value: z.ZodNumber;
372
+ secondaryCurrencyValue: z.ZodOptional<z.ZodNumber>;
373
+ maxDiscountLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
374
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodNumber>;
375
+ isMaxDiscountLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
376
+ duration: z.ZodEffects<z.ZodObject<{
377
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
378
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
379
+ }, "strip", z.ZodTypeAny, {
380
+ start: Date;
381
+ end?: Date | undefined;
382
+ }, {
383
+ start: string | Date;
384
+ end?: string | Date | undefined;
385
+ }>, {
386
+ start: Date;
387
+ end?: Date | undefined;
388
+ }, {
389
+ start: string | Date;
390
+ end?: string | Date | undefined;
391
+ }>;
392
+ spendLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
393
+ isSpendLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
394
+ totalOrderLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
395
+ isTotalOrderLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
396
+ minOrderValue: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
397
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodNumber>;
398
+ isMinOrderValueEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
399
+ forNewUserOnly: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
400
+ status: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>;
401
+ expirationReason: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>;
402
+ referringUser: z.ZodOptional<z.ZodObject<{
403
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
404
+ }, "strip", z.ZodTypeAny, {
405
+ name?: string | undefined;
406
+ }, {
407
+ name?: string | undefined;
408
+ }>>;
409
+ code: z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
410
+ orderLimitPerUser: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
411
+ isOrderLimitPerUserEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
412
+ createdBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
413
+ isExpired: z.ZodOptional<z.ZodBoolean>;
414
+ }, "strict", z.ZodTypeAny, {
415
+ shop: import("mongoose").Types.ObjectId;
416
+ value: number;
417
+ code: string;
418
+ status: import("@lyxa.ai/core/dist/utilities/enum").Status;
419
+ duration: {
420
+ start: Date;
421
+ end?: Date | undefined;
422
+ };
423
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
424
+ spendLimit: number | null;
425
+ isSpendLimitEnabled: boolean;
426
+ maxDiscountLimit: number | null;
427
+ isMaxDiscountLimitEnabled: boolean;
428
+ totalOrderLimit: number | null;
429
+ isTotalOrderLimitEnabled: boolean;
430
+ minOrderValue: number | null;
431
+ isMinOrderValueEnabled: boolean;
432
+ forNewUserOnly: boolean;
433
+ expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
434
+ orderLimitPerUser: number | null;
435
+ isOrderLimitPerUserEnabled: boolean;
436
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
437
+ isShopCoverExpenses: boolean;
438
+ firstOrderOnly: boolean;
439
+ secondaryCurrencyValue?: number | undefined;
440
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
441
+ secondaryCurrencyMinOrderValue?: number | undefined;
442
+ referringUser?: {
443
+ name?: string | undefined;
444
+ } | undefined;
445
+ createdBy?: import("mongoose").Types.ObjectId | undefined;
446
+ isExpired?: boolean | undefined;
447
+ }, {
448
+ shop: string | import("mongoose").Types.ObjectId;
449
+ value: number;
450
+ code: string;
451
+ duration: {
452
+ start: string | Date;
453
+ end?: string | Date | undefined;
454
+ };
455
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
456
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
457
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
458
+ spendLimit?: number | null | undefined;
459
+ isSpendLimitEnabled?: boolean | undefined;
460
+ secondaryCurrencyValue?: number | undefined;
461
+ maxDiscountLimit?: number | null | undefined;
462
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
463
+ isMaxDiscountLimitEnabled?: boolean | undefined;
464
+ totalOrderLimit?: number | null | undefined;
465
+ isTotalOrderLimitEnabled?: boolean | undefined;
466
+ minOrderValue?: number | null | undefined;
467
+ secondaryCurrencyMinOrderValue?: number | undefined;
468
+ isMinOrderValueEnabled?: boolean | undefined;
469
+ forNewUserOnly?: boolean | undefined;
470
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
471
+ referringUser?: {
472
+ name?: string | undefined;
473
+ } | undefined;
474
+ orderLimitPerUser?: number | null | undefined;
475
+ isOrderLimitPerUserEnabled?: boolean | undefined;
476
+ createdBy?: string | import("mongoose").Types.ObjectId | undefined;
477
+ isExpired?: boolean | undefined;
478
+ isShopCoverExpenses?: boolean | undefined;
479
+ firstOrderOnly?: boolean | undefined;
362
480
  }>, z.ZodObject<{
363
481
  couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>;
364
482
  users: z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "atleastone">;
@@ -909,10 +1027,11 @@ export declare const AllCouponsSchema: z.ZodUnion<[z.ZodObject<{
909
1027
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
910
1028
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
911
1029
  }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
912
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1030
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
913
1031
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
914
1032
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
915
1033
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1034
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
916
1035
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
917
1036
  value: z.ZodOptional<z.ZodNumber>;
918
1037
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -959,10 +1078,11 @@ export declare const AllCouponsSchema: z.ZodUnion<[z.ZodObject<{
959
1078
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
960
1079
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
961
1080
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
962
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1081
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
963
1082
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
964
1083
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
965
1084
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1085
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
966
1086
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
967
1087
  value: z.ZodOptional<z.ZodNumber>;
968
1088
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -1009,10 +1129,161 @@ export declare const AllCouponsSchema: z.ZodUnion<[z.ZodObject<{
1009
1129
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1010
1130
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1011
1131
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1012
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1132
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1013
1133
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1014
1134
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
1015
1135
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1136
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1137
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1138
+ value: z.ZodOptional<z.ZodNumber>;
1139
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1140
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1141
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1142
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1143
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1144
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1145
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1146
+ }, "strip", z.ZodTypeAny, {
1147
+ start: Date;
1148
+ end?: Date | undefined;
1149
+ }, {
1150
+ start: string | Date;
1151
+ end?: string | Date | undefined;
1152
+ }>, {
1153
+ start: Date;
1154
+ end?: Date | undefined;
1155
+ }, {
1156
+ start: string | Date;
1157
+ end?: string | Date | undefined;
1158
+ }>>;
1159
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1160
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1161
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1162
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1163
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1164
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1165
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1166
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1167
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1168
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1169
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1170
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1171
+ }, "strip", z.ZodTypeAny, {
1172
+ name?: string | undefined;
1173
+ }, {
1174
+ name?: string | undefined;
1175
+ }>>>;
1176
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1177
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1178
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1179
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
1180
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1181
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1182
+ }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
1183
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1184
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1185
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1186
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1187
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1188
+ value: z.ZodOptional<z.ZodNumber>;
1189
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1190
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1191
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1192
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1193
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1194
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1195
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1196
+ }, "strip", z.ZodTypeAny, {
1197
+ start: Date;
1198
+ end?: Date | undefined;
1199
+ }, {
1200
+ start: string | Date;
1201
+ end?: string | Date | undefined;
1202
+ }>, {
1203
+ start: Date;
1204
+ end?: Date | undefined;
1205
+ }, {
1206
+ start: string | Date;
1207
+ end?: string | Date | undefined;
1208
+ }>>;
1209
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1210
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1211
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1212
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1213
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1214
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1215
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1216
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1217
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1218
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1219
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1220
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1221
+ }, "strip", z.ZodTypeAny, {
1222
+ name?: string | undefined;
1223
+ }, {
1224
+ name?: string | undefined;
1225
+ }>>>;
1226
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1227
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1228
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1229
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
1230
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1231
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1232
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1233
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1234
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1235
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1236
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1237
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1238
+ value: z.ZodOptional<z.ZodNumber>;
1239
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1240
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1241
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1242
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1243
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1244
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1245
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1246
+ }, "strip", z.ZodTypeAny, {
1247
+ start: Date;
1248
+ end?: Date | undefined;
1249
+ }, {
1250
+ start: string | Date;
1251
+ end?: string | Date | undefined;
1252
+ }>, {
1253
+ start: Date;
1254
+ end?: Date | undefined;
1255
+ }, {
1256
+ start: string | Date;
1257
+ end?: string | Date | undefined;
1258
+ }>>;
1259
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1260
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1261
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1262
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1263
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1264
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1265
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1266
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1267
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1268
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1269
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1270
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1271
+ }, "strip", z.ZodTypeAny, {
1272
+ name?: string | undefined;
1273
+ }, {
1274
+ name?: string | undefined;
1275
+ }>>>;
1276
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1277
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1278
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1279
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
1280
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1281
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1282
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1283
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1284
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
1285
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1286
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1016
1287
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1017
1288
  value: z.ZodOptional<z.ZodNumber>;
1018
1289
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -1607,10 +1878,11 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
1607
1878
  createdBy?: string | import("mongoose").Types.ObjectId | undefined;
1608
1879
  isExpired?: boolean | undefined;
1609
1880
  }>, z.ZodObject<{
1610
- couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>;
1881
+ couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>;
1611
1882
  itemTypes: z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>;
1612
1883
  shops: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>;
1613
1884
  isShopCoverExpenses: z.ZodDefault<z.ZodBoolean>;
1885
+ firstOrderOnly: z.ZodDefault<z.ZodBoolean>;
1614
1886
  valueType: z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>;
1615
1887
  value: z.ZodNumber;
1616
1888
  secondaryCurrencyValue: z.ZodOptional<z.ZodNumber>;
@@ -1676,10 +1948,11 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
1676
1948
  expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
1677
1949
  orderLimitPerUser: number | null;
1678
1950
  isOrderLimitPerUserEnabled: boolean;
1679
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
1951
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
1680
1952
  itemTypes: import("@lyxa.ai/core/dist/utilities/enum").ItemType[];
1681
1953
  shops: import("mongoose").Types.ObjectId[];
1682
1954
  isShopCoverExpenses: boolean;
1955
+ firstOrderOnly: boolean;
1683
1956
  secondaryCurrencyValue?: number | undefined;
1684
1957
  secondaryCurrencyMaxDiscountLimit?: number | undefined;
1685
1958
  secondaryCurrencyMinOrderValue?: number | undefined;
@@ -1696,7 +1969,7 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
1696
1969
  end?: string | Date | undefined;
1697
1970
  };
1698
1971
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
1699
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
1972
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
1700
1973
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
1701
1974
  spendLimit?: number | null | undefined;
1702
1975
  isSpendLimitEnabled?: boolean | undefined;
@@ -1721,6 +1994,122 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
1721
1994
  itemTypes?: import("@lyxa.ai/core/dist/utilities/enum").ItemType[] | undefined;
1722
1995
  shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
1723
1996
  isShopCoverExpenses?: boolean | undefined;
1997
+ firstOrderOnly?: boolean | undefined;
1998
+ }>, z.ZodObject<{
1999
+ couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>;
2000
+ shop: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
2001
+ isShopCoverExpenses: z.ZodDefault<z.ZodBoolean>;
2002
+ firstOrderOnly: z.ZodDefault<z.ZodBoolean>;
2003
+ valueType: z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>;
2004
+ value: z.ZodNumber;
2005
+ secondaryCurrencyValue: z.ZodOptional<z.ZodNumber>;
2006
+ maxDiscountLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
2007
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodNumber>;
2008
+ isMaxDiscountLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2009
+ duration: z.ZodEffects<z.ZodObject<{
2010
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2011
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2012
+ }, "strip", z.ZodTypeAny, {
2013
+ start: Date;
2014
+ end?: Date | undefined;
2015
+ }, {
2016
+ start: string | Date;
2017
+ end?: string | Date | undefined;
2018
+ }>, {
2019
+ start: Date;
2020
+ end?: Date | undefined;
2021
+ }, {
2022
+ start: string | Date;
2023
+ end?: string | Date | undefined;
2024
+ }>;
2025
+ spendLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
2026
+ isSpendLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2027
+ totalOrderLimit: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
2028
+ isTotalOrderLimitEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2029
+ minOrderValue: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
2030
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodNumber>;
2031
+ isMinOrderValueEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2032
+ forNewUserOnly: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2033
+ status: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>;
2034
+ expirationReason: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>;
2035
+ referringUser: z.ZodOptional<z.ZodObject<{
2036
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2037
+ }, "strip", z.ZodTypeAny, {
2038
+ name?: string | undefined;
2039
+ }, {
2040
+ name?: string | undefined;
2041
+ }>>;
2042
+ code: z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
2043
+ orderLimitPerUser: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
2044
+ isOrderLimitPerUserEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2045
+ createdBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2046
+ isExpired: z.ZodOptional<z.ZodBoolean>;
2047
+ }, "strict", z.ZodTypeAny, {
2048
+ shop: import("mongoose").Types.ObjectId;
2049
+ value: number;
2050
+ code: string;
2051
+ status: import("@lyxa.ai/core/dist/utilities/enum").Status;
2052
+ duration: {
2053
+ start: Date;
2054
+ end?: Date | undefined;
2055
+ };
2056
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2057
+ spendLimit: number | null;
2058
+ isSpendLimitEnabled: boolean;
2059
+ maxDiscountLimit: number | null;
2060
+ isMaxDiscountLimitEnabled: boolean;
2061
+ totalOrderLimit: number | null;
2062
+ isTotalOrderLimitEnabled: boolean;
2063
+ minOrderValue: number | null;
2064
+ isMinOrderValueEnabled: boolean;
2065
+ forNewUserOnly: boolean;
2066
+ expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
2067
+ orderLimitPerUser: number | null;
2068
+ isOrderLimitPerUserEnabled: boolean;
2069
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2070
+ isShopCoverExpenses: boolean;
2071
+ firstOrderOnly: boolean;
2072
+ secondaryCurrencyValue?: number | undefined;
2073
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2074
+ secondaryCurrencyMinOrderValue?: number | undefined;
2075
+ referringUser?: {
2076
+ name?: string | undefined;
2077
+ } | undefined;
2078
+ createdBy?: import("mongoose").Types.ObjectId | undefined;
2079
+ isExpired?: boolean | undefined;
2080
+ }, {
2081
+ shop: string | import("mongoose").Types.ObjectId;
2082
+ value: number;
2083
+ code: string;
2084
+ duration: {
2085
+ start: string | Date;
2086
+ end?: string | Date | undefined;
2087
+ };
2088
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2089
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2090
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2091
+ spendLimit?: number | null | undefined;
2092
+ isSpendLimitEnabled?: boolean | undefined;
2093
+ secondaryCurrencyValue?: number | undefined;
2094
+ maxDiscountLimit?: number | null | undefined;
2095
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2096
+ isMaxDiscountLimitEnabled?: boolean | undefined;
2097
+ totalOrderLimit?: number | null | undefined;
2098
+ isTotalOrderLimitEnabled?: boolean | undefined;
2099
+ minOrderValue?: number | null | undefined;
2100
+ secondaryCurrencyMinOrderValue?: number | undefined;
2101
+ isMinOrderValueEnabled?: boolean | undefined;
2102
+ forNewUserOnly?: boolean | undefined;
2103
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
2104
+ referringUser?: {
2105
+ name?: string | undefined;
2106
+ } | undefined;
2107
+ orderLimitPerUser?: number | null | undefined;
2108
+ isOrderLimitPerUserEnabled?: boolean | undefined;
2109
+ createdBy?: string | import("mongoose").Types.ObjectId | undefined;
2110
+ isExpired?: boolean | undefined;
2111
+ isShopCoverExpenses?: boolean | undefined;
2112
+ firstOrderOnly?: boolean | undefined;
1724
2113
  }>, z.ZodObject<{
1725
2114
  couponType: z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>;
1726
2115
  users: z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "atleastone">;
@@ -2046,10 +2435,44 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
2046
2435
  expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
2047
2436
  orderLimitPerUser: number | null;
2048
2437
  isOrderLimitPerUserEnabled: boolean;
2049
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2438
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
2050
2439
  itemTypes: import("@lyxa.ai/core/dist/utilities/enum").ItemType[];
2051
2440
  shops: import("mongoose").Types.ObjectId[];
2052
2441
  isShopCoverExpenses: boolean;
2442
+ firstOrderOnly: boolean;
2443
+ secondaryCurrencyValue?: number | undefined;
2444
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2445
+ secondaryCurrencyMinOrderValue?: number | undefined;
2446
+ referringUser?: {
2447
+ name?: string | undefined;
2448
+ } | undefined;
2449
+ createdBy?: import("mongoose").Types.ObjectId | undefined;
2450
+ isExpired?: boolean | undefined;
2451
+ } | {
2452
+ shop: import("mongoose").Types.ObjectId;
2453
+ value: number;
2454
+ code: string;
2455
+ status: import("@lyxa.ai/core/dist/utilities/enum").Status;
2456
+ duration: {
2457
+ start: Date;
2458
+ end?: Date | undefined;
2459
+ };
2460
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2461
+ spendLimit: number | null;
2462
+ isSpendLimitEnabled: boolean;
2463
+ maxDiscountLimit: number | null;
2464
+ isMaxDiscountLimitEnabled: boolean;
2465
+ totalOrderLimit: number | null;
2466
+ isTotalOrderLimitEnabled: boolean;
2467
+ minOrderValue: number | null;
2468
+ isMinOrderValueEnabled: boolean;
2469
+ forNewUserOnly: boolean;
2470
+ expirationReason: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null;
2471
+ orderLimitPerUser: number | null;
2472
+ isOrderLimitPerUserEnabled: boolean;
2473
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2474
+ isShopCoverExpenses: boolean;
2475
+ firstOrderOnly: boolean;
2053
2476
  secondaryCurrencyValue?: number | undefined;
2054
2477
  secondaryCurrencyMaxDiscountLimit?: number | undefined;
2055
2478
  secondaryCurrencyMinOrderValue?: number | undefined;
@@ -2173,10 +2596,40 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
2173
2596
  end?: string | Date | undefined;
2174
2597
  };
2175
2598
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2176
- user: string | import("mongoose").Types.ObjectId;
2177
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD;
2178
- referralCodeUsedBy: string | import("mongoose").Types.ObjectId;
2179
- referralCodeUsedOnOrder: string | import("mongoose").Types.ObjectId;
2599
+ user: string | import("mongoose").Types.ObjectId;
2600
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD;
2601
+ referralCodeUsedBy: string | import("mongoose").Types.ObjectId;
2602
+ referralCodeUsedOnOrder: string | import("mongoose").Types.ObjectId;
2603
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2604
+ spendLimit?: number | null | undefined;
2605
+ isSpendLimitEnabled?: boolean | undefined;
2606
+ secondaryCurrencyValue?: number | undefined;
2607
+ maxDiscountLimit?: number | null | undefined;
2608
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2609
+ isMaxDiscountLimitEnabled?: boolean | undefined;
2610
+ totalOrderLimit?: number | null | undefined;
2611
+ isTotalOrderLimitEnabled?: boolean | undefined;
2612
+ minOrderValue?: number | null | undefined;
2613
+ secondaryCurrencyMinOrderValue?: number | undefined;
2614
+ isMinOrderValueEnabled?: boolean | undefined;
2615
+ forNewUserOnly?: boolean | undefined;
2616
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
2617
+ referringUser?: {
2618
+ name?: string | undefined;
2619
+ } | undefined;
2620
+ orderLimitPerUser?: number | null | undefined;
2621
+ isOrderLimitPerUserEnabled?: boolean | undefined;
2622
+ createdBy?: string | import("mongoose").Types.ObjectId | undefined;
2623
+ isExpired?: boolean | undefined;
2624
+ } | {
2625
+ value: number;
2626
+ code: string;
2627
+ duration: {
2628
+ start: string | Date;
2629
+ end?: string | Date | undefined;
2630
+ };
2631
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2632
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
2180
2633
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2181
2634
  spendLimit?: number | null | undefined;
2182
2635
  isSpendLimitEnabled?: boolean | undefined;
@@ -2198,7 +2651,12 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
2198
2651
  isOrderLimitPerUserEnabled?: boolean | undefined;
2199
2652
  createdBy?: string | import("mongoose").Types.ObjectId | undefined;
2200
2653
  isExpired?: boolean | undefined;
2654
+ itemTypes?: import("@lyxa.ai/core/dist/utilities/enum").ItemType[] | undefined;
2655
+ shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
2656
+ isShopCoverExpenses?: boolean | undefined;
2657
+ firstOrderOnly?: boolean | undefined;
2201
2658
  } | {
2659
+ shop: string | import("mongoose").Types.ObjectId;
2202
2660
  value: number;
2203
2661
  code: string;
2204
2662
  duration: {
@@ -2228,9 +2686,8 @@ export declare const AllCouponsUpdateSchema: z.ZodObject<{
2228
2686
  isOrderLimitPerUserEnabled?: boolean | undefined;
2229
2687
  createdBy?: string | import("mongoose").Types.ObjectId | undefined;
2230
2688
  isExpired?: boolean | undefined;
2231
- itemTypes?: import("@lyxa.ai/core/dist/utilities/enum").ItemType[] | undefined;
2232
- shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
2233
2689
  isShopCoverExpenses?: boolean | undefined;
2690
+ firstOrderOnly?: boolean | undefined;
2234
2691
  } | {
2235
2692
  value: number;
2236
2693
  code: string;
@@ -2426,10 +2883,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
2426
2883
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2427
2884
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2428
2885
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2429
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2886
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2430
2887
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2431
2888
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
2432
2889
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2890
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2891
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2892
+ value: z.ZodOptional<z.ZodNumber>;
2893
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2894
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2895
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2896
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2897
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2898
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2899
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2900
+ }, "strip", z.ZodTypeAny, {
2901
+ start: Date;
2902
+ end?: Date | undefined;
2903
+ }, {
2904
+ start: string | Date;
2905
+ end?: string | Date | undefined;
2906
+ }>, {
2907
+ start: Date;
2908
+ end?: Date | undefined;
2909
+ }, {
2910
+ start: string | Date;
2911
+ end?: string | Date | undefined;
2912
+ }>>;
2913
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2914
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2915
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2916
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2917
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2918
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2919
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2920
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2921
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2922
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2923
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2924
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2925
+ }, "strip", z.ZodTypeAny, {
2926
+ name?: string | undefined;
2927
+ }, {
2928
+ name?: string | undefined;
2929
+ }>>>;
2930
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2931
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2932
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2933
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
2934
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2935
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2936
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2937
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2938
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2939
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2940
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2433
2941
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2434
2942
  value: z.ZodOptional<z.ZodNumber>;
2435
2943
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -2682,10 +3190,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
2682
3190
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2683
3191
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2684
3192
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2685
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3193
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2686
3194
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2687
3195
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
2688
3196
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3197
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3198
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3199
+ value: z.ZodOptional<z.ZodNumber>;
3200
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3201
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3202
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3203
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3204
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3205
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3206
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3207
+ }, "strip", z.ZodTypeAny, {
3208
+ start: Date;
3209
+ end?: Date | undefined;
3210
+ }, {
3211
+ start: string | Date;
3212
+ end?: string | Date | undefined;
3213
+ }>, {
3214
+ start: Date;
3215
+ end?: Date | undefined;
3216
+ }, {
3217
+ start: string | Date;
3218
+ end?: string | Date | undefined;
3219
+ }>>;
3220
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3221
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3222
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3223
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3224
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3225
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3226
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3227
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3228
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3229
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3230
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3231
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3232
+ }, "strip", z.ZodTypeAny, {
3233
+ name?: string | undefined;
3234
+ }, {
3235
+ name?: string | undefined;
3236
+ }>>>;
3237
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3238
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3239
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3240
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3241
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3242
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3243
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3244
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3245
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3246
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3247
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2689
3248
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2690
3249
  value: z.ZodOptional<z.ZodNumber>;
2691
3250
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -2940,10 +3499,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
2940
3499
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2941
3500
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
2942
3501
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2943
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3502
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2944
3503
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2945
3504
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
2946
3505
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3506
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3507
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3508
+ value: z.ZodOptional<z.ZodNumber>;
3509
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3510
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3511
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3512
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3513
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3514
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3515
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3516
+ }, "strip", z.ZodTypeAny, {
3517
+ start: Date;
3518
+ end?: Date | undefined;
3519
+ }, {
3520
+ start: string | Date;
3521
+ end?: string | Date | undefined;
3522
+ }>, {
3523
+ start: Date;
3524
+ end?: Date | undefined;
3525
+ }, {
3526
+ start: string | Date;
3527
+ end?: string | Date | undefined;
3528
+ }>>;
3529
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3530
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3531
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3532
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3533
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3534
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3535
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3536
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3537
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3538
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3539
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3540
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3541
+ }, "strip", z.ZodTypeAny, {
3542
+ name?: string | undefined;
3543
+ }, {
3544
+ name?: string | undefined;
3545
+ }>>>;
3546
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3547
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3548
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3549
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3550
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3551
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3552
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3553
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3554
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3555
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3556
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2947
3557
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2948
3558
  value: z.ZodOptional<z.ZodNumber>;
2949
3559
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -3204,10 +3814,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
3204
3814
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3205
3815
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3206
3816
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3207
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3817
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3208
3818
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3209
3819
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3210
3820
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3821
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3822
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3823
+ value: z.ZodOptional<z.ZodNumber>;
3824
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3825
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3826
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3827
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3828
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3829
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3830
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3831
+ }, "strip", z.ZodTypeAny, {
3832
+ start: Date;
3833
+ end?: Date | undefined;
3834
+ }, {
3835
+ start: string | Date;
3836
+ end?: string | Date | undefined;
3837
+ }>, {
3838
+ start: Date;
3839
+ end?: Date | undefined;
3840
+ }, {
3841
+ start: string | Date;
3842
+ end?: string | Date | undefined;
3843
+ }>>;
3844
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3845
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3846
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3847
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3848
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3849
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3850
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3851
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3852
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3853
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3854
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3855
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3856
+ }, "strip", z.ZodTypeAny, {
3857
+ name?: string | undefined;
3858
+ }, {
3859
+ name?: string | undefined;
3860
+ }>>>;
3861
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3862
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3863
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3864
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3865
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3866
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3867
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3868
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3869
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3870
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3871
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3211
3872
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3212
3873
  value: z.ZodOptional<z.ZodNumber>;
3213
3874
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -3417,10 +4078,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
3417
4078
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3418
4079
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3419
4080
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3420
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3421
- user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3422
- referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3423
- referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4081
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
4082
+ user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4083
+ referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4084
+ referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4085
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4086
+ value: z.ZodOptional<z.ZodNumber>;
4087
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4088
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4089
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4090
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4091
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
4092
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
4093
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
4094
+ }, "strip", z.ZodTypeAny, {
4095
+ start: Date;
4096
+ end?: Date | undefined;
4097
+ }, {
4098
+ start: string | Date;
4099
+ end?: string | Date | undefined;
4100
+ }>, {
4101
+ start: Date;
4102
+ end?: Date | undefined;
4103
+ }, {
4104
+ start: string | Date;
4105
+ end?: string | Date | undefined;
4106
+ }>>;
4107
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4108
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4109
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4110
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4111
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
4112
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4113
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4114
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4115
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4116
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
4117
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
4118
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4119
+ }, "strip", z.ZodTypeAny, {
4120
+ name?: string | undefined;
4121
+ }, {
4122
+ name?: string | undefined;
4123
+ }>>>;
4124
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4125
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4126
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4127
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
4128
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4129
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4130
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4131
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
4132
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
4133
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
4134
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4135
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3424
4136
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3425
4137
  value: z.ZodOptional<z.ZodNumber>;
3426
4138
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -3468,9 +4180,9 @@ export declare const CouponResponseSchema: z.ZodObject<{
3468
4180
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3469
4181
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3470
4182
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3471
- itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3472
- shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
4183
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3473
4184
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4185
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3474
4186
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3475
4187
  value: z.ZodOptional<z.ZodNumber>;
3476
4188
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -3723,10 +4435,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
3723
4435
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3724
4436
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3725
4437
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3726
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4438
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3727
4439
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3728
4440
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3729
4441
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4442
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4443
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4444
+ value: z.ZodOptional<z.ZodNumber>;
4445
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4446
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4447
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4448
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4449
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
4450
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
4451
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
4452
+ }, "strip", z.ZodTypeAny, {
4453
+ start: Date;
4454
+ end?: Date | undefined;
4455
+ }, {
4456
+ start: string | Date;
4457
+ end?: string | Date | undefined;
4458
+ }>, {
4459
+ start: Date;
4460
+ end?: Date | undefined;
4461
+ }, {
4462
+ start: string | Date;
4463
+ end?: string | Date | undefined;
4464
+ }>>;
4465
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4466
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4467
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4468
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4469
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
4470
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4471
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4472
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4473
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4474
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
4475
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
4476
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4477
+ }, "strip", z.ZodTypeAny, {
4478
+ name?: string | undefined;
4479
+ }, {
4480
+ name?: string | undefined;
4481
+ }>>>;
4482
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4483
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4484
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4485
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
4486
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4487
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4488
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4489
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4490
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4491
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4492
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3730
4493
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3731
4494
  value: z.ZodOptional<z.ZodNumber>;
3732
4495
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -3983,10 +4746,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
3983
4746
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3984
4747
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3985
4748
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3986
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4749
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3987
4750
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3988
4751
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3989
4752
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4753
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4754
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4755
+ value: z.ZodOptional<z.ZodNumber>;
4756
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4757
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4758
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4759
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4760
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
4761
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
4762
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
4763
+ }, "strip", z.ZodTypeAny, {
4764
+ start: Date;
4765
+ end?: Date | undefined;
4766
+ }, {
4767
+ start: string | Date;
4768
+ end?: string | Date | undefined;
4769
+ }>, {
4770
+ start: Date;
4771
+ end?: Date | undefined;
4772
+ }, {
4773
+ start: string | Date;
4774
+ end?: string | Date | undefined;
4775
+ }>>;
4776
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4777
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4778
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4779
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4780
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
4781
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4782
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4783
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4784
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4785
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
4786
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
4787
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4788
+ }, "strip", z.ZodTypeAny, {
4789
+ name?: string | undefined;
4790
+ }, {
4791
+ name?: string | undefined;
4792
+ }>>>;
4793
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4794
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4795
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4796
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
4797
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4798
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4799
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4800
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4801
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4802
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4803
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3990
4804
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3991
4805
  value: z.ZodOptional<z.ZodNumber>;
3992
4806
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -4240,10 +5054,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
4240
5054
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4241
5055
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4242
5056
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4243
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5057
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
4244
5058
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
4245
5059
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
4246
5060
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5061
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5062
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
5063
+ value: z.ZodOptional<z.ZodNumber>;
5064
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5065
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5066
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5067
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5068
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
5069
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
5070
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
5071
+ }, "strip", z.ZodTypeAny, {
5072
+ start: Date;
5073
+ end?: Date | undefined;
5074
+ }, {
5075
+ start: string | Date;
5076
+ end?: string | Date | undefined;
5077
+ }>, {
5078
+ start: Date;
5079
+ end?: Date | undefined;
5080
+ }, {
5081
+ start: string | Date;
5082
+ end?: string | Date | undefined;
5083
+ }>>;
5084
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5085
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5086
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5087
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5088
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
5089
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5090
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5091
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5092
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
5093
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
5094
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
5095
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5096
+ }, "strip", z.ZodTypeAny, {
5097
+ name?: string | undefined;
5098
+ }, {
5099
+ name?: string | undefined;
5100
+ }>>>;
5101
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5102
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5103
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5104
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
5105
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
5106
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5107
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
5108
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5109
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5110
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5111
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4247
5112
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4248
5113
  value: z.ZodOptional<z.ZodNumber>;
4249
5114
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -4507,10 +5372,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
4507
5372
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4508
5373
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4509
5374
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4510
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5375
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
4511
5376
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
4512
5377
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
4513
5378
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5379
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5380
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
5381
+ value: z.ZodOptional<z.ZodNumber>;
5382
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5383
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5384
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5385
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5386
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
5387
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
5388
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
5389
+ }, "strip", z.ZodTypeAny, {
5390
+ start: Date;
5391
+ end?: Date | undefined;
5392
+ }, {
5393
+ start: string | Date;
5394
+ end?: string | Date | undefined;
5395
+ }>, {
5396
+ start: Date;
5397
+ end?: Date | undefined;
5398
+ }, {
5399
+ start: string | Date;
5400
+ end?: string | Date | undefined;
5401
+ }>>;
5402
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5403
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5404
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5405
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5406
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
5407
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5408
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5409
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5410
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
5411
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
5412
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
5413
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5414
+ }, "strip", z.ZodTypeAny, {
5415
+ name?: string | undefined;
5416
+ }, {
5417
+ name?: string | undefined;
5418
+ }>>>;
5419
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5420
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5421
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5422
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
5423
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
5424
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5425
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
5426
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5427
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5428
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5429
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4514
5430
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4515
5431
  value: z.ZodOptional<z.ZodNumber>;
4516
5432
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -4764,10 +5680,61 @@ export declare const CouponResponseSchema: z.ZodObject<{
4764
5680
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4765
5681
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
4766
5682
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4767
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5683
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
4768
5684
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
4769
5685
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
4770
5686
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5687
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5688
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
5689
+ value: z.ZodOptional<z.ZodNumber>;
5690
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5691
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5692
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5693
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5694
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
5695
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
5696
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
5697
+ }, "strip", z.ZodTypeAny, {
5698
+ start: Date;
5699
+ end?: Date | undefined;
5700
+ }, {
5701
+ start: string | Date;
5702
+ end?: string | Date | undefined;
5703
+ }>, {
5704
+ start: Date;
5705
+ end?: Date | undefined;
5706
+ }, {
5707
+ start: string | Date;
5708
+ end?: string | Date | undefined;
5709
+ }>>;
5710
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5711
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5712
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5713
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5714
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
5715
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
5716
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5717
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5718
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
5719
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
5720
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
5721
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5722
+ }, "strip", z.ZodTypeAny, {
5723
+ name?: string | undefined;
5724
+ }, {
5725
+ name?: string | undefined;
5726
+ }>>>;
5727
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
5728
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
5729
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
5730
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
5731
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
5732
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5733
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
5734
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5735
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
5736
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
5737
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4771
5738
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4772
5739
  value: z.ZodOptional<z.ZodNumber>;
4773
5740
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;