/* * 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"; export type RegisterDomainRequestBody = { /** * The domain to claim. We only support .link domains for now. */ domain: string; }; /** * The domain was registered. */ export type RegisterDomainResponseBody = { /** * The domain name. */ domain: string; /** * The status of the domain registration. */ status: string; /** * The expiration timestamp of the domain (Unix timestamp in milliseconds). */ expiration: number | null; }; /** @internal */ export type RegisterDomainRequestBody$Outbound = { domain: string; }; /** @internal */ export const RegisterDomainRequestBody$outboundSchema: z.ZodType< RegisterDomainRequestBody$Outbound, z.ZodTypeDef, RegisterDomainRequestBody > = z.object({ domain: z.string(), }); export function registerDomainRequestBodyToJSON( registerDomainRequestBody: RegisterDomainRequestBody, ): string { return JSON.stringify( RegisterDomainRequestBody$outboundSchema.parse(registerDomainRequestBody), ); } /** @internal */ export const RegisterDomainResponseBody$inboundSchema: z.ZodType< RegisterDomainResponseBody, z.ZodTypeDef, unknown > = z.object({ domain: z.string(), status: z.string(), expiration: z.nullable(z.number()), }); export function registerDomainResponseBodyFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => RegisterDomainResponseBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'RegisterDomainResponseBody' from JSON`, ); }