UNPKG

@vercel/sdk

Version:

<p align="center"> <a href="https://vercel.com"> <img src="https://assets.vercel.com/image/upload/v1588805858/repositories/vercel/logo.png" height="96"> <h3 align="center">Vercel</h3> </a> <p align="center">Develop. Preview. Ship.</p> </p>

129 lines 4.77 kB
/* * 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 { smartUnion } from "../types/smartUnion.js"; /** * @remarks * Type of the metric. * - total: measured total value, such as Database size * - interval: usage during the period, such as i/o or number of queries. * - rate: rate of usage, such as queries per second. */ export const SubmitBillingDataType = { Total: "total", Interval: "interval", Rate: "rate", }; /** @internal */ export const Period$outboundSchema = z.object({ start: z.date().transform(v => v.toISOString()), end: z.date().transform(v => v.toISOString()), }); export function periodToJSON(period) { return JSON.stringify(Period$outboundSchema.parse(period)); } /** @internal */ export const BillingItems$outboundSchema = z.object({ billingPlanId: z.string(), resourceId: z.string().optional(), start: z.date().transform(v => v.toISOString()).optional(), end: z.date().transform(v => v.toISOString()).optional(), name: z.string(), details: z.string().optional(), price: z.string(), quantity: z.number(), units: z.string(), total: z.string(), }); export function billingItemsToJSON(billingItems) { return JSON.stringify(BillingItems$outboundSchema.parse(billingItems)); } /** @internal */ export const Discounts$outboundSchema = z.object({ billingPlanId: z.string(), resourceId: z.string().optional(), start: z.date().transform(v => v.toISOString()).optional(), end: z.date().transform(v => v.toISOString()).optional(), name: z.string(), details: z.string().optional(), amount: z.string(), }); export function discountsToJSON(discounts) { return JSON.stringify(Discounts$outboundSchema.parse(discounts)); } /** @internal */ export const Billing2$outboundSchema = z.object({ items: z.array(z.lazy(() => BillingItems$outboundSchema)), discounts: z.array(z.lazy(() => Discounts$outboundSchema)).optional(), }); export function billing2ToJSON(billing2) { return JSON.stringify(Billing2$outboundSchema.parse(billing2)); } /** @internal */ export const Billing1$outboundSchema = z.object({ billingPlanId: z.string(), resourceId: z.string().optional(), start: z.date().transform(v => v.toISOString()).optional(), end: z.date().transform(v => v.toISOString()).optional(), name: z.string(), details: z.string().optional(), price: z.string(), quantity: z.number(), units: z.string(), total: z.string(), }); export function billing1ToJSON(billing1) { return JSON.stringify(Billing1$outboundSchema.parse(billing1)); } /** @internal */ export const SubmitBillingDataBilling$outboundSchema = smartUnion([ z.lazy(() => Billing2$outboundSchema), z.array(z.lazy(() => Billing1$outboundSchema)), ]); export function submitBillingDataBillingToJSON(submitBillingDataBilling) { return JSON.stringify(SubmitBillingDataBilling$outboundSchema.parse(submitBillingDataBilling)); } /** @internal */ export const SubmitBillingDataType$outboundSchema = z.nativeEnum(SubmitBillingDataType); /** @internal */ export const Usage$outboundSchema = z.object({ resourceId: z.string().optional(), name: z.string(), type: SubmitBillingDataType$outboundSchema, units: z.string(), dayValue: z.number(), periodValue: z.number(), planValue: z.number().optional(), }); export function usageToJSON(usage) { return JSON.stringify(Usage$outboundSchema.parse(usage)); } /** @internal */ export const SubmitBillingDataRequestBody$outboundSchema = z.object({ timestamp: z.date().transform(v => v.toISOString()), eod: z.date().transform(v => v.toISOString()), period: z.lazy(() => Period$outboundSchema), billing: smartUnion([ z.lazy(() => Billing2$outboundSchema), z.array(z.lazy(() => Billing1$outboundSchema)), ]), usage: z.array(z.lazy(() => Usage$outboundSchema)), }); export function submitBillingDataRequestBodyToJSON(submitBillingDataRequestBody) { return JSON.stringify(SubmitBillingDataRequestBody$outboundSchema.parse(submitBillingDataRequestBody)); } /** @internal */ export const SubmitBillingDataRequest$outboundSchema = z.object({ integrationConfigurationId: z.string(), requestBody: z.lazy(() => SubmitBillingDataRequestBody$outboundSchema), }).transform((v) => { return remap$(v, { requestBody: "RequestBody", }); }); export function submitBillingDataRequestToJSON(submitBillingDataRequest) { return JSON.stringify(SubmitBillingDataRequest$outboundSchema.parse(submitBillingDataRequest)); } //# sourceMappingURL=submitbillingdataop.js.map