/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 2817f037d75a */ import * as z from "zod/v4"; import { safeParse } from "../lib/schemas.js"; import { Result as SafeParseResult } from "../types/fp.js"; import { SDKValidationError } from "./errors/sdkvalidationerror.js"; import { GatewayProjectOverview, GatewayProjectOverview$inboundSchema, } from "./gatewayprojectoverview.js"; export type WorkspaceGatewayOverviewSummary = { totalProjects: number; gatewayProjects: number; activeProjects: number; setupInProgressProjects: number; needsAttentionProjects: number; connectedCustomers: number; }; export type WorkspaceGatewayOverview = { generatedAt: Date; summary: WorkspaceGatewayOverviewSummary; projects: Array; }; /** @internal */ export const WorkspaceGatewayOverviewSummary$inboundSchema: z.ZodType< WorkspaceGatewayOverviewSummary, unknown > = z.object({ totalProjects: z.int(), gatewayProjects: z.int(), activeProjects: z.int(), setupInProgressProjects: z.int(), needsAttentionProjects: z.int(), connectedCustomers: z.int(), }); export function workspaceGatewayOverviewSummaryFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => WorkspaceGatewayOverviewSummary$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceGatewayOverviewSummary' from JSON`, ); } /** @internal */ export const WorkspaceGatewayOverview$inboundSchema: z.ZodType< WorkspaceGatewayOverview, unknown > = z.object({ generatedAt: z.iso.datetime({ offset: true }).transform(v => new Date(v)), summary: z.lazy(() => WorkspaceGatewayOverviewSummary$inboundSchema), projects: z.array(GatewayProjectOverview$inboundSchema), }); export function workspaceGatewayOverviewFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => WorkspaceGatewayOverview$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceGatewayOverview' from JSON`, ); }