/* * 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 CreateCreditNoteLineItemRequest = { /** * amount is the monetary amount to be credited for this line item */ amount: string; /** * display_name is an optional human-readable name for this credit note line item */ displayName?: string | undefined; /** * invoice_line_item_id is the unique identifier of the invoice line item being credited */ invoiceLineItemId: string; metadata?: { [k: string]: string } | undefined; }; /** @internal */ export type CreateCreditNoteLineItemRequest$Outbound = { amount: string; display_name?: string | undefined; invoice_line_item_id: string; metadata?: { [k: string]: string } | undefined; }; /** @internal */ export const CreateCreditNoteLineItemRequest$outboundSchema: z.ZodMiniType< CreateCreditNoteLineItemRequest$Outbound, CreateCreditNoteLineItemRequest > = z.pipe( z.object({ amount: z.string(), displayName: z.optional(z.string()), invoiceLineItemId: z.string(), metadata: z.optional(z.record(z.string(), z.string())), }), z.transform((v) => { return remap$(v, { displayName: "display_name", invoiceLineItemId: "invoice_line_item_id", }); }), ); export function createCreditNoteLineItemRequestToJSON( createCreditNoteLineItemRequest: CreateCreditNoteLineItemRequest, ): string { return JSON.stringify( CreateCreditNoteLineItemRequest$outboundSchema.parse( createCreditNoteLineItemRequest, ), ); }