/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { DownloadableFileRead, DownloadableFileRead$inboundSchema, } from "./downloadablefileread.js"; import { OrganizationAvatarFileRead, OrganizationAvatarFileRead$inboundSchema, } from "./organizationavatarfileread.js"; import { Pagination, Pagination$inboundSchema } from "./pagination.js"; import { ProductMediaFileRead, ProductMediaFileRead$inboundSchema, } from "./productmediafileread.js"; export type FileRead = | DownloadableFileRead | OrganizationAvatarFileRead | ProductMediaFileRead; export type ListResourceFileRead = { items: Array< DownloadableFileRead | OrganizationAvatarFileRead | ProductMediaFileRead >; pagination: Pagination; }; /** @internal */ export const FileRead$inboundSchema: z.ZodMiniType = z.union( [ DownloadableFileRead$inboundSchema, OrganizationAvatarFileRead$inboundSchema, ProductMediaFileRead$inboundSchema, ], ); export function fileReadFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => FileRead$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'FileRead' from JSON`, ); } /** @internal */ export const ListResourceFileRead$inboundSchema: z.ZodMiniType< ListResourceFileRead, unknown > = z.object({ items: z.array( z.union([ DownloadableFileRead$inboundSchema, OrganizationAvatarFileRead$inboundSchema, ProductMediaFileRead$inboundSchema, ]), ), pagination: Pagination$inboundSchema, }); export function listResourceFileReadFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ListResourceFileRead$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListResourceFileRead' from JSON`, ); }