/* * 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 PartnerManagedCompanyMigrateRequest = { /** * Email of the company signatory who is authorized to accept our [Terms of Service](https://flows.gusto.com/terms) and migration decision. You can retrieve the signatory email from the `GET /v/1/companies/{company_id}/signatories` endpoint. */ email: string; /** * The IP address of the signatory who viewed and accepted the Terms of Service. */ ipAddress?: string | undefined; /** * The signatory's user ID on your platform. */ externalUserId?: string | undefined; }; /** @internal */ export type PartnerManagedCompanyMigrateRequest$Outbound = { email: string; ip_address?: string | undefined; external_user_id?: string | undefined; }; /** @internal */ export const PartnerManagedCompanyMigrateRequest$outboundSchema: z.ZodType< PartnerManagedCompanyMigrateRequest$Outbound, z.ZodTypeDef, PartnerManagedCompanyMigrateRequest > = z.object({ email: z.string(), ipAddress: z.string().optional(), externalUserId: z.string().optional(), }).transform((v) => { return remap$(v, { ipAddress: "ip_address", externalUserId: "external_user_id", }); }); export function partnerManagedCompanyMigrateRequestToJSON( partnerManagedCompanyMigrateRequest: PartnerManagedCompanyMigrateRequest, ): string { return JSON.stringify( PartnerManagedCompanyMigrateRequest$outboundSchema.parse( partnerManagedCompanyMigrateRequest, ), ); }