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";
import { RawResponse, RawResponse$Outbound } from "./rawresponse.js";
export type AccountingCompanyResult4 = {};
export type AccountingCompanyResultSourceValue = string | number | boolean | AccountingCompanyResult4 | Array<any>;
/**
 * Default currency for the company
 */
export declare enum AccountingCompanyResultValue {
    Aed = "AED",
    Afn = "AFN",
    All = "ALL",
    Amd = "AMD",
    Ang = "ANG",
    Aoa = "AOA",
    Ars = "ARS",
    Aud = "AUD",
    Awg = "AWG",
    Azn = "AZN",
    Bam = "BAM",
    Bbd = "BBD",
    Bdt = "BDT",
    Bgn = "BGN",
    Bhd = "BHD",
    Bif = "BIF",
    Bmd = "BMD",
    Bnd = "BND",
    Bob = "BOB",
    Brl = "BRL",
    Bsd = "BSD",
    Btn = "BTN",
    Bwp = "BWP",
    Byn = "BYN",
    Bzd = "BZD",
    Cad = "CAD",
    Cdf = "CDF",
    Chf = "CHF",
    Clp = "CLP",
    Cny = "CNY",
    Cop = "COP",
    Crc = "CRC",
    Cuc = "CUC",
    Cup = "CUP",
    Cve = "CVE",
    Czk = "CZK",
    Djf = "DJF",
    Dkk = "DKK",
    Dop = "DOP",
    Dzd = "DZD",
    Egp = "EGP",
    Ern = "ERN",
    Etb = "ETB",
    Eur = "EUR",
    Fjd = "FJD",
    Fkp = "FKP",
    Gbp = "GBP",
    Gel = "GEL",
    Ghs = "GHS",
    Gip = "GIP",
    Gmd = "GMD",
    Gnf = "GNF",
    Gtq = "GTQ",
    Gyd = "GYD",
    Hkd = "HKD",
    Hnl = "HNL",
    Hrk = "HRK",
    Htg = "HTG",
    Huf = "HUF",
    Idr = "IDR",
    Ils = "ILS",
    Inr = "INR",
    Iqd = "IQD",
    Irr = "IRR",
    Isk = "ISK",
    Jmd = "JMD",
    Jod = "JOD",
    Jpy = "JPY",
    Kes = "KES",
    Kgs = "KGS",
    Khr = "KHR",
    Kmf = "KMF",
    Kpw = "KPW",
    Krw = "KRW",
    Kwd = "KWD",
    Kyd = "KYD",
    Kzt = "KZT",
    Lak = "LAK",
    Lbp = "LBP",
    Lkr = "LKR",
    Lrd = "LRD",
    Lsl = "LSL",
    Lyd = "LYD",
    Mad = "MAD",
    Mdl = "MDL",
    Mga = "MGA",
    Mkd = "MKD",
    Mmk = "MMK",
    Mnt = "MNT",
    Mop = "MOP",
    Mru = "MRU",
    Mur = "MUR",
    Mvr = "MVR",
    Mwk = "MWK",
    Mxn = "MXN",
    Myr = "MYR",
    Mzn = "MZN",
    Nad = "NAD",
    Ngn = "NGN",
    Nio = "NIO",
    Nok = "NOK",
    Npr = "NPR",
    Nzd = "NZD",
    Omr = "OMR",
    Pab = "PAB",
    Pen = "PEN",
    Pgk = "PGK",
    Php = "PHP",
    Pkr = "PKR",
    Pln = "PLN",
    Pyg = "PYG",
    Qar = "QAR",
    Ron = "RON",
    Rsd = "RSD",
    Rub = "RUB",
    Rwf = "RWF",
    Sar = "SAR",
    Sbd = "SBD",
    Scr = "SCR",
    Sdg = "SDG",
    Sek = "SEK",
    Sgd = "SGD",
    Shp = "SHP",
    Sll = "SLL",
    Sos = "SOS",
    Srd = "SRD",
    Ssp = "SSP",
    Stn = "STN",
    Syp = "SYP",
    Szl = "SZL",
    Thb = "THB",
    Tjs = "TJS",
    Tmt = "TMT",
    Tnd = "TND",
    Top = "TOP",
    Try = "TRY",
    Ttd = "TTD",
    Twd = "TWD",
    Tzs = "TZS",
    Uah = "UAH",
    Ugx = "UGX",
    Usd = "USD",
    Uyu = "UYU",
    Uzs = "UZS",
    Ves = "VES",
    Vnd = "VND",
    Vuv = "VUV",
    Wst = "WST",
    Xaf = "XAF",
    Xcd = "XCD",
    Xdr = "XDR",
    Xof = "XOF",
    Xpf = "XPF",
    Yer = "YER",
    Zar = "ZAR",
    Zmw = "ZMW",
    Zwl = "ZWL",
    UnmappedValue = "unmapped_value"
}
/**
 * Default currency for the company
 */
export type AccountingCompanyResultValueOpen = OpenEnum<typeof AccountingCompanyResultValue>;
/**
 * Default currency for the company
 */
export type AccountingCompanyResultBaseCurrency = {
    sourceValue?: string | number | boolean | AccountingCompanyResult4 | Array<any> | null | undefined;
    /**
     * Default currency for the company
     */
    value?: AccountingCompanyResultValueOpen | null | undefined;
};
export type AccountingCompanyResultData = {
    /**
     * Default currency for the company
     */
    baseCurrency?: AccountingCompanyResultBaseCurrency | null | undefined;
    /**
     * Fiscal year start day (1-31)
     */
    fiscalYearStartDay?: number | null | undefined;
    /**
     * Fiscal year start month (1-12)
     */
    fiscalYearStartMonth?: number | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * Name of the company
     */
    name?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
};
export type AccountingCompanyResult = {
    data?: AccountingCompanyResultData | null | undefined;
    raw?: Array<RawResponse> | null | undefined;
};
/** @internal */
export declare const AccountingCompanyResult4$inboundSchema: z.ZodType<AccountingCompanyResult4, z.ZodTypeDef, unknown>;
/** @internal */
export type AccountingCompanyResult4$Outbound = {};
/** @internal */
export declare const AccountingCompanyResult4$outboundSchema: z.ZodType<AccountingCompanyResult4$Outbound, z.ZodTypeDef, AccountingCompanyResult4>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResult4$ {
    /** @deprecated use `AccountingCompanyResult4$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResult4, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResult4$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResult4$Outbound, z.ZodTypeDef, AccountingCompanyResult4>;
    /** @deprecated use `AccountingCompanyResult4$Outbound` instead. */
    type Outbound = AccountingCompanyResult4$Outbound;
}
export declare function accountingCompanyResult4ToJSON(accountingCompanyResult4: AccountingCompanyResult4): string;
export declare function accountingCompanyResult4FromJSON(jsonString: string): SafeParseResult<AccountingCompanyResult4, SDKValidationError>;
/** @internal */
export declare const AccountingCompanyResultSourceValue$inboundSchema: z.ZodType<AccountingCompanyResultSourceValue, z.ZodTypeDef, unknown>;
/** @internal */
export type AccountingCompanyResultSourceValue$Outbound = string | number | boolean | AccountingCompanyResult4$Outbound | Array<any>;
/** @internal */
export declare const AccountingCompanyResultSourceValue$outboundSchema: z.ZodType<AccountingCompanyResultSourceValue$Outbound, z.ZodTypeDef, AccountingCompanyResultSourceValue>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResultSourceValue$ {
    /** @deprecated use `AccountingCompanyResultSourceValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResultSourceValue, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResultSourceValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResultSourceValue$Outbound, z.ZodTypeDef, AccountingCompanyResultSourceValue>;
    /** @deprecated use `AccountingCompanyResultSourceValue$Outbound` instead. */
    type Outbound = AccountingCompanyResultSourceValue$Outbound;
}
export declare function accountingCompanyResultSourceValueToJSON(accountingCompanyResultSourceValue: AccountingCompanyResultSourceValue): string;
export declare function accountingCompanyResultSourceValueFromJSON(jsonString: string): SafeParseResult<AccountingCompanyResultSourceValue, SDKValidationError>;
/** @internal */
export declare const AccountingCompanyResultValue$inboundSchema: z.ZodType<AccountingCompanyResultValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const AccountingCompanyResultValue$outboundSchema: z.ZodType<AccountingCompanyResultValueOpen, z.ZodTypeDef, AccountingCompanyResultValueOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResultValue$ {
    /** @deprecated use `AccountingCompanyResultValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResultValueOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResultValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResultValueOpen, z.ZodTypeDef, AccountingCompanyResultValueOpen>;
}
/** @internal */
export declare const AccountingCompanyResultBaseCurrency$inboundSchema: z.ZodType<AccountingCompanyResultBaseCurrency, z.ZodTypeDef, unknown>;
/** @internal */
export type AccountingCompanyResultBaseCurrency$Outbound = {
    source_value?: string | number | boolean | AccountingCompanyResult4$Outbound | Array<any> | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const AccountingCompanyResultBaseCurrency$outboundSchema: z.ZodType<AccountingCompanyResultBaseCurrency$Outbound, z.ZodTypeDef, AccountingCompanyResultBaseCurrency>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResultBaseCurrency$ {
    /** @deprecated use `AccountingCompanyResultBaseCurrency$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResultBaseCurrency, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResultBaseCurrency$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResultBaseCurrency$Outbound, z.ZodTypeDef, AccountingCompanyResultBaseCurrency>;
    /** @deprecated use `AccountingCompanyResultBaseCurrency$Outbound` instead. */
    type Outbound = AccountingCompanyResultBaseCurrency$Outbound;
}
export declare function accountingCompanyResultBaseCurrencyToJSON(accountingCompanyResultBaseCurrency: AccountingCompanyResultBaseCurrency): string;
export declare function accountingCompanyResultBaseCurrencyFromJSON(jsonString: string): SafeParseResult<AccountingCompanyResultBaseCurrency, SDKValidationError>;
/** @internal */
export declare const AccountingCompanyResultData$inboundSchema: z.ZodType<AccountingCompanyResultData, z.ZodTypeDef, unknown>;
/** @internal */
export type AccountingCompanyResultData$Outbound = {
    base_currency?: AccountingCompanyResultBaseCurrency$Outbound | null | undefined;
    fiscal_year_start_day?: number | null | undefined;
    fiscal_year_start_month?: number | null | undefined;
    id?: string | null | undefined;
    name?: string | null | undefined;
    remote_id?: string | null | undefined;
};
/** @internal */
export declare const AccountingCompanyResultData$outboundSchema: z.ZodType<AccountingCompanyResultData$Outbound, z.ZodTypeDef, AccountingCompanyResultData>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResultData$ {
    /** @deprecated use `AccountingCompanyResultData$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResultData, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResultData$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResultData$Outbound, z.ZodTypeDef, AccountingCompanyResultData>;
    /** @deprecated use `AccountingCompanyResultData$Outbound` instead. */
    type Outbound = AccountingCompanyResultData$Outbound;
}
export declare function accountingCompanyResultDataToJSON(accountingCompanyResultData: AccountingCompanyResultData): string;
export declare function accountingCompanyResultDataFromJSON(jsonString: string): SafeParseResult<AccountingCompanyResultData, SDKValidationError>;
/** @internal */
export declare const AccountingCompanyResult$inboundSchema: z.ZodType<AccountingCompanyResult, z.ZodTypeDef, unknown>;
/** @internal */
export type AccountingCompanyResult$Outbound = {
    data?: AccountingCompanyResultData$Outbound | null | undefined;
    raw?: Array<RawResponse$Outbound> | null | undefined;
};
/** @internal */
export declare const AccountingCompanyResult$outboundSchema: z.ZodType<AccountingCompanyResult$Outbound, z.ZodTypeDef, AccountingCompanyResult>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AccountingCompanyResult$ {
    /** @deprecated use `AccountingCompanyResult$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AccountingCompanyResult, z.ZodTypeDef, unknown>;
    /** @deprecated use `AccountingCompanyResult$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AccountingCompanyResult$Outbound, z.ZodTypeDef, AccountingCompanyResult>;
    /** @deprecated use `AccountingCompanyResult$Outbound` instead. */
    type Outbound = AccountingCompanyResult$Outbound;
}
export declare function accountingCompanyResultToJSON(accountingCompanyResult: AccountingCompanyResult): string;
export declare function accountingCompanyResultFromJSON(jsonString: string): SafeParseResult<AccountingCompanyResult, SDKValidationError>;
//# sourceMappingURL=accountingcompanyresult.d.ts.map