@guildxyz/types
Version:
Types related to the Guild.xyz API
39 lines (33 loc) • 892 B
text/typescript
import { z } from "zod";
import { PositiveInteger } from "../common";
const JumperLevelSchema = z.object({
type: z.literal("JUMPER_LEVEL"),
data: z.object({
minAmount: PositiveInteger,
}),
});
const JumperRewardTypeSchema = z.object({
type: z.literal("JUMPER_TYPE"),
data: z.object({
rewardType: z.string().min(1),
}),
});
const JumperTraitsCategorySchema = z.object({
category: z.string().min(1),
});
const JumperTraitsNameSchema = z.object({
name: z.string().min(1),
});
const JumperTraitsCategoryNameSchema = z.object({
category: z.string().min(1),
name: z.string().min(1),
});
const JumperTraitsSchema = z.object({
type: z.literal("JUMPER_TRAITS"),
data: z.union([
JumperTraitsCategorySchema,
JumperTraitsNameSchema,
JumperTraitsCategoryNameSchema,
]),
});
export default [JumperLevelSchema, JumperRewardTypeSchema, JumperTraitsSchema];