/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { safeParse } from "../../lib/schemas.js";
export const FeedbackOrderByField = {
    Id: "id",
    Type: "type",
    MessageId: "messageId",
    CreatedAt: "createdAt",
    OrganizationId: "organizationId",
    Reasons: "reasons",
    Properties: "properties",
    UserProperties: "userProperties",
    ConversationId: "conversationId",
    ProjectId: "projectId",
    IntegrationId: "integrationId",
    IdHour: "id_hour",
    IdDay: "id_day",
    IdWeek: "id_week",
    IdMonth: "id_month",
    TypeHour: "type_hour",
    TypeDay: "type_day",
    TypeWeek: "type_week",
    TypeMonth: "type_month",
    MessageIdHour: "messageId_hour",
    MessageIdDay: "messageId_day",
    MessageIdWeek: "messageId_week",
    MessageIdMonth: "messageId_month",
    CreatedAtHour: "createdAt_hour",
    CreatedAtDay: "createdAt_day",
    CreatedAtWeek: "createdAt_week",
    CreatedAtMonth: "createdAt_month",
    OrganizationIdHour: "organizationId_hour",
    OrganizationIdDay: "organizationId_day",
    OrganizationIdWeek: "organizationId_week",
    OrganizationIdMonth: "organizationId_month",
    ReasonsHour: "reasons_hour",
    ReasonsDay: "reasons_day",
    ReasonsWeek: "reasons_week",
    ReasonsMonth: "reasons_month",
    PropertiesHour: "properties_hour",
    PropertiesDay: "properties_day",
    PropertiesWeek: "properties_week",
    PropertiesMonth: "properties_month",
    UserPropertiesHour: "userProperties_hour",
    UserPropertiesDay: "userProperties_day",
    UserPropertiesWeek: "userProperties_week",
    UserPropertiesMonth: "userProperties_month",
    ConversationIdHour: "conversationId_hour",
    ConversationIdDay: "conversationId_day",
    ConversationIdWeek: "conversationId_week",
    ConversationIdMonth: "conversationId_month",
    ProjectIdHour: "projectId_hour",
    ProjectIdDay: "projectId_day",
    ProjectIdWeek: "projectId_week",
    ProjectIdMonth: "projectId_month",
    IntegrationIdHour: "integrationId_hour",
    IntegrationIdDay: "integrationId_day",
    IntegrationIdWeek: "integrationId_week",
    IntegrationIdMonth: "integrationId_month",
    SumId: "sum_id",
    SumType: "sum_type",
    SumMessageId: "sum_messageId",
    SumCreatedAt: "sum_createdAt",
    SumOrganizationId: "sum_organizationId",
    SumReasons: "sum_reasons",
    SumProperties: "sum_properties",
    SumUserProperties: "sum_userProperties",
    SumConversationId: "sum_conversationId",
    SumProjectId: "sum_projectId",
    SumIntegrationId: "sum_integrationId",
    CountId: "count_id",
    CountType: "count_type",
    CountMessageId: "count_messageId",
    CountCreatedAt: "count_createdAt",
    CountOrganizationId: "count_organizationId",
    CountReasons: "count_reasons",
    CountProperties: "count_properties",
    CountUserProperties: "count_userProperties",
    CountConversationId: "count_conversationId",
    CountProjectId: "count_projectId",
    CountIntegrationId: "count_integrationId",
    AvgId: "avg_id",
    AvgType: "avg_type",
    AvgMessageId: "avg_messageId",
    AvgCreatedAt: "avg_createdAt",
    AvgOrganizationId: "avg_organizationId",
    AvgReasons: "avg_reasons",
    AvgProperties: "avg_properties",
    AvgUserProperties: "avg_userProperties",
    AvgConversationId: "avg_conversationId",
    AvgProjectId: "avg_projectId",
    AvgIntegrationId: "avg_integrationId",
    MinId: "min_id",
    MinType: "min_type",
    MinMessageId: "min_messageId",
    MinCreatedAt: "min_createdAt",
    MinOrganizationId: "min_organizationId",
    MinReasons: "min_reasons",
    MinProperties: "min_properties",
    MinUserProperties: "min_userProperties",
    MinConversationId: "min_conversationId",
    MinProjectId: "min_projectId",
    MinIntegrationId: "min_integrationId",
    MaxId: "max_id",
    MaxType: "max_type",
    MaxMessageId: "max_messageId",
    MaxCreatedAt: "max_createdAt",
    MaxOrganizationId: "max_organizationId",
    MaxReasons: "max_reasons",
    MaxProperties: "max_properties",
    MaxUserProperties: "max_userProperties",
    MaxConversationId: "max_conversationId",
    MaxProjectId: "max_projectId",
    MaxIntegrationId: "max_integrationId",
};
export const FeedbackOrderByDirection = {
    Asc: "asc",
    Desc: "desc",
};
/** @internal */
export const FeedbackOrderByField$inboundSchema = z.nativeEnum(FeedbackOrderByField);
/** @internal */
export const FeedbackOrderByField$outboundSchema = FeedbackOrderByField$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var FeedbackOrderByField$;
(function (FeedbackOrderByField$) {
    /** @deprecated use `FeedbackOrderByField$inboundSchema` instead. */
    FeedbackOrderByField$.inboundSchema = FeedbackOrderByField$inboundSchema;
    /** @deprecated use `FeedbackOrderByField$outboundSchema` instead. */
    FeedbackOrderByField$.outboundSchema = FeedbackOrderByField$outboundSchema;
})(FeedbackOrderByField$ || (FeedbackOrderByField$ = {}));
/** @internal */
export const FeedbackOrderByDirection$inboundSchema = z.nativeEnum(FeedbackOrderByDirection);
/** @internal */
export const FeedbackOrderByDirection$outboundSchema = FeedbackOrderByDirection$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var FeedbackOrderByDirection$;
(function (FeedbackOrderByDirection$) {
    /** @deprecated use `FeedbackOrderByDirection$inboundSchema` instead. */
    FeedbackOrderByDirection$.inboundSchema = FeedbackOrderByDirection$inboundSchema;
    /** @deprecated use `FeedbackOrderByDirection$outboundSchema` instead. */
    FeedbackOrderByDirection$.outboundSchema = FeedbackOrderByDirection$outboundSchema;
})(FeedbackOrderByDirection$ || (FeedbackOrderByDirection$ = {}));
/** @internal */
export const FeedbackOrderBy$inboundSchema = z.object({
    field: FeedbackOrderByField$inboundSchema,
    direction: FeedbackOrderByDirection$inboundSchema,
});
/** @internal */
export const FeedbackOrderBy$outboundSchema = z.object({
    field: FeedbackOrderByField$outboundSchema,
    direction: FeedbackOrderByDirection$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var FeedbackOrderBy$;
(function (FeedbackOrderBy$) {
    /** @deprecated use `FeedbackOrderBy$inboundSchema` instead. */
    FeedbackOrderBy$.inboundSchema = FeedbackOrderBy$inboundSchema;
    /** @deprecated use `FeedbackOrderBy$outboundSchema` instead. */
    FeedbackOrderBy$.outboundSchema = FeedbackOrderBy$outboundSchema;
})(FeedbackOrderBy$ || (FeedbackOrderBy$ = {}));
export function feedbackOrderByToJSON(feedbackOrderBy) {
    return JSON.stringify(FeedbackOrderBy$outboundSchema.parse(feedbackOrderBy));
}
export function feedbackOrderByFromJSON(jsonString) {
    return safeParse(jsonString, (x) => FeedbackOrderBy$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'FeedbackOrderBy' from JSON`);
}
//# sourceMappingURL=feedbackorderby.js.map