/* * 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 { MCPAuthType, MCPAuthType$inboundSchema, MCPAuthType$outboundSchema, } from "./mcpauthtype.js"; export type McpCredential = { id: string; object: "mcp.credential"; serverId: string; name: string | null; authType: MCPAuthType; authorizationPreview: string | null; headerNames: Array; expiresAt: Date | null; lastUsedAt: Date | null; createdAt: Date; updatedAt: Date; revokedAt: Date | null; }; /** @internal */ export const McpCredential$inboundSchema: z.ZodType< McpCredential, z.ZodTypeDef, unknown > = z.object({ id: z.string(), object: z.literal("mcp.credential"), server_id: z.string(), name: z.nullable(z.string()), auth_type: MCPAuthType$inboundSchema, authorization_preview: z.nullable(z.string()), header_names: z.array(z.string()), expires_at: z.nullable( z.string().datetime({ offset: true }).transform(v => new Date(v)), ), last_used_at: z.nullable( z.string().datetime({ offset: true }).transform(v => new Date(v)), ), created_at: z.string().datetime({ offset: true }).transform(v => new Date(v)), updated_at: z.string().datetime({ offset: true }).transform(v => new Date(v)), revoked_at: z.nullable( z.string().datetime({ offset: true }).transform(v => new Date(v)), ), }).transform((v) => { return remap$(v, { "server_id": "serverId", "auth_type": "authType", "authorization_preview": "authorizationPreview", "header_names": "headerNames", "expires_at": "expiresAt", "last_used_at": "lastUsedAt", "created_at": "createdAt", "updated_at": "updatedAt", "revoked_at": "revokedAt", }); }); /** @internal */ export type McpCredential$Outbound = { id: string; object: "mcp.credential"; server_id: string; name: string | null; auth_type: string; authorization_preview: string | null; header_names: Array; expires_at: string | null; last_used_at: string | null; created_at: string; updated_at: string; revoked_at: string | null; }; /** @internal */ export const McpCredential$outboundSchema: z.ZodType< McpCredential$Outbound, z.ZodTypeDef, McpCredential > = z.object({ id: z.string(), object: z.literal("mcp.credential"), serverId: z.string(), name: z.nullable(z.string()), authType: MCPAuthType$outboundSchema, authorizationPreview: z.nullable(z.string()), headerNames: z.array(z.string()), expiresAt: z.nullable(z.date().transform(v => v.toISOString())), lastUsedAt: z.nullable(z.date().transform(v => v.toISOString())), createdAt: z.date().transform(v => v.toISOString()), updatedAt: z.date().transform(v => v.toISOString()), revokedAt: z.nullable(z.date().transform(v => v.toISOString())), }).transform((v) => { return remap$(v, { serverId: "server_id", authType: "auth_type", authorizationPreview: "authorization_preview", headerNames: "header_names", expiresAt: "expires_at", lastUsedAt: "last_used_at", createdAt: "created_at", updatedAt: "updated_at", revokedAt: "revoked_at", }); }); export function mcpCredentialToJSON(mcpCredential: McpCredential): string { return JSON.stringify(McpCredential$outboundSchema.parse(mcpCredential)); } export function mcpCredentialFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => McpCredential$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'McpCredential' from JSON`, ); }