27 lines
661 B
TypeScript
27 lines
661 B
TypeScript
import { z } from "zod"
|
|
|
|
import { Lang } from "@/constants/languages"
|
|
import { MembershipLevelEnum } from "@/constants/membershipLevels"
|
|
|
|
export const rewardsByLevelInput = z.object({
|
|
level_id: z.nativeEnum(MembershipLevelEnum),
|
|
unique: z.boolean().default(false),
|
|
})
|
|
|
|
export const rewardsAllInput = z
|
|
.object({ unique: z.boolean() })
|
|
.default({ unique: false })
|
|
|
|
export const rewardsCurrentInput = z.object({
|
|
limit: z.number().min(1).default(3),
|
|
cursor: z.number().optional().default(0),
|
|
lang: z.nativeEnum(Lang).optional(),
|
|
})
|
|
|
|
export const rewardsUpdateInput = z.array(
|
|
z.object({
|
|
rewardId: z.string(),
|
|
couponCode: z.string(),
|
|
})
|
|
)
|