/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { FileT, FileT$inboundSchema, FileT$Outbound, FileT$outboundSchema, } from "./file.js"; export type FileList = { object: "list"; data: Array; firstId?: string | undefined; lastId?: string | undefined; hasMore: boolean; }; /** @internal */ export const FileList$inboundSchema: z.ZodType< FileList, z.ZodTypeDef, unknown > = z.object({ object: z.literal("list"), data: z.array(FileT$inboundSchema), first_id: z.string().optional(), last_id: z.string().optional(), has_more: z.boolean(), }).transform((v) => { return remap$(v, { "first_id": "firstId", "last_id": "lastId", "has_more": "hasMore", }); }); /** @internal */ export type FileList$Outbound = { object: "list"; data: Array; first_id?: string | undefined; last_id?: string | undefined; has_more: boolean; }; /** @internal */ export const FileList$outboundSchema: z.ZodType< FileList$Outbound, z.ZodTypeDef, FileList > = z.object({ object: z.literal("list"), data: z.array(FileT$outboundSchema), firstId: z.string().optional(), lastId: z.string().optional(), hasMore: z.boolean(), }).transform((v) => { return remap$(v, { firstId: "first_id", lastId: "last_id", hasMore: "has_more", }); }); export function fileListToJSON(fileList: FileList): string { return JSON.stringify(FileList$outboundSchema.parse(fileList)); } export function fileListFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => FileList$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'FileList' from JSON`, ); }