/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { EmbeddingModelLimits, EmbeddingModelLimits$inboundSchema, EmbeddingModelLimits$Outbound, EmbeddingModelLimits$outboundSchema, } from "./embeddingmodellimits.js"; /** * Information about an embedding model and its limits */ export type EmbeddingModel = { /** * Qualified model identifier in provider:model format */ id: string; /** * Provider identifier (e.g., 'meetkai') */ provider: string; /** * Model identifier within the provider */ model: string; /** * Limits for the embedding model */ limits: EmbeddingModelLimits; }; /** @internal */ export const EmbeddingModel$inboundSchema: z.ZodType< EmbeddingModel, z.ZodTypeDef, unknown > = z.object({ id: z.string(), provider: z.string(), model: z.string(), limits: EmbeddingModelLimits$inboundSchema, }); /** @internal */ export type EmbeddingModel$Outbound = { id: string; provider: string; model: string; limits: EmbeddingModelLimits$Outbound; }; /** @internal */ export const EmbeddingModel$outboundSchema: z.ZodType< EmbeddingModel$Outbound, z.ZodTypeDef, EmbeddingModel > = z.object({ id: z.string(), provider: z.string(), model: z.string(), limits: EmbeddingModelLimits$outboundSchema, }); export function embeddingModelToJSON(embeddingModel: EmbeddingModel): string { return JSON.stringify(EmbeddingModel$outboundSchema.parse(embeddingModel)); } export function embeddingModelFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => EmbeddingModel$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'EmbeddingModel' from JSON`, ); }