@lyxa.ai/marketing 1.0.24 → 1.0.26-test-01

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 (177) hide show
  1. package/dist/lib/index.d.ts +1302 -38
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/modules/coupon/routers/coupon.router.d.ts +1307 -43
  4. package/dist/lib/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  5. package/dist/lib/modules/coupon/routers/coupon.router.js +21 -0
  6. package/dist/lib/modules/coupon/routers/coupon.router.js.map +1 -1
  7. package/dist/lib/modules/coupon/services/coupon.service.d.ts +7 -1
  8. package/dist/lib/modules/coupon/services/coupon.service.d.ts.map +1 -1
  9. package/dist/lib/modules/coupon/services/coupon.service.js +229 -41
  10. package/dist/lib/modules/coupon/services/coupon.service.js.map +1 -1
  11. package/dist/lib/modules/coupon/services/custom-coupon.service.d.ts.map +1 -1
  12. package/dist/lib/modules/coupon/services/custom-coupon.service.js +6 -2
  13. package/dist/lib/modules/coupon/services/custom-coupon.service.js.map +1 -1
  14. package/dist/lib/modules/coupon/services/global-coupon.service.d.ts.map +1 -1
  15. package/dist/lib/modules/coupon/services/global-coupon.service.js +6 -2
  16. package/dist/lib/modules/coupon/services/global-coupon.service.js.map +1 -1
  17. package/dist/lib/modules/coupon/services/index.d.ts +1 -0
  18. package/dist/lib/modules/coupon/services/index.d.ts.map +1 -1
  19. package/dist/lib/modules/coupon/services/index.js +1 -0
  20. package/dist/lib/modules/coupon/services/index.js.map +1 -1
  21. package/dist/lib/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  22. package/dist/lib/modules/coupon/services/individual-store-coupon.service.js +7 -3
  23. package/dist/lib/modules/coupon/services/individual-store-coupon.service.js.map +1 -1
  24. package/dist/lib/modules/coupon/services/individual-user-coupon.service.d.ts.map +1 -1
  25. package/dist/lib/modules/coupon/services/individual-user-coupon.service.js +6 -2
  26. package/dist/lib/modules/coupon/services/individual-user-coupon.service.js.map +1 -1
  27. package/dist/lib/modules/coupon/services/referral-code-coupon.service.d.ts +1 -0
  28. package/dist/lib/modules/coupon/services/referral-code-coupon.service.d.ts.map +1 -1
  29. package/dist/lib/modules/coupon/services/referral-code-coupon.service.js +11 -0
  30. package/dist/lib/modules/coupon/services/referral-code-coupon.service.js.map +1 -1
  31. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.d.ts.map +1 -1
  32. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.js +6 -2
  33. package/dist/lib/modules/coupon/services/referral-reward-coupon.service.js.map +1 -1
  34. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts +14 -0
  35. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -0
  36. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.js +139 -0
  37. package/dist/lib/modules/coupon/services/shops-categories-coupon.service.js.map +1 -0
  38. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts +51 -1
  39. package/dist/lib/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  40. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts +973 -27
  41. package/dist/lib/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  42. package/dist/lib/modules/coupon/validations/all-coupons.validation.js +2 -0
  43. package/dist/lib/modules/coupon/validations/all-coupons.validation.js.map +1 -1
  44. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts +11 -0
  45. package/dist/lib/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  46. package/dist/lib/modules/coupon/validations/coupon.validation.js +5 -1
  47. package/dist/lib/modules/coupon/validations/coupon.validation.js.map +1 -1
  48. package/dist/lib/modules/coupon/validations/index.d.ts +1 -0
  49. package/dist/lib/modules/coupon/validations/index.d.ts.map +1 -1
  50. package/dist/lib/modules/coupon/validations/index.js +1 -0
  51. package/dist/lib/modules/coupon/validations/index.js.map +1 -1
  52. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts +10 -19
  53. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  54. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.js +2 -3
  55. package/dist/lib/modules/coupon/validations/individual-store-coupon.validation.js.map +1 -1
  56. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.d.ts +439 -0
  57. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.d.ts.map +1 -0
  58. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.js +22 -0
  59. package/dist/lib/modules/coupon/validations/shops-categories-coupon.validation.js.map +1 -0
  60. package/dist/lib/modules/marketing/services/marketing.service.d.ts.map +1 -1
  61. package/dist/lib/modules/marketing/services/marketing.service.js +2 -1
  62. package/dist/lib/modules/marketing/services/marketing.service.js.map +1 -1
  63. package/dist/types/index.d.ts +1302 -38
  64. package/dist/types/index.d.ts.map +1 -1
  65. package/dist/types/modules/coupon/routers/coupon.router.d.ts +1307 -43
  66. package/dist/types/modules/coupon/routers/coupon.router.d.ts.map +1 -1
  67. package/dist/types/modules/coupon/services/coupon.service.d.ts +7 -1
  68. package/dist/types/modules/coupon/services/coupon.service.d.ts.map +1 -1
  69. package/dist/types/modules/coupon/services/custom-coupon.service.d.ts.map +1 -1
  70. package/dist/types/modules/coupon/services/global-coupon.service.d.ts.map +1 -1
  71. package/dist/types/modules/coupon/services/index.d.ts +1 -0
  72. package/dist/types/modules/coupon/services/index.d.ts.map +1 -1
  73. package/dist/types/modules/coupon/services/individual-store-coupon.service.d.ts.map +1 -1
  74. package/dist/types/modules/coupon/services/individual-user-coupon.service.d.ts.map +1 -1
  75. package/dist/types/modules/coupon/services/referral-code-coupon.service.d.ts +1 -0
  76. package/dist/types/modules/coupon/services/referral-code-coupon.service.d.ts.map +1 -1
  77. package/dist/types/modules/coupon/services/referral-reward-coupon.service.d.ts.map +1 -1
  78. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts +23 -0
  79. package/dist/types/modules/coupon/services/shops-categories-coupon.service.d.ts.map +1 -0
  80. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts +51 -1
  81. package/dist/types/modules/coupon/transformers/coupon.transformer.d.ts.map +1 -1
  82. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts +973 -27
  83. package/dist/types/modules/coupon/validations/all-coupons.validation.d.ts.map +1 -1
  84. package/dist/types/modules/coupon/validations/coupon.validation.d.ts +11 -0
  85. package/dist/types/modules/coupon/validations/coupon.validation.d.ts.map +1 -1
  86. package/dist/types/modules/coupon/validations/index.d.ts +1 -0
  87. package/dist/types/modules/coupon/validations/index.d.ts.map +1 -1
  88. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts +10 -19
  89. package/dist/types/modules/coupon/validations/individual-store-coupon.validation.d.ts.map +1 -1
  90. package/dist/types/modules/coupon/validations/shops-categories-coupon.validation.d.ts +448 -0
  91. package/dist/types/modules/coupon/validations/shops-categories-coupon.validation.d.ts.map +1 -0
  92. package/dist/types/modules/marketing/services/marketing.service.d.ts.map +1 -1
  93. package/package.json +2 -2
  94. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts +0 -2
  95. package/dist/lib/modules/loyalty-point-setting/routers/index.d.ts.map +0 -1
  96. package/dist/lib/modules/loyalty-point-setting/routers/index.js +0 -18
  97. package/dist/lib/modules/loyalty-point-setting/routers/index.js.map +0 -1
  98. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +0 -321
  99. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +0 -1
  100. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js +0 -82
  101. package/dist/lib/modules/loyalty-point-setting/routers/loyalty-point-setting.router.js.map +0 -1
  102. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts +0 -3
  103. package/dist/lib/modules/loyalty-point-setting/services/index.d.ts.map +0 -1
  104. package/dist/lib/modules/loyalty-point-setting/services/index.js +0 -19
  105. package/dist/lib/modules/loyalty-point-setting/services/index.js.map +0 -1
  106. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +0 -16
  107. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +0 -1
  108. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js +0 -133
  109. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-category.service.js.map +0 -1
  110. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +0 -16
  111. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +0 -1
  112. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js +0 -156
  113. package/dist/lib/modules/loyalty-point-setting/services/loyalty-point-setting.service.js.map +0 -1
  114. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts +0 -3
  115. package/dist/lib/modules/loyalty-point-setting/transformers/index.d.ts.map +0 -1
  116. package/dist/lib/modules/loyalty-point-setting/transformers/index.js +0 -19
  117. package/dist/lib/modules/loyalty-point-setting/transformers/index.js.map +0 -1
  118. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +0 -8
  119. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +0 -1
  120. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js +0 -7
  121. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.js.map +0 -1
  122. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +0 -9
  123. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +0 -1
  124. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js +0 -7
  125. package/dist/lib/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.js.map +0 -1
  126. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts +0 -3
  127. package/dist/lib/modules/loyalty-point-setting/validations/index.d.ts.map +0 -1
  128. package/dist/lib/modules/loyalty-point-setting/validations/index.js +0 -19
  129. package/dist/lib/modules/loyalty-point-setting/validations/index.js.map +0 -1
  130. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +0 -170
  131. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +0 -1
  132. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js +0 -19
  133. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-category.validation.js.map +0 -1
  134. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +0 -188
  135. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +0 -1
  136. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js +0 -19
  137. package/dist/lib/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.js.map +0 -1
  138. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts +0 -12
  139. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +0 -1
  140. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js +0 -149
  141. package/dist/lib/modules/marketing/services/loyalty-point-marketing.service.js.map +0 -1
  142. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +0 -47
  143. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +0 -1
  144. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js +0 -7
  145. package/dist/lib/modules/marketing/transformers/loyalty-point-marketing.transformer.js.map +0 -1
  146. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +0 -504
  147. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +0 -1
  148. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js +0 -34
  149. package/dist/lib/modules/marketing/validations/loyalty-point-marketing.validation.js.map +0 -1
  150. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts +0 -2
  151. package/dist/types/modules/loyalty-point-setting/routers/index.d.ts.map +0 -1
  152. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts +0 -321
  153. package/dist/types/modules/loyalty-point-setting/routers/loyalty-point-setting.router.d.ts.map +0 -1
  154. package/dist/types/modules/loyalty-point-setting/services/index.d.ts +0 -3
  155. package/dist/types/modules/loyalty-point-setting/services/index.d.ts.map +0 -1
  156. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts +0 -37
  157. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-category.service.d.ts.map +0 -1
  158. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts +0 -34
  159. package/dist/types/modules/loyalty-point-setting/services/loyalty-point-setting.service.d.ts.map +0 -1
  160. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts +0 -3
  161. package/dist/types/modules/loyalty-point-setting/transformers/index.d.ts.map +0 -1
  162. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts +0 -8
  163. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-category.transformer.d.ts.map +0 -1
  164. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts +0 -9
  165. package/dist/types/modules/loyalty-point-setting/transformers/loyalty-point-setting.transformer.d.ts.map +0 -1
  166. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts +0 -3
  167. package/dist/types/modules/loyalty-point-setting/validations/index.d.ts.map +0 -1
  168. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts +0 -179
  169. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-category.validation.d.ts.map +0 -1
  170. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts +0 -197
  171. package/dist/types/modules/loyalty-point-setting/validations/loyalty-point-setting.validation.d.ts.map +0 -1
  172. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts +0 -21
  173. package/dist/types/modules/marketing/services/loyalty-point-marketing.service.d.ts.map +0 -1
  174. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts +0 -47
  175. package/dist/types/modules/marketing/transformers/loyalty-point-marketing.transformer.d.ts.map +0 -1
  176. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts +0 -513
  177. package/dist/types/modules/marketing/validations/loyalty-point-marketing.validation.d.ts.map +0 -1
@@ -758,7 +758,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
758
758
  end?: string | Date | undefined;
759
759
  };
760
760
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
761
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
761
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
762
762
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
763
763
  spendLimit?: number | null | undefined;
764
764
  isSpendLimitEnabled?: boolean | undefined;
@@ -784,6 +784,39 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
784
784
  shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
785
785
  isShopCoverExpenses?: boolean | undefined;
786
786
  firstOrderOnly?: boolean | undefined;
787
+ } | {
788
+ shop: string | import("mongoose").Types.ObjectId;
789
+ value: number;
790
+ code: string;
791
+ duration: {
792
+ start: string | Date;
793
+ end?: string | Date | undefined;
794
+ };
795
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
796
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
797
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
798
+ spendLimit?: number | null | undefined;
799
+ isSpendLimitEnabled?: boolean | undefined;
800
+ secondaryCurrencyValue?: number | undefined;
801
+ maxDiscountLimit?: number | null | undefined;
802
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
803
+ isMaxDiscountLimitEnabled?: boolean | undefined;
804
+ totalOrderLimit?: number | null | undefined;
805
+ isTotalOrderLimitEnabled?: boolean | undefined;
806
+ minOrderValue?: number | null | undefined;
807
+ secondaryCurrencyMinOrderValue?: number | undefined;
808
+ isMinOrderValueEnabled?: boolean | undefined;
809
+ forNewUserOnly?: boolean | undefined;
810
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
811
+ referringUser?: {
812
+ name?: string | undefined;
813
+ } | undefined;
814
+ orderLimitPerUser?: number | null | undefined;
815
+ isOrderLimitPerUserEnabled?: boolean | undefined;
816
+ createdBy?: string | import("mongoose").Types.ObjectId | undefined;
817
+ isExpired?: boolean | undefined;
818
+ isShopCoverExpenses?: boolean | undefined;
819
+ firstOrderOnly?: boolean | undefined;
787
820
  } | {
788
821
  value: number;
789
822
  code: string;
@@ -961,7 +994,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
961
994
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
962
995
  _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>]>>;
963
996
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
964
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
997
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
965
998
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
966
999
  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">>>;
967
1000
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -1011,6 +1044,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1011
1044
  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>]>>>;
1012
1045
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1013
1046
  _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>]>>;
1047
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1048
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1049
+ shop: 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>]>>;
1050
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1051
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1052
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1053
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
1054
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1055
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1056
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1057
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1058
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
1059
+ 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>;
1060
+ 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>>;
1061
+ }, "strip", import("zod").ZodTypeAny, {
1062
+ start: Date;
1063
+ end?: Date | undefined;
1064
+ }, {
1065
+ start: string | Date;
1066
+ end?: string | Date | undefined;
1067
+ }>, {
1068
+ start: Date;
1069
+ end?: Date | undefined;
1070
+ }, {
1071
+ start: string | Date;
1072
+ end?: string | Date | undefined;
1073
+ }>>;
1074
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1075
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1076
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1077
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1078
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
1079
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1080
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1081
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1082
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1083
+ 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>>>>>;
1084
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
1085
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1086
+ }, "strip", import("zod").ZodTypeAny, {
1087
+ name?: string | undefined;
1088
+ }, {
1089
+ name?: string | undefined;
1090
+ }>>>;
1091
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1092
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1093
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1094
+ 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>]>>>;
1095
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1096
+ _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>]>>;
1014
1097
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1015
1098
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1016
1099
  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">>;
@@ -1219,7 +1302,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1219
1302
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1220
1303
  _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>]>>;
1221
1304
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1222
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1305
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1223
1306
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1224
1307
  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">>>;
1225
1308
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -1269,6 +1352,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1269
1352
  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>]>>>;
1270
1353
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1271
1354
  _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>]>>;
1355
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1356
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1357
+ shop: 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>]>>;
1358
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1359
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1360
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1361
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
1362
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1363
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1364
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1365
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1366
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
1367
+ 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>;
1368
+ 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>>;
1369
+ }, "strip", import("zod").ZodTypeAny, {
1370
+ start: Date;
1371
+ end?: Date | undefined;
1372
+ }, {
1373
+ start: string | Date;
1374
+ end?: string | Date | undefined;
1375
+ }>, {
1376
+ start: Date;
1377
+ end?: Date | undefined;
1378
+ }, {
1379
+ start: string | Date;
1380
+ end?: string | Date | undefined;
1381
+ }>>;
1382
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1383
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1384
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1385
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1386
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
1387
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1388
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1389
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1390
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1391
+ 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>>>>>;
1392
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
1393
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1394
+ }, "strip", import("zod").ZodTypeAny, {
1395
+ name?: string | undefined;
1396
+ }, {
1397
+ name?: string | undefined;
1398
+ }>>>;
1399
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1400
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1401
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1402
+ 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>]>>>;
1403
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1404
+ _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>]>>;
1272
1405
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1273
1406
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1274
1407
  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">>;
@@ -1492,7 +1625,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1492
1625
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1493
1626
  _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>]>>;
1494
1627
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1495
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1628
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1496
1629
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1497
1630
  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">>>;
1498
1631
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -1542,6 +1675,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1542
1675
  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>]>>>;
1543
1676
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1544
1677
  _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>]>>;
1678
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1679
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1680
+ shop: 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>]>>;
1681
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1682
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1683
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1684
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
1685
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1686
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1687
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1688
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1689
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
1690
+ 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>;
1691
+ 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>>;
1692
+ }, "strip", import("zod").ZodTypeAny, {
1693
+ start: Date;
1694
+ end?: Date | undefined;
1695
+ }, {
1696
+ start: string | Date;
1697
+ end?: string | Date | undefined;
1698
+ }>, {
1699
+ start: Date;
1700
+ end?: Date | undefined;
1701
+ }, {
1702
+ start: string | Date;
1703
+ end?: string | Date | undefined;
1704
+ }>>;
1705
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1706
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1707
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1708
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1709
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
1710
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1711
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1712
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1713
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1714
+ 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>>>>>;
1715
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
1716
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1717
+ }, "strip", import("zod").ZodTypeAny, {
1718
+ name?: string | undefined;
1719
+ }, {
1720
+ name?: string | undefined;
1721
+ }>>>;
1722
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
1723
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1724
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1725
+ 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>]>>>;
1726
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1727
+ _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>]>>;
1545
1728
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1546
1729
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1547
1730
  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">>;
@@ -1750,7 +1933,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1750
1933
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1751
1934
  _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>]>>;
1752
1935
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1753
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1936
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1754
1937
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1755
1938
  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">>>;
1756
1939
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -1800,6 +1983,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
1800
1983
  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>]>>>;
1801
1984
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
1802
1985
  _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>]>>;
1986
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1987
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1988
+ shop: 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>]>>;
1989
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1990
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
1991
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1992
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
1993
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1994
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
1995
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1996
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
1997
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
1998
+ 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>;
1999
+ 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>>;
2000
+ }, "strip", import("zod").ZodTypeAny, {
2001
+ start: Date;
2002
+ end?: Date | undefined;
2003
+ }, {
2004
+ start: string | Date;
2005
+ end?: string | Date | undefined;
2006
+ }>, {
2007
+ start: Date;
2008
+ end?: Date | undefined;
2009
+ }, {
2010
+ start: string | Date;
2011
+ end?: string | Date | undefined;
2012
+ }>>;
2013
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2014
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2015
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2016
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2017
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
2018
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2019
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2020
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2021
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2022
+ 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>>>>>;
2023
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
2024
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2025
+ }, "strip", import("zod").ZodTypeAny, {
2026
+ name?: string | undefined;
2027
+ }, {
2028
+ name?: string | undefined;
2029
+ }>>>;
2030
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2031
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2032
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2033
+ 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>]>>>;
2034
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2035
+ _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>]>>;
1803
2036
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
1804
2037
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1805
2038
  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">>;
@@ -2034,7 +2267,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2034
2267
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2035
2268
  _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>]>>;
2036
2269
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2037
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2270
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2038
2271
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2039
2272
  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">>>;
2040
2273
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -2085,10 +2318,10 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2085
2318
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2086
2319
  _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>]>>;
2087
2320
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2088
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2089
- 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">>;
2090
- itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2091
- 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">>>;
2321
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2322
+ shop: 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>]>>;
2323
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2324
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2092
2325
  valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2093
2326
  value: import("zod").ZodOptional<import("zod").ZodNumber>;
2094
2327
  secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
@@ -2135,8 +2368,8 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2135
2368
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2136
2369
  _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>]>>;
2137
2370
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2138
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
2139
- 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>]>>;
2371
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2372
+ 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">>;
2140
2373
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2141
2374
  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">>>;
2142
2375
  valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
@@ -2184,11 +2417,61 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2184
2417
  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>]>>>;
2185
2418
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2186
2419
  _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>]>>;
2187
- }, import("zod").ZodTypeAny, "passthrough"> | {
2188
- documents: (import("zod").objectInputType<{
2189
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
2190
- valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2191
- value: import("zod").ZodOptional<import("zod").ZodNumber>;
2420
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2421
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
2422
+ 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>]>>;
2423
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2424
+ 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">>>;
2425
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2426
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
2427
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2428
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2429
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2430
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2431
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
2432
+ 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>;
2433
+ 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>>;
2434
+ }, "strip", import("zod").ZodTypeAny, {
2435
+ start: Date;
2436
+ end?: Date | undefined;
2437
+ }, {
2438
+ start: string | Date;
2439
+ end?: string | Date | undefined;
2440
+ }>, {
2441
+ start: Date;
2442
+ end?: Date | undefined;
2443
+ }, {
2444
+ start: string | Date;
2445
+ end?: string | Date | undefined;
2446
+ }>>;
2447
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2448
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2449
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2450
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2451
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
2452
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2453
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2454
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2455
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2456
+ 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>>>>>;
2457
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
2458
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2459
+ }, "strip", import("zod").ZodTypeAny, {
2460
+ name?: string | undefined;
2461
+ }, {
2462
+ name?: string | undefined;
2463
+ }>>>;
2464
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2465
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2466
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2467
+ 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>]>>>;
2468
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2469
+ _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>]>>;
2470
+ }, import("zod").ZodTypeAny, "passthrough"> | {
2471
+ documents: (import("zod").objectInputType<{
2472
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
2473
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2474
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
2192
2475
  secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2193
2476
  maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2194
2477
  secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
@@ -2292,7 +2575,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2292
2575
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2293
2576
  _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>]>>;
2294
2577
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2295
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2578
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2296
2579
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2297
2580
  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">>>;
2298
2581
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -2342,6 +2625,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2342
2625
  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>]>>>;
2343
2626
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2344
2627
  _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>]>>;
2628
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2629
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2630
+ shop: 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>]>>;
2631
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2632
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2633
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2634
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
2635
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2636
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2637
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2638
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2639
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
2640
+ 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>;
2641
+ 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>>;
2642
+ }, "strip", import("zod").ZodTypeAny, {
2643
+ start: Date;
2644
+ end?: Date | undefined;
2645
+ }, {
2646
+ start: string | Date;
2647
+ end?: string | Date | undefined;
2648
+ }>, {
2649
+ start: Date;
2650
+ end?: Date | undefined;
2651
+ }, {
2652
+ start: string | Date;
2653
+ end?: string | Date | undefined;
2654
+ }>>;
2655
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2656
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2657
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2658
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2659
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
2660
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
2661
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2662
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2663
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2664
+ 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>>>>>;
2665
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
2666
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2667
+ }, "strip", import("zod").ZodTypeAny, {
2668
+ name?: string | undefined;
2669
+ }, {
2670
+ name?: string | undefined;
2671
+ }>>>;
2672
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2673
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
2674
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2675
+ 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>]>>>;
2676
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2677
+ _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>]>>;
2345
2678
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2346
2679
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2347
2680
  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">>;
@@ -2535,7 +2868,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2535
2868
  end?: string | Date | undefined;
2536
2869
  };
2537
2870
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2538
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2871
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
2539
2872
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2540
2873
  spendLimit?: number | null | undefined;
2541
2874
  isSpendLimitEnabled?: boolean | undefined;
@@ -2561,6 +2894,39 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2561
2894
  shops?: (string | import("mongoose").Types.ObjectId)[] | undefined;
2562
2895
  isShopCoverExpenses?: boolean | undefined;
2563
2896
  firstOrderOnly?: boolean | undefined;
2897
+ } | {
2898
+ shop: string | import("mongoose").Types.ObjectId;
2899
+ value: number;
2900
+ code: string;
2901
+ duration: {
2902
+ start: string | Date;
2903
+ end?: string | Date | undefined;
2904
+ };
2905
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2906
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2907
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2908
+ spendLimit?: number | null | undefined;
2909
+ isSpendLimitEnabled?: boolean | undefined;
2910
+ secondaryCurrencyValue?: number | undefined;
2911
+ maxDiscountLimit?: number | null | undefined;
2912
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2913
+ isMaxDiscountLimitEnabled?: boolean | undefined;
2914
+ totalOrderLimit?: number | null | undefined;
2915
+ isTotalOrderLimitEnabled?: boolean | undefined;
2916
+ minOrderValue?: number | null | undefined;
2917
+ secondaryCurrencyMinOrderValue?: number | undefined;
2918
+ isMinOrderValueEnabled?: boolean | undefined;
2919
+ forNewUserOnly?: boolean | undefined;
2920
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
2921
+ referringUser?: {
2922
+ name?: string | undefined;
2923
+ } | undefined;
2924
+ orderLimitPerUser?: number | null | undefined;
2925
+ isOrderLimitPerUserEnabled?: boolean | undefined;
2926
+ createdBy?: string | import("mongoose").Types.ObjectId | undefined;
2927
+ isExpired?: boolean | undefined;
2928
+ isShopCoverExpenses?: boolean | undefined;
2929
+ firstOrderOnly?: boolean | undefined;
2564
2930
  } | {
2565
2931
  value: number;
2566
2932
  code: string;
@@ -2680,19 +3046,704 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2680
3046
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2681
3047
  _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>]>>;
2682
3048
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2683
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
2684
- orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
2685
- 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>]>>;
2686
- code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
2687
- isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
2688
- 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>]>>>;
2689
- isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2690
- _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>]>>;
2691
- }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2692
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
2693
- 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>]>>;
2694
- 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>]>>;
2695
- 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>]>>;
3049
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3050
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
3051
+ 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>]>>;
3052
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3053
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3054
+ 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>]>>>;
3055
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3056
+ _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>]>>;
3057
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3058
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3059
+ 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>]>>;
3060
+ 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>]>>;
3061
+ 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>]>>;
3062
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3063
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3064
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3065
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3066
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3067
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3068
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3069
+ 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>;
3070
+ 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>>;
3071
+ }, "strip", import("zod").ZodTypeAny, {
3072
+ start: Date;
3073
+ end?: Date | undefined;
3074
+ }, {
3075
+ start: string | Date;
3076
+ end?: string | Date | undefined;
3077
+ }>, {
3078
+ start: Date;
3079
+ end?: Date | undefined;
3080
+ }, {
3081
+ start: string | Date;
3082
+ end?: string | Date | undefined;
3083
+ }>>;
3084
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3085
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3086
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3087
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3088
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3089
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3090
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3091
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3092
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3093
+ 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>>>>>;
3094
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3095
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3096
+ }, "strip", import("zod").ZodTypeAny, {
3097
+ name?: string | undefined;
3098
+ }, {
3099
+ name?: string | undefined;
3100
+ }>>>;
3101
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3102
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3103
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3104
+ 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>]>>>;
3105
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3106
+ _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>]>>;
3107
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3108
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3109
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3110
+ 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">>>;
3111
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3112
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3113
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3114
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3115
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3116
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3117
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3118
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3119
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3120
+ 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>;
3121
+ 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>>;
3122
+ }, "strip", import("zod").ZodTypeAny, {
3123
+ start: Date;
3124
+ end?: Date | undefined;
3125
+ }, {
3126
+ start: string | Date;
3127
+ end?: string | Date | undefined;
3128
+ }>, {
3129
+ start: Date;
3130
+ end?: Date | undefined;
3131
+ }, {
3132
+ start: string | Date;
3133
+ end?: string | Date | undefined;
3134
+ }>>;
3135
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3136
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3137
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3138
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3139
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3140
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3141
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3142
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3143
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3144
+ 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>>>>>;
3145
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3146
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3147
+ }, "strip", import("zod").ZodTypeAny, {
3148
+ name?: string | undefined;
3149
+ }, {
3150
+ name?: string | undefined;
3151
+ }>>>;
3152
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3153
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3154
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3155
+ 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>]>>>;
3156
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3157
+ _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>]>>;
3158
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3159
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3160
+ shop: 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>]>>;
3161
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3162
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3163
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3164
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3165
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3166
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3167
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3168
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3169
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3170
+ 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>;
3171
+ 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>>;
3172
+ }, "strip", import("zod").ZodTypeAny, {
3173
+ start: Date;
3174
+ end?: Date | undefined;
3175
+ }, {
3176
+ start: string | Date;
3177
+ end?: string | Date | undefined;
3178
+ }>, {
3179
+ start: Date;
3180
+ end?: Date | undefined;
3181
+ }, {
3182
+ start: string | Date;
3183
+ end?: string | Date | undefined;
3184
+ }>>;
3185
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3186
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3187
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3188
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3189
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3190
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3191
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3192
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3193
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3194
+ 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>>>>>;
3195
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3196
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3197
+ }, "strip", import("zod").ZodTypeAny, {
3198
+ name?: string | undefined;
3199
+ }, {
3200
+ name?: string | undefined;
3201
+ }>>>;
3202
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3203
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3204
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3205
+ 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>]>>>;
3206
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3207
+ _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>]>>;
3208
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3209
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3210
+ 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">>;
3211
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3212
+ 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">>>;
3213
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3214
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3215
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3216
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3217
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3218
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3219
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3220
+ 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>;
3221
+ 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>>;
3222
+ }, "strip", import("zod").ZodTypeAny, {
3223
+ start: Date;
3224
+ end?: Date | undefined;
3225
+ }, {
3226
+ start: string | Date;
3227
+ end?: string | Date | undefined;
3228
+ }>, {
3229
+ start: Date;
3230
+ end?: Date | undefined;
3231
+ }, {
3232
+ start: string | Date;
3233
+ end?: string | Date | undefined;
3234
+ }>>;
3235
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3236
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3237
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3238
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3239
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3240
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3241
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3242
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3243
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3244
+ 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>>>>>;
3245
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3246
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3247
+ }, "strip", import("zod").ZodTypeAny, {
3248
+ name?: string | undefined;
3249
+ }, {
3250
+ name?: string | undefined;
3251
+ }>>>;
3252
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3253
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3254
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3255
+ 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>]>>>;
3256
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3257
+ _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>]>>;
3258
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3259
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
3260
+ 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>]>>;
3261
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3262
+ 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">>>;
3263
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3264
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3265
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3266
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3267
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3268
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3269
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3270
+ 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>;
3271
+ 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>>;
3272
+ }, "strip", import("zod").ZodTypeAny, {
3273
+ start: Date;
3274
+ end?: Date | undefined;
3275
+ }, {
3276
+ start: string | Date;
3277
+ end?: string | Date | undefined;
3278
+ }>, {
3279
+ start: Date;
3280
+ end?: Date | undefined;
3281
+ }, {
3282
+ start: string | Date;
3283
+ end?: string | Date | undefined;
3284
+ }>>;
3285
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3286
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3287
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3288
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3289
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3290
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3291
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3292
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3293
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3294
+ 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>>>>>;
3295
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3296
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3297
+ }, "strip", import("zod").ZodTypeAny, {
3298
+ name?: string | undefined;
3299
+ }, {
3300
+ name?: string | undefined;
3301
+ }>>>;
3302
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3303
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3304
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3305
+ 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>]>>>;
3306
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3307
+ _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>]>>;
3308
+ }, import("zod").ZodTypeAny, "passthrough"> | {
3309
+ documents: (import("zod").objectInputType<{
3310
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
3311
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3312
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3313
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3314
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3315
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3316
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3317
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3318
+ 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>;
3319
+ 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>>;
3320
+ }, "strip", import("zod").ZodTypeAny, {
3321
+ start: Date;
3322
+ end?: Date | undefined;
3323
+ }, {
3324
+ start: string | Date;
3325
+ end?: string | Date | undefined;
3326
+ }>, {
3327
+ start: Date;
3328
+ end?: Date | undefined;
3329
+ }, {
3330
+ start: string | Date;
3331
+ end?: string | Date | undefined;
3332
+ }>>;
3333
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3334
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3335
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3336
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3337
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3338
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3339
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3340
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3341
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3342
+ 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>>>>>;
3343
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3344
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3345
+ }, "strip", import("zod").ZodTypeAny, {
3346
+ name?: string | undefined;
3347
+ }, {
3348
+ name?: string | undefined;
3349
+ }>>>;
3350
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3351
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3352
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3353
+ 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>]>>>;
3354
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3355
+ _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>]>>;
3356
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3357
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3358
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
3359
+ 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>]>>;
3360
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3361
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3362
+ 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>]>>>;
3363
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3364
+ _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>]>>;
3365
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3366
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3367
+ 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>]>>;
3368
+ 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>]>>;
3369
+ 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>]>>;
3370
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3371
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3372
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3373
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3374
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3375
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3376
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3377
+ 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>;
3378
+ 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>>;
3379
+ }, "strip", import("zod").ZodTypeAny, {
3380
+ start: Date;
3381
+ end?: Date | undefined;
3382
+ }, {
3383
+ start: string | Date;
3384
+ end?: string | Date | undefined;
3385
+ }>, {
3386
+ start: Date;
3387
+ end?: Date | undefined;
3388
+ }, {
3389
+ start: string | Date;
3390
+ end?: string | Date | undefined;
3391
+ }>>;
3392
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3393
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3394
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3395
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3396
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3397
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3398
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3399
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3400
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3401
+ 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>>>>>;
3402
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3403
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3404
+ }, "strip", import("zod").ZodTypeAny, {
3405
+ name?: string | undefined;
3406
+ }, {
3407
+ name?: string | undefined;
3408
+ }>>>;
3409
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3410
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3411
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3412
+ 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>]>>>;
3413
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3414
+ _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>]>>;
3415
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3416
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3417
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3418
+ 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">>>;
3419
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3420
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3421
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3422
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3423
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3424
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3425
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3426
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3427
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3428
+ 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>;
3429
+ 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>>;
3430
+ }, "strip", import("zod").ZodTypeAny, {
3431
+ start: Date;
3432
+ end?: Date | undefined;
3433
+ }, {
3434
+ start: string | Date;
3435
+ end?: string | Date | undefined;
3436
+ }>, {
3437
+ start: Date;
3438
+ end?: Date | undefined;
3439
+ }, {
3440
+ start: string | Date;
3441
+ end?: string | Date | undefined;
3442
+ }>>;
3443
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3444
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3445
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3446
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3447
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3448
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3449
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3450
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3451
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3452
+ 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>>>>>;
3453
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3454
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3455
+ }, "strip", import("zod").ZodTypeAny, {
3456
+ name?: string | undefined;
3457
+ }, {
3458
+ name?: string | undefined;
3459
+ }>>>;
3460
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3461
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3462
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3463
+ 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>]>>>;
3464
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3465
+ _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>]>>;
3466
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3467
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3468
+ shop: 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>]>>;
3469
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3470
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3471
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3472
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3473
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3474
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3475
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3476
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3477
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3478
+ 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>;
3479
+ 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>>;
3480
+ }, "strip", import("zod").ZodTypeAny, {
3481
+ start: Date;
3482
+ end?: Date | undefined;
3483
+ }, {
3484
+ start: string | Date;
3485
+ end?: string | Date | undefined;
3486
+ }>, {
3487
+ start: Date;
3488
+ end?: Date | undefined;
3489
+ }, {
3490
+ start: string | Date;
3491
+ end?: string | Date | undefined;
3492
+ }>>;
3493
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3494
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3495
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3496
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3497
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3498
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3499
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3500
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3501
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3502
+ 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>>>>>;
3503
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3504
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3505
+ }, "strip", import("zod").ZodTypeAny, {
3506
+ name?: string | undefined;
3507
+ }, {
3508
+ name?: string | undefined;
3509
+ }>>>;
3510
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3511
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3512
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3513
+ 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>]>>>;
3514
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3515
+ _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>]>>;
3516
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3517
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3518
+ 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">>;
3519
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3520
+ 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">>>;
3521
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3522
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3523
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3524
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3525
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3526
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3527
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3528
+ 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>;
3529
+ 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>>;
3530
+ }, "strip", import("zod").ZodTypeAny, {
3531
+ start: Date;
3532
+ end?: Date | undefined;
3533
+ }, {
3534
+ start: string | Date;
3535
+ end?: string | Date | undefined;
3536
+ }>, {
3537
+ start: Date;
3538
+ end?: Date | undefined;
3539
+ }, {
3540
+ start: string | Date;
3541
+ end?: string | Date | undefined;
3542
+ }>>;
3543
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3544
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3545
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3546
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3547
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3548
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3549
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3550
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3551
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3552
+ 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>>>>>;
3553
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3554
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3555
+ }, "strip", import("zod").ZodTypeAny, {
3556
+ name?: string | undefined;
3557
+ }, {
3558
+ name?: string | undefined;
3559
+ }>>>;
3560
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3561
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3562
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3563
+ 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>]>>>;
3564
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3565
+ _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>]>>;
3566
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3567
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
3568
+ 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>]>>;
3569
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3570
+ 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">>>;
3571
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3572
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3573
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3574
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3575
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3576
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3577
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3578
+ 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>;
3579
+ 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>>;
3580
+ }, "strip", import("zod").ZodTypeAny, {
3581
+ start: Date;
3582
+ end?: Date | undefined;
3583
+ }, {
3584
+ start: string | Date;
3585
+ end?: string | Date | undefined;
3586
+ }>, {
3587
+ start: Date;
3588
+ end?: Date | undefined;
3589
+ }, {
3590
+ start: string | Date;
3591
+ end?: string | Date | undefined;
3592
+ }>>;
3593
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3594
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3595
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3596
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3597
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3598
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3599
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3600
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3601
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3602
+ 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>>>>>;
3603
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3604
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3605
+ }, "strip", import("zod").ZodTypeAny, {
3606
+ name?: string | undefined;
3607
+ }, {
3608
+ name?: string | undefined;
3609
+ }>>>;
3610
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3611
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3612
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3613
+ 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>]>>>;
3614
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3615
+ _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>]>>;
3616
+ }, import("zod").ZodTypeAny, "passthrough">)[];
3617
+ metadata?: {
3618
+ page: number;
3619
+ size: number;
3620
+ totalElements: number;
3621
+ totalPages: number;
3622
+ } | undefined;
3623
+ } | undefined;
3624
+ };
3625
+ meta: object;
3626
+ }>;
3627
+ updateStatus: import("@trpc/server").TRPCMutationProcedure<{
3628
+ input: {
3629
+ _id: string | import("mongoose").Types.ObjectId;
3630
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
3631
+ };
3632
+ output: {
3633
+ message: string;
3634
+ success: boolean;
3635
+ data?: import("zod").objectInputType<{
3636
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
3637
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3638
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3639
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3640
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3641
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3642
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3643
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3644
+ 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>;
3645
+ 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>>;
3646
+ }, "strip", import("zod").ZodTypeAny, {
3647
+ start: Date;
3648
+ end?: Date | undefined;
3649
+ }, {
3650
+ start: string | Date;
3651
+ end?: string | Date | undefined;
3652
+ }>, {
3653
+ start: Date;
3654
+ end?: Date | undefined;
3655
+ }, {
3656
+ start: string | Date;
3657
+ end?: string | Date | undefined;
3658
+ }>>;
3659
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3660
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3661
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3662
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3663
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3664
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3665
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3666
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3667
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3668
+ 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>>>>>;
3669
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3670
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3671
+ }, "strip", import("zod").ZodTypeAny, {
3672
+ name?: string | undefined;
3673
+ }, {
3674
+ name?: string | undefined;
3675
+ }>>>;
3676
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3677
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3678
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3679
+ 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>]>>>;
3680
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3681
+ _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>]>>;
3682
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3683
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3684
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodLiteral<1>>;
3685
+ 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>]>>;
3686
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3687
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3688
+ 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>]>>>;
3689
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3690
+ _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>]>>;
3691
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3692
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3693
+ 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>]>>;
3694
+ 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>]>>;
3695
+ 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>]>>;
3696
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3697
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
3698
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3699
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3700
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3701
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3702
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
3703
+ 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>;
3704
+ 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>>;
3705
+ }, "strip", import("zod").ZodTypeAny, {
3706
+ start: Date;
3707
+ end?: Date | undefined;
3708
+ }, {
3709
+ start: string | Date;
3710
+ end?: string | Date | undefined;
3711
+ }>, {
3712
+ start: Date;
3713
+ end?: Date | undefined;
3714
+ }, {
3715
+ start: string | Date;
3716
+ end?: string | Date | undefined;
3717
+ }>>;
3718
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3719
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3720
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3721
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3722
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
3723
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
3724
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3725
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3726
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3727
+ 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>>>>>;
3728
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
3729
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3730
+ }, "strip", import("zod").ZodTypeAny, {
3731
+ name?: string | undefined;
3732
+ }, {
3733
+ name?: string | undefined;
3734
+ }>>>;
3735
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
3736
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
3737
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
3738
+ 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>]>>>;
3739
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3740
+ _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>]>>;
3741
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3742
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3743
+ itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3744
+ 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">>>;
3745
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
3746
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2696
3747
  valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2697
3748
  value: import("zod").ZodOptional<import("zod").ZodNumber>;
2698
3749
  secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
@@ -2740,8 +3791,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2740
3791
  _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>]>>;
2741
3792
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
2742
3793
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2743
- itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2744
- 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">>>;
3794
+ shop: 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>]>>;
2745
3795
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2746
3796
  firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
2747
3797
  valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
@@ -2997,7 +4047,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
2997
4047
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
2998
4048
  _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>]>>;
2999
4049
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3000
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4050
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3001
4051
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3002
4052
  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">>>;
3003
4053
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -3047,6 +4097,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3047
4097
  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>]>>>;
3048
4098
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3049
4099
  _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>]>>;
4100
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
4101
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4102
+ shop: 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>]>>;
4103
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4104
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4105
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4106
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
4107
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4108
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4109
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4110
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4111
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
4112
+ 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>;
4113
+ 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>>;
4114
+ }, "strip", import("zod").ZodTypeAny, {
4115
+ start: Date;
4116
+ end?: Date | undefined;
4117
+ }, {
4118
+ start: string | Date;
4119
+ end?: string | Date | undefined;
4120
+ }>, {
4121
+ start: Date;
4122
+ end?: Date | undefined;
4123
+ }, {
4124
+ start: string | Date;
4125
+ end?: string | Date | undefined;
4126
+ }>>;
4127
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4128
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4129
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4130
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4131
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
4132
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4133
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4134
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4135
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4136
+ 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>>>>>;
4137
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
4138
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4139
+ }, "strip", import("zod").ZodTypeAny, {
4140
+ name?: string | undefined;
4141
+ }, {
4142
+ name?: string | undefined;
4143
+ }>>>;
4144
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4145
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4146
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4147
+ 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>]>>>;
4148
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
4149
+ _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>]>>;
3050
4150
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3051
4151
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3052
4152
  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">>;
@@ -3273,7 +4373,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3273
4373
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3274
4374
  _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>]>>;
3275
4375
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3276
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4376
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3277
4377
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3278
4378
  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">>>;
3279
4379
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -3323,6 +4423,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3323
4423
  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>]>>>;
3324
4424
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3325
4425
  _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>]>>;
4426
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
4427
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4428
+ shop: 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>]>>;
4429
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4430
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4431
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4432
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
4433
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4434
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4435
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4436
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4437
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
4438
+ 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>;
4439
+ 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>>;
4440
+ }, "strip", import("zod").ZodTypeAny, {
4441
+ start: Date;
4442
+ end?: Date | undefined;
4443
+ }, {
4444
+ start: string | Date;
4445
+ end?: string | Date | undefined;
4446
+ }>, {
4447
+ start: Date;
4448
+ end?: Date | undefined;
4449
+ }, {
4450
+ start: string | Date;
4451
+ end?: string | Date | undefined;
4452
+ }>>;
4453
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4454
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4455
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4456
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4457
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
4458
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4459
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4460
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4461
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4462
+ 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>>>>>;
4463
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
4464
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4465
+ }, "strip", import("zod").ZodTypeAny, {
4466
+ name?: string | undefined;
4467
+ }, {
4468
+ name?: string | undefined;
4469
+ }>>>;
4470
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4471
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4472
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4473
+ 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>]>>>;
4474
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
4475
+ _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>]>>;
3326
4476
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3327
4477
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3328
4478
  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">>;
@@ -3531,7 +4681,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3531
4681
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3532
4682
  _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>]>>;
3533
4683
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3534
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4684
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3535
4685
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3536
4686
  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">>>;
3537
4687
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -3581,6 +4731,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3581
4731
  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>]>>>;
3582
4732
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3583
4733
  _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>]>>;
4734
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
4735
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4736
+ shop: 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>]>>;
4737
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4738
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
4739
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4740
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
4741
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4742
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4743
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4744
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4745
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
4746
+ 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>;
4747
+ 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>>;
4748
+ }, "strip", import("zod").ZodTypeAny, {
4749
+ start: Date;
4750
+ end?: Date | undefined;
4751
+ }, {
4752
+ start: string | Date;
4753
+ end?: string | Date | undefined;
4754
+ }>, {
4755
+ start: Date;
4756
+ end?: Date | undefined;
4757
+ }, {
4758
+ start: string | Date;
4759
+ end?: string | Date | undefined;
4760
+ }>>;
4761
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4762
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4763
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4764
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4765
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
4766
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
4767
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4768
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4769
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4770
+ 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>>>>>;
4771
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
4772
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4773
+ }, "strip", import("zod").ZodTypeAny, {
4774
+ name?: string | undefined;
4775
+ }, {
4776
+ name?: string | undefined;
4777
+ }>>>;
4778
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
4779
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
4780
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
4781
+ 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>]>>>;
4782
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
4783
+ _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>]>>;
3584
4784
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
3585
4785
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3586
4786
  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">>;
@@ -3826,7 +5026,7 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3826
5026
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3827
5027
  _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>]>>;
3828
5028
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectOutputType<{
3829
- couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5029
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3830
5030
  itemTypes: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3831
5031
  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">>>;
3832
5032
  isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
@@ -3876,6 +5076,56 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
3876
5076
  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>]>>>;
3877
5077
  isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
3878
5078
  _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>]>>;
5079
+ }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectOutputType<{
5080
+ couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
5081
+ shop: 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>]>>;
5082
+ isShopCoverExpenses: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
5083
+ firstOrderOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
5084
+ valueType: import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
5085
+ value: import("zod").ZodOptional<import("zod").ZodNumber>;
5086
+ secondaryCurrencyValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
5087
+ maxDiscountLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
5088
+ secondaryCurrencyMaxDiscountLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
5089
+ isMaxDiscountLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5090
+ duration: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodObject<{
5091
+ 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>;
5092
+ 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>>;
5093
+ }, "strip", import("zod").ZodTypeAny, {
5094
+ start: Date;
5095
+ end?: Date | undefined;
5096
+ }, {
5097
+ start: string | Date;
5098
+ end?: string | Date | undefined;
5099
+ }>, {
5100
+ start: Date;
5101
+ end?: Date | undefined;
5102
+ }, {
5103
+ start: string | Date;
5104
+ end?: string | Date | undefined;
5105
+ }>>;
5106
+ spendLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
5107
+ isSpendLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5108
+ totalOrderLimit: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
5109
+ isTotalOrderLimitEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5110
+ minOrderValue: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodNumber>>>;
5111
+ secondaryCurrencyMinOrderValue: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
5112
+ isMinOrderValueEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5113
+ forNewUserOnly: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5114
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
5115
+ 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>>>>>;
5116
+ referringUser: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodObject<{
5117
+ name: import("zod").ZodOptional<import("zod").ZodString> | import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
5118
+ }, "strip", import("zod").ZodTypeAny, {
5119
+ name?: string | undefined;
5120
+ }, {
5121
+ name?: string | undefined;
5122
+ }>>>;
5123
+ code: import("zod").ZodOptional<import("zod").ZodString | import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodString, string, string>, string, string>>;
5124
+ orderLimitPerUser: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodNumber>>>>;
5125
+ isOrderLimitPerUserEnabled: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>>;
5126
+ 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>]>>>;
5127
+ isExpired: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
5128
+ _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>]>>;
3879
5129
  }, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectOutputType<{
3880
5130
  couponType: import("zod").ZodOptional<import("zod").ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3881
5131
  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">>;
@@ -4121,6 +5371,20 @@ declare const marketingMicroServiceRouter: import("@trpc/server").TRPCBuiltRoute
4121
5371
  };
4122
5372
  meta: object;
4123
5373
  }>;
5374
+ handleCouponExpiry: import("@trpc/server").TRPCMutationProcedure<{
5375
+ input: {
5376
+ couponCode: string;
5377
+ };
5378
+ output: void;
5379
+ meta: object;
5380
+ }>;
5381
+ addExistingCouponsToNewUser: import("@trpc/server").TRPCMutationProcedure<{
5382
+ input: {
5383
+ userId: string;
5384
+ };
5385
+ output: void;
5386
+ meta: object;
5387
+ }>;
4124
5388
  }>>;
4125
5389
  punchMarketingHistoryRouter: import("@trpc/server").TRPCBuiltRouter<{
4126
5390
  ctx: import("@lyxa.ai/core/dist/libraries/trpc/context").LyxaHTTPContext;