import * as z from "zod/v3";
import { OpenEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type AccountAddressSchemas4 = {};
/**
 * The source value of the ISO 3166-1 alpha-2 code of the country.
 */
export type AccountAddressSchemasSourceValue = string | number | boolean | AccountAddressSchemas4 | Array<any>;
/**
 * The ISO 3166-1 alpha-2 code of the country.
 */
export declare enum AccountAddressSchemasValue {
    Af = "AF",
    Al = "AL",
    Dz = "DZ",
    As = "AS",
    Ad = "AD",
    Ao = "AO",
    Ai = "AI",
    Aq = "AQ",
    Ag = "AG",
    Ar = "AR",
    Am = "AM",
    Aw = "AW",
    Au = "AU",
    At = "AT",
    Az = "AZ",
    Bs = "BS",
    Bh = "BH",
    Bd = "BD",
    Bb = "BB",
    By = "BY",
    Be = "BE",
    Bz = "BZ",
    Bj = "BJ",
    Bm = "BM",
    Bt = "BT",
    Bo = "BO",
    Bq = "BQ",
    Ba = "BA",
    Bw = "BW",
    Bv = "BV",
    Br = "BR",
    Io = "IO",
    Bn = "BN",
    Bg = "BG",
    Bf = "BF",
    Bi = "BI",
    Kh = "KH",
    Cm = "CM",
    Ca = "CA",
    Cv = "CV",
    Ky = "KY",
    Cf = "CF",
    Td = "TD",
    Cl = "CL",
    Cn = "CN",
    Cx = "CX",
    Cc = "CC",
    Co = "CO",
    Km = "KM",
    Cg = "CG",
    Cd = "CD",
    Ck = "CK",
    Cr = "CR",
    Hr = "HR",
    Cu = "CU",
    Cw = "CW",
    Cy = "CY",
    Cz = "CZ",
    Ci = "CI",
    Dk = "DK",
    Dj = "DJ",
    Dm = "DM",
    Do = "DO",
    Ec = "EC",
    Eg = "EG",
    Sv = "SV",
    Gq = "GQ",
    Er = "ER",
    Ee = "EE",
    Et = "ET",
    Fk = "FK",
    Fo = "FO",
    Fj = "FJ",
    Fi = "FI",
    Fr = "FR",
    Gf = "GF",
    Pf = "PF",
    Tf = "TF",
    Ga = "GA",
    Gm = "GM",
    Ge = "GE",
    De = "DE",
    Gh = "GH",
    Gi = "GI",
    Gr = "GR",
    Gl = "GL",
    Gd = "GD",
    Gp = "GP",
    Gu = "GU",
    Gt = "GT",
    Gg = "GG",
    Gn = "GN",
    Gw = "GW",
    Gy = "GY",
    Ht = "HT",
    Hm = "HM",
    Va = "VA",
    Hn = "HN",
    Hk = "HK",
    Hu = "HU",
    Is = "IS",
    In = "IN",
    Id = "ID",
    Ir = "IR",
    Iq = "IQ",
    Ie = "IE",
    Im = "IM",
    Il = "IL",
    It = "IT",
    Jm = "JM",
    Jp = "JP",
    Je = "JE",
    Jo = "JO",
    Kz = "KZ",
    Ke = "KE",
    Ki = "KI",
    Kp = "KP",
    Kr = "KR",
    Kw = "KW",
    Kg = "KG",
    La = "LA",
    Lv = "LV",
    Lb = "LB",
    Ls = "LS",
    Lr = "LR",
    Ly = "LY",
    Li = "LI",
    Lt = "LT",
    Lu = "LU",
    Mo = "MO",
    Mk = "MK",
    Mg = "MG",
    Mw = "MW",
    My = "MY",
    Mv = "MV",
    Ml = "ML",
    Mt = "MT",
    Mh = "MH",
    Mq = "MQ",
    Mr = "MR",
    Mu = "MU",
    Yt = "YT",
    Mx = "MX",
    Fm = "FM",
    Md = "MD",
    Mc = "MC",
    Mn = "MN",
    Me = "ME",
    Ms = "MS",
    Ma = "MA",
    Mz = "MZ",
    Mm = "MM",
    Na = "NA",
    Nr = "NR",
    Np = "NP",
    Nl = "NL",
    Nc = "NC",
    Nz = "NZ",
    Ni = "NI",
    Ne = "NE",
    Ng = "NG",
    Nu = "NU",
    Nf = "NF",
    Mp = "MP",
    No = "NO",
    Om = "OM",
    Pk = "PK",
    Pw = "PW",
    Ps = "PS",
    Pa = "PA",
    Pg = "PG",
    Py = "PY",
    Pe = "PE",
    Ph = "PH",
    Pn = "PN",
    Pl = "PL",
    Pt = "PT",
    Pr = "PR",
    Qa = "QA",
    Ro = "RO",
    Ru = "RU",
    Rw = "RW",
    Re = "RE",
    Bl = "BL",
    Sh = "SH",
    Kn = "KN",
    Lc = "LC",
    Mf = "MF",
    Pm = "PM",
    Vc = "VC",
    Ws = "WS",
    Sm = "SM",
    St = "ST",
    Sa = "SA",
    Sn = "SN",
    Rs = "RS",
    Sc = "SC",
    Sl = "SL",
    Sg = "SG",
    Sx = "SX",
    Sk = "SK",
    Si = "SI",
    Sb = "SB",
    So = "SO",
    Za = "ZA",
    Gs = "GS",
    Ss = "SS",
    Es = "ES",
    Lk = "LK",
    Sd = "SD",
    Sr = "SR",
    Sj = "SJ",
    Sz = "SZ",
    Se = "SE",
    Ch = "CH",
    Sy = "SY",
    Tw = "TW",
    Tj = "TJ",
    Tz = "TZ",
    Th = "TH",
    Tl = "TL",
    Tg = "TG",
    Tk = "TK",
    To = "TO",
    Tt = "TT",
    Tn = "TN",
    Tr = "TR",
    Tm = "TM",
    Tc = "TC",
    Tv = "TV",
    Ug = "UG",
    Ua = "UA",
    Ae = "AE",
    Gb = "GB",
    Us = "US",
    Um = "UM",
    Uy = "UY",
    Uz = "UZ",
    Vu = "VU",
    Ve = "VE",
    Vn = "VN",
    Vg = "VG",
    Vi = "VI",
    Wf = "WF",
    Eh = "EH",
    Ye = "YE",
    Zm = "ZM",
    Zw = "ZW",
    UnmappedValue = "unmapped_value"
}
/**
 * The ISO 3166-1 alpha-2 code of the country.
 */
export type AccountAddressSchemasValueOpen = OpenEnum<typeof AccountAddressSchemasValue>;
/**
 * The country code
 */
export type Country = {
    /**
     * The source value of the ISO 3166-1 alpha-2 code of the country.
     */
    sourceValue?: string | number | boolean | AccountAddressSchemas4 | Array<any> | null | undefined;
    /**
     * The ISO 3166-1 alpha-2 code of the country.
     */
    value?: AccountAddressSchemasValueOpen | null | undefined;
};
export type AccountAddress4 = {};
/**
 * The source value of the location type.
 */
export type AccountAddressSourceValue = string | number | boolean | AccountAddress4 | Array<any>;
/**
 * The type of the location.
 */
export declare enum AccountAddressValue {
    Home = "home",
    Work = "work",
    UnmappedValue = "unmapped_value"
}
/**
 * The type of the location.
 */
export type AccountAddressValueOpen = OpenEnum<typeof AccountAddressValue>;
/**
 * The location type
 */
export type LocationType = {
    /**
     * The source value of the location type.
     */
    sourceValue?: string | number | boolean | AccountAddress4 | Array<any> | null | undefined;
    /**
     * The type of the location.
     */
    value?: AccountAddressValueOpen | null | undefined;
};
export type AccountAddress = {
    city?: string | null | undefined;
    /**
     * The country code
     */
    country?: Country | null | undefined;
    /**
     * The location type
     */
    locationType?: LocationType | null | undefined;
    state?: string | null | undefined;
    street1?: string | null | undefined;
    street2?: string | null | undefined;
    zipCode?: string | null | undefined;
};
/** @internal */
export declare const AccountAddressSchemas4$inboundSchema: z.ZodType<AccountAddressSchemas4, z.ZodTypeDef, unknown>;
export declare function accountAddressSchemas4FromJSON(jsonString: string): SafeParseResult<AccountAddressSchemas4, SDKValidationError>;
/** @internal */
export declare const AccountAddressSchemasSourceValue$inboundSchema: z.ZodType<AccountAddressSchemasSourceValue, z.ZodTypeDef, unknown>;
export declare function accountAddressSchemasSourceValueFromJSON(jsonString: string): SafeParseResult<AccountAddressSchemasSourceValue, SDKValidationError>;
/** @internal */
export declare const AccountAddressSchemasValue$inboundSchema: z.ZodType<AccountAddressSchemasValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const Country$inboundSchema: z.ZodType<Country, z.ZodTypeDef, unknown>;
export declare function countryFromJSON(jsonString: string): SafeParseResult<Country, SDKValidationError>;
/** @internal */
export declare const AccountAddress4$inboundSchema: z.ZodType<AccountAddress4, z.ZodTypeDef, unknown>;
export declare function accountAddress4FromJSON(jsonString: string): SafeParseResult<AccountAddress4, SDKValidationError>;
/** @internal */
export declare const AccountAddressSourceValue$inboundSchema: z.ZodType<AccountAddressSourceValue, z.ZodTypeDef, unknown>;
export declare function accountAddressSourceValueFromJSON(jsonString: string): SafeParseResult<AccountAddressSourceValue, SDKValidationError>;
/** @internal */
export declare const AccountAddressValue$inboundSchema: z.ZodType<AccountAddressValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const LocationType$inboundSchema: z.ZodType<LocationType, z.ZodTypeDef, unknown>;
export declare function locationTypeFromJSON(jsonString: string): SafeParseResult<LocationType, SDKValidationError>;
/** @internal */
export declare const AccountAddress$inboundSchema: z.ZodType<AccountAddress, z.ZodTypeDef, unknown>;
export declare function accountAddressFromJSON(jsonString: string): SafeParseResult<AccountAddress, SDKValidationError>;
//# sourceMappingURL=accountaddress.d.ts.map