"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TicketSchema = void 0;
const zod_1 = require("zod");
const _1 = require(".");
exports.TicketSchema = zod_1.z.object({
    cc_emails: zod_1.z.array(zod_1.z.string()),
    fwd_emails: zod_1.z.array(zod_1.z.string()),
    reply_cc_emails: zod_1.z.array(zod_1.z.string()),
    email_config_id: zod_1.z.number().nullable(),
    fr_escalated: zod_1.z.boolean(),
    group_id: zod_1.z.number().nullable(),
    priority: _1.TicketPrioritySchema,
    requester_id: zod_1.z.number(),
    responder_id: zod_1.z.number().nullable(),
    source: _1.TicketSourceSchema,
    spam: zod_1.z.boolean(),
    status: _1.TicketStatusSchema,
    subject: zod_1.z.string().nullable(),
    company_id: zod_1.z.number().optional().nullable(),
    id: zod_1.z.number(),
    type: zod_1.z.string().nullable(),
    to_emails: zod_1.z.array(zod_1.z.string()).nullable(),
    product_id: zod_1.z.number().nullable(),
    created_at: zod_1.z.string(),
    updated_at: zod_1.z.string(),
    due_by: zod_1.z.string().nullable(),
    fr_due_by: zod_1.z.string().nullable(),
    is_escalated: zod_1.z.boolean(),
    association_type: zod_1.z.unknown().nullable(),
    description_text: zod_1.z.string(),
    description: zod_1.z.string(),
    custom_fields: zod_1.z
        .record(zod_1.z.string(), zod_1.z.union([zod_1.z.string(), zod_1.z.null()]))
        .optional()
        .nullable(),
    tags: zod_1.z.array(zod_1.z.string()),
    attachments: zod_1.z.array(zod_1.z.unknown()),
});
//# sourceMappingURL=Ticket.Schema.js.map