@lyxa.ai/marketing 1.0.53 → 1.0.54

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