/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; export type ContractorAddressUpdateBody = { /** * The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. */ version: string; street1?: string | undefined; street2?: string | undefined; city?: string | undefined; state?: string | undefined; zip?: string | undefined; }; /** @internal */ export type ContractorAddressUpdateBody$Outbound = { version: string; street_1?: string | undefined; street_2?: string | undefined; city?: string | undefined; state?: string | undefined; zip?: string | undefined; }; /** @internal */ export const ContractorAddressUpdateBody$outboundSchema: z.ZodType< ContractorAddressUpdateBody$Outbound, z.ZodTypeDef, ContractorAddressUpdateBody > = z.object({ version: z.string(), street1: z.string().optional(), street2: z.string().optional(), city: z.string().optional(), state: z.string().optional(), zip: z.string().optional(), }).transform((v) => { return remap$(v, { street1: "street_1", street2: "street_2", }); }); export function contractorAddressUpdateBodyToJSON( contractorAddressUpdateBody: ContractorAddressUpdateBody, ): string { return JSON.stringify( ContractorAddressUpdateBody$outboundSchema.parse( contractorAddressUpdateBody, ), ); }