/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { BuilderFieldTypeEnum, BuilderFieldTypeEnum$inboundSchema, BuilderFieldTypeEnum$outboundSchema, } from "./builderfieldtypeenum.js"; import { FieldFilterPartDto, FieldFilterPartDto$inboundSchema, FieldFilterPartDto$Outbound, FieldFilterPartDto$outboundSchema, } from "./fieldfilterpartdto.js"; export const StepFilterDtoValue = { And: "AND", Or: "OR", } as const; export type StepFilterDtoValue = ClosedEnum; export type StepFilterDto = { isNegated: boolean; type: BuilderFieldTypeEnum; value: StepFilterDtoValue; children: Array; }; /** @internal */ export const StepFilterDtoValue$inboundSchema: z.ZodNativeEnum< typeof StepFilterDtoValue > = z.nativeEnum(StepFilterDtoValue); /** @internal */ export const StepFilterDtoValue$outboundSchema: z.ZodNativeEnum< typeof StepFilterDtoValue > = StepFilterDtoValue$inboundSchema; /** @internal */ export const StepFilterDto$inboundSchema: z.ZodType< StepFilterDto, z.ZodTypeDef, unknown > = z.object({ isNegated: z.boolean(), type: BuilderFieldTypeEnum$inboundSchema, value: StepFilterDtoValue$inboundSchema, children: z.array(FieldFilterPartDto$inboundSchema), }); /** @internal */ export type StepFilterDto$Outbound = { isNegated: boolean; type: string; value: string; children: Array; }; /** @internal */ export const StepFilterDto$outboundSchema: z.ZodType< StepFilterDto$Outbound, z.ZodTypeDef, StepFilterDto > = z.object({ isNegated: z.boolean(), type: BuilderFieldTypeEnum$outboundSchema, value: StepFilterDtoValue$outboundSchema, children: z.array(FieldFilterPartDto$outboundSchema), }); export function stepFilterDtoToJSON(stepFilterDto: StepFilterDto): string { return JSON.stringify(StepFilterDto$outboundSchema.parse(stepFilterDto)); } export function stepFilterDtoFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => StepFilterDto$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'StepFilterDto' from JSON`, ); }