@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
@@ -96,7 +96,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
96
96
  end?: string | Date | undefined;
97
97
  };
98
98
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
99
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
99
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
100
100
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
101
101
  spendLimit?: number | null | undefined;
102
102
  isSpendLimitEnabled?: boolean | undefined;
@@ -122,6 +122,39 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
122
122
  shops?: (string | mongoose.Types.ObjectId)[] | undefined;
123
123
  isShopCoverExpenses?: boolean | undefined;
124
124
  firstOrderOnly?: boolean | undefined;
125
+ } | {
126
+ shop: string | mongoose.Types.ObjectId;
127
+ value: number;
128
+ code: string;
129
+ duration: {
130
+ start: string | Date;
131
+ end?: string | Date | undefined;
132
+ };
133
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
134
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
135
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
136
+ spendLimit?: number | null | undefined;
137
+ isSpendLimitEnabled?: boolean | undefined;
138
+ secondaryCurrencyValue?: number | undefined;
139
+ maxDiscountLimit?: number | null | undefined;
140
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
141
+ isMaxDiscountLimitEnabled?: boolean | undefined;
142
+ totalOrderLimit?: number | null | undefined;
143
+ isTotalOrderLimitEnabled?: boolean | undefined;
144
+ minOrderValue?: number | null | undefined;
145
+ secondaryCurrencyMinOrderValue?: number | undefined;
146
+ isMinOrderValueEnabled?: boolean | undefined;
147
+ forNewUserOnly?: boolean | undefined;
148
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
149
+ referringUser?: {
150
+ name?: string | undefined;
151
+ } | undefined;
152
+ orderLimitPerUser?: number | null | undefined;
153
+ isOrderLimitPerUserEnabled?: boolean | undefined;
154
+ createdBy?: string | mongoose.Types.ObjectId | undefined;
155
+ isExpired?: boolean | undefined;
156
+ isShopCoverExpenses?: boolean | undefined;
157
+ firstOrderOnly?: boolean | undefined;
125
158
  } | {
126
159
  value: number;
127
160
  code: string;
@@ -299,7 +332,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
299
332
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
300
333
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
301
334
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
302
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
335
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
303
336
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
304
337
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
305
338
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -349,6 +382,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
349
382
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
350
383
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
351
384
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
385
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
386
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
387
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
388
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
389
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
390
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
391
+ value: z.ZodOptional<z.ZodNumber>;
392
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
393
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
394
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
395
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
396
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
397
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
398
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
399
+ }, "strip", z.ZodTypeAny, {
400
+ start: Date;
401
+ end?: Date | undefined;
402
+ }, {
403
+ start: string | Date;
404
+ end?: string | Date | undefined;
405
+ }>, {
406
+ start: Date;
407
+ end?: Date | undefined;
408
+ }, {
409
+ start: string | Date;
410
+ end?: string | Date | undefined;
411
+ }>>;
412
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
413
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
414
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
415
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
416
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
417
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
418
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
419
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
420
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
421
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
422
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
423
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
424
+ }, "strip", z.ZodTypeAny, {
425
+ name?: string | undefined;
426
+ }, {
427
+ name?: string | undefined;
428
+ }>>>;
429
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
430
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
431
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
432
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
433
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
434
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
352
435
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
353
436
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
354
437
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -557,7 +640,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
557
640
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
558
641
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
559
642
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
560
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
643
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
561
644
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
562
645
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
563
646
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -607,6 +690,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
607
690
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
608
691
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
609
692
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
693
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
694
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
695
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
696
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
697
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
698
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
699
+ value: z.ZodOptional<z.ZodNumber>;
700
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
701
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
702
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
703
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
704
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
705
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
706
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
707
+ }, "strip", z.ZodTypeAny, {
708
+ start: Date;
709
+ end?: Date | undefined;
710
+ }, {
711
+ start: string | Date;
712
+ end?: string | Date | undefined;
713
+ }>, {
714
+ start: Date;
715
+ end?: Date | undefined;
716
+ }, {
717
+ start: string | Date;
718
+ end?: string | Date | undefined;
719
+ }>>;
720
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
721
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
722
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
723
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
724
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
725
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
726
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
727
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
728
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
729
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
730
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
731
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
732
+ }, "strip", z.ZodTypeAny, {
733
+ name?: string | undefined;
734
+ }, {
735
+ name?: string | undefined;
736
+ }>>>;
737
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
738
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
739
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
740
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
741
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
742
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
610
743
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
611
744
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
612
745
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -830,7 +963,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
830
963
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
831
964
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
832
965
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
833
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
966
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
834
967
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
835
968
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
836
969
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -880,6 +1013,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
880
1013
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
881
1014
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
882
1015
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1016
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1017
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1018
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1019
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1020
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1021
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1022
+ value: z.ZodOptional<z.ZodNumber>;
1023
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1024
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1025
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1026
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1027
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1028
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1029
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1030
+ }, "strip", z.ZodTypeAny, {
1031
+ start: Date;
1032
+ end?: Date | undefined;
1033
+ }, {
1034
+ start: string | Date;
1035
+ end?: string | Date | undefined;
1036
+ }>, {
1037
+ start: Date;
1038
+ end?: Date | undefined;
1039
+ }, {
1040
+ start: string | Date;
1041
+ end?: string | Date | undefined;
1042
+ }>>;
1043
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1044
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1045
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1046
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1047
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1048
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1049
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1050
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1051
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1052
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1053
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1054
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1055
+ }, "strip", z.ZodTypeAny, {
1056
+ name?: string | undefined;
1057
+ }, {
1058
+ name?: string | undefined;
1059
+ }>>>;
1060
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1061
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1062
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1063
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1064
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1065
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
883
1066
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
884
1067
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
885
1068
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -1088,7 +1271,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1088
1271
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1089
1272
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1090
1273
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1091
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1274
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1092
1275
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1093
1276
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1094
1277
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -1138,6 +1321,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1138
1321
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1139
1322
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1140
1323
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1324
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1325
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1326
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1327
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1328
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1329
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1330
+ value: z.ZodOptional<z.ZodNumber>;
1331
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1332
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1333
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1334
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1335
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1336
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1337
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1338
+ }, "strip", z.ZodTypeAny, {
1339
+ start: Date;
1340
+ end?: Date | undefined;
1341
+ }, {
1342
+ start: string | Date;
1343
+ end?: string | Date | undefined;
1344
+ }>, {
1345
+ start: Date;
1346
+ end?: Date | undefined;
1347
+ }, {
1348
+ start: string | Date;
1349
+ end?: string | Date | undefined;
1350
+ }>>;
1351
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1352
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1353
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1354
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1355
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1356
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1357
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1358
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1359
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1360
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1361
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1362
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1363
+ }, "strip", z.ZodTypeAny, {
1364
+ name?: string | undefined;
1365
+ }, {
1366
+ name?: string | undefined;
1367
+ }>>>;
1368
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1369
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1370
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1371
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1372
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1373
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1141
1374
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1142
1375
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1143
1376
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -1372,7 +1605,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1372
1605
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1373
1606
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1374
1607
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1375
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1608
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1376
1609
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1377
1610
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1378
1611
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -1423,10 +1656,10 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1423
1656
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1424
1657
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1425
1658
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1426
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1427
- users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
1428
- itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1429
- shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1659
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1660
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1661
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1662
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1430
1663
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1431
1664
  value: z.ZodOptional<z.ZodNumber>;
1432
1665
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -1473,8 +1706,8 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1473
1706
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1474
1707
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1475
1708
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1476
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
1477
- influencer: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1709
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1710
+ users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
1478
1711
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1479
1712
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1480
1713
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
@@ -1522,16 +1755,66 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1522
1755
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1523
1756
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1524
1757
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1525
- }, z.ZodTypeAny, "passthrough"> | {
1526
- documents: (z.objectInputType<{
1527
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
1528
- valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1529
- value: z.ZodOptional<z.ZodNumber>;
1530
- secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1531
- maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1532
- secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1533
- isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1534
- duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1758
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1759
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
1760
+ influencer: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1761
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1762
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1763
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1764
+ value: z.ZodOptional<z.ZodNumber>;
1765
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1766
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1767
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1768
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1769
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1770
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1771
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1772
+ }, "strip", z.ZodTypeAny, {
1773
+ start: Date;
1774
+ end?: Date | undefined;
1775
+ }, {
1776
+ start: string | Date;
1777
+ end?: string | Date | undefined;
1778
+ }>, {
1779
+ start: Date;
1780
+ end?: Date | undefined;
1781
+ }, {
1782
+ start: string | Date;
1783
+ end?: string | Date | undefined;
1784
+ }>>;
1785
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1786
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1787
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1788
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1789
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1790
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1791
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1792
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1793
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
1794
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
1795
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1796
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1797
+ }, "strip", z.ZodTypeAny, {
1798
+ name?: string | undefined;
1799
+ }, {
1800
+ name?: string | undefined;
1801
+ }>>>;
1802
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
1803
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1804
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1805
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1806
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1807
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1808
+ }, z.ZodTypeAny, "passthrough"> | {
1809
+ documents: (z.objectInputType<{
1810
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
1811
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1812
+ value: z.ZodOptional<z.ZodNumber>;
1813
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1814
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1815
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1816
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1817
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1535
1818
  start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1536
1819
  end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1537
1820
  }, "strip", z.ZodTypeAny, {
@@ -1630,7 +1913,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1630
1913
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1631
1914
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1632
1915
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1633
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1916
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
1634
1917
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
1635
1918
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
1636
1919
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -1680,6 +1963,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1680
1963
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
1681
1964
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1682
1965
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1966
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1967
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
1968
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1969
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1970
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1971
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
1972
+ value: z.ZodOptional<z.ZodNumber>;
1973
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1974
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1975
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1976
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1977
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1978
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
1979
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
1980
+ }, "strip", z.ZodTypeAny, {
1981
+ start: Date;
1982
+ end?: Date | undefined;
1983
+ }, {
1984
+ start: string | Date;
1985
+ end?: string | Date | undefined;
1986
+ }>, {
1987
+ start: Date;
1988
+ end?: Date | undefined;
1989
+ }, {
1990
+ start: string | Date;
1991
+ end?: string | Date | undefined;
1992
+ }>>;
1993
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1994
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1995
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
1996
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
1997
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
1998
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1999
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2000
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2001
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2002
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2003
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2004
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2005
+ }, "strip", z.ZodTypeAny, {
2006
+ name?: string | undefined;
2007
+ }, {
2008
+ name?: string | undefined;
2009
+ }>>>;
2010
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2011
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2012
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2013
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2014
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2015
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
1683
2016
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
1684
2017
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
1685
2018
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -1873,7 +2206,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1873
2206
  end?: string | Date | undefined;
1874
2207
  };
1875
2208
  valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
1876
- couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2209
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES;
1877
2210
  status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
1878
2211
  spendLimit?: number | null | undefined;
1879
2212
  isSpendLimitEnabled?: boolean | undefined;
@@ -1899,6 +2232,39 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
1899
2232
  shops?: (string | mongoose.Types.ObjectId)[] | undefined;
1900
2233
  isShopCoverExpenses?: boolean | undefined;
1901
2234
  firstOrderOnly?: boolean | undefined;
2235
+ } | {
2236
+ shop: string | mongoose.Types.ObjectId;
2237
+ value: number;
2238
+ code: string;
2239
+ duration: {
2240
+ start: string | Date;
2241
+ end?: string | Date | undefined;
2242
+ };
2243
+ valueType: import("@lyxa.ai/core/dist/utilities/enum").ValueType;
2244
+ couponType: import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE;
2245
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2246
+ spendLimit?: number | null | undefined;
2247
+ isSpendLimitEnabled?: boolean | undefined;
2248
+ secondaryCurrencyValue?: number | undefined;
2249
+ maxDiscountLimit?: number | null | undefined;
2250
+ secondaryCurrencyMaxDiscountLimit?: number | undefined;
2251
+ isMaxDiscountLimitEnabled?: boolean | undefined;
2252
+ totalOrderLimit?: number | null | undefined;
2253
+ isTotalOrderLimitEnabled?: boolean | undefined;
2254
+ minOrderValue?: number | null | undefined;
2255
+ secondaryCurrencyMinOrderValue?: number | undefined;
2256
+ isMinOrderValueEnabled?: boolean | undefined;
2257
+ forNewUserOnly?: boolean | undefined;
2258
+ expirationReason?: import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason | null | undefined;
2259
+ referringUser?: {
2260
+ name?: string | undefined;
2261
+ } | undefined;
2262
+ orderLimitPerUser?: number | null | undefined;
2263
+ isOrderLimitPerUserEnabled?: boolean | undefined;
2264
+ createdBy?: string | mongoose.Types.ObjectId | undefined;
2265
+ isExpired?: boolean | undefined;
2266
+ isShopCoverExpenses?: boolean | undefined;
2267
+ firstOrderOnly?: boolean | undefined;
1902
2268
  } | {
1903
2269
  value: number;
1904
2270
  code: string;
@@ -2018,19 +2384,704 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2018
2384
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2019
2385
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2020
2386
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2021
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
2022
- orderLimitPerUser: z.ZodOptional<z.ZodLiteral<1>>;
2023
- referralUser: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2024
- code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2025
- isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2026
- createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2027
- isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2028
- _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2029
- }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2030
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
2031
- user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2032
- referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2033
- referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2387
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
2388
+ orderLimitPerUser: z.ZodOptional<z.ZodLiteral<1>>;
2389
+ referralUser: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2390
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2391
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2392
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2393
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2394
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2395
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2396
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
2397
+ user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2398
+ referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2399
+ referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2400
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2401
+ value: z.ZodOptional<z.ZodNumber>;
2402
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2403
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2404
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2405
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2406
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2407
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2408
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2409
+ }, "strip", z.ZodTypeAny, {
2410
+ start: Date;
2411
+ end?: Date | undefined;
2412
+ }, {
2413
+ start: string | Date;
2414
+ end?: string | Date | undefined;
2415
+ }>, {
2416
+ start: Date;
2417
+ end?: Date | undefined;
2418
+ }, {
2419
+ start: string | Date;
2420
+ end?: string | Date | undefined;
2421
+ }>>;
2422
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2423
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2424
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2425
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2426
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2427
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2428
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2429
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2430
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2431
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2432
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2433
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2434
+ }, "strip", z.ZodTypeAny, {
2435
+ name?: string | undefined;
2436
+ }, {
2437
+ name?: string | undefined;
2438
+ }>>>;
2439
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2440
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2441
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2442
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2443
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2444
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2445
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2446
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2447
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2448
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2449
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2450
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2451
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2452
+ value: z.ZodOptional<z.ZodNumber>;
2453
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2454
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2455
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2456
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2457
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2458
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2459
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2460
+ }, "strip", z.ZodTypeAny, {
2461
+ start: Date;
2462
+ end?: Date | undefined;
2463
+ }, {
2464
+ start: string | Date;
2465
+ end?: string | Date | undefined;
2466
+ }>, {
2467
+ start: Date;
2468
+ end?: Date | undefined;
2469
+ }, {
2470
+ start: string | Date;
2471
+ end?: string | Date | undefined;
2472
+ }>>;
2473
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2474
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2475
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2476
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2477
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2478
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2479
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2480
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2481
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2482
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2483
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2484
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2485
+ }, "strip", z.ZodTypeAny, {
2486
+ name?: string | undefined;
2487
+ }, {
2488
+ name?: string | undefined;
2489
+ }>>>;
2490
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2491
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2492
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2493
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2494
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2495
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2496
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2497
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2498
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2499
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2500
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2501
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2502
+ value: z.ZodOptional<z.ZodNumber>;
2503
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2504
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2505
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2506
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2507
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2508
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2509
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2510
+ }, "strip", z.ZodTypeAny, {
2511
+ start: Date;
2512
+ end?: Date | undefined;
2513
+ }, {
2514
+ start: string | Date;
2515
+ end?: string | Date | undefined;
2516
+ }>, {
2517
+ start: Date;
2518
+ end?: Date | undefined;
2519
+ }, {
2520
+ start: string | Date;
2521
+ end?: string | Date | undefined;
2522
+ }>>;
2523
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2524
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2525
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2526
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2527
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2528
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2529
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2530
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2531
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2532
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2533
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2534
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2535
+ }, "strip", z.ZodTypeAny, {
2536
+ name?: string | undefined;
2537
+ }, {
2538
+ name?: string | undefined;
2539
+ }>>>;
2540
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2541
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2542
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2543
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2544
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2545
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2546
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2547
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2548
+ users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
2549
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2550
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2551
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2552
+ value: z.ZodOptional<z.ZodNumber>;
2553
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2554
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2555
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2556
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2557
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2558
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2559
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2560
+ }, "strip", z.ZodTypeAny, {
2561
+ start: Date;
2562
+ end?: Date | undefined;
2563
+ }, {
2564
+ start: string | Date;
2565
+ end?: string | Date | undefined;
2566
+ }>, {
2567
+ start: Date;
2568
+ end?: Date | undefined;
2569
+ }, {
2570
+ start: string | Date;
2571
+ end?: string | Date | undefined;
2572
+ }>>;
2573
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2574
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2575
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2576
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2577
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2578
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2579
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2580
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2581
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2582
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2583
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2584
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2585
+ }, "strip", z.ZodTypeAny, {
2586
+ name?: string | undefined;
2587
+ }, {
2588
+ name?: string | undefined;
2589
+ }>>>;
2590
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2591
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2592
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2593
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2594
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2595
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2596
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2597
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
2598
+ influencer: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2599
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2600
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2601
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2602
+ value: z.ZodOptional<z.ZodNumber>;
2603
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2604
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2605
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2606
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2607
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2608
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2609
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2610
+ }, "strip", z.ZodTypeAny, {
2611
+ start: Date;
2612
+ end?: Date | undefined;
2613
+ }, {
2614
+ start: string | Date;
2615
+ end?: string | Date | undefined;
2616
+ }>, {
2617
+ start: Date;
2618
+ end?: Date | undefined;
2619
+ }, {
2620
+ start: string | Date;
2621
+ end?: string | Date | undefined;
2622
+ }>>;
2623
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2624
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2625
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2626
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2627
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2628
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2629
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2630
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2631
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2632
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2633
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2634
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2635
+ }, "strip", z.ZodTypeAny, {
2636
+ name?: string | undefined;
2637
+ }, {
2638
+ name?: string | undefined;
2639
+ }>>>;
2640
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2641
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2642
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2643
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2644
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2645
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2646
+ }, z.ZodTypeAny, "passthrough"> | {
2647
+ documents: (z.objectInputType<{
2648
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
2649
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2650
+ value: z.ZodOptional<z.ZodNumber>;
2651
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2652
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2653
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2654
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2655
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2656
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2657
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2658
+ }, "strip", z.ZodTypeAny, {
2659
+ start: Date;
2660
+ end?: Date | undefined;
2661
+ }, {
2662
+ start: string | Date;
2663
+ end?: string | Date | undefined;
2664
+ }>, {
2665
+ start: Date;
2666
+ end?: Date | undefined;
2667
+ }, {
2668
+ start: string | Date;
2669
+ end?: string | Date | undefined;
2670
+ }>>;
2671
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2672
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2673
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2674
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2675
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2676
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2677
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2678
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2679
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2680
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2681
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2682
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2683
+ }, "strip", z.ZodTypeAny, {
2684
+ name?: string | undefined;
2685
+ }, {
2686
+ name?: string | undefined;
2687
+ }>>>;
2688
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2689
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2690
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2691
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2692
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2693
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2694
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2695
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
2696
+ orderLimitPerUser: z.ZodOptional<z.ZodLiteral<1>>;
2697
+ referralUser: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2698
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2699
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2700
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2701
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2702
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2703
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2704
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
2705
+ user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2706
+ referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2707
+ referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2708
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2709
+ value: z.ZodOptional<z.ZodNumber>;
2710
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2711
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2712
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2713
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2714
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2715
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2716
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2717
+ }, "strip", z.ZodTypeAny, {
2718
+ start: Date;
2719
+ end?: Date | undefined;
2720
+ }, {
2721
+ start: string | Date;
2722
+ end?: string | Date | undefined;
2723
+ }>, {
2724
+ start: Date;
2725
+ end?: Date | undefined;
2726
+ }, {
2727
+ start: string | Date;
2728
+ end?: string | Date | undefined;
2729
+ }>>;
2730
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2731
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2732
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2733
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2734
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2735
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2736
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2737
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2738
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2739
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2740
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2741
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2742
+ }, "strip", z.ZodTypeAny, {
2743
+ name?: string | undefined;
2744
+ }, {
2745
+ name?: string | undefined;
2746
+ }>>>;
2747
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2748
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2749
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2750
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2751
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2752
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2753
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2754
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2755
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2756
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2757
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2758
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2759
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2760
+ value: z.ZodOptional<z.ZodNumber>;
2761
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2762
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2763
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2764
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2765
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2766
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2767
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2768
+ }, "strip", z.ZodTypeAny, {
2769
+ start: Date;
2770
+ end?: Date | undefined;
2771
+ }, {
2772
+ start: string | Date;
2773
+ end?: string | Date | undefined;
2774
+ }>, {
2775
+ start: Date;
2776
+ end?: Date | undefined;
2777
+ }, {
2778
+ start: string | Date;
2779
+ end?: string | Date | undefined;
2780
+ }>>;
2781
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2782
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2783
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2784
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2785
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2786
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2787
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2788
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2789
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2790
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2791
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2792
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2793
+ }, "strip", z.ZodTypeAny, {
2794
+ name?: string | undefined;
2795
+ }, {
2796
+ name?: string | undefined;
2797
+ }>>>;
2798
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2799
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2800
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2801
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2802
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2803
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2804
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2805
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2806
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2807
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2808
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2809
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2810
+ value: z.ZodOptional<z.ZodNumber>;
2811
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2812
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2813
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2814
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2815
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2816
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2817
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2818
+ }, "strip", z.ZodTypeAny, {
2819
+ start: Date;
2820
+ end?: Date | undefined;
2821
+ }, {
2822
+ start: string | Date;
2823
+ end?: string | Date | undefined;
2824
+ }>, {
2825
+ start: Date;
2826
+ end?: Date | undefined;
2827
+ }, {
2828
+ start: string | Date;
2829
+ end?: string | Date | undefined;
2830
+ }>>;
2831
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2832
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2833
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2834
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2835
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2836
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2837
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2838
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2839
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2840
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2841
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2842
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2843
+ }, "strip", z.ZodTypeAny, {
2844
+ name?: string | undefined;
2845
+ }, {
2846
+ name?: string | undefined;
2847
+ }>>>;
2848
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2849
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2850
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2851
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2852
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2853
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2854
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2855
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2856
+ users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
2857
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2858
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2859
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2860
+ value: z.ZodOptional<z.ZodNumber>;
2861
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2862
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2863
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2864
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2865
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2866
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2867
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2868
+ }, "strip", z.ZodTypeAny, {
2869
+ start: Date;
2870
+ end?: Date | undefined;
2871
+ }, {
2872
+ start: string | Date;
2873
+ end?: string | Date | undefined;
2874
+ }>, {
2875
+ start: Date;
2876
+ end?: Date | undefined;
2877
+ }, {
2878
+ start: string | Date;
2879
+ end?: string | Date | undefined;
2880
+ }>>;
2881
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2882
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2883
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2884
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2885
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2886
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2887
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2888
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2889
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2890
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2891
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2892
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2893
+ }, "strip", z.ZodTypeAny, {
2894
+ name?: string | undefined;
2895
+ }, {
2896
+ name?: string | undefined;
2897
+ }>>>;
2898
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2899
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2900
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2901
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2902
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2903
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2904
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2905
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.CUSTOM_COUPON>>;
2906
+ influencer: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2907
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2908
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2909
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2910
+ value: z.ZodOptional<z.ZodNumber>;
2911
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2912
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2913
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2914
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2915
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2916
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2917
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2918
+ }, "strip", z.ZodTypeAny, {
2919
+ start: Date;
2920
+ end?: Date | undefined;
2921
+ }, {
2922
+ start: string | Date;
2923
+ end?: string | Date | undefined;
2924
+ }>, {
2925
+ start: Date;
2926
+ end?: Date | undefined;
2927
+ }, {
2928
+ start: string | Date;
2929
+ end?: string | Date | undefined;
2930
+ }>>;
2931
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2932
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2933
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2934
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2935
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
2936
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2937
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2938
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2939
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
2940
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
2941
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2942
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2943
+ }, "strip", z.ZodTypeAny, {
2944
+ name?: string | undefined;
2945
+ }, {
2946
+ name?: string | undefined;
2947
+ }>>>;
2948
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
2949
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2950
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2951
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2952
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2953
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2954
+ }, z.ZodTypeAny, "passthrough">)[];
2955
+ metadata?: {
2956
+ page: number;
2957
+ size: number;
2958
+ totalElements: number;
2959
+ totalPages: number;
2960
+ } | undefined;
2961
+ } | undefined;
2962
+ };
2963
+ meta: object;
2964
+ }>;
2965
+ updateStatus: import("@trpc/server").TRPCMutationProcedure<{
2966
+ input: {
2967
+ _id: string | mongoose.Types.ObjectId;
2968
+ status?: import("@lyxa.ai/core/dist/utilities/enum").Status | undefined;
2969
+ };
2970
+ output: {
2971
+ message: string;
2972
+ success: boolean;
2973
+ data?: z.objectInputType<{
2974
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.GLOBAL>>;
2975
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2976
+ value: z.ZodOptional<z.ZodNumber>;
2977
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2978
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2979
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2980
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2981
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2982
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
2983
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
2984
+ }, "strip", z.ZodTypeAny, {
2985
+ start: Date;
2986
+ end?: Date | undefined;
2987
+ }, {
2988
+ start: string | Date;
2989
+ end?: string | Date | undefined;
2990
+ }>, {
2991
+ start: Date;
2992
+ end?: Date | undefined;
2993
+ }, {
2994
+ start: string | Date;
2995
+ end?: string | Date | undefined;
2996
+ }>>;
2997
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
2998
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
2999
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3000
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3001
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3002
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3003
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3004
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3005
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3006
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3007
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3008
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3009
+ }, "strip", z.ZodTypeAny, {
3010
+ name?: string | undefined;
3011
+ }, {
3012
+ name?: string | undefined;
3013
+ }>>>;
3014
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3015
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3016
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3017
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3018
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3019
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3020
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3021
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_CODE>>;
3022
+ orderLimitPerUser: z.ZodOptional<z.ZodLiteral<1>>;
3023
+ referralUser: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3024
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3025
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3026
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3027
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3028
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3029
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3030
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.REFERRAL_REWARD>>;
3031
+ user: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3032
+ referralCodeUsedBy: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3033
+ referralCodeUsedOnOrder: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3034
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3035
+ value: z.ZodOptional<z.ZodNumber>;
3036
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3037
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3038
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3039
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3040
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3041
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3042
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3043
+ }, "strip", z.ZodTypeAny, {
3044
+ start: Date;
3045
+ end?: Date | undefined;
3046
+ }, {
3047
+ start: string | Date;
3048
+ end?: string | Date | undefined;
3049
+ }>, {
3050
+ start: Date;
3051
+ end?: Date | undefined;
3052
+ }, {
3053
+ start: string | Date;
3054
+ end?: string | Date | undefined;
3055
+ }>>;
3056
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3057
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3058
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3059
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3060
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3061
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3062
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3063
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3064
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3065
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3066
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3067
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3068
+ }, "strip", z.ZodTypeAny, {
3069
+ name?: string | undefined;
3070
+ }, {
3071
+ name?: string | undefined;
3072
+ }>>>;
3073
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3074
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3075
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3076
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3077
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3078
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3079
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3080
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3081
+ itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3082
+ shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
3083
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3084
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2034
3085
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
2035
3086
  value: z.ZodOptional<z.ZodNumber>;
2036
3087
  secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
@@ -2078,8 +3129,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2078
3129
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2079
3130
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2080
3131
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
2081
- itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2082
- shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
3132
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2083
3133
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2084
3134
  firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2085
3135
  valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
@@ -2335,7 +3385,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2335
3385
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2336
3386
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2337
3387
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2338
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3388
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2339
3389
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2340
3390
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2341
3391
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -2385,6 +3435,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2385
3435
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2386
3436
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2387
3437
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3438
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3439
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3440
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3441
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3442
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3443
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3444
+ value: z.ZodOptional<z.ZodNumber>;
3445
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3446
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3447
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3448
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3449
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3450
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3451
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3452
+ }, "strip", z.ZodTypeAny, {
3453
+ start: Date;
3454
+ end?: Date | undefined;
3455
+ }, {
3456
+ start: string | Date;
3457
+ end?: string | Date | undefined;
3458
+ }>, {
3459
+ start: Date;
3460
+ end?: Date | undefined;
3461
+ }, {
3462
+ start: string | Date;
3463
+ end?: string | Date | undefined;
3464
+ }>>;
3465
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3466
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3467
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3468
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3469
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3470
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3471
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3472
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3473
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3474
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3475
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3476
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3477
+ }, "strip", z.ZodTypeAny, {
3478
+ name?: string | undefined;
3479
+ }, {
3480
+ name?: string | undefined;
3481
+ }>>>;
3482
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3483
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3484
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3485
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3486
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3487
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2388
3488
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2389
3489
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2390
3490
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -2611,7 +3711,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2611
3711
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2612
3712
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2613
3713
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2614
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3714
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2615
3715
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2616
3716
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2617
3717
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -2661,6 +3761,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2661
3761
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2662
3762
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2663
3763
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3764
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
3765
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
3766
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3767
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3768
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
3769
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
3770
+ value: z.ZodOptional<z.ZodNumber>;
3771
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3772
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3773
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3774
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3775
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3776
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
3777
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
3778
+ }, "strip", z.ZodTypeAny, {
3779
+ start: Date;
3780
+ end?: Date | undefined;
3781
+ }, {
3782
+ start: string | Date;
3783
+ end?: string | Date | undefined;
3784
+ }>, {
3785
+ start: Date;
3786
+ end?: Date | undefined;
3787
+ }, {
3788
+ start: string | Date;
3789
+ end?: string | Date | undefined;
3790
+ }>>;
3791
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3792
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3793
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3794
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3795
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
3796
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3797
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3798
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3799
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
3800
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
3801
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
3802
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3803
+ }, "strip", z.ZodTypeAny, {
3804
+ name?: string | undefined;
3805
+ }, {
3806
+ name?: string | undefined;
3807
+ }>>>;
3808
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
3809
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
3810
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
3811
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3812
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3813
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2664
3814
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2665
3815
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2666
3816
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -2869,7 +4019,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2869
4019
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2870
4020
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2871
4021
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2872
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4022
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
2873
4023
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
2874
4024
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
2875
4025
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -2919,6 +4069,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
2919
4069
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
2920
4070
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2921
4071
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
4072
+ }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
4073
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4074
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
4075
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4076
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4077
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4078
+ value: z.ZodOptional<z.ZodNumber>;
4079
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4080
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4081
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4082
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4083
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
4084
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
4085
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
4086
+ }, "strip", z.ZodTypeAny, {
4087
+ start: Date;
4088
+ end?: Date | undefined;
4089
+ }, {
4090
+ start: string | Date;
4091
+ end?: string | Date | undefined;
4092
+ }>, {
4093
+ start: Date;
4094
+ end?: Date | undefined;
4095
+ }, {
4096
+ start: string | Date;
4097
+ end?: string | Date | undefined;
4098
+ }>>;
4099
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4100
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4101
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4102
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4103
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
4104
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4105
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4106
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4107
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4108
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
4109
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
4110
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4111
+ }, "strip", z.ZodTypeAny, {
4112
+ name?: string | undefined;
4113
+ }, {
4114
+ name?: string | undefined;
4115
+ }>>>;
4116
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4117
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4118
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4119
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
4120
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4121
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
2922
4122
  }, z.ZodTypeAny, "passthrough"> | z.objectInputType<{
2923
4123
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
2924
4124
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -3164,7 +4364,7 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
3164
4364
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3165
4365
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3166
4366
  }, z.ZodTypeAny, "passthrough"> | z.objectOutputType<{
3167
- couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4367
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.SHOPS_CATEGORIES>>;
3168
4368
  itemTypes: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ItemType>, "many">>>;
3169
4369
  shops: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "many">>>;
3170
4370
  isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
@@ -3214,6 +4414,56 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
3214
4414
  createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
3215
4415
  isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
3216
4416
  _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
4417
+ }, z.ZodTypeAny, "passthrough"> | z.objectOutputType<{
4418
+ couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_STORE>>;
4419
+ shop: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
4420
+ isShopCoverExpenses: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4421
+ firstOrderOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
4422
+ valueType: z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").ValueType>>;
4423
+ value: z.ZodOptional<z.ZodNumber>;
4424
+ secondaryCurrencyValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4425
+ maxDiscountLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4426
+ secondaryCurrencyMaxDiscountLimit: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4427
+ isMaxDiscountLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4428
+ duration: z.ZodOptional<z.ZodEffects<z.ZodObject<{
4429
+ start: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>;
4430
+ end: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Date, string>, z.ZodDate]>, Date, string | Date>, Date, string | Date>>;
4431
+ }, "strip", z.ZodTypeAny, {
4432
+ start: Date;
4433
+ end?: Date | undefined;
4434
+ }, {
4435
+ start: string | Date;
4436
+ end?: string | Date | undefined;
4437
+ }>, {
4438
+ start: Date;
4439
+ end?: Date | undefined;
4440
+ }, {
4441
+ start: string | Date;
4442
+ end?: string | Date | undefined;
4443
+ }>>;
4444
+ spendLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4445
+ isSpendLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4446
+ totalOrderLimit: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4447
+ isTotalOrderLimitEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4448
+ minOrderValue: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodNumber>>>;
4449
+ secondaryCurrencyMinOrderValue: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4450
+ isMinOrderValueEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4451
+ forNewUserOnly: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4452
+ status: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").Status>>>>;
4453
+ expirationReason: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNativeEnum<typeof import("@lyxa.ai/core/dist/utilities/enum").CouponExpirationReason>>>>>;
4454
+ referringUser: z.ZodOptional<z.ZodOptional<z.ZodObject<{
4455
+ name: z.ZodOptional<z.ZodString> | z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4456
+ }, "strip", z.ZodTypeAny, {
4457
+ name?: string | undefined;
4458
+ }, {
4459
+ name?: string | undefined;
4460
+ }>>>;
4461
+ code: z.ZodOptional<z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
4462
+ orderLimitPerUser: z.ZodOptional<z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>>;
4463
+ isOrderLimitPerUserEnabled: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodBoolean>>>;
4464
+ createdBy: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>>;
4465
+ isExpired: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4466
+ _id: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>>;
3217
4467
  }, z.ZodTypeAny, "passthrough"> | z.objectOutputType<{
3218
4468
  couponType: z.ZodOptional<z.ZodLiteral<import("@lyxa.ai/core/dist/utilities/enum").CouponType.INDIVIDUAL_USER>>;
3219
4469
  users: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, mongoose.Types.ObjectId, string>, z.ZodType<mongoose.Types.ObjectId, z.ZodTypeDef, mongoose.Types.ObjectId>]>, "atleastone">>;
@@ -3459,5 +4709,19 @@ export declare const couponRouter: import("@trpc/server").TRPCBuiltRouter<{
3459
4709
  };
3460
4710
  meta: object;
3461
4711
  }>;
4712
+ handleCouponExpiry: import("@trpc/server").TRPCMutationProcedure<{
4713
+ input: {
4714
+ couponCode: string;
4715
+ };
4716
+ output: void;
4717
+ meta: object;
4718
+ }>;
4719
+ addExistingCouponsToNewUser: import("@trpc/server").TRPCMutationProcedure<{
4720
+ input: {
4721
+ userId: string;
4722
+ };
4723
+ output: void;
4724
+ meta: object;
4725
+ }>;
3462
4726
  }>>;
3463
4727
  //# sourceMappingURL=coupon.router.d.ts.map