/* * 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 * as openEnums from "../../types/enums.js"; import { OpenEnum } from "../../types/enums.js"; export const SecCode = { WebDebit: "WebDebit", TelDebit: "TelDebit", PpdDebit: "PpdDebit", } as const; export type SecCode = OpenEnum; export type RepayBankOptions = { /** * The Nacha Standard Entry Class code describing how the account holder authorized an ACH debit. When omitted, `TelDebit` is used for a `moto` payment source and `WebDebit` otherwise. Ignored for business accounts, which Repay requires to use `CcdDebit`. */ secCode?: SecCode | null | undefined; }; /** @internal */ export const SecCode$outboundSchema: z.ZodType = openEnums.outboundSchema(SecCode); /** @internal */ export type RepayBankOptions$Outbound = { sec_code?: string | null | undefined; }; /** @internal */ export const RepayBankOptions$outboundSchema: z.ZodType< RepayBankOptions$Outbound, z.ZodTypeDef, RepayBankOptions > = z.object({ secCode: z.nullable(SecCode$outboundSchema).optional(), }).transform((v) => { return remap$(v, { secCode: "sec_code", }); }); export function repayBankOptionsToJSON( repayBankOptions: RepayBankOptions, ): string { return JSON.stringify( RepayBankOptions$outboundSchema.parse(repayBankOptions), ); }