import {z} from 'zod'
export type Address = {address_type: 'MAILING' | 'PHYSICAL' | 'REGISTERED', street: string, street2?: string | undefined, city: string, state: string, zip_code: string, country: string, is_primary: boolean};
export type BeneficialOwnerPostSerializer = {dob?: unknown | undefined, first_name: string, middle_name?: string | undefined, last_name: string, addresses: Array
};
export type BusinessesPostSerializer = {brand_business_id?: string | undefined, ein?: string | undefined, legal_business_name: string, dba_business_name?: string | undefined, business_type?: ('cooperative' | 'limited_liability_company' | 'sole_proprietorship' | 'partnership' | 'limited_partnership' | 'corporation' | 'nonprofit_organization') | undefined, date_established?: unknown | undefined, phone?: string | undefined, email?: string | undefined, website?: string | undefined, industry_type?: string | undefined, number_of_employees?: string | undefined, addresses?: Array | undefined, beneficial_owners?: Array | undefined};
export type CreateApiBusinessesArgs = {body: BusinessesPostSerializer};
export type CreateApiBusinessesOptions = {baseUrl?: string | undefined, identity?: string | undefined, authorization?: string | undefined, fetch?: typeof fetch | undefined};
export const createApiBusinessesResponse = z.object({business_id: z.string().min(1), brand_business_id: z.string().min(1), ein: z.string().min(1), phone: z.string().min(1), email: z.string().min(1), website: z.string().min(1), legal_business_name: z.string().min(1), dba_business_name: z.string().min(1), business_type: z.string().min(1), industry_type: z.string().min(1), number_of_employees: z.string().min(1), addresses: z.array(z.object({date_updated: z.string().min(1), date_created: z.string().min(1), address_id: z.string().min(1), address_type: z.string().min(1), street: z.string().min(1).max(40), street2: z.string().max(40), city: z.string().min(2).max(40), state: z.string().min(1), zip_code: z.string().min(1), country: z.string().min(1), is_primary: z.boolean()})), beneficial_owners: z.array(z.object({first_name: z.string().min(1), last_name: z.string().min(1), dob: z.string().min(1), addresses: z.array(z.object({address_type: z.string().min(1), street: z.string().min(1).max(40), street2: z.string().max(40), city: z.string().min(1).max(40), state: z.string().min(1), zip_code: z.string().min(1), country: z.string().min(1), is_primary: z.boolean()})).optional()}))});
export const validateResponse = async