/* * 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 { blobLikeSchema } from "../../types/blobs.js"; export type PostMediasMediaHashedIdCaptionsMultipartCaptionFile = { fileName: string; content: ReadableStream | Blob | ArrayBuffer | Uint8Array; }; export type PostMediasMediaHashedIdCaptionsMultipartRequestBody = { /** * Either an attached SRT file or a string parameter with the contents of an SRT file. */ captionFile: PostMediasMediaHashedIdCaptionsMultipartCaptionFile | Blob; /** * An optional parameter that denotes which language this file represents. Should conform to ISO-639–2. If left unspecified, the language code will be detected automatically. */ language?: string | undefined; }; export type PostMediasMediaHashedIdCaptionsMultipartRequest = { /** * The hashed ID of the media for which captions are to be added. */ mediaHashedId: string; requestBody: PostMediasMediaHashedIdCaptionsMultipartRequestBody; }; /** @internal */ export type PostMediasMediaHashedIdCaptionsMultipartCaptionFile$Outbound = { fileName: string; content: ReadableStream | Blob | ArrayBuffer | Uint8Array; }; /** @internal */ export const PostMediasMediaHashedIdCaptionsMultipartCaptionFile$outboundSchema: z.ZodType< PostMediasMediaHashedIdCaptionsMultipartCaptionFile$Outbound, z.ZodTypeDef, PostMediasMediaHashedIdCaptionsMultipartCaptionFile > = z.object({ fileName: z.string(), content: z.union([ z.instanceof(ReadableStream), z.instanceof(Blob), z.instanceof(ArrayBuffer), z.instanceof(Uint8Array), ]), }); export function postMediasMediaHashedIdCaptionsMultipartCaptionFileToJSON( postMediasMediaHashedIdCaptionsMultipartCaptionFile: PostMediasMediaHashedIdCaptionsMultipartCaptionFile, ): string { return JSON.stringify( PostMediasMediaHashedIdCaptionsMultipartCaptionFile$outboundSchema.parse( postMediasMediaHashedIdCaptionsMultipartCaptionFile, ), ); } /** @internal */ export type PostMediasMediaHashedIdCaptionsMultipartRequestBody$Outbound = { caption_file: | PostMediasMediaHashedIdCaptionsMultipartCaptionFile$Outbound | Blob; language?: string | undefined; }; /** @internal */ export const PostMediasMediaHashedIdCaptionsMultipartRequestBody$outboundSchema: z.ZodType< PostMediasMediaHashedIdCaptionsMultipartRequestBody$Outbound, z.ZodTypeDef, PostMediasMediaHashedIdCaptionsMultipartRequestBody > = z.object({ captionFile: z.lazy(() => PostMediasMediaHashedIdCaptionsMultipartCaptionFile$outboundSchema ).or(blobLikeSchema), language: z.string().optional(), }).transform((v) => { return remap$(v, { captionFile: "caption_file", }); }); export function postMediasMediaHashedIdCaptionsMultipartRequestBodyToJSON( postMediasMediaHashedIdCaptionsMultipartRequestBody: PostMediasMediaHashedIdCaptionsMultipartRequestBody, ): string { return JSON.stringify( PostMediasMediaHashedIdCaptionsMultipartRequestBody$outboundSchema.parse( postMediasMediaHashedIdCaptionsMultipartRequestBody, ), ); } /** @internal */ export type PostMediasMediaHashedIdCaptionsMultipartRequest$Outbound = { mediaHashedId: string; RequestBody: PostMediasMediaHashedIdCaptionsMultipartRequestBody$Outbound; }; /** @internal */ export const PostMediasMediaHashedIdCaptionsMultipartRequest$outboundSchema: z.ZodType< PostMediasMediaHashedIdCaptionsMultipartRequest$Outbound, z.ZodTypeDef, PostMediasMediaHashedIdCaptionsMultipartRequest > = z.object({ mediaHashedId: z.string(), requestBody: z.lazy(() => PostMediasMediaHashedIdCaptionsMultipartRequestBody$outboundSchema ), }).transform((v) => { return remap$(v, { requestBody: "RequestBody", }); }); export function postMediasMediaHashedIdCaptionsMultipartRequestToJSON( postMediasMediaHashedIdCaptionsMultipartRequest: PostMediasMediaHashedIdCaptionsMultipartRequest, ): string { return JSON.stringify( PostMediasMediaHashedIdCaptionsMultipartRequest$outboundSchema.parse( postMediasMediaHashedIdCaptionsMultipartRequest, ), ); }