/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { remap as remap$ } from "../../lib/primitives.js"; export type AWSMarketplaceAgreement = { /** * if true, ProductCode is omitted when reporting */ concurrentAgreements?: boolean | undefined; /** * -> BatchMeterUsage's CustomerAWSAccountId */ customerAwsAccountId: string; /** * -> BatchMeterUsage's Dimension (always "usage_fee" in the cents model) */ dimension: string; /** * -> BatchMeterUsage's LicenseArn; identifies the buyer's agreement */ licenseArn: string; /** * -> BatchMeterUsage's ProductCode (omitted when ConcurrentAgreements) */ productCode: string; }; /** @internal */ export type AWSMarketplaceAgreement$Outbound = { concurrent_agreements?: boolean | undefined; customer_aws_account_id: string; dimension: string; license_arn: string; product_code: string; }; /** @internal */ export const AWSMarketplaceAgreement$outboundSchema: z.ZodMiniType< AWSMarketplaceAgreement$Outbound, AWSMarketplaceAgreement > = z.pipe( z.object({ concurrentAgreements: z.optional(z.boolean()), customerAwsAccountId: z.string(), dimension: z.string(), licenseArn: z.string(), productCode: z.string(), }), z.transform((v) => { return remap$(v, { concurrentAgreements: "concurrent_agreements", customerAwsAccountId: "customer_aws_account_id", licenseArn: "license_arn", productCode: "product_code", }); }), ); export function awsMarketplaceAgreementToJSON( awsMarketplaceAgreement: AWSMarketplaceAgreement, ): string { return JSON.stringify( AWSMarketplaceAgreement$outboundSchema.parse(awsMarketplaceAgreement), ); }