import { z } from "zod"; export const messageSchema = z.object({ role: z.enum(["user", "assistant"]), content: z.string(), }); export const supportOfferResultSchema = z.object({ name: z.string(), reoccurringIssue: z.string().nullable(), numberTimesMentioned: z.string().nullable(), rationale: z.string().nullable(), offerSupport: z.string().nullable(), }); export const supportTicketContextSchema = z.object({ chatHistory: z.array(messageSchema), environmentContext: z.string(), environmentMetadata: z.record(z.string(), z.string()), }); export const multiAttemptExampleSchema = z.object({ id: z.number(), description: z.string(), chatHistory: z.array(messageSchema), reoccurringIssue: z.string(), numberTimesMentioned: z.string(), rationale: z.string(), offerSupport: z.string(), }); export const supportRequestResultSchema = z.object({ userRequestedSupportTicket: z.string(), userAcceptsOfferedSupportTicket: z.string(), generateSupportTicket: z.string(), }); export type Message = z.infer; export type SupportOfferResult = z.infer; export type SupportTicketContext = z.infer; export type MultiAttemptExample = z.infer; export type SupportRequestResult = z.infer;