"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.FieldsValidationSchema = exports.fields = void 0;
const zod_1 = require("zod");
const extensions_core_1 = require("@awell-health/extensions-core");
const types_1 = require("../../../types");
exports.fields = {
    ticketId: {
        label: 'Ticket ID',
        id: 'ticketId',
        type: extensions_core_1.FieldType.NUMERIC,
        required: true,
        description: "A customer's unique ID.",
    },
    priority: {
        label: 'Priority',
        id: 'priority',
        type: extensions_core_1.FieldType.STRING,
        required: false,
        description: 'Specifies the priority of a ticket. Acceptable values are the following: "LOW", "MEDIUM", "HIGH", and "URGENT". Defaults to: "MEDIUM".',
    },
    relatedChannelUrls: {
        label: 'Related channel URLs',
        id: 'relatedChannelUrls',
        type: extensions_core_1.FieldType.STRING,
        required: false,
        description: 'A comma-separated string of group channel URLs for reference, where the corresponding customer belongs. Can have up to 3 group channel URLs.',
    },
};
const priorityEnum = zod_1.z.enum(Object.values(types_1.TicketPriority));
exports.FieldsValidationSchema = zod_1.z.object({
    ticketId: zod_1.z.coerce.number(),
    relatedChannelUrls: (0, zod_1.string)((0, extensions_core_1.validateCommaSeparatedList)((value) => zod_1.z.string().safeParse(value).success, false)),
    priority: priorityEnum,
});
//# sourceMappingURL=fields.js.map