// departamento → ciudad → barrios[] export type GeoData = Record> let geoData: GeoData | null = null let geoPromise: Promise | null = null export async function getGeoData(): Promise { if (geoData) return geoData if (!geoPromise) { geoPromise = fetch('/data/geo_paraguay_full.json') .then((r) => r.json()) .then((data: GeoData) => { geoData = data; return data }) .catch((err) => { geoPromise = null; throw err }) } return geoPromise }