export interface Images { flag: string; coat_of_arms: string; has_flag: boolean; has_coat_of_arms: boolean; } /** * The data files store a Wikimedia Commons path, or null when no image is * known. Missing images become a placeholder URL so the value is always * usable, with `has_flag` / `has_coat_of_arms` telling the two cases apart. */ export declare const expandImages: (flag: string | null, coat_of_arms: string | null) => Images; /** Loose code comparison, so both `"09"` and `9` match a code of `"09"`. */ export declare const matchesCode: (value: string, filter: string | number | undefined) => boolean; /** Lowercases and strips diacritics, so "Málaga" and "malaga" compare equal. */ export declare const normalizeName: (value: string) => string; /** * INE writes the qualifier last ("Roda, La", "Atzúbia, l'", "Madrid, Comunidad * de"), which is not how anyone types it, so the natural order is searchable * too. Bilingual names ("Elburgo/Burgelu") already match on either half. */ export declare const nameVariants: (name: string) => string[]; /** * The normalized index costs a pass over every name, so it is built on the * first call that actually filters by name. */ export declare const createNameMatcher: (names: string[]) => (index: number, filter: string | undefined) => boolean;