/* * 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"; export type GetMediasMediaIdCustomizationsRequest = { /** * The hashed ID of the video. */ mediaId: string; }; export type GetMediasMediaIdCustomizationsPasswordProtectedVideo = { on?: string | undefined; src?: string | undefined; challenge?: string | undefined; async?: string | undefined; }; export type GetMediasMediaIdCustomizationsVideoThumbnail = { clickToPlayButton?: string | undefined; }; export type GetMediasMediaIdCustomizationsSocialbarV1 = { buttons?: string | undefined; showTweetCount?: string | undefined; tweetText?: string | undefined; height?: string | undefined; }; export type GetMediasMediaIdCustomizationsChapterList = { id?: string | undefined; title?: string | undefined; time?: string | undefined; deleted?: string | undefined; }; export type GetMediasMediaIdCustomizationsChapters = { visibleOnLoad?: string | undefined; chapterList?: Array | undefined; on?: string | undefined; }; export type GetMediasMediaIdCustomizationsStyle = { /** * The background color of the post-roll. */ backgroundColor?: string | undefined; }; /** * Adds a Call To Action to your Video (response format) */ export type GetMediasMediaIdCustomizationsPostRollV1 = { /** * String representation of whether the video can be rewatched. */ rewatch?: string | undefined; /** * The URL of the text to be displayed. */ text?: string | undefined; /** * The URL of the link to be displayed. */ link?: string | undefined; /** * The time when the post-roll should be displayed as a string. */ time?: string | undefined; /** * String representation of whether the post-roll will automatically adjust its size. */ autoSize?: string | undefined; style?: GetMediasMediaIdCustomizationsStyle | undefined; /** * The type of call-to-action to be displayed. */ ctaType?: string | undefined; /** * String representation of whether the post-roll is enabled. */ on?: string | undefined; /** * The key used for tracking conversion opportunities. */ conversionOpportunityKey?: string | undefined; }; /** * Captions plugin configuration (response format) */ export type GetMediasMediaIdCustomizationsCaptionsV1 = { /** * String representation of whether the captions plugin is enabled ("true" or "false"). */ on?: string | undefined; /** * String representation of whether captions are turned on by default ("true" or "false"). */ onByDefault?: string | undefined; }; export type GetMediasMediaIdCustomizationsPlugin = { passwordProtectedVideo?: | GetMediasMediaIdCustomizationsPasswordProtectedVideo | undefined; videoThumbnail?: GetMediasMediaIdCustomizationsVideoThumbnail | undefined; socialbarV1?: GetMediasMediaIdCustomizationsSocialbarV1 | undefined; chapters?: GetMediasMediaIdCustomizationsChapters | undefined; /** * Adds a Call To Action to your Video (response format) */ postRollV1?: GetMediasMediaIdCustomizationsPostRollV1 | undefined; /** * Captions plugin configuration (response format) */ captionsV1?: GetMediasMediaIdCustomizationsCaptionsV1 | undefined; }; export type GetMediasMediaIdCustomizationsPrivate = { passwordProtectOn?: string | undefined; showComments?: string | undefined; }; export type GetMediasMediaIdCustomizationsEncrypted = { passwordProtectPassword?: string | undefined; }; /** * Successful response */ export type GetMediasMediaIdCustomizationsResponse = { /** * The color of the video player. */ playerColor?: string | undefined; stillUrl?: string | undefined; /** * Whether the video should auto play or not. */ autoPlay?: string | undefined; bpbTime?: string | undefined; controlsVisibleOnLoad?: string | undefined; /** * Behavior of the video at the end. */ endVideoBehavior?: string | undefined; fullscreenButton?: string | undefined; branding?: string | undefined; playbar?: string | undefined; /** * Indicates if the play button is visible. */ playButton?: string | undefined; settingsControl?: string | undefined; showCustomerLogo?: string | undefined; qualityControl?: string | undefined; playbackRateControl?: string | undefined; smallPlayButton?: string | undefined; spherical?: string | undefined; volumeControl?: string | undefined; copyLinkAndThumbnailEnabled?: string | undefined; doNotTrack?: string | undefined; email?: string | undefined; fitStrategy?: string | undefined; fullscreenOnRotateToLandscape?: string | undefined; muted?: string | undefined; playlistLinks?: string | undefined; playlistLoop?: string | undefined; playsinline?: string | undefined; playPauseNotifier?: string | undefined; playSuspendedOffScreen?: string | undefined; preload?: string | undefined; qualityMax?: string | undefined; qualityMin?: string | undefined; resumable?: string | undefined; seo?: string | undefined; silentAutoPlay?: string | undefined; time?: string | undefined; thumbnailAltText?: string | undefined; videoFoam?: string | undefined; volume?: string | undefined; wmode?: string | undefined; /** * String representation of whether the key moments feature is enabled. */ keyMoments?: string | undefined; plugin?: GetMediasMediaIdCustomizationsPlugin | undefined; private?: GetMediasMediaIdCustomizationsPrivate | undefined; encrypted?: GetMediasMediaIdCustomizationsEncrypted | undefined; }; /** @internal */ export type GetMediasMediaIdCustomizationsRequest$Outbound = { mediaId: string; }; /** @internal */ export const GetMediasMediaIdCustomizationsRequest$outboundSchema: z.ZodType< GetMediasMediaIdCustomizationsRequest$Outbound, z.ZodTypeDef, GetMediasMediaIdCustomizationsRequest > = z.object({ mediaId: z.string(), }); export function getMediasMediaIdCustomizationsRequestToJSON( getMediasMediaIdCustomizationsRequest: GetMediasMediaIdCustomizationsRequest, ): string { return JSON.stringify( GetMediasMediaIdCustomizationsRequest$outboundSchema.parse( getMediasMediaIdCustomizationsRequest, ), ); } /** @internal */ export const GetMediasMediaIdCustomizationsPasswordProtectedVideo$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsPasswordProtectedVideo, z.ZodTypeDef, unknown > = z.object({ on: z.string().optional(), src: z.string().optional(), challenge: z.string().optional(), async: z.string().optional(), }); export function getMediasMediaIdCustomizationsPasswordProtectedVideoFromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsPasswordProtectedVideo, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsPasswordProtectedVideo$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsPasswordProtectedVideo' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsVideoThumbnail$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsVideoThumbnail, z.ZodTypeDef, unknown > = z.object({ clickToPlayButton: z.string().optional(), }); export function getMediasMediaIdCustomizationsVideoThumbnailFromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsVideoThumbnail, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsVideoThumbnail$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsVideoThumbnail' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsSocialbarV1$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsSocialbarV1, z.ZodTypeDef, unknown > = z.object({ buttons: z.string().optional(), showTweetCount: z.string().optional(), tweetText: z.string().optional(), height: z.string().optional(), }); export function getMediasMediaIdCustomizationsSocialbarV1FromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsSocialbarV1, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsSocialbarV1$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsSocialbarV1' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsChapterList$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsChapterList, z.ZodTypeDef, unknown > = z.object({ id: z.string().optional(), title: z.string().optional(), time: z.string().optional(), deleted: z.string().optional(), }); export function getMediasMediaIdCustomizationsChapterListFromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsChapterList, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsChapterList$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsChapterList' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsChapters$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsChapters, z.ZodTypeDef, unknown > = z.object({ visibleOnLoad: z.string().optional(), chapterList: z.array( z.lazy(() => GetMediasMediaIdCustomizationsChapterList$inboundSchema), ).optional(), on: z.string().optional(), }); export function getMediasMediaIdCustomizationsChaptersFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsChapters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetMediasMediaIdCustomizationsChapters' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsStyle$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsStyle, z.ZodTypeDef, unknown > = z.object({ backgroundColor: z.string().optional(), }); export function getMediasMediaIdCustomizationsStyleFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsStyle$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetMediasMediaIdCustomizationsStyle' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsPostRollV1$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsPostRollV1, z.ZodTypeDef, unknown > = z.object({ rewatch: z.string().optional(), text: z.string().optional(), link: z.string().optional(), time: z.string().optional(), autoSize: z.string().optional(), style: z.lazy(() => GetMediasMediaIdCustomizationsStyle$inboundSchema) .optional(), ctaType: z.string().optional(), on: z.string().optional(), conversionOpportunityKey: z.string().optional(), }); export function getMediasMediaIdCustomizationsPostRollV1FromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsPostRollV1, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsPostRollV1$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsPostRollV1' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsCaptionsV1$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsCaptionsV1, z.ZodTypeDef, unknown > = z.object({ on: z.string().optional(), onByDefault: z.string().optional(), }); export function getMediasMediaIdCustomizationsCaptionsV1FromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsCaptionsV1, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsCaptionsV1$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsCaptionsV1' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsPlugin$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsPlugin, z.ZodTypeDef, unknown > = z.object({ passwordProtectedVideo: z.lazy(() => GetMediasMediaIdCustomizationsPasswordProtectedVideo$inboundSchema ).optional(), videoThumbnail: z.lazy(() => GetMediasMediaIdCustomizationsVideoThumbnail$inboundSchema ).optional(), "socialbar-v1": z.lazy(() => GetMediasMediaIdCustomizationsSocialbarV1$inboundSchema ).optional(), chapters: z.lazy(() => GetMediasMediaIdCustomizationsChapters$inboundSchema) .optional(), "postRoll-v1": z.lazy(() => GetMediasMediaIdCustomizationsPostRollV1$inboundSchema ).optional(), "captions-v1": z.lazy(() => GetMediasMediaIdCustomizationsCaptionsV1$inboundSchema ).optional(), }).transform((v) => { return remap$(v, { "socialbar-v1": "socialbarV1", "postRoll-v1": "postRollV1", "captions-v1": "captionsV1", }); }); export function getMediasMediaIdCustomizationsPluginFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsPlugin$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetMediasMediaIdCustomizationsPlugin' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsPrivate$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsPrivate, z.ZodTypeDef, unknown > = z.object({ password_protect_on: z.string().optional(), show_comments: z.string().optional(), }).transform((v) => { return remap$(v, { "password_protect_on": "passwordProtectOn", "show_comments": "showComments", }); }); export function getMediasMediaIdCustomizationsPrivateFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsPrivate$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetMediasMediaIdCustomizationsPrivate' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsEncrypted$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsEncrypted, z.ZodTypeDef, unknown > = z.object({ password_protect_password: z.string().optional(), }).transform((v) => { return remap$(v, { "password_protect_password": "passwordProtectPassword", }); }); export function getMediasMediaIdCustomizationsEncryptedFromJSON( jsonString: string, ): SafeParseResult< GetMediasMediaIdCustomizationsEncrypted, SDKValidationError > { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsEncrypted$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetMediasMediaIdCustomizationsEncrypted' from JSON`, ); } /** @internal */ export const GetMediasMediaIdCustomizationsResponse$inboundSchema: z.ZodType< GetMediasMediaIdCustomizationsResponse, z.ZodTypeDef, unknown > = z.object({ playerColor: z.string().optional(), stillUrl: z.string().optional(), autoPlay: z.string().optional(), bpbTime: z.string().optional(), controlsVisibleOnLoad: z.string().optional(), endVideoBehavior: z.string().optional(), fullscreenButton: z.string().optional(), branding: z.string().optional(), playbar: z.string().optional(), playButton: z.string().optional(), settingsControl: z.string().optional(), showCustomerLogo: z.string().optional(), qualityControl: z.string().optional(), playbackRateControl: z.string().optional(), smallPlayButton: z.string().optional(), spherical: z.string().optional(), volumeControl: z.string().optional(), copyLinkAndThumbnailEnabled: z.string().optional(), doNotTrack: z.string().optional(), email: z.string().optional(), fitStrategy: z.string().optional(), fullscreenOnRotateToLandscape: z.string().optional(), muted: z.string().optional(), playlistLinks: z.string().optional(), playlistLoop: z.string().optional(), playsinline: z.string().optional(), playPauseNotifier: z.string().optional(), playSuspendedOffScreen: z.string().optional(), preload: z.string().optional(), qualityMax: z.string().optional(), qualityMin: z.string().optional(), resumable: z.string().optional(), seo: z.string().optional(), silentAutoPlay: z.string().optional(), time: z.string().optional(), thumbnailAltText: z.string().optional(), videoFoam: z.string().optional(), volume: z.string().optional(), wmode: z.string().optional(), keyMoments: z.string().optional(), plugin: z.lazy(() => GetMediasMediaIdCustomizationsPlugin$inboundSchema) .optional(), private: z.lazy(() => GetMediasMediaIdCustomizationsPrivate$inboundSchema) .optional(), encrypted: z.lazy(() => GetMediasMediaIdCustomizationsEncrypted$inboundSchema) .optional(), }); export function getMediasMediaIdCustomizationsResponseFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetMediasMediaIdCustomizationsResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetMediasMediaIdCustomizationsResponse' from JSON`, ); }