/** One row in the country list. Data, never copy — the guard lints only `.tsx`. */ export interface PhoneCountry { /** ISO 3166-1 alpha-2 (`MD`, `RO`, ...). */ iso: string; /** International dial code with leading `+` (`+373`, `+40`). */ code: string; /** * English display name, used only as a fallback when `Intl.DisplayNames` is * unavailable or returns nothing for this ISO code — the normal path renders * a per-locale name from `Intl.DisplayNames([tag], { type: 'region' }).of(iso)`. */ name: string; /** Local-segment format mask using `X` for digits and space separators (`XXX XX XXX`). */ mask: string; /** Inclusive minimum digit count of the local segment. */ minLen: number; /** Inclusive maximum digit count of the local segment. Equals the number of `X` in `mask`. */ maxLen: number; /** * True for the one country that owns its dial code (`US` for `+1`, `RU` for `+7`, `GB` for `+44`). * A pasted `+1...` number has no way to tell the 25 countries that share the code apart, so it * is read as the main one. */ main: boolean; } /** * Every country that has a phone numbering plan (245 regions), keyed by ISO code. The curated rows * come first, then the rest by ISO code; the component sorts for display by the locale's collator. * * The rest is generated by `yarn countries.sync` from libphonenumber's metadata, not typed: a * hand-written table of 245 countries is not something a government form can trust. Only the * facts are used. `libphonenumber-js` itself (~140 KB) is not a runtime dependency. * The mask follows the grouping of an example mobile number, and the length window is the * mobile-number length, which is also how the curated rows were set. The `mask` uses `X` for * required digits and literal spaces as visual separators; the formatter respects each * country's local-segment length window (`minLen` / `maxLen`). */ export declare const COUNTRIES: Record; /** Iteration order, Moldova first, then the other curated countries — the order used before any locale sort. */ export declare const DEFAULT_COUNTRY_ORDER: string[];