/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 788e538b7d21 */ 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 AiAvailabilityObservationAccessTest = { Verified: "verified", Failed: "failed", NotChecked: "not-checked", } as const; export type AiAvailabilityObservationAccessTest = ClosedEnum< typeof AiAvailabilityObservationAccessTest >; export const AiAvailabilityObservationAvailability = { Available: "available", Blocked: "blocked", Unknown: "unknown", } as const; export type AiAvailabilityObservationAvailability = ClosedEnum< typeof AiAvailabilityObservationAvailability >; export const AiAvailabilityObservationBlocker = { AgreementRequired: "agreement-required", EntitlementRequired: "entitlement-required", ModelActivationRequired: "model-activation-required", DeploymentRequired: "deployment-required", QuotaConfigurationRequired: "quota-configuration-required", RegionUnavailable: "region-unavailable", AccessDenied: "access-denied", ObservationFailed: "observation-failed", } as const; export type AiAvailabilityObservationBlocker = ClosedEnum< typeof AiAvailabilityObservationBlocker >; /** * A public API accepted from an application client. */ export const AiAvailabilityObservationClientApi = { OpenAiChatCompletions: "open-ai-chat-completions", OpenAiResponses: "open-ai-responses", AnthropicMessages: "anthropic-messages", } as const; /** * A public API accepted from an application client. */ export type AiAvailabilityObservationClientApi = ClosedEnum< typeof AiAvailabilityObservationClientApi >; export type AiAvailabilityObservationModel = { accessTest: AiAvailabilityObservationAccessTest; availability: AiAvailabilityObservationAvailability; blockers: Array; clientApis: Array; errorCode?: string | null | undefined; publicModelId: string; testedAt?: Date | null | undefined; }; /** * Provider control plane used to observe model availability without invoking * * @remarks * a model, spending customer quota, or accepting provider terms. */ export const AiAvailabilityObservationSource = { AwsBedrock: "aws-bedrock", GcpVertex: "gcp-vertex", AzureFoundry: "azure-foundry", Anthropic: "anthropic", } as const; /** * Provider control plane used to observe model availability without invoking * * @remarks * a model, spending customer quota, or accepting provider terms. */ export type AiAvailabilityObservationSource = ClosedEnum< typeof AiAvailabilityObservationSource >; export type AiAvailabilityObservation = { catalogRevision: string; location?: string | null | undefined; models: Array; /** * Provider control plane used to observe model availability without invoking * * @remarks * a model, spending customer quota, or accepting provider terms. */ source: AiAvailabilityObservationSource; }; /** @internal */ export const AiAvailabilityObservationAccessTest$inboundSchema: z.ZodEnum< typeof AiAvailabilityObservationAccessTest > = z.enum(AiAvailabilityObservationAccessTest); /** @internal */ export const AiAvailabilityObservationAvailability$inboundSchema: z.ZodEnum< typeof AiAvailabilityObservationAvailability > = z.enum(AiAvailabilityObservationAvailability); /** @internal */ export const AiAvailabilityObservationBlocker$inboundSchema: z.ZodEnum< typeof AiAvailabilityObservationBlocker > = z.enum(AiAvailabilityObservationBlocker); /** @internal */ export const AiAvailabilityObservationClientApi$inboundSchema: z.ZodEnum< typeof AiAvailabilityObservationClientApi > = z.enum(AiAvailabilityObservationClientApi); /** @internal */ export const AiAvailabilityObservationModel$inboundSchema: z.ZodType< AiAvailabilityObservationModel, unknown > = z.object({ accessTest: AiAvailabilityObservationAccessTest$inboundSchema, availability: AiAvailabilityObservationAvailability$inboundSchema, blockers: z.array(AiAvailabilityObservationBlocker$inboundSchema), clientApis: z.array(AiAvailabilityObservationClientApi$inboundSchema), errorCode: z.nullable(z.string()).optional(), publicModelId: z.string(), testedAt: z.nullable( z.iso.datetime({ offset: true }).transform(v => new Date(v)), ).optional(), }); export function aiAvailabilityObservationModelFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => AiAvailabilityObservationModel$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AiAvailabilityObservationModel' from JSON`, ); } /** @internal */ export const AiAvailabilityObservationSource$inboundSchema: z.ZodEnum< typeof AiAvailabilityObservationSource > = z.enum(AiAvailabilityObservationSource); /** @internal */ export const AiAvailabilityObservation$inboundSchema: z.ZodType< AiAvailabilityObservation, unknown > = z.object({ catalogRevision: z.string(), location: z.nullable(z.string()).optional(), models: z.array(z.lazy(() => AiAvailabilityObservationModel$inboundSchema)), source: AiAvailabilityObservationSource$inboundSchema, }); export function aiAvailabilityObservationFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => AiAvailabilityObservation$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AiAvailabilityObservation' from JSON`, ); }