@lyxa.ai/marketing 1.0.53 → 1.0.55

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 (170) hide show
  1. package/dist/lib/index.d.ts +679 -28
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/index.js +2 -2
  4. package/dist/lib/index.js.map +1 -1
  5. package/dist/lib/modules/coupon/routers/coupon.router.d.ts +651 -0
  6. package/dist/lib/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  7. package/dist/lib/modules/coupon/routers/coupon.router.js +8 -1
  8. package/dist/lib/modules/coupon/routers/coupon.router.js.map +1 -1
  9. package/dist/lib/modules/coupon/services/coupon.service.d.ts +8 -1
  10. package/dist/lib/modules/coupon/services/coupon.service.d.ts.map +1 -1
  11. package/dist/lib/modules/coupon/services/coupon.service.js +234 -27
  12. package/dist/lib/modules/coupon/services/coupon.service.js.map +1 -1
  13. package/dist/lib/modules/coupon/services/custom-coupon.service.d.ts +5 -0
  14. package/dist/lib/modules/coupon/services/custom-coupon.service.d.ts.map +1 -1
  15. package/dist/lib/modules/coupon/services/helper.service.d.ts +5 -0
  16. package/dist/lib/modules/coupon/services/helper.service.d.ts.map +1 -1
  17. package/dist/lib/modules/coupon/services/individual-store-coupon.service.d.ts +5 -0
  18. package/dist/lib/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  19. package/dist/lib/modules/coupon/services/patterns/repository/CouponMetricsRepository.d.ts +1 -0
  20. package/dist/lib/modules/coupon/services/patterns/repository/CouponMetricsRepository.d.ts.map +1 -1
  21. package/dist/lib/modules/coupon/services/patterns/repository/CouponMetricsRepository.js +27 -9
  22. package/dist/lib/modules/coupon/services/patterns/repository/CouponMetricsRepository.js.map +1 -1
  23. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts +5 -0
  24. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -1
  25. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts +293 -1125
  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 -16
  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 +44 -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 +16 -1
  32. package/dist/lib/modules/coupon/validations/coupon.validation.js.map +1 -1
  33. package/dist/lib/modules/coupon/validations/create-coupon.validation.d.ts.map +1 -1
  34. package/dist/lib/modules/coupon/validations/create-coupon.validation.js +4 -1
  35. package/dist/lib/modules/coupon/validations/create-coupon.validation.js.map +1 -1
  36. package/dist/lib/modules/coupon/validations/index.d.ts +1 -0
  37. package/dist/lib/modules/coupon/validations/index.d.ts.map +1 -1
  38. package/dist/lib/modules/coupon/validations/index.js +1 -0
  39. package/dist/lib/modules/coupon/validations/index.js.map +1 -1
  40. package/dist/lib/modules/limited-time-offer/campaign/campaign.router.d.ts +8 -8
  41. package/dist/lib/modules/limited-time-offer/campaign/limited-time-offer-campaign.validation.d.ts +34 -34
  42. package/dist/lib/modules/limited-time-offer/config/limited-time-offer-config.validation.d.ts +9 -1
  43. package/dist/lib/modules/limited-time-offer/config/limited-time-offer-config.validation.d.ts.map +1 -1
  44. package/dist/lib/modules/limited-time-offer/config/limited-time-offer-config.validation.js +26 -3
  45. package/dist/lib/modules/limited-time-offer/config/limited-time-offer-config.validation.js.map +1 -1
  46. package/dist/lib/modules/limited-time-offer/limited-time-offer.router.d.ts +28 -28
  47. package/dist/lib/modules/limited-time-offer/limited-time-offer.service.d.ts +1 -0
  48. package/dist/lib/modules/limited-time-offer/limited-time-offer.service.d.ts.map +1 -1
  49. package/dist/lib/modules/limited-time-offer/limited-time-offer.service.js +6 -0
  50. package/dist/lib/modules/limited-time-offer/limited-time-offer.service.js.map +1 -1
  51. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.builder.d.ts +13 -0
  52. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.builder.d.ts.map +1 -0
  53. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.builder.js +22 -0
  54. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.builder.js.map +1 -0
  55. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.constants.d.ts +20 -0
  56. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.constants.d.ts.map +1 -0
  57. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.constants.js +26 -0
  58. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.constants.js.map +1 -0
  59. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.service.d.ts +8 -0
  60. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.service.d.ts.map +1 -0
  61. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.service.js +60 -0
  62. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.service.js.map +1 -0
  63. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.type.d.ts +5 -0
  64. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.type.d.ts.map +1 -0
  65. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.type.js +3 -0
  66. package/dist/lib/modules/limited-time-offer/notification/limited-time-offer-notification.type.js.map +1 -0
  67. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.builder.js +1 -1
  68. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.builder.js.map +1 -1
  69. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.repository.d.ts +1 -0
  70. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.repository.d.ts.map +1 -1
  71. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.repository.js +8 -1
  72. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.repository.js.map +1 -1
  73. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.router.d.ts +20 -20
  74. package/dist/lib/modules/limited-time-offer/participant/limited-time-offer-participant.validation.d.ts +82 -82
  75. package/dist/lib/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.d.ts +2 -1
  76. package/dist/lib/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.d.ts.map +1 -1
  77. package/dist/lib/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.js +12 -5
  78. package/dist/lib/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.js.map +1 -1
  79. package/dist/lib/modules/marketing/services/marketing.service.d.ts +1 -0
  80. package/dist/lib/modules/marketing/services/marketing.service.d.ts.map +1 -1
  81. package/dist/lib/modules/marketing/services/marketing.service.js +9 -0
  82. package/dist/lib/modules/marketing/services/marketing.service.js.map +1 -1
  83. package/dist/lib/modules/tournament/match/events/evaluate-predictions.consumer.js +1 -1
  84. package/dist/lib/modules/tournament/match/events/evaluate-predictions.consumer.js.map +1 -1
  85. package/dist/lib/modules/tournament/notification/__tests__/notification.service.spec.d.ts +2 -0
  86. package/dist/lib/modules/tournament/notification/__tests__/notification.service.spec.d.ts.map +1 -0
  87. package/dist/lib/modules/tournament/notification/__tests__/notification.service.spec.js +266 -0
  88. package/dist/lib/modules/tournament/notification/__tests__/notification.service.spec.js.map +1 -0
  89. package/dist/lib/modules/tournament/notification/notification.service.d.ts +14 -3
  90. package/dist/lib/modules/tournament/notification/notification.service.d.ts.map +1 -1
  91. package/dist/lib/modules/tournament/notification/notification.service.js +89 -31
  92. package/dist/lib/modules/tournament/notification/notification.service.js.map +1 -1
  93. package/dist/lib/modules/tournament/participant/participant.repository.d.ts +1 -0
  94. package/dist/lib/modules/tournament/participant/participant.repository.d.ts.map +1 -1
  95. package/dist/lib/modules/tournament/participant/participant.repository.js +9 -0
  96. package/dist/lib/modules/tournament/participant/participant.repository.js.map +1 -1
  97. package/dist/lib/modules/tournament/participant/participant.service.d.ts +1 -0
  98. package/dist/lib/modules/tournament/participant/participant.service.d.ts.map +1 -1
  99. package/dist/lib/modules/tournament/participant/participant.service.js +6 -0
  100. package/dist/lib/modules/tournament/participant/participant.service.js.map +1 -1
  101. package/dist/lib/modules/tournament/reward/reward.builder.d.ts.map +1 -1
  102. package/dist/lib/modules/tournament/reward/reward.builder.js +3 -3
  103. package/dist/lib/modules/tournament/reward/reward.builder.js.map +1 -1
  104. package/dist/lib/modules/tournament/reward/reward.types.d.ts +1 -0
  105. package/dist/lib/modules/tournament/reward/reward.types.d.ts.map +1 -1
  106. package/dist/lib/modules/tournament/reward/reward.types.js.map +1 -1
  107. package/dist/lib/modules/tournament/schedule/schedule.service.d.ts +7 -0
  108. package/dist/lib/modules/tournament/schedule/schedule.service.d.ts.map +1 -1
  109. package/dist/lib/modules/tournament/schedule/schedule.service.js +52 -19
  110. package/dist/lib/modules/tournament/schedule/schedule.service.js.map +1 -1
  111. package/dist/lib/utility/utils.js +2 -2
  112. package/dist/lib/utility/utils.js.map +1 -1
  113. package/dist/types/index.d.ts +679 -28
  114. package/dist/types/index.d.ts.map +1 -1
  115. package/dist/types/modules/coupon/routers/coupon.router.d.ts +651 -0
  116. package/dist/types/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  117. package/dist/types/modules/coupon/services/coupon.service.d.ts +8 -1
  118. package/dist/types/modules/coupon/services/coupon.service.d.ts.map +1 -1
  119. package/dist/types/modules/coupon/services/custom-coupon.service.d.ts +5 -0
  120. package/dist/types/modules/coupon/services/custom-coupon.service.d.ts.map +1 -1
  121. package/dist/types/modules/coupon/services/helper.service.d.ts +5 -0
  122. package/dist/types/modules/coupon/services/helper.service.d.ts.map +1 -1
  123. package/dist/types/modules/coupon/services/individual-store-coupon.service.d.ts +5 -0
  124. package/dist/types/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  125. package/dist/types/modules/coupon/services/patterns/repository/CouponMetricsRepository.d.ts +1 -0
  126. package/dist/types/modules/coupon/services/patterns/repository/CouponMetricsRepository.d.ts.map +1 -1
  127. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts +5 -0
  128. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -1
  129. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts +293 -1125
  130. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  131. package/dist/types/modules/coupon/validations/coupon.validation.d.ts +44 -0
  132. package/dist/types/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  133. package/dist/types/modules/coupon/validations/create-coupon.validation.d.ts.map +1 -1
  134. package/dist/types/modules/coupon/validations/index.d.ts +1 -0
  135. package/dist/types/modules/coupon/validations/index.d.ts.map +1 -1
  136. package/dist/types/modules/limited-time-offer/campaign/campaign.router.d.ts +8 -8
  137. package/dist/types/modules/limited-time-offer/campaign/limited-time-offer-campaign.validation.d.ts +34 -34
  138. package/dist/types/modules/limited-time-offer/config/limited-time-offer-config.validation.d.ts +9 -1
  139. package/dist/types/modules/limited-time-offer/config/limited-time-offer-config.validation.d.ts.map +1 -1
  140. package/dist/types/modules/limited-time-offer/limited-time-offer.router.d.ts +28 -28
  141. package/dist/types/modules/limited-time-offer/limited-time-offer.service.d.ts +1 -0
  142. package/dist/types/modules/limited-time-offer/limited-time-offer.service.d.ts.map +1 -1
  143. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.builder.d.ts +13 -0
  144. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.builder.d.ts.map +1 -0
  145. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.constants.d.ts +20 -0
  146. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.constants.d.ts.map +1 -0
  147. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.service.d.ts +8 -0
  148. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.service.d.ts.map +1 -0
  149. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.type.d.ts +5 -0
  150. package/dist/types/modules/limited-time-offer/notification/limited-time-offer-notification.type.d.ts.map +1 -0
  151. package/dist/types/modules/limited-time-offer/participant/limited-time-offer-participant.repository.d.ts +1 -0
  152. package/dist/types/modules/limited-time-offer/participant/limited-time-offer-participant.repository.d.ts.map +1 -1
  153. package/dist/types/modules/limited-time-offer/participant/limited-time-offer-participant.router.d.ts +20 -20
  154. package/dist/types/modules/limited-time-offer/participant/limited-time-offer-participant.validation.d.ts +82 -82
  155. package/dist/types/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.d.ts +2 -1
  156. package/dist/types/modules/limited-time-offer/participant/services/limited-time-offer-participant.service.d.ts.map +1 -1
  157. package/dist/types/modules/marketing/services/marketing.service.d.ts +1 -0
  158. package/dist/types/modules/marketing/services/marketing.service.d.ts.map +1 -1
  159. package/dist/types/modules/tournament/notification/notification.service.d.ts +14 -3
  160. package/dist/types/modules/tournament/notification/notification.service.d.ts.map +1 -1
  161. package/dist/types/modules/tournament/participant/participant.repository.d.ts +1 -0
  162. package/dist/types/modules/tournament/participant/participant.repository.d.ts.map +1 -1
  163. package/dist/types/modules/tournament/participant/participant.service.d.ts +1 -0
  164. package/dist/types/modules/tournament/participant/participant.service.d.ts.map +1 -1
  165. package/dist/types/modules/tournament/reward/reward.builder.d.ts.map +1 -1
  166. package/dist/types/modules/tournament/reward/reward.types.d.ts +1 -0
  167. package/dist/types/modules/tournament/reward/reward.types.d.ts.map +1 -1
  168. package/dist/types/modules/tournament/schedule/schedule.service.d.ts +7 -0
  169. package/dist/types/modules/tournament/schedule/schedule.service.d.ts.map +1 -1
  170. package/package.json +3 -3
@@ -2954,6 +2954,657 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2954
2954
  };
2955
2955
  meta: object;
2956
2956
  }>;
2957
+ getList: import("@trpc/server").TRPCQueryProcedure<{
2958
+ input: {
2959
+ page: number;
2960
+ size: number;
2961
+ couponTypes: import("@lyxa.ai/core/dist/utilities/enum").CouponType[];
2962
+ fromDate: string | Date;
2963
+ toDate: string | Date;
2964
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2965
+ searchKey?: string | undefined;
2966
+ populate?: {
2967
+ path: string;
2968
+ select?: string | Record<string, 0 | 1> | undefined;
2969
+ }[] | undefined;
2970
+ };
2971
+ output: {
2972
+ message: string;
2973
+ success: boolean;
2974
+ data?: import("zod").objectInputType<{
2975
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
2976
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2977
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
2978
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2979
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2980
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2981
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2982
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
2983
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
2984
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
2985
+ }, "strip", import("zod").ZodTypeAny, {
2986
+ start: Date;
2987
+ end?: Date | undefined;
2988
+ }, {
2989
+ start: string | Date;
2990
+ end?: string | Date | undefined;
2991
+ }>, {
2992
+ start: Date;
2993
+ end?: Date | undefined;
2994
+ }, {
2995
+ start: string | Date;
2996
+ end?: string | Date | undefined;
2997
+ }>>;
2998
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2999
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3000
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3001
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3002
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3003
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3004
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3005
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3006
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3007
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3008
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3009
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3010
+ }, "strip", import("zod").ZodTypeAny, {
3011
+ name?: string | undefined;
3012
+ }, {
3013
+ name?: string | undefined;
3014
+ }>>>;
3015
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3016
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3017
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3018
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3019
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3020
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3021
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3022
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3023
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
3024
+ referralUser: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3025
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3026
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3027
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3028
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3029
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3030
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3031
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3032
+ user: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3033
+ referralCodeUsedBy: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3034
+ referralCodeUsedOnOrder: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3035
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3036
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3037
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3038
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3039
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3040
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3041
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3042
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3043
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3044
+ }, "strip", import("zod").ZodTypeAny, {
3045
+ start: Date;
3046
+ end?: Date | undefined;
3047
+ }, {
3048
+ start: string | Date;
3049
+ end?: string | Date | undefined;
3050
+ }>, {
3051
+ start: Date;
3052
+ end?: Date | undefined;
3053
+ }, {
3054
+ start: string | Date;
3055
+ end?: string | Date | undefined;
3056
+ }>>;
3057
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3058
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3059
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3060
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3061
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3062
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3063
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3064
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3065
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3066
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3067
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3068
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3069
+ }, "strip", import("zod").ZodTypeAny, {
3070
+ name?: string | undefined;
3071
+ }, {
3072
+ name?: string | undefined;
3073
+ }>>>;
3074
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3075
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3076
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3077
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3078
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3079
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3080
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3081
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3082
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3083
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3084
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3085
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3086
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3087
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3088
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3089
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3090
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3091
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3092
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3093
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3094
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3095
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3096
+ }, "strip", import("zod").ZodTypeAny, {
3097
+ start: Date;
3098
+ end?: Date | undefined;
3099
+ }, {
3100
+ start: string | Date;
3101
+ end?: string | Date | undefined;
3102
+ }>, {
3103
+ start: Date;
3104
+ end?: Date | undefined;
3105
+ }, {
3106
+ start: string | Date;
3107
+ end?: string | Date | undefined;
3108
+ }>>;
3109
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3110
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3111
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3112
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3113
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3114
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3115
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3116
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3117
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3118
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3119
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3120
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3121
+ }, "strip", import("zod").ZodTypeAny, {
3122
+ name?: string | undefined;
3123
+ }, {
3124
+ name?: string | undefined;
3125
+ }>>>;
3126
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3127
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3128
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3129
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3130
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3131
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3132
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3133
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3134
+ shop: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3135
+ vendor: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3136
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3137
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3138
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3139
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3140
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3141
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3142
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3143
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3144
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3145
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3146
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3147
+ }, "strip", import("zod").ZodTypeAny, {
3148
+ start: Date;
3149
+ end?: Date | undefined;
3150
+ }, {
3151
+ start: string | Date;
3152
+ end?: string | Date | undefined;
3153
+ }>, {
3154
+ start: Date;
3155
+ end?: Date | undefined;
3156
+ }, {
3157
+ start: string | Date;
3158
+ end?: string | Date | undefined;
3159
+ }>>;
3160
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3161
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3162
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3163
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3164
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3165
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3166
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3167
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3168
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3169
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3170
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3171
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3172
+ }, "strip", import("zod").ZodTypeAny, {
3173
+ name?: string | undefined;
3174
+ }, {
3175
+ name?: string | undefined;
3176
+ }>>>;
3177
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3178
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3179
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3180
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3181
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3182
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3183
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3184
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3185
+ users: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "atleastone">>;
3186
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3187
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3188
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3189
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3190
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3191
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3192
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3193
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3194
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3195
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3196
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3197
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3198
+ }, "strip", import("zod").ZodTypeAny, {
3199
+ start: Date;
3200
+ end?: Date | undefined;
3201
+ }, {
3202
+ start: string | Date;
3203
+ end?: string | Date | undefined;
3204
+ }>, {
3205
+ start: Date;
3206
+ end?: Date | undefined;
3207
+ }, {
3208
+ start: string | Date;
3209
+ end?: string | Date | undefined;
3210
+ }>>;
3211
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3212
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3213
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3214
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3215
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3216
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3217
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3218
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3219
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3220
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3221
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3222
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3223
+ }, "strip", import("zod").ZodTypeAny, {
3224
+ name?: string | undefined;
3225
+ }, {
3226
+ name?: string | undefined;
3227
+ }>>>;
3228
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3229
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3230
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3231
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3232
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3233
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3234
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3235
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
3236
+ influencer: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3237
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3238
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3239
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3240
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3241
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3242
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3243
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3244
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3245
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3246
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3247
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3248
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3249
+ }, "strip", import("zod").ZodTypeAny, {
3250
+ start: Date;
3251
+ end?: Date | undefined;
3252
+ }, {
3253
+ start: string | Date;
3254
+ end?: string | Date | undefined;
3255
+ }>, {
3256
+ start: Date;
3257
+ end?: Date | undefined;
3258
+ }, {
3259
+ start: string | Date;
3260
+ end?: string | Date | undefined;
3261
+ }>>;
3262
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3263
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3264
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3265
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3266
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3267
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3268
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3269
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3270
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3271
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3272
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3273
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3274
+ }, "strip", import("zod").ZodTypeAny, {
3275
+ name?: string | undefined;
3276
+ }, {
3277
+ name?: string | undefined;
3278
+ }>>>;
3279
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3280
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3281
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3282
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3283
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3284
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3285
+ }, import("zod").ZodTypeAny, "passthrough"> | {
3286
+ documents: (import("zod").objectInputType<{
3287
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
3288
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3289
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3290
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3291
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3292
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3293
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3294
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3295
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3296
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3297
+ }, "strip", import("zod").ZodTypeAny, {
3298
+ start: Date;
3299
+ end?: Date | undefined;
3300
+ }, {
3301
+ start: string | Date;
3302
+ end?: string | Date | undefined;
3303
+ }>, {
3304
+ start: Date;
3305
+ end?: Date | undefined;
3306
+ }, {
3307
+ start: string | Date;
3308
+ end?: string | Date | undefined;
3309
+ }>>;
3310
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3311
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3312
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3313
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3314
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3315
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3316
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3317
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3318
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3319
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3320
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3321
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3322
+ }, "strip", import("zod").ZodTypeAny, {
3323
+ name?: string | undefined;
3324
+ }, {
3325
+ name?: string | undefined;
3326
+ }>>>;
3327
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3328
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3329
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3330
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3331
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3332
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3333
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3334
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3335
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
3336
+ referralUser: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3337
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3338
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3339
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3340
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3341
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3342
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3343
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3344
+ user: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3345
+ referralCodeUsedBy: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3346
+ referralCodeUsedOnOrder: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3347
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3348
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3349
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3350
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3351
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3352
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3353
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3354
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3355
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3356
+ }, "strip", import("zod").ZodTypeAny, {
3357
+ start: Date;
3358
+ end?: Date | undefined;
3359
+ }, {
3360
+ start: string | Date;
3361
+ end?: string | Date | undefined;
3362
+ }>, {
3363
+ start: Date;
3364
+ end?: Date | undefined;
3365
+ }, {
3366
+ start: string | Date;
3367
+ end?: string | Date | undefined;
3368
+ }>>;
3369
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3370
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3371
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3372
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3373
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3374
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3375
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3376
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3377
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3378
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3379
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3380
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3381
+ }, "strip", import("zod").ZodTypeAny, {
3382
+ name?: string | undefined;
3383
+ }, {
3384
+ name?: string | undefined;
3385
+ }>>>;
3386
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3387
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3388
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3389
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3390
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3391
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3392
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3393
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3394
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3395
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3396
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3397
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3398
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3399
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3400
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3401
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3402
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3403
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3404
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3405
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3406
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3407
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3408
+ }, "strip", import("zod").ZodTypeAny, {
3409
+ start: Date;
3410
+ end?: Date | undefined;
3411
+ }, {
3412
+ start: string | Date;
3413
+ end?: string | Date | undefined;
3414
+ }>, {
3415
+ start: Date;
3416
+ end?: Date | undefined;
3417
+ }, {
3418
+ start: string | Date;
3419
+ end?: string | Date | undefined;
3420
+ }>>;
3421
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3422
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3423
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3424
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3425
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3426
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3427
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3428
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3429
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3430
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3431
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3432
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3433
+ }, "strip", import("zod").ZodTypeAny, {
3434
+ name?: string | undefined;
3435
+ }, {
3436
+ name?: string | undefined;
3437
+ }>>>;
3438
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3439
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3440
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3441
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3442
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3443
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3444
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3445
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3446
+ shop: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3447
+ vendor: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3448
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3449
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3450
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3451
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3452
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3453
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3454
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3455
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3456
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3457
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3458
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3459
+ }, "strip", import("zod").ZodTypeAny, {
3460
+ start: Date;
3461
+ end?: Date | undefined;
3462
+ }, {
3463
+ start: string | Date;
3464
+ end?: string | Date | undefined;
3465
+ }>, {
3466
+ start: Date;
3467
+ end?: Date | undefined;
3468
+ }, {
3469
+ start: string | Date;
3470
+ end?: string | Date | undefined;
3471
+ }>>;
3472
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3473
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3474
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3475
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3476
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3477
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3478
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3479
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3480
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3481
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3482
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3483
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3484
+ }, "strip", import("zod").ZodTypeAny, {
3485
+ name?: string | undefined;
3486
+ }, {
3487
+ name?: string | undefined;
3488
+ }>>>;
3489
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3490
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3491
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3492
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3493
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3494
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3495
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3496
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3497
+ users: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "atleastone">>;
3498
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3499
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3500
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3501
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3502
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3503
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3504
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3505
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3506
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3507
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3508
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3509
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3510
+ }, "strip", import("zod").ZodTypeAny, {
3511
+ start: Date;
3512
+ end?: Date | undefined;
3513
+ }, {
3514
+ start: string | Date;
3515
+ end?: string | Date | undefined;
3516
+ }>, {
3517
+ start: Date;
3518
+ end?: Date | undefined;
3519
+ }, {
3520
+ start: string | Date;
3521
+ end?: string | Date | undefined;
3522
+ }>>;
3523
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3524
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3525
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3526
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3527
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3528
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3529
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3530
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3531
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3532
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3533
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3534
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3535
+ }, "strip", import("zod").ZodTypeAny, {
3536
+ name?: string | undefined;
3537
+ }, {
3538
+ name?: string | undefined;
3539
+ }>>>;
3540
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3541
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3542
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3543
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3544
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3545
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3546
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3547
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
3548
+ influencer: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3549
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3550
+ shops: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3551
+ vendors: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>, "many">>>;
3552
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3553
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3554
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3555
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3556
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3557
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3558
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3559
+ start: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>;
3560
+ end: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, Date, string>, import("zod").ZodDate]>, Date, string | Date>, Date, string | Date>>;
3561
+ }, "strip", import("zod").ZodTypeAny, {
3562
+ start: Date;
3563
+ end?: Date | undefined;
3564
+ }, {
3565
+ start: string | Date;
3566
+ end?: string | Date | undefined;
3567
+ }>, {
3568
+ start: Date;
3569
+ end?: Date | undefined;
3570
+ }, {
3571
+ start: string | Date;
3572
+ end?: string | Date | undefined;
3573
+ }>>;
3574
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3575
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3576
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3577
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3578
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3579
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3580
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3581
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3582
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3583
+ expirationReason: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3584
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3585
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3586
+ }, "strip", import("zod").ZodTypeAny, {
3587
+ name?: string | undefined;
3588
+ }, {
3589
+ name?: string | undefined;
3590
+ }>>>;
3591
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3592
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3593
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3594
+ createdBy: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>>;
3595
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3596
+ _id: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, import("mongoose").Types.ObjectId, string>, import("zod").ZodType<import("mongoose").Types.ObjectId, import("zod").ZodTypeDef, import("mongoose").Types.ObjectId>]>>;
3597
+ }, import("zod").ZodTypeAny, "passthrough">)[];
3598
+ metadata?: {
3599
+ page: number;
3600
+ size: number;
3601
+ totalElements: number;
3602
+ totalPages: number;
3603
+ } | undefined;
3604
+ } | undefined;
3605
+ };
3606
+ meta: object;
3607
+ }>;
2957
3608
  checkExistingNewUserCoupon: import("@trpc/server").TRPCQueryProcedure<{
2958
3609
  input: void;
2959
3610
  output: {
@@ -7497,9 +8148,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7497
8148
  updatedAt?: Date | null | undefined;
7498
8149
  title?: string | undefined;
7499
8150
  subTitle?: string | undefined;
8151
+ archivedAt?: Date | null | undefined;
7500
8152
  discountOptions?: number[] | undefined;
7501
8153
  maxDiscountCaps?: number[] | undefined;
7502
- archivedAt?: Date | null | undefined;
7503
8154
  } | {
7504
8155
  documents: {
7505
8156
  status: import("@lyxa.ai/core/dist/utilities/enum").LimitedTimeOfferCampaignStatus;
@@ -7511,9 +8162,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7511
8162
  updatedAt?: Date | null | undefined;
7512
8163
  title?: string | undefined;
7513
8164
  subTitle?: string | undefined;
8165
+ archivedAt?: Date | null | undefined;
7514
8166
  discountOptions?: number[] | undefined;
7515
8167
  maxDiscountCaps?: number[] | undefined;
7516
- archivedAt?: Date | null | undefined;
7517
8168
  }[];
7518
8169
  metadata?: {
7519
8170
  page: number;
@@ -7540,9 +8191,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7540
8191
  updatedAt?: Date | null | undefined;
7541
8192
  title?: string | undefined;
7542
8193
  subTitle?: string | undefined;
8194
+ archivedAt?: Date | null | undefined;
7543
8195
  discountOptions?: number[] | undefined;
7544
8196
  maxDiscountCaps?: number[] | undefined;
7545
- archivedAt?: Date | null | undefined;
7546
8197
  } | {
7547
8198
  documents: ({
7548
8199
  status: import("@lyxa.ai/core/dist/utilities/enum").LimitedTimeOfferCampaignStatus;
@@ -7554,9 +8205,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7554
8205
  updatedAt?: Date | null | undefined;
7555
8206
  title?: string | undefined;
7556
8207
  subTitle?: string | undefined;
8208
+ archivedAt?: Date | null | undefined;
7557
8209
  discountOptions?: number[] | undefined;
7558
8210
  maxDiscountCaps?: number[] | undefined;
7559
- archivedAt?: Date | null | undefined;
7560
8211
  } | null)[];
7561
8212
  metadata?: {
7562
8213
  page: number;
@@ -7585,9 +8236,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7585
8236
  updatedAt?: Date | null | undefined;
7586
8237
  title?: string | undefined;
7587
8238
  subTitle?: string | undefined;
8239
+ archivedAt?: Date | null | undefined;
7588
8240
  discountOptions?: number[] | undefined;
7589
8241
  maxDiscountCaps?: number[] | undefined;
7590
- archivedAt?: Date | null | undefined;
7591
8242
  } | {
7592
8243
  documents: {
7593
8244
  status: import("@lyxa.ai/core/dist/utilities/enum").LimitedTimeOfferCampaignStatus;
@@ -7599,9 +8250,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7599
8250
  updatedAt?: Date | null | undefined;
7600
8251
  title?: string | undefined;
7601
8252
  subTitle?: string | undefined;
8253
+ archivedAt?: Date | null | undefined;
7602
8254
  discountOptions?: number[] | undefined;
7603
8255
  maxDiscountCaps?: number[] | undefined;
7604
- archivedAt?: Date | null | undefined;
7605
8256
  }[];
7606
8257
  metadata?: {
7607
8258
  page: number;
@@ -7674,9 +8325,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7674
8325
  updatedAt?: Date | null | undefined;
7675
8326
  title?: string | undefined;
7676
8327
  subTitle?: string | undefined;
8328
+ archivedAt?: Date | null | undefined;
7677
8329
  discountOptions?: number[] | undefined;
7678
8330
  maxDiscountCaps?: number[] | undefined;
7679
- archivedAt?: Date | null | undefined;
7680
8331
  } | {
7681
8332
  documents: {
7682
8333
  status: import("@lyxa.ai/core/dist/utilities/enum").LimitedTimeOfferCampaignStatus;
@@ -7688,9 +8339,9 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7688
8339
  updatedAt?: Date | null | undefined;
7689
8340
  title?: string | undefined;
7690
8341
  subTitle?: string | undefined;
8342
+ archivedAt?: Date | null | undefined;
7691
8343
  discountOptions?: number[] | undefined;
7692
8344
  maxDiscountCaps?: number[] | undefined;
7693
- archivedAt?: Date | null | undefined;
7694
8345
  }[];
7695
8346
  metadata?: {
7696
8347
  page: number;
@@ -7886,6 +8537,15 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7886
8537
  success: boolean;
7887
8538
  data?: {
7888
8539
  campaignState: import("./modules/limited-time-offer/participant/limited-time-offer-participant.validation").LtoCardState;
8540
+ campaign?: {
8541
+ _id: string | import("mongoose").Types.ObjectId;
8542
+ startDate?: Date | null | undefined;
8543
+ endDate?: Date | null | undefined;
8544
+ title?: string | undefined;
8545
+ subTitle?: string | undefined;
8546
+ discountOptions?: number[] | undefined;
8547
+ maxDiscountCaps?: number[] | undefined;
8548
+ } | undefined;
7889
8549
  participant?: {
7890
8550
  isEntireMenu: boolean;
7891
8551
  joinedAt: Date;
@@ -7896,18 +8556,18 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7896
8556
  maxDiscountCap?: number | undefined;
7897
8557
  maxOrderCapacity?: number | undefined;
7898
8558
  } | undefined;
7899
- campaign?: {
7900
- _id: string | import("mongoose").Types.ObjectId;
7901
- startDate?: Date | null | undefined;
7902
- endDate?: Date | null | undefined;
7903
- title?: string | undefined;
7904
- subTitle?: string | undefined;
7905
- discountOptions?: number[] | undefined;
7906
- maxDiscountCaps?: number[] | undefined;
7907
- } | undefined;
7908
8559
  } | {
7909
8560
  documents: {
7910
8561
  campaignState: import("./modules/limited-time-offer/participant/limited-time-offer-participant.validation").LtoCardState;
8562
+ campaign?: {
8563
+ _id: string | import("mongoose").Types.ObjectId;
8564
+ startDate?: Date | null | undefined;
8565
+ endDate?: Date | null | undefined;
8566
+ title?: string | undefined;
8567
+ subTitle?: string | undefined;
8568
+ discountOptions?: number[] | undefined;
8569
+ maxDiscountCaps?: number[] | undefined;
8570
+ } | undefined;
7911
8571
  participant?: {
7912
8572
  isEntireMenu: boolean;
7913
8573
  joinedAt: Date;
@@ -7918,15 +8578,6 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7918
8578
  maxDiscountCap?: number | undefined;
7919
8579
  maxOrderCapacity?: number | undefined;
7920
8580
  } | undefined;
7921
- campaign?: {
7922
- _id: string | import("mongoose").Types.ObjectId;
7923
- startDate?: Date | null | undefined;
7924
- endDate?: Date | null | undefined;
7925
- title?: string | undefined;
7926
- subTitle?: string | undefined;
7927
- discountOptions?: number[] | undefined;
7928
- maxDiscountCaps?: number[] | undefined;
7929
- } | undefined;
7930
8581
  }[];
7931
8582
  metadata?: {
7932
8583
  page: number;
@@ -7952,17 +8603,17 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
7952
8603
  shopId: string | import("mongoose").Types.ObjectId;
7953
8604
  joinedAt: Date;
7954
8605
  shopName: string | null;
7955
- shopPhoto?: string | null | undefined;
7956
8606
  discountPercentage?: number | undefined;
7957
8607
  maxDiscountCap?: number | undefined;
8608
+ shopPhoto?: string | null | undefined;
7958
8609
  } | {
7959
8610
  documents: {
7960
8611
  shopId: string | import("mongoose").Types.ObjectId;
7961
8612
  joinedAt: Date;
7962
8613
  shopName: string | null;
7963
- shopPhoto?: string | null | undefined;
7964
8614
  discountPercentage?: number | undefined;
7965
8615
  maxDiscountCap?: number | undefined;
8616
+ shopPhoto?: string | null | undefined;
7966
8617
  }[];
7967
8618
  metadata?: {
7968
8619
  page: number;