/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { safeParse } from "../../lib/schemas.js";
/**
 * Which JSON field to query values from
 */
export const PropertyValuesRequestBodyField = {
    Properties: "properties",
    UserProperties: "userProperties",
};
export const PropertyValuesRequestBodyViews = {
    EventsView: "events_view",
    ConversationsView: "conversations_view",
    SemanticThreadsView: "semantic_threads_view",
};
/** @internal */
export const PropertyValuesRequestBodyField$inboundSchema = z.nativeEnum(PropertyValuesRequestBodyField);
/** @internal */
export const PropertyValuesRequestBodyField$outboundSchema = PropertyValuesRequestBodyField$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var PropertyValuesRequestBodyField$;
(function (PropertyValuesRequestBodyField$) {
    /** @deprecated use `PropertyValuesRequestBodyField$inboundSchema` instead. */
    PropertyValuesRequestBodyField$.inboundSchema = PropertyValuesRequestBodyField$inboundSchema;
    /** @deprecated use `PropertyValuesRequestBodyField$outboundSchema` instead. */
    PropertyValuesRequestBodyField$.outboundSchema = PropertyValuesRequestBodyField$outboundSchema;
})(PropertyValuesRequestBodyField$ || (PropertyValuesRequestBodyField$ = {}));
/** @internal */
export const PropertyValuesRequestBodyViews$inboundSchema = z.nativeEnum(PropertyValuesRequestBodyViews);
/** @internal */
export const PropertyValuesRequestBodyViews$outboundSchema = PropertyValuesRequestBodyViews$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var PropertyValuesRequestBodyViews$;
(function (PropertyValuesRequestBodyViews$) {
    /** @deprecated use `PropertyValuesRequestBodyViews$inboundSchema` instead. */
    PropertyValuesRequestBodyViews$.inboundSchema = PropertyValuesRequestBodyViews$inboundSchema;
    /** @deprecated use `PropertyValuesRequestBodyViews$outboundSchema` instead. */
    PropertyValuesRequestBodyViews$.outboundSchema = PropertyValuesRequestBodyViews$outboundSchema;
})(PropertyValuesRequestBodyViews$ || (PropertyValuesRequestBodyViews$ = {}));
/** @internal */
export const PropertyValuesRequestBody$inboundSchema = z.object({
    field: PropertyValuesRequestBodyField$inboundSchema,
    key: z.string(),
    views: z.array(PropertyValuesRequestBodyViews$inboundSchema).optional(),
    limit: z.number().default(100),
});
/** @internal */
export const PropertyValuesRequestBody$outboundSchema = z.object({
    field: PropertyValuesRequestBodyField$outboundSchema,
    key: z.string(),
    views: z.array(PropertyValuesRequestBodyViews$outboundSchema).optional(),
    limit: z.number().default(100),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var PropertyValuesRequestBody$;
(function (PropertyValuesRequestBody$) {
    /** @deprecated use `PropertyValuesRequestBody$inboundSchema` instead. */
    PropertyValuesRequestBody$.inboundSchema = PropertyValuesRequestBody$inboundSchema;
    /** @deprecated use `PropertyValuesRequestBody$outboundSchema` instead. */
    PropertyValuesRequestBody$.outboundSchema = PropertyValuesRequestBody$outboundSchema;
})(PropertyValuesRequestBody$ || (PropertyValuesRequestBody$ = {}));
export function propertyValuesRequestBodyToJSON(propertyValuesRequestBody) {
    return JSON.stringify(PropertyValuesRequestBody$outboundSchema.parse(propertyValuesRequestBody));
}
export function propertyValuesRequestBodyFromJSON(jsonString) {
    return safeParse(jsonString, (x) => PropertyValuesRequestBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PropertyValuesRequestBody' from JSON`);
}
//# sourceMappingURL=propertyvaluesrequestbody.js.map