/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 55edfa30408e */ import * as z from "zod/v4"; import { remap as remap$ } from "../../lib/primitives.js"; import { blobLikeSchema } from "../../types/blobs.js"; import * as components from "../components/index.js"; export type DocumentUpload = { /** * The File object (not file name) to be uploaded. * * @remarks * To upload a file and specify a custom file name you should format your request as such: * ```bash * file=@path/to/your/file.jsonl;filename=custom_name.jsonl * ``` * Otherwise, you can just keep the original file name: * ```bash * file=@path/to/your/file.jsonl * ``` */ file: components.FileT | Blob; }; export type LibrariesDocumentsUploadV1Request = { libraryId: string; requestBody: DocumentUpload; }; /** @internal */ export type DocumentUpload$Outbound = { file: components.FileT$Outbound | Blob; }; /** @internal */ export const DocumentUpload$outboundSchema: z.ZodType< DocumentUpload$Outbound, DocumentUpload > = z.object({ file: components.FileT$outboundSchema.or(blobLikeSchema), }); export function documentUploadToJSON(documentUpload: DocumentUpload): string { return JSON.stringify(DocumentUpload$outboundSchema.parse(documentUpload)); } /** @internal */ export type LibrariesDocumentsUploadV1Request$Outbound = { library_id: string; RequestBody: DocumentUpload$Outbound; }; /** @internal */ export const LibrariesDocumentsUploadV1Request$outboundSchema: z.ZodType< LibrariesDocumentsUploadV1Request$Outbound, LibrariesDocumentsUploadV1Request > = z.object({ libraryId: z.string(), requestBody: z.lazy(() => DocumentUpload$outboundSchema), }).transform((v) => { return remap$(v, { libraryId: "library_id", requestBody: "RequestBody", }); }); export function librariesDocumentsUploadV1RequestToJSON( librariesDocumentsUploadV1Request: LibrariesDocumentsUploadV1Request, ): string { return JSON.stringify( LibrariesDocumentsUploadV1Request$outboundSchema.parse( librariesDocumentsUploadV1Request, ), ); }