import { LOCALES_WITH_BUNDLES } from './supported-locales';
/** Reading direction. Mirrors the shape of `hooks/use-locale.ts#LocaleDir`. */
export type LocaleDir = 'ltr' | 'rtl';
/** IETF locale tag from the kit's bundled set. */
export type Locale = (typeof LOCALES_WITH_BUNDLES)[number];
export interface LocaleMetaEntry {
/** IETF locale tag (matches the key in `LOCALES_WITH_BUNDLES`). */
code: Locale;
/** Endonym — the locale's name in its own language ("Italiano", "العربية"). */
nativeName: string;
/** Exonym — the locale's name in English ("Italian", "Arabic"). */
englishName: string;
/**
* ISO 3166-1 alpha-2 country code for the default-region flag. Feed
* to the kit's `` component to render the actual
* flag SVG (NOT the emoji glyph — those don't paint on Windows and
* lose fidelity at hero sizes). A few language tags here aren't tied
* to a single country (en, ar, hi); we pick the AlfaDocs default
* marketing region — consumers needing a different region flag
* override at the call site.
*/
countryCode: string;
/**
* Regional-indicator flag emoji. Retained as a fallback for non-DOM
* contexts (terminal logs, plain-text exports) and the rare consumer
* surface that can't mount the kit's `Flag` component. UI surfaces
* should always reach for `countryCode` + `` instead.
*/
flag: string;
/** Reading direction. */
dir: LocaleDir;
}
/**
* Canonical metadata for every locale shipped in `LOCALES_WITH_BUNDLES`.
* Order matches the bundled-locales array so iteration is stable.
*/
export declare const LOCALE_META: Record;
/**
* Canonical (i18n-parity) order — used when consumers need the same
* sequence as `LOCALES_WITH_BUNDLES` (e.g. generating fixtures or
* snapshot keys). Pickers / menus should use `LOCALE_LIST` instead,
* which sorts alphabetically.
*/
export declare const LOCALE_LIST_CANONICAL: readonly LocaleMetaEntry[];
/**
* Picker-facing list — sorted alphabetically by English name so the
* order is deterministic and language-independent. End users searching
* by native name use the picker's input box to filter; the visible
* order doesn't depend on the active locale's collation.
*
* "System Default" (the OS-driven fallback) is rendered separately at
* the top of `LocalePicker.SearchList` — not in this list — so the
* alphabetical order here applies to the 18 explicit locale rows only.
*/
export declare const LOCALE_LIST: readonly LocaleMetaEntry[];
//# sourceMappingURL=locale-meta.d.ts.map