/* * 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 { ComputePort, ComputePort$inboundSchema, ComputePort$Outbound, ComputePort$outboundSchema, } from "./computeport.js"; import { ComputeSecretReference, ComputeSecretReference$inboundSchema, ComputeSecretReference$Outbound, ComputeSecretReference$outboundSchema, } from "./computesecretreference.js"; export type ComputeContainerCreate2 = { command?: Array | undefined; env?: { [k: string]: string } | undefined; image: string; ports?: Array | undefined; scriptB64: string; secretEnv?: { [k: string]: ComputeSecretReference } | undefined; }; export type ComputeContainerCreate1 = { command: Array; env?: { [k: string]: string } | undefined; image: string; ports?: Array | undefined; scriptB64?: string | undefined; secretEnv?: { [k: string]: ComputeSecretReference } | undefined; }; export type ComputeContainerCreate = | ComputeContainerCreate1 | ComputeContainerCreate2; /** @internal */ export const ComputeContainerCreate2$inboundSchema: z.ZodType< ComputeContainerCreate2, z.ZodTypeDef, unknown > = z.object({ command: z.array(z.string()).optional(), env: z.record(z.string()).optional(), image: z.string(), ports: z.array(ComputePort$inboundSchema).optional(), script_b64: z.string(), secret_env: z.record(ComputeSecretReference$inboundSchema).optional(), }).transform((v) => { return remap$(v, { "script_b64": "scriptB64", "secret_env": "secretEnv", }); }); /** @internal */ export type ComputeContainerCreate2$Outbound = { command?: Array | undefined; env?: { [k: string]: string } | undefined; image: string; ports?: Array | undefined; script_b64: string; secret_env?: { [k: string]: ComputeSecretReference$Outbound } | undefined; }; /** @internal */ export const ComputeContainerCreate2$outboundSchema: z.ZodType< ComputeContainerCreate2$Outbound, z.ZodTypeDef, ComputeContainerCreate2 > = z.object({ command: z.array(z.string()).optional(), env: z.record(z.string()).optional(), image: z.string(), ports: z.array(ComputePort$outboundSchema).optional(), scriptB64: z.string(), secretEnv: z.record(ComputeSecretReference$outboundSchema).optional(), }).transform((v) => { return remap$(v, { scriptB64: "script_b64", secretEnv: "secret_env", }); }); export function computeContainerCreate2ToJSON( computeContainerCreate2: ComputeContainerCreate2, ): string { return JSON.stringify( ComputeContainerCreate2$outboundSchema.parse(computeContainerCreate2), ); } export function computeContainerCreate2FromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ComputeContainerCreate2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ComputeContainerCreate2' from JSON`, ); } /** @internal */ export const ComputeContainerCreate1$inboundSchema: z.ZodType< ComputeContainerCreate1, z.ZodTypeDef, unknown > = z.object({ command: z.array(z.string()), env: z.record(z.string()).optional(), image: z.string(), ports: z.array(ComputePort$inboundSchema).optional(), script_b64: z.string().optional(), secret_env: z.record(ComputeSecretReference$inboundSchema).optional(), }).transform((v) => { return remap$(v, { "script_b64": "scriptB64", "secret_env": "secretEnv", }); }); /** @internal */ export type ComputeContainerCreate1$Outbound = { command: Array; env?: { [k: string]: string } | undefined; image: string; ports?: Array | undefined; script_b64?: string | undefined; secret_env?: { [k: string]: ComputeSecretReference$Outbound } | undefined; }; /** @internal */ export const ComputeContainerCreate1$outboundSchema: z.ZodType< ComputeContainerCreate1$Outbound, z.ZodTypeDef, ComputeContainerCreate1 > = z.object({ command: z.array(z.string()), env: z.record(z.string()).optional(), image: z.string(), ports: z.array(ComputePort$outboundSchema).optional(), scriptB64: z.string().optional(), secretEnv: z.record(ComputeSecretReference$outboundSchema).optional(), }).transform((v) => { return remap$(v, { scriptB64: "script_b64", secretEnv: "secret_env", }); }); export function computeContainerCreate1ToJSON( computeContainerCreate1: ComputeContainerCreate1, ): string { return JSON.stringify( ComputeContainerCreate1$outboundSchema.parse(computeContainerCreate1), ); } export function computeContainerCreate1FromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ComputeContainerCreate1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ComputeContainerCreate1' from JSON`, ); } /** @internal */ export const ComputeContainerCreate$inboundSchema: z.ZodType< ComputeContainerCreate, z.ZodTypeDef, unknown > = z.union([ z.lazy(() => ComputeContainerCreate1$inboundSchema), z.lazy(() => ComputeContainerCreate2$inboundSchema), ]); /** @internal */ export type ComputeContainerCreate$Outbound = | ComputeContainerCreate1$Outbound | ComputeContainerCreate2$Outbound; /** @internal */ export const ComputeContainerCreate$outboundSchema: z.ZodType< ComputeContainerCreate$Outbound, z.ZodTypeDef, ComputeContainerCreate > = z.union([ z.lazy(() => ComputeContainerCreate1$outboundSchema), z.lazy(() => ComputeContainerCreate2$outboundSchema), ]); export function computeContainerCreateToJSON( computeContainerCreate: ComputeContainerCreate, ): string { return JSON.stringify( ComputeContainerCreate$outboundSchema.parse(computeContainerCreate), ); } export function computeContainerCreateFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ComputeContainerCreate$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ComputeContainerCreate' from JSON`, ); }