/* * 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 GetExternalUserDefaultBudgetsRequest = { orgId?: string | undefined; }; export const GetExternalUserDefaultBudgetsScope = { Org: "org", Apikey: "apikey", User: "user", Team: "team", ExternalUser: "external_user", UserDefault: "user_default", TeamDefault: "team_default", ExternalUserDefault: "external_user_default", } as const; export type GetExternalUserDefaultBudgetsScope = ClosedEnum< typeof GetExternalUserDefaultBudgetsScope >; export const GetExternalUserDefaultBudgetsOwner = { Cluster: "cluster", Org: "org", } as const; export type GetExternalUserDefaultBudgetsOwner = ClosedEnum< typeof GetExternalUserDefaultBudgetsOwner >; export const GetExternalUserDefaultBudgetsPeriod = { Daily: "daily", Weekly: "weekly", Monthly: "monthly", } as const; export type GetExternalUserDefaultBudgetsPeriod = ClosedEnum< typeof GetExternalUserDefaultBudgetsPeriod >; export const GetExternalUserDefaultBudgetsAction = { Alert: "alert", Block: "block", } as const; export type GetExternalUserDefaultBudgetsAction = ClosedEnum< typeof GetExternalUserDefaultBudgetsAction >; export type GetExternalUserDefaultBudgetsThresholds = { pct: number; action: GetExternalUserDefaultBudgetsAction; }; export type GetExternalUserDefaultBudgetsData = { id: string; scope: GetExternalUserDefaultBudgetsScope; scopeId: string; scopeOrgId: string | null; owner: GetExternalUserDefaultBudgetsOwner; period: GetExternalUserDefaultBudgetsPeriod; limit: number; thresholds: Array; alertWebhookUrl: string | null; }; /** * OK */ export type GetExternalUserDefaultBudgetsResponseBody = { object: "list"; data: Array; }; /** @internal */ export const GetExternalUserDefaultBudgetsRequest$inboundSchema: z.ZodType< GetExternalUserDefaultBudgetsRequest, z.ZodTypeDef, unknown > = z.object({ org_id: z.string().optional(), }).transform((v) => { return remap$(v, { "org_id": "orgId", }); }); /** @internal */ export type GetExternalUserDefaultBudgetsRequest$Outbound = { org_id?: string | undefined; }; /** @internal */ export const GetExternalUserDefaultBudgetsRequest$outboundSchema: z.ZodType< GetExternalUserDefaultBudgetsRequest$Outbound, z.ZodTypeDef, GetExternalUserDefaultBudgetsRequest > = z.object({ orgId: z.string().optional(), }).transform((v) => { return remap$(v, { orgId: "org_id", }); }); export function getExternalUserDefaultBudgetsRequestToJSON( getExternalUserDefaultBudgetsRequest: GetExternalUserDefaultBudgetsRequest, ): string { return JSON.stringify( GetExternalUserDefaultBudgetsRequest$outboundSchema.parse( getExternalUserDefaultBudgetsRequest, ), ); } export function getExternalUserDefaultBudgetsRequestFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetExternalUserDefaultBudgetsRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetExternalUserDefaultBudgetsRequest' from JSON`, ); } /** @internal */ export const GetExternalUserDefaultBudgetsScope$inboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsScope > = z.nativeEnum(GetExternalUserDefaultBudgetsScope); /** @internal */ export const GetExternalUserDefaultBudgetsScope$outboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsScope > = GetExternalUserDefaultBudgetsScope$inboundSchema; /** @internal */ export const GetExternalUserDefaultBudgetsOwner$inboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsOwner > = z.nativeEnum(GetExternalUserDefaultBudgetsOwner); /** @internal */ export const GetExternalUserDefaultBudgetsOwner$outboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsOwner > = GetExternalUserDefaultBudgetsOwner$inboundSchema; /** @internal */ export const GetExternalUserDefaultBudgetsPeriod$inboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsPeriod > = z.nativeEnum(GetExternalUserDefaultBudgetsPeriod); /** @internal */ export const GetExternalUserDefaultBudgetsPeriod$outboundSchema: z.ZodNativeEnum = GetExternalUserDefaultBudgetsPeriod$inboundSchema; /** @internal */ export const GetExternalUserDefaultBudgetsAction$inboundSchema: z.ZodNativeEnum< typeof GetExternalUserDefaultBudgetsAction > = z.nativeEnum(GetExternalUserDefaultBudgetsAction); /** @internal */ export const GetExternalUserDefaultBudgetsAction$outboundSchema: z.ZodNativeEnum = GetExternalUserDefaultBudgetsAction$inboundSchema; /** @internal */ export const GetExternalUserDefaultBudgetsThresholds$inboundSchema: z.ZodType< GetExternalUserDefaultBudgetsThresholds, z.ZodTypeDef, unknown > = z.object({ pct: z.number().int(), action: GetExternalUserDefaultBudgetsAction$inboundSchema, }); /** @internal */ export type GetExternalUserDefaultBudgetsThresholds$Outbound = { pct: number; action: string; }; /** @internal */ export const GetExternalUserDefaultBudgetsThresholds$outboundSchema: z.ZodType< GetExternalUserDefaultBudgetsThresholds$Outbound, z.ZodTypeDef, GetExternalUserDefaultBudgetsThresholds > = z.object({ pct: z.number().int(), action: GetExternalUserDefaultBudgetsAction$outboundSchema, }); export function getExternalUserDefaultBudgetsThresholdsToJSON( getExternalUserDefaultBudgetsThresholds: GetExternalUserDefaultBudgetsThresholds, ): string { return JSON.stringify( GetExternalUserDefaultBudgetsThresholds$outboundSchema.parse( getExternalUserDefaultBudgetsThresholds, ), ); } export function getExternalUserDefaultBudgetsThresholdsFromJSON( jsonString: string, ): SafeParseResult< GetExternalUserDefaultBudgetsThresholds, SDKValidationError > { return safeParse( jsonString, (x) => GetExternalUserDefaultBudgetsThresholds$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetExternalUserDefaultBudgetsThresholds' from JSON`, ); } /** @internal */ export const GetExternalUserDefaultBudgetsData$inboundSchema: z.ZodType< GetExternalUserDefaultBudgetsData, z.ZodTypeDef, unknown > = z.object({ id: z.string(), scope: GetExternalUserDefaultBudgetsScope$inboundSchema, scope_id: z.string(), scope_org_id: z.nullable(z.string()), owner: GetExternalUserDefaultBudgetsOwner$inboundSchema, period: GetExternalUserDefaultBudgetsPeriod$inboundSchema, limit: z.number(), thresholds: z.array( z.lazy(() => GetExternalUserDefaultBudgetsThresholds$inboundSchema), ), alert_webhook_url: z.nullable(z.string()), }).transform((v) => { return remap$(v, { "scope_id": "scopeId", "scope_org_id": "scopeOrgId", "alert_webhook_url": "alertWebhookUrl", }); }); /** @internal */ export type GetExternalUserDefaultBudgetsData$Outbound = { id: string; scope: string; scope_id: string; scope_org_id: string | null; owner: string; period: string; limit: number; thresholds: Array; alert_webhook_url: string | null; }; /** @internal */ export const GetExternalUserDefaultBudgetsData$outboundSchema: z.ZodType< GetExternalUserDefaultBudgetsData$Outbound, z.ZodTypeDef, GetExternalUserDefaultBudgetsData > = z.object({ id: z.string(), scope: GetExternalUserDefaultBudgetsScope$outboundSchema, scopeId: z.string(), scopeOrgId: z.nullable(z.string()), owner: GetExternalUserDefaultBudgetsOwner$outboundSchema, period: GetExternalUserDefaultBudgetsPeriod$outboundSchema, limit: z.number(), thresholds: z.array( z.lazy(() => GetExternalUserDefaultBudgetsThresholds$outboundSchema), ), alertWebhookUrl: z.nullable(z.string()), }).transform((v) => { return remap$(v, { scopeId: "scope_id", scopeOrgId: "scope_org_id", alertWebhookUrl: "alert_webhook_url", }); }); export function getExternalUserDefaultBudgetsDataToJSON( getExternalUserDefaultBudgetsData: GetExternalUserDefaultBudgetsData, ): string { return JSON.stringify( GetExternalUserDefaultBudgetsData$outboundSchema.parse( getExternalUserDefaultBudgetsData, ), ); } export function getExternalUserDefaultBudgetsDataFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetExternalUserDefaultBudgetsData$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetExternalUserDefaultBudgetsData' from JSON`, ); } /** @internal */ export const GetExternalUserDefaultBudgetsResponseBody$inboundSchema: z.ZodType< GetExternalUserDefaultBudgetsResponseBody, z.ZodTypeDef, unknown > = z.object({ object: z.literal("list"), data: z.array(z.lazy(() => GetExternalUserDefaultBudgetsData$inboundSchema)), }); /** @internal */ export type GetExternalUserDefaultBudgetsResponseBody$Outbound = { object: "list"; data: Array; }; /** @internal */ export const GetExternalUserDefaultBudgetsResponseBody$outboundSchema: z.ZodType< GetExternalUserDefaultBudgetsResponseBody$Outbound, z.ZodTypeDef, GetExternalUserDefaultBudgetsResponseBody > = z.object({ object: z.literal("list"), data: z.array( z.lazy(() => GetExternalUserDefaultBudgetsData$outboundSchema), ), }); export function getExternalUserDefaultBudgetsResponseBodyToJSON( getExternalUserDefaultBudgetsResponseBody: GetExternalUserDefaultBudgetsResponseBody, ): string { return JSON.stringify( GetExternalUserDefaultBudgetsResponseBody$outboundSchema.parse( getExternalUserDefaultBudgetsResponseBody, ), ); } export function getExternalUserDefaultBudgetsResponseBodyFromJSON( jsonString: string, ): SafeParseResult< GetExternalUserDefaultBudgetsResponseBody, SDKValidationError > { return safeParse( jsonString, (x) => GetExternalUserDefaultBudgetsResponseBody$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'GetExternalUserDefaultBudgetsResponseBody' from JSON`, ); }