/* * 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 * as openEnums from "../../types/enums.js"; import { OpenEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; export const ServiceIdTransportProtocol = { Unknown: "", Tcp: "tcp", Udp: "udp", Icmp: "icmp", Quic: "quic", } as const; export type ServiceIdTransportProtocol = OpenEnum< typeof ServiceIdTransportProtocol >; export type ServiceId = { ip?: string | undefined; port?: number | undefined; protocol?: string | undefined; transportProtocol?: ServiceIdTransportProtocol | undefined; }; /** @internal */ export const ServiceIdTransportProtocol$inboundSchema: z.ZodType< ServiceIdTransportProtocol, z.ZodTypeDef, unknown > = openEnums.inboundSchema(ServiceIdTransportProtocol); /** @internal */ export const ServiceId$inboundSchema: z.ZodType< ServiceId, z.ZodTypeDef, unknown > = z.object({ ip: z.string().optional(), port: z.number().int().optional(), protocol: z.string().optional(), transport_protocol: ServiceIdTransportProtocol$inboundSchema.optional(), }).transform((v) => { return remap$(v, { "transport_protocol": "transportProtocol", }); }); export function serviceIdFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ServiceId$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ServiceId' from JSON`, ); }