/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 320761608fb3 */ import * as z from "zod"; import { Security } from "../models/security.js"; import { ClosedEnum } from "../types/enums.js"; import { HTTPClient } from "./http.js"; import { Logger } from "./logger.js"; import { RetryConfig } from "./retries.js"; import { Params, pathToFunc } from "./url.js"; /** * Contains the list of servers available to the SDK */ export const ServerList = [ /** * Regional API endpoints for optimal performance. */ "https://{region}.cloudinary.com", /** * Custom domains for enterprise deployments. */ "https://{host}", ] as const; /** * Regional endpoint selection */ export const ServerRegion = { Api: "api", ApiEu: "api-eu", ApiAp: "api-ap", } as const; /** * Regional endpoint selection */ export type ServerRegion = ClosedEnum; export const ServerRegion$zodSchema = z.enum([ "api", "api-eu", "api-ap", ]).describe("Regional endpoint selection"); export type SDKOptions = { /** * The security details required to authenticate the SDK */ security?: Security | (() => Promise) | undefined; /** * Allows setting the cloud_name parameter for all supported operations */ cloud_name?: string | undefined; httpClient?: HTTPClient; /** * Allows overriding the default server used by the SDK */ serverIdx?: number | undefined; /** * Sets the region variable for url substitution */ region?: ServerRegion | undefined; /** * Sets the host variable for url substitution */ host?: string | undefined; /** * Allows overriding the default server URL used by the SDK */ serverURL?: string | undefined; /** * Allows overriding the default user agent used by the SDK */ userAgent?: string | undefined; /** * Allows overriding the default retry config used by the SDK */ retryConfig?: RetryConfig; timeoutMs?: number; debugLogger?: Logger | undefined; }; export function serverURLFromOptions(options: SDKOptions): URL | null { let serverURL = options.serverURL; const serverParams: Params[] = [ { "region": options.region ?? "api", }, { "host": options.host ?? "api.cloudinary.com", }, ]; let params: Params = {}; if (!serverURL) { const serverIdx = options.serverIdx ?? 0; if (serverIdx < 0 || serverIdx >= ServerList.length) { throw new Error(`Invalid server index ${serverIdx}`); } serverURL = ServerList[serverIdx] || ""; params = serverParams[serverIdx] || {}; } const u = pathToFunc(serverURL)(params); return new URL(u); } export const SDK_METADATA = { language: "typescript", openapiDocVersion: "0.5.1", sdkVersion: "0.9.3", genVersion: "2.885.1", userAgent: "speakeasy-sdk/mcp-typescript 0.9.3 2.885.1 0.5.1 @cloudinary/asset-management-mcp", } as const;