/** * Constantes et données de référence sur les pays OHADA * @module @hypnozbizo/syscohada-core/constants/countries */ import type { OHADACountry, UEMOACountry, CEMACCountry, CFAZoneCountry, EconomicZone, MonetaryZone, OHADACurrency } from '../types'; /** * Liste des pays UEMOA */ export declare const UEMOA_COUNTRIES: readonly UEMOACountry[]; /** * Liste des pays CEMAC */ export declare const CEMAC_COUNTRIES: readonly CEMACCountry[]; /** * Liste des 14 pays des zones Franc CFA (UEMOA + CEMAC). * * Ensemble monétaire, et non comptable : le SYSCOHADA couvre les 17 États * parties (AUDCIF art. 5), Comores, Guinée et RD Congo comprises. */ export declare const CFA_ZONE_COUNTRIES: readonly CFAZoneCountry[]; /** * @deprecated Nom trompeur — voir `SyscohadaCountry`. Utiliser * `CFA_ZONE_COUNTRIES` (périmètre monétaire) ou `OHADA_COUNTRIES` * (périmètre comptable SYSCOHADA). */ export declare const SYSCOHADA_COUNTRIES: readonly CFAZoneCountry[]; /** * Liste complète des pays OHADA (17 États parties), qui est aussi le champ * d'application du SYSCOHADA (AUDCIF art. 5). */ export declare const OHADA_COUNTRIES: readonly OHADACountry[]; /** * Informations de base sur un pays OHADA. * * Les champs `currency` et `zone` sont typés — un littéral hors référentiel * est refusé à la compilation plutôt que d'être propagé aux packages qui * indexent ces valeurs. */ export interface OHADACountryInfo { /** @deprecated Doublon de `isoCode`, toujours égal à lui. Utiliser `isoCode`. */ code: OHADACountry; name: string; officialName: string; /** Code ISO 4217 de la monnaie ayant cours légal. */ currency: OHADACurrency; /** Zone économique de rattachement. */ zone: EconomicZone; /** * Zone monétaire CFA, ou `null` hors zone Franc (Comores, Guinée, RD Congo) * — l'absence est une donnée, pas un trou à combler. */ monetaryZone: MonetaryZone | null; /** Code ISO 3166-1 alpha-2. */ isoCode: OHADACountry; } /** * Informations de base sur chaque pays OHADA */ export declare const COUNTRY_INFO: Record; /** * Vérifie si un code pays est valide dans la zone OHADA */ export declare function isOHADACountry(code: string): code is OHADACountry; /** * Vérifie si un code pays fait partie de l'UEMOA */ export declare function isUEMOACountry(code: string): code is UEMOACountry; /** * Vérifie si un code pays fait partie de la CEMAC */ export declare function isCEMACCountry(code: string): code is CEMACCountry; /** * Vérifie si un code pays appartient à une zone Franc CFA (UEMOA ou CEMAC). * * Ne dit rien du champ d'application du SYSCOHADA, qui couvre les 17 États * parties : un `false` ici ne justifie pas d'exclure un pays d'un traitement * comptable. */ export declare function isCFAZoneCountry(code: string): code is CFAZoneCountry; /** * Devise ayant cours légal dans un pays OHADA. */ export declare function getCountryCurrency(country: OHADACountry): OHADACurrency; /** * Zone monétaire CFA d'un pays, ou `null` hors zone Franc. */ export declare function getMonetaryZone(country: OHADACountry): MonetaryZone | null; /** * Zone économique de rattachement d'un pays OHADA. */ export declare function getEconomicZone(country: OHADACountry): EconomicZone; //# sourceMappingURL=countries.d.ts.map