/* * 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 { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; export type ListTeamDefaultBudgetEventsRequest = { orgId?: string | undefined; }; export const ListTeamDefaultBudgetEventsType = { ThresholdAlert: "threshold_alert", Blocked: "blocked", } as const; export type ListTeamDefaultBudgetEventsType = ClosedEnum< typeof ListTeamDefaultBudgetEventsType >; export type ListTeamDefaultBudgetEventsData = { id: string; budgetId: string; type: ListTeamDefaultBudgetEventsType; pct: number | null; periodKey: string; targetId: string; spendSnapshot: number; limitSnapshot: number; createdAt: string; }; /** * OK */ export type ListTeamDefaultBudgetEventsResponseBody = { object: "list"; data: Array; }; /** @internal */ export const ListTeamDefaultBudgetEventsRequest$inboundSchema: z.ZodType< ListTeamDefaultBudgetEventsRequest, z.ZodTypeDef, unknown > = z.object({ org_id: z.string().optional(), }).transform((v) => { return remap$(v, { "org_id": "orgId", }); }); /** @internal */ export type ListTeamDefaultBudgetEventsRequest$Outbound = { org_id?: string | undefined; }; /** @internal */ export const ListTeamDefaultBudgetEventsRequest$outboundSchema: z.ZodType< ListTeamDefaultBudgetEventsRequest$Outbound, z.ZodTypeDef, ListTeamDefaultBudgetEventsRequest > = z.object({ orgId: z.string().optional(), }).transform((v) => { return remap$(v, { orgId: "org_id", }); }); export function listTeamDefaultBudgetEventsRequestToJSON( listTeamDefaultBudgetEventsRequest: ListTeamDefaultBudgetEventsRequest, ): string { return JSON.stringify( ListTeamDefaultBudgetEventsRequest$outboundSchema.parse( listTeamDefaultBudgetEventsRequest, ), ); } export function listTeamDefaultBudgetEventsRequestFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ListTeamDefaultBudgetEventsRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListTeamDefaultBudgetEventsRequest' from JSON`, ); } /** @internal */ export const ListTeamDefaultBudgetEventsType$inboundSchema: z.ZodNativeEnum< typeof ListTeamDefaultBudgetEventsType > = z.nativeEnum(ListTeamDefaultBudgetEventsType); /** @internal */ export const ListTeamDefaultBudgetEventsType$outboundSchema: z.ZodNativeEnum< typeof ListTeamDefaultBudgetEventsType > = ListTeamDefaultBudgetEventsType$inboundSchema; /** @internal */ export const ListTeamDefaultBudgetEventsData$inboundSchema: z.ZodType< ListTeamDefaultBudgetEventsData, z.ZodTypeDef, unknown > = z.object({ id: z.string(), budget_id: z.string(), type: ListTeamDefaultBudgetEventsType$inboundSchema, pct: z.nullable(z.number()), period_key: z.string(), target_id: z.string(), spend_snapshot: z.number(), limit_snapshot: z.number(), created_at: z.string(), }).transform((v) => { return remap$(v, { "budget_id": "budgetId", "period_key": "periodKey", "target_id": "targetId", "spend_snapshot": "spendSnapshot", "limit_snapshot": "limitSnapshot", "created_at": "createdAt", }); }); /** @internal */ export type ListTeamDefaultBudgetEventsData$Outbound = { id: string; budget_id: string; type: string; pct: number | null; period_key: string; target_id: string; spend_snapshot: number; limit_snapshot: number; created_at: string; }; /** @internal */ export const ListTeamDefaultBudgetEventsData$outboundSchema: z.ZodType< ListTeamDefaultBudgetEventsData$Outbound, z.ZodTypeDef, ListTeamDefaultBudgetEventsData > = z.object({ id: z.string(), budgetId: z.string(), type: ListTeamDefaultBudgetEventsType$outboundSchema, pct: z.nullable(z.number()), periodKey: z.string(), targetId: z.string(), spendSnapshot: z.number(), limitSnapshot: z.number(), createdAt: z.string(), }).transform((v) => { return remap$(v, { budgetId: "budget_id", periodKey: "period_key", targetId: "target_id", spendSnapshot: "spend_snapshot", limitSnapshot: "limit_snapshot", createdAt: "created_at", }); }); export function listTeamDefaultBudgetEventsDataToJSON( listTeamDefaultBudgetEventsData: ListTeamDefaultBudgetEventsData, ): string { return JSON.stringify( ListTeamDefaultBudgetEventsData$outboundSchema.parse( listTeamDefaultBudgetEventsData, ), ); } export function listTeamDefaultBudgetEventsDataFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ListTeamDefaultBudgetEventsData$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListTeamDefaultBudgetEventsData' from JSON`, ); } /** @internal */ export const ListTeamDefaultBudgetEventsResponseBody$inboundSchema: z.ZodType< ListTeamDefaultBudgetEventsResponseBody, z.ZodTypeDef, unknown > = z.object({ object: z.literal("list"), data: z.array(z.lazy(() => ListTeamDefaultBudgetEventsData$inboundSchema)), }); /** @internal */ export type ListTeamDefaultBudgetEventsResponseBody$Outbound = { object: "list"; data: Array; }; /** @internal */ export const ListTeamDefaultBudgetEventsResponseBody$outboundSchema: z.ZodType< ListTeamDefaultBudgetEventsResponseBody$Outbound, z.ZodTypeDef, ListTeamDefaultBudgetEventsResponseBody > = z.object({ object: z.literal("list"), data: z.array(z.lazy(() => ListTeamDefaultBudgetEventsData$outboundSchema)), }); export function listTeamDefaultBudgetEventsResponseBodyToJSON( listTeamDefaultBudgetEventsResponseBody: ListTeamDefaultBudgetEventsResponseBody, ): string { return JSON.stringify( ListTeamDefaultBudgetEventsResponseBody$outboundSchema.parse( listTeamDefaultBudgetEventsResponseBody, ), ); } export function listTeamDefaultBudgetEventsResponseBodyFromJSON( jsonString: string, ): SafeParseResult< ListTeamDefaultBudgetEventsResponseBody, SDKValidationError > { return safeParse( jsonString, (x) => ListTeamDefaultBudgetEventsResponseBody$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'ListTeamDefaultBudgetEventsResponseBody' from JSON`, ); }