/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: b9d2ee0c7cae */ import * as z from "zod/v4"; import { safeParse } from "../lib/schemas.js"; import { ClosedEnum } from "../types/enums.js"; import { Result as SafeParseResult } from "../types/fp.js"; import { SDKValidationError } from "./errors/sdkvalidationerror.js"; export const ProjectCapabilitiesMethod = { Framework: "framework", RemoteOperator: "remote-operator", } as const; export type ProjectCapabilitiesMethod = ClosedEnum< typeof ProjectCapabilitiesMethod >; export type ProjectCapabilitiesDeployments = { enabled: boolean; methods?: Array | undefined; }; export type ProjectCapabilitiesKeys = { enabled: boolean; applicationEncryption: boolean; }; export const ProjectCapabilitiesAllowedProvider = { AwsBedrock: "aws-bedrock", GcpVertex: "gcp-vertex", AzureFoundry: "azure-foundry", Anthropic: "anthropic", Databricks: "databricks", Openai: "openai", } as const; export type ProjectCapabilitiesAllowedProvider = ClosedEnum< typeof ProjectCapabilitiesAllowedProvider >; export const ProjectCapabilitiesClientApi = { OpenaiChat: "openai-chat", OpenaiResponses: "openai-responses", AnthropicMessages: "anthropic-messages", } as const; export type ProjectCapabilitiesClientApi = ClosedEnum< typeof ProjectCapabilitiesClientApi >; export type ProjectCapabilitiesRequirement = { publicModelId: string; clientApis: Array; required: boolean; }; export type ProjectCapabilitiesModels = { enabled: boolean; allowedProviders: Array; requirements: Array; }; export const ProjectCapabilitiesAccess = { ReadWrite: "read-write", } as const; export type ProjectCapabilitiesAccess = ClosedEnum< typeof ProjectCapabilitiesAccess >; export type ProjectCapabilitiesBuckets = { enabled: boolean; access: ProjectCapabilitiesAccess; }; export const ProjectCapabilitiesCredentialPolicy = { PullOnly: "pull-only", PushAndPull: "push-and-pull", } as const; export type ProjectCapabilitiesCredentialPolicy = ClosedEnum< typeof ProjectCapabilitiesCredentialPolicy >; export type ProjectCapabilitiesRegistry = { enabled: boolean; repositories: Array; credentialPolicy: ProjectCapabilitiesCredentialPolicy; }; export type ProjectCapabilitiesAzure = { catalogImage: string; idleSuspendSeconds: number; }; export type ProjectCapabilitiesRemoteSandbox = { enabled: boolean; baseImage?: string | undefined; azure?: ProjectCapabilitiesAzure | undefined; maxLifetimeSeconds?: number | undefined; }; export type ProjectCapabilitiesCapabilities = { deployments?: ProjectCapabilitiesDeployments | undefined; keys?: ProjectCapabilitiesKeys | undefined; models?: ProjectCapabilitiesModels | undefined; buckets?: ProjectCapabilitiesBuckets | undefined; registry?: ProjectCapabilitiesRegistry | undefined; remoteSandbox?: ProjectCapabilitiesRemoteSandbox | undefined; }; export type ProjectCapabilities = { schemaVersion: number; capabilities: ProjectCapabilitiesCapabilities; }; /** @internal */ export const ProjectCapabilitiesMethod$inboundSchema: z.ZodEnum< typeof ProjectCapabilitiesMethod > = z.enum(ProjectCapabilitiesMethod); /** @internal */ export const ProjectCapabilitiesDeployments$inboundSchema: z.ZodType< ProjectCapabilitiesDeployments, unknown > = z.object({ enabled: z.boolean(), methods: z.array(ProjectCapabilitiesMethod$inboundSchema).optional(), }); export function projectCapabilitiesDeploymentsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesDeployments$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesDeployments' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesKeys$inboundSchema: z.ZodType< ProjectCapabilitiesKeys, unknown > = z.object({ enabled: z.boolean(), applicationEncryption: z.boolean(), }); export function projectCapabilitiesKeysFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesKeys$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesKeys' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesAllowedProvider$inboundSchema: z.ZodEnum< typeof ProjectCapabilitiesAllowedProvider > = z.enum(ProjectCapabilitiesAllowedProvider); /** @internal */ export const ProjectCapabilitiesClientApi$inboundSchema: z.ZodEnum< typeof ProjectCapabilitiesClientApi > = z.enum(ProjectCapabilitiesClientApi); /** @internal */ export const ProjectCapabilitiesRequirement$inboundSchema: z.ZodType< ProjectCapabilitiesRequirement, unknown > = z.object({ publicModelId: z.string(), clientApis: z.array(ProjectCapabilitiesClientApi$inboundSchema), required: z.boolean(), }); export function projectCapabilitiesRequirementFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesRequirement$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesRequirement' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesModels$inboundSchema: z.ZodType< ProjectCapabilitiesModels, unknown > = z.object({ enabled: z.boolean(), allowedProviders: z.array(ProjectCapabilitiesAllowedProvider$inboundSchema), requirements: z.array( z.lazy(() => ProjectCapabilitiesRequirement$inboundSchema), ), }); export function projectCapabilitiesModelsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesModels$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesModels' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesAccess$inboundSchema: z.ZodEnum< typeof ProjectCapabilitiesAccess > = z.enum(ProjectCapabilitiesAccess); /** @internal */ export const ProjectCapabilitiesBuckets$inboundSchema: z.ZodType< ProjectCapabilitiesBuckets, unknown > = z.object({ enabled: z.boolean(), access: ProjectCapabilitiesAccess$inboundSchema, }); export function projectCapabilitiesBucketsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesBuckets$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesBuckets' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesCredentialPolicy$inboundSchema: z.ZodEnum< typeof ProjectCapabilitiesCredentialPolicy > = z.enum(ProjectCapabilitiesCredentialPolicy); /** @internal */ export const ProjectCapabilitiesRegistry$inboundSchema: z.ZodType< ProjectCapabilitiesRegistry, unknown > = z.object({ enabled: z.boolean(), repositories: z.array(z.string()), credentialPolicy: ProjectCapabilitiesCredentialPolicy$inboundSchema, }); export function projectCapabilitiesRegistryFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesRegistry$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesRegistry' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesAzure$inboundSchema: z.ZodType< ProjectCapabilitiesAzure, unknown > = z.object({ catalogImage: z.string(), idleSuspendSeconds: z.int(), }); export function projectCapabilitiesAzureFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesAzure$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesAzure' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesRemoteSandbox$inboundSchema: z.ZodType< ProjectCapabilitiesRemoteSandbox, unknown > = z.object({ enabled: z.boolean(), baseImage: z.string().optional(), azure: z.lazy(() => ProjectCapabilitiesAzure$inboundSchema).optional(), maxLifetimeSeconds: z.int().optional(), }); export function projectCapabilitiesRemoteSandboxFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesRemoteSandbox$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesRemoteSandbox' from JSON`, ); } /** @internal */ export const ProjectCapabilitiesCapabilities$inboundSchema: z.ZodType< ProjectCapabilitiesCapabilities, unknown > = z.object({ deployments: z.lazy(() => ProjectCapabilitiesDeployments$inboundSchema) .optional(), keys: z.lazy(() => ProjectCapabilitiesKeys$inboundSchema).optional(), models: z.lazy(() => ProjectCapabilitiesModels$inboundSchema).optional(), buckets: z.lazy(() => ProjectCapabilitiesBuckets$inboundSchema).optional(), registry: z.lazy(() => ProjectCapabilitiesRegistry$inboundSchema).optional(), remoteSandbox: z.lazy(() => ProjectCapabilitiesRemoteSandbox$inboundSchema) .optional(), }); export function projectCapabilitiesCapabilitiesFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilitiesCapabilities$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilitiesCapabilities' from JSON`, ); } /** @internal */ export const ProjectCapabilities$inboundSchema: z.ZodType< ProjectCapabilities, unknown > = z.object({ schemaVersion: z.number(), capabilities: z.lazy(() => ProjectCapabilitiesCapabilities$inboundSchema), }); export function projectCapabilitiesFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProjectCapabilities$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProjectCapabilities' from JSON`, ); }