/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { AutoChunkingStrategy, AutoChunkingStrategy$inboundSchema, AutoChunkingStrategy$Outbound, AutoChunkingStrategy$outboundSchema, } from "./autochunkingstrategy.js"; import { OtherChunkingStrategy, OtherChunkingStrategy$inboundSchema, OtherChunkingStrategy$Outbound, OtherChunkingStrategy$outboundSchema, } from "./otherchunkingstrategy.js"; import { StaticChunkingStrategy, StaticChunkingStrategy$inboundSchema, StaticChunkingStrategy$Outbound, StaticChunkingStrategy$outboundSchema, } from "./staticchunkingstrategy.js"; export type ChunkingStrategy = | AutoChunkingStrategy | StaticChunkingStrategy | OtherChunkingStrategy; /** @internal */ export const ChunkingStrategy$inboundSchema: z.ZodType< ChunkingStrategy, z.ZodTypeDef, unknown > = z.union([ AutoChunkingStrategy$inboundSchema, StaticChunkingStrategy$inboundSchema, OtherChunkingStrategy$inboundSchema, ]); /** @internal */ export type ChunkingStrategy$Outbound = | AutoChunkingStrategy$Outbound | StaticChunkingStrategy$Outbound | OtherChunkingStrategy$Outbound; /** @internal */ export const ChunkingStrategy$outboundSchema: z.ZodType< ChunkingStrategy$Outbound, z.ZodTypeDef, ChunkingStrategy > = z.union([ AutoChunkingStrategy$outboundSchema, StaticChunkingStrategy$outboundSchema, OtherChunkingStrategy$outboundSchema, ]); export function chunkingStrategyToJSON( chunkingStrategy: ChunkingStrategy, ): string { return JSON.stringify( ChunkingStrategy$outboundSchema.parse(chunkingStrategy), ); } export function chunkingStrategyFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ChunkingStrategy$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ChunkingStrategy' from JSON`, ); }