@br-validators/core 1.1.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -3
- package/dist/aeroportos.d.ts +46 -0
- package/dist/aeroportos.js +4316 -0
- package/dist/aeroportos.js.map +1 -0
- package/dist/bancos.js +1 -1
- package/dist/batch.js +19 -18
- package/dist/brcode.js +5 -5
- package/dist/cbo.d.ts +41 -0
- package/dist/cbo.js +10832 -0
- package/dist/cbo.js.map +1 -0
- package/dist/cep.d.ts +38 -1
- package/dist/cep.js +4 -3
- package/dist/cest.d.ts +44 -0
- package/dist/cest.js +8253 -0
- package/dist/cest.js.map +1 -0
- package/dist/cfop.d.ts +41 -0
- package/dist/cfop.js +2812 -0
- package/dist/cfop.js.map +1 -0
- package/dist/chunk-475HS4CJ.js +30 -0
- package/dist/chunk-475HS4CJ.js.map +1 -0
- package/dist/chunk-5CBVZIQC.js +30 -0
- package/dist/chunk-5CBVZIQC.js.map +1 -0
- package/dist/{chunk-LAEUXOF6.js → chunk-5EJAENH5.js} +3 -3
- package/dist/{chunk-LAEUXOF6.js.map → chunk-5EJAENH5.js.map} +1 -1
- package/dist/chunk-6EF7GQRS.js +30 -0
- package/dist/chunk-6EF7GQRS.js.map +1 -0
- package/dist/{chunk-PCP77SLS.js → chunk-6UEXR2MQ.js} +13 -13
- package/dist/{chunk-PCP77SLS.js.map → chunk-6UEXR2MQ.js.map} +1 -1
- package/dist/chunk-7JCJGLA3.js +30 -0
- package/dist/chunk-7JCJGLA3.js.map +1 -0
- package/dist/chunk-DQUMIETC.js +30 -0
- package/dist/chunk-DQUMIETC.js.map +1 -0
- package/dist/chunk-EKOSTVIA.js +30 -0
- package/dist/chunk-EKOSTVIA.js.map +1 -0
- package/dist/{chunk-TJCE4TVX.js → chunk-EN7PVDYB.js} +4 -4
- package/dist/{chunk-TJCE4TVX.js.map → chunk-EN7PVDYB.js.map} +1 -1
- package/dist/{chunk-VWVQWN2G.js → chunk-EQV33L7H.js} +3 -3
- package/dist/{chunk-VWVQWN2G.js.map → chunk-EQV33L7H.js.map} +1 -1
- package/dist/chunk-F7IEPT22.js +30 -0
- package/dist/chunk-F7IEPT22.js.map +1 -0
- package/dist/chunk-FUYDR7JI.js +44 -0
- package/dist/chunk-FUYDR7JI.js.map +1 -0
- package/dist/{chunk-5V6N4JWQ.js → chunk-GWAYWBHN.js} +5 -5
- package/dist/{chunk-5V6N4JWQ.js.map → chunk-GWAYWBHN.js.map} +1 -1
- package/dist/chunk-ILKF7HP7.js +31 -0
- package/dist/chunk-ILKF7HP7.js.map +1 -0
- package/dist/{chunk-IYOPXJLY.js → chunk-JSNXKBZA.js} +3 -3
- package/dist/{chunk-IYOPXJLY.js.map → chunk-JSNXKBZA.js.map} +1 -1
- package/dist/{chunk-P2KNN6ZR.js → chunk-KGCLQ7QX.js} +3 -3
- package/dist/{chunk-P2KNN6ZR.js.map → chunk-KGCLQ7QX.js.map} +1 -1
- package/dist/{chunk-H3MLGGFI.js → chunk-KLONQL76.js} +5 -5
- package/dist/{chunk-H3MLGGFI.js.map → chunk-KLONQL76.js.map} +1 -1
- package/dist/{chunk-63G7QO73.js → chunk-L7PF4KD6.js} +3 -3
- package/dist/{chunk-63G7QO73.js.map → chunk-L7PF4KD6.js.map} +1 -1
- package/dist/{chunk-PNPESCSP.js → chunk-MAM4U3UR.js} +3 -3
- package/dist/{chunk-PNPESCSP.js.map → chunk-MAM4U3UR.js.map} +1 -1
- package/dist/{chunk-V7UJ55KW.js → chunk-MZDCVTN6.js} +3 -3
- package/dist/{chunk-V7UJ55KW.js.map → chunk-MZDCVTN6.js.map} +1 -1
- package/dist/{chunk-I66ZRSEN.js → chunk-NT3TNF3R.js} +3 -3
- package/dist/{chunk-I66ZRSEN.js.map → chunk-NT3TNF3R.js.map} +1 -1
- package/dist/chunk-NTVB7R3A.js +30 -0
- package/dist/chunk-NTVB7R3A.js.map +1 -0
- package/dist/{chunk-N5CER3QZ.js → chunk-NXS343IJ.js} +14 -14
- package/dist/{chunk-N5CER3QZ.js.map → chunk-NXS343IJ.js.map} +1 -1
- package/dist/{chunk-EVULAGR5.js → chunk-O3T7PUBI.js} +3 -3
- package/dist/{chunk-EVULAGR5.js.map → chunk-O3T7PUBI.js.map} +1 -1
- package/dist/chunk-O4AO4YWC.js +30 -0
- package/dist/chunk-O4AO4YWC.js.map +1 -0
- package/dist/{chunk-EFEE6CMO.js → chunk-OOUEURR7.js} +3 -3
- package/dist/{chunk-EFEE6CMO.js.map → chunk-OOUEURR7.js.map} +1 -1
- package/dist/chunk-P6TOL5VY.js +147973 -0
- package/dist/chunk-P6TOL5VY.js.map +1 -0
- package/dist/{chunk-BA3FAVK4.js → chunk-Q5QBTTNC.js} +25 -25
- package/dist/{chunk-BA3FAVK4.js.map → chunk-Q5QBTTNC.js.map} +1 -1
- package/dist/{chunk-ASQ2XIN2.js → chunk-QU4HTXM5.js} +12 -12
- package/dist/{chunk-ASQ2XIN2.js.map → chunk-QU4HTXM5.js.map} +1 -1
- package/dist/{chunk-KTEQPYYN.js → chunk-RRVGW333.js} +6 -6
- package/dist/{chunk-KTEQPYYN.js.map → chunk-RRVGW333.js.map} +1 -1
- package/dist/chunk-RWO34ORS.js +33 -0
- package/dist/chunk-RWO34ORS.js.map +1 -0
- package/dist/chunk-SC6YCHT7.js +30 -0
- package/dist/chunk-SC6YCHT7.js.map +1 -0
- package/dist/{chunk-MESOO5GZ.js → chunk-SDEJD2J7.js} +3 -3
- package/dist/{chunk-MESOO5GZ.js.map → chunk-SDEJD2J7.js.map} +1 -1
- package/dist/chunk-UGW266DF.js +30 -0
- package/dist/chunk-UGW266DF.js.map +1 -0
- package/dist/{chunk-YNVMVDFN.js → chunk-VKG7UEN5.js} +3 -3
- package/dist/{chunk-YNVMVDFN.js.map → chunk-VKG7UEN5.js.map} +1 -1
- package/dist/{chunk-LRUZVPLR.js → chunk-VWS4AWCI.js} +3 -3
- package/dist/{chunk-LRUZVPLR.js.map → chunk-VWS4AWCI.js.map} +1 -1
- package/dist/{chunk-XADVBV73.js → chunk-WH6W3NUA.js} +6 -6
- package/dist/{chunk-XADVBV73.js.map → chunk-WH6W3NUA.js.map} +1 -1
- package/dist/{chunk-UCNPXHIJ.js → chunk-WSUAPD5M.js} +6 -6
- package/dist/{chunk-UCNPXHIJ.js.map → chunk-WSUAPD5M.js.map} +1 -1
- package/dist/{chunk-JCWQDTZB.js → chunk-X7XQRG4X.js} +3 -3
- package/dist/{chunk-JCWQDTZB.js.map → chunk-X7XQRG4X.js.map} +1 -1
- package/dist/{chunk-CSVGWTCG.js → chunk-XHDRWM46.js} +3 -3
- package/dist/{chunk-CSVGWTCG.js.map → chunk-XHDRWM46.js.map} +1 -1
- package/dist/chunk-XQ6MMGV2.js +30 -0
- package/dist/chunk-XQ6MMGV2.js.map +1 -0
- package/dist/{chunk-FOP5LO7W.js → chunk-YNUYQKUW.js} +15 -15
- package/dist/{chunk-FOP5LO7W.js.map → chunk-YNUYQKUW.js.map} +1 -1
- package/dist/chunk-YOL43ZNQ.js +35 -0
- package/dist/chunk-YOL43ZNQ.js.map +1 -0
- package/dist/chunk-ZWAYSR5K.js +30 -0
- package/dist/chunk-ZWAYSR5K.js.map +1 -0
- package/dist/{chunk-MKYCKCZ6.js → chunk-ZYWBWXTJ.js} +13 -13
- package/dist/{chunk-MKYCKCZ6.js.map → chunk-ZYWBWXTJ.js.map} +1 -1
- package/dist/cnaes.d.ts +41 -0
- package/dist/cnaes.js +5384 -0
- package/dist/cnaes.js.map +1 -0
- package/dist/cnh.js +4 -4
- package/dist/compare.js +21 -20
- package/dist/cpf.js +4 -4
- package/dist/data-catalog.js +38 -4
- package/dist/data-catalog.js.map +1 -1
- package/dist/detect.js +18 -17
- package/dist/diff.js +21 -20
- package/dist/feriados.d.ts +73 -0
- package/dist/feriados.js +243 -0
- package/dist/feriados.js.map +1 -0
- package/dist/generate.js +29 -28
- package/dist/ibge.js +1 -1
- package/dist/incoterms.d.ts +36 -0
- package/dist/incoterms.js +87 -0
- package/dist/incoterms.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +49 -48
- package/dist/index.js.map +1 -1
- package/dist/inscricao-estadual-produtor-rural.js +1 -1
- package/dist/mask.js +28 -27
- package/dist/moedas.d.ts +42 -0
- package/dist/moedas.js +977 -0
- package/dist/moedas.js.map +1 -0
- package/dist/natureza-juridica.d.ts +37 -0
- package/dist/natureza-juridica.js +398 -0
- package/dist/natureza-juridica.js.map +1 -0
- package/dist/nbs.d.ts +40 -0
- package/dist/nbs.js +3728 -0
- package/dist/nbs.js.map +1 -0
- package/dist/ncm.d.ts +41 -0
- package/dist/ncm.js +42116 -0
- package/dist/ncm.js.map +1 -0
- package/dist/paises-bacen.d.ts +35 -0
- package/dist/paises-bacen.js +1044 -0
- package/dist/paises-bacen.js.map +1 -0
- package/dist/pix.js +5 -5
- package/dist/placa.js +1 -1
- package/dist/pncp-reference.d.ts +56 -0
- package/dist/pncp-reference.js +1560 -0
- package/dist/pncp-reference.js.map +1 -0
- package/dist/portos.d.ts +48 -0
- package/dist/portos.js +12094 -0
- package/dist/portos.js.map +1 -0
- package/dist/renavam.js +4 -4
- package/dist/sanitize.js +16 -15
- package/dist/telefone.js +3 -3
- package/dist/titulo-eleitor.js +4 -4
- package/dist/transparencia-snapshots.d.ts +61 -0
- package/dist/transparencia-snapshots.js +119 -0
- package/dist/transparencia-snapshots.js.map +1 -0
- package/dist/tse-municipios.d.ts +39 -0
- package/dist/tse-municipios.js +33469 -0
- package/dist/tse-municipios.js.map +1 -0
- package/package.json +81 -1
- package/dist/chunk-TE6NSONR.js +0 -43
- package/dist/chunk-TE6NSONR.js.map +0 -1
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ Every Brazilian SaaS eventually reinvents CPF validation — usually wrong.
|
|
|
29
29
|
- ✅ **Zero runtime dependencies** — pure TypeScript logic, no HTTP calls
|
|
30
30
|
- ✅ **Never throws** — every function returns `{ ok: true, value } | { ok: false, message, code }`
|
|
31
31
|
- ✅ **Tree-shakeable** — subpath imports per document type
|
|
32
|
-
- ✅ **Reference data** — IBGE, Bacen banks, DDD lookup with weekly freshness ([DATA-FRESHNESS.md](../../docs/DATA-FRESHNESS.md))
|
|
32
|
+
- ✅ **Reference data** — IBGE, Bacen banks, DDD lookup, national holidays, CNAE, CFOP, NCM, CBO, natureza jurídica, NBS, CEST, moedas, países Bacen, Incoterms, portos, aeroportos — embedded offline with weekly freshness ([DATA-FRESHNESS.md](../../docs/DATA-FRESHNESS.md))
|
|
33
33
|
- ✅ **ESM only**, Node ≥ 18, works in browser, Bun, Deno
|
|
34
34
|
|
|
35
35
|
---
|
|
@@ -234,7 +234,7 @@ br-validators generate inscricao-estadual-produtor-rural --masked --seed 42
|
|
|
234
234
|
|---|---|---|---|
|
|
235
235
|
| CPF | `@br-validators/core/cpf` | `br-validators cpf …` | `/cpf` |
|
|
236
236
|
| CNPJ (numeric + alphanumeric) | `@br-validators/core/cnpj` | `br-validators cnpj …` | `/cnpj` |
|
|
237
|
-
| CEP | `@br-validators/core/cep` | `br-validators cep …` | `/cep` |
|
|
237
|
+
| CEP | `@br-validators/core/cep` | `br-validators cep …` | `/cep` (+ `getCepFaixaInfo` prefix lookup) |
|
|
238
238
|
| Telefone | `@br-validators/core/telefone` | `br-validators telefone …` | `/telefone` |
|
|
239
239
|
| CNH | `@br-validators/core/cnh` | `br-validators cnh …` | `/cnh` |
|
|
240
240
|
| RENAVAM | `@br-validators/core/renavam` | `br-validators renavam …` | `/renavam` |
|
|
@@ -258,7 +258,71 @@ br-validators generate inscricao-estadual-produtor-rural --masked --seed 42
|
|
|
258
258
|
| **generate()** | `@br-validators/core/generate` | `br-validators generate …` | `/generate` |
|
|
259
259
|
| **buildStaticPixBrCode()** | `@br-validators/core/brcode` | — | `/pix` (QR panel) |
|
|
260
260
|
|
|
261
|
-
|
|
261
|
+
### Reference data (offline lookup)
|
|
262
|
+
|
|
263
|
+
Embedded JSON from official `.gov.br` sources — **no runtime HTTP**. Each module exports `*_DATA_VERSION` with capture date, row counts, and source URLs. Aggregated via `@br-validators/core/data-catalog`.
|
|
264
|
+
|
|
265
|
+
| Dataset | Subpath | CLI | Playground | Key APIs | Official source |
|
|
266
|
+
|---------|---------|-----|------------|----------|-----------------|
|
|
267
|
+
| IBGE states + municipalities | `@br-validators/core/ibge` | — | `/data/ibge` | `getEstados`, `getMunicipios`, `getMunicipioPorCodigo` | [IBGE localidades API](https://servicodados.ibge.gov.br/api/docs/localidades) |
|
|
268
|
+
| Bacen STR banks (COMPE / ISPB) | `@br-validators/core/bancos` | `bancos lookup` · `list` | `/data/bancos` | `getBancos`, `getBancoPorCodigo`, `getBancoPorIspb` | [Bacen Participantes STR](https://www.bcb.gov.br/content/estabilidadefinanceira/str1/ParticipantesSTR.csv) |
|
|
269
|
+
| ANAC public aerodromos | `@br-validators/core/aeroportos` | `aeroportos lookup` | `/data/logistics` | `getAeroportos`, `getAeroportoPorIata`, `getAeroportoPorIcao`, `getAeroportosPorMunicipio` | [ANAC aeródromos públicos CSV](https://www.anac.gov.br/acesso-a-informacao/dados-abertos/areas-de-atuacao/aerodromos/lista-de-aerodromos-publicos/aerodromospublicosv1.csv/@@download/file/aerodromospublicosv1.csv) |
|
|
270
|
+
| ANTAQ port installations | `@br-validators/core/portos` | `portos lookup` | `/data/logistics` | `getPortoPorCodigo`, `searchPortos`, `getPortosPorMunicipio` | [ANTAQ instalações portuárias zip](https://www.gov.br/antaq/pt-br/central-de-conteudos/Instalaesporturias06052025.zip) |
|
|
271
|
+
| TSE ↔ IBGE municipality codes | `@br-validators/core/tse-municipios` | — | — | `getMapeamentoTseIbge`, `getMunicipioIbgePorCodigoTse`, `getCodigosTsePorMunicipio` | [TSE municipio_tse_ibge.zip](https://cdn.tse.jus.br/estatistica/sead/odsele/municipio_tse_ibge/municipio_tse_ibge.zip) |
|
|
272
|
+
| DDD geographic lookup | `@br-validators/core/telefone` | — | — | `getDddInfo` (extends telefone validator) | [Anatel DDD panel](https://informacoes.anatel.gov.br/paineis/areas-tarifarias/codigos-nacionais) |
|
|
273
|
+
| National holidays | `@br-validators/core/feriados` | — | — | `isFeriadoNacional`, `getFeriadosNacionais`, `getProximoDiaUtil` | [Lei 662/1949](https://www.planalto.gov.br/ccivil_03/leis/l0662.htm) + annual Portaria MGI |
|
|
274
|
+
| CNAE 2.3 subclasses | `@br-validators/core/cnaes` | — | — | `getCnaePorCodigo`, `searchCnaes` | [IBGE CNAE API v2](https://servicodados.ibge.gov.br/api/docs/cnae) |
|
|
275
|
+
| CFOP fiscal operations | `@br-validators/core/cfop` | — | — | `getCfopPorCodigo`, `searchCfop` | [CONFAZ CFOP SINIEF](https://www.confaz.fazenda.gov.br/legislacao/ajustes/sinief/cfop_cvsn_70_vigente) |
|
|
276
|
+
| NCM Mercosur nomenclature | `@br-validators/core/ncm` | — | — | `getNcmPorCodigo`, `searchNcm` | [Siscomex NCM JSON](https://portalunico.siscomex.gov.br/classif/api/publico/nomenclatura/download/json) |
|
|
277
|
+
| Natureza jurídica (CNPJ) | `@br-validators/core/natureza-juridica` | `natureza-juridica lookup` | `/data/fiscal` | `getNaturezaJuridicaPorCodigo` | [RFB Naturezas.zip](https://dadosabertos.rfb.gov.br/CNPJ/dados_abertos_cnpj/) |
|
|
278
|
+
| NBS (NFSe Nacional) | `@br-validators/core/nbs` | `nbs lookup` | `/data/fiscal` | `getNbsPorCodigo`, `searchNbs` | [NFSe Anexo B NBS2 xlsx](https://www.gov.br/nfse/pt-br/biblioteca/documentacao-tecnica/documentacao-atual/anexo_b-nbs2-lista_servico_nacional-snnfse.xlsx) |
|
|
279
|
+
| CEST (substituição tributária) | `@br-validators/core/cest` | `cest lookup` | `/data/fiscal` | `getCestPorCodigo`, `getCestPorNcm`, `searchCest` | [CONFAZ ICMS 142/2018](https://www.confaz.fazenda.gov.br/legislacao/convenios/2018/CV142_18) |
|
|
280
|
+
| ISO 4217 + Bacen PTAX moedas | `@br-validators/core/moedas` | `moedas lookup` | `/data/trade` | `getMoedaPorCodigo`, `searchMoedas` | [Bacen PTAX Moedas API](https://olinda.bcb.gov.br/olinda/servico/PTAX/versao/v1/odata/Moedas) |
|
|
281
|
+
| NF-e Bacen country codes | `@br-validators/core/paises-bacen` | `paises-bacen lookup` | `/data/trade` | `getPaisPorCodigoBacen`, `getPaisesBacen` | [NF-e country table](http://www.nfe.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=FOXZNFX/p50=) |
|
|
282
|
+
| ICC Incoterms 2020 | `@br-validators/core/incoterms` | `incoterms lookup` | `/data/trade` | `getIncotermPorCodigo`, `getIncoterms` | [ICC Incoterms rules](https://iccwbo.org/resources-for-business/incoterms-rules/) |
|
|
283
|
+
| CBO 2002 occupations | `@br-validators/core/cbo` | — | — | `getCboPorCodigo`, `searchCbo` | [MTE CBO downloads](https://www.gov.br/trabalho-e-emprego/pt-br/assuntos/cbo/servicos/downloads) |
|
|
284
|
+
| CEP prefix lookup | `@br-validators/core/cep` | — | — | `getCepFaixaInfo`, `getCepFaixas` | [IBGE CNEFE 2022](https://www.ibge.gov.br/estatisticas/sociais/populacao/38734-cadastro-nacional-de-enderecos-para-fins-estatisticos.html) |
|
|
285
|
+
| Data transparency catalog | `@br-validators/core/data-catalog` | — | `/data/catalog` | `getDataCatalog`, `getDatasetMetadata` | Aggregates all `metadata.json` entries |
|
|
286
|
+
|
|
287
|
+
```typescript
|
|
288
|
+
import { getMunicipioPorCodigo } from '@br-validators/core/ibge';
|
|
289
|
+
import { getBancoPorCodigo } from '@br-validators/core/bancos';
|
|
290
|
+
import { getDddInfo } from '@br-validators/core/telefone';
|
|
291
|
+
import { isFeriadoNacional } from '@br-validators/core/feriados';
|
|
292
|
+
import { getCnaePorCodigo } from '@br-validators/core/cnaes';
|
|
293
|
+
import { getCfopPorCodigo } from '@br-validators/core/cfop';
|
|
294
|
+
import { getNcmPorCodigo } from '@br-validators/core/ncm';
|
|
295
|
+
import { getCboPorCodigo } from '@br-validators/core/cbo';
|
|
296
|
+
import { getNaturezaJuridicaPorCodigo } from '@br-validators/core/natureza-juridica';
|
|
297
|
+
import { getNbsPorCodigo } from '@br-validators/core/nbs';
|
|
298
|
+
import { getCestPorCodigo } from '@br-validators/core/cest';
|
|
299
|
+
import { getMoedaPorCodigo } from '@br-validators/core/moedas';
|
|
300
|
+
import { getPaisPorCodigoBacen } from '@br-validators/core/paises-bacen';
|
|
301
|
+
import { getIncotermPorCodigo } from '@br-validators/core/incoterms';
|
|
302
|
+
import { getAeroportoPorIata } from '@br-validators/core/aeroportos';
|
|
303
|
+
import { getPortoPorCodigo } from '@br-validators/core/portos';
|
|
304
|
+
import { getDataCatalog } from '@br-validators/core/data-catalog';
|
|
305
|
+
|
|
306
|
+
getMunicipioPorCodigo(3550308)?.nome; // São Paulo
|
|
307
|
+
getBancoPorCodigo('001')?.nome; // Banco do Brasil
|
|
308
|
+
getDddInfo('11')?.uf; // SP
|
|
309
|
+
isFeriadoNacional('2026-01-01'); // true — Confraternização Universal
|
|
310
|
+
getCnaePorCodigo('6201501'); // custom software development
|
|
311
|
+
getCfopPorCodigo('1.102'); // accepts CONFAZ dotted format
|
|
312
|
+
getNcmPorCodigo('01012100'); // purebred horses (8-digit leaf)
|
|
313
|
+
getCboPorCodigo('212405'); // systems development analyst
|
|
314
|
+
getNaturezaJuridicaPorCodigo('2062'); // Sociedade Empresária Limitada
|
|
315
|
+
getNbsPorCodigo('1.1502.50.00'); // TI systems integration (NFSe)
|
|
316
|
+
getCestPorCodigo('0302100'); // returnable beer bottle (ST)
|
|
317
|
+
getMoedaPorCodigo('BRL')?.nome; // Real Brasileiro
|
|
318
|
+
getPaisPorCodigoBacen('1058')?.nome; // Brasil (NF-e cPais)
|
|
319
|
+
getIncotermPorCodigo('FOB')?.nome; // Free On Board
|
|
320
|
+
getAeroportoPorIata('GRU')?.nome; // Guarulhos — SP
|
|
321
|
+
getPortoPorCodigo('BRSSZ')?.nome; // Santos organized port
|
|
322
|
+
getDataCatalog().length; // registered datasets
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
Freshness table (auto-updated weekly): [docs/DATA-FRESHNESS.md](https://github.com/AlexandreZanata/br-validators/blob/main/docs/DATA-FRESHNESS.md) · Per-type official URLs: [docs/OFFICIAL-SOURCES.md](https://github.com/AlexandreZanata/br-validators/blob/main/docs/OFFICIAL-SOURCES.md)
|
|
262
326
|
|
|
263
327
|
---
|
|
264
328
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { b as DatasetChanges, c as DatasetVerification } from './types-CBIZxgfG.js';
|
|
2
|
+
|
|
3
|
+
interface Aeroporto {
|
|
4
|
+
iata: string | null;
|
|
5
|
+
icao: string;
|
|
6
|
+
nome: string;
|
|
7
|
+
uf: string;
|
|
8
|
+
municipioIbge: number | null;
|
|
9
|
+
municipioNome: string | null;
|
|
10
|
+
}
|
|
11
|
+
interface AeroportosDataVersion {
|
|
12
|
+
id: 'aeroportos';
|
|
13
|
+
nome: string;
|
|
14
|
+
fonte: string;
|
|
15
|
+
endpoints: string[];
|
|
16
|
+
capturadoEm: string;
|
|
17
|
+
atualizadoEm: string;
|
|
18
|
+
contagens: {
|
|
19
|
+
aeroportos: number;
|
|
20
|
+
comIata: number;
|
|
21
|
+
};
|
|
22
|
+
alteracoes: DatasetChanges;
|
|
23
|
+
verificacao: DatasetVerification;
|
|
24
|
+
documentacao: string;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Brazilian airports — offline embedded data from official ANAC source.
|
|
29
|
+
* @see docs/OFFICIAL-SOURCES.md#aeroportos
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
declare function getAeroportos(): readonly Aeroporto[];
|
|
33
|
+
declare function getAeroportoPorIata(code: string): Aeroporto | undefined;
|
|
34
|
+
declare function getAeroportoPorIcao(code: string): Aeroporto | undefined;
|
|
35
|
+
declare function getAeroportosPorMunicipio(ibgeCodigo: number): readonly Aeroporto[];
|
|
36
|
+
|
|
37
|
+
declare const ANAC_AERODROMOS_PUBLICOS_CSV_URL = "https://www.anac.gov.br/acesso-a-informacao/dados-abertos/areas-de-atuacao/aerodromos/lista-de-aerodromos-publicos/aerodromospublicosv1.csv/@@download/file/aerodromospublicosv1.csv";
|
|
38
|
+
declare const AEROPORTOS_GOLDEN_IATA_GRU = "GRU";
|
|
39
|
+
declare const AEROPORTOS_GOLDEN_IATA_GIG = "GIG";
|
|
40
|
+
declare const AEROPORTOS_GOLDEN_IATA_BSB = "BSB";
|
|
41
|
+
declare const AEROPORTOS_GOLDEN_IATA_SSA = "SSA";
|
|
42
|
+
declare const AEROPORTOS_GOLDEN_IATA_CGB = "CGB";
|
|
43
|
+
|
|
44
|
+
declare const AEROPORTOS_DATA_VERSION: AeroportosDataVersion;
|
|
45
|
+
|
|
46
|
+
export { AEROPORTOS_DATA_VERSION, AEROPORTOS_GOLDEN_IATA_BSB, AEROPORTOS_GOLDEN_IATA_CGB, AEROPORTOS_GOLDEN_IATA_GIG, AEROPORTOS_GOLDEN_IATA_GRU, AEROPORTOS_GOLDEN_IATA_SSA, ANAC_AERODROMOS_PUBLICOS_CSV_URL, type Aeroporto, type AeroportosDataVersion, getAeroportoPorIata, getAeroportoPorIcao, getAeroportos, getAeroportosPorMunicipio };
|