/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 4f95e4e78838 */ import * as z from "zod/v4"; import { safeParse } from "../lib/schemas.js"; import { Result as SafeParseResult } from "../types/fp.js"; import { BillingFeatureFlags, BillingFeatureFlags$inboundSchema, } from "./billingfeatureflags.js"; import { BillingLimits, BillingLimits$inboundSchema } from "./billinglimits.js"; import { BillingPlanStatus, BillingPlanStatus$inboundSchema, } from "./billingplanstatus.js"; import { SDKValidationError } from "./errors/sdkvalidationerror.js"; import { PlanId, PlanId$inboundSchema } from "./planid.js"; export type WorkspaceBillingEntitlements = { planId: PlanId; planStatus: BillingPlanStatus; features: BillingFeatureFlags; limits: BillingLimits; syncedAt: Date | null; stale: boolean; }; /** @internal */ export const WorkspaceBillingEntitlements$inboundSchema: z.ZodType< WorkspaceBillingEntitlements, unknown > = z.object({ planId: PlanId$inboundSchema, planStatus: BillingPlanStatus$inboundSchema, features: BillingFeatureFlags$inboundSchema, limits: BillingLimits$inboundSchema, syncedAt: z.nullable( z.iso.datetime({ offset: true }).transform(v => new Date(v)), ), stale: z.boolean(), }); export function workspaceBillingEntitlementsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => WorkspaceBillingEntitlements$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceBillingEntitlements' from JSON`, ); }