Bot & Automation

AI Creator Studio Telegram

/root/hermes-projects/AI Creator Studio Telegram

packages/core/src/schemas.ts text
import { z } from "zod";
import { GENERATION_MODES } from "./constants.js";
import type { GenerationMode } from "./types.js";

const generationModeValues = GENERATION_MODES as [GenerationMode, ...GenerationMode[]];

export const generationEstimateSchema = z.object({
  userId: z.string().min(1),
  mode: z.enum(generationModeValues),
  prompt: z.string().min(3).max(4000),
  preset: z.string().min(1),
  settings: z
    .object({
      aspectRatio: z.string().optional(),
      resolution: z.string().optional(),
      duration: z.string().optional(),
      fps: z.number().optional(),
      quality: z.string().optional(),
    })
    .optional(),
});