@f-o-t/brasil-api 0.1.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 +243 -0
- package/dist/index.d.ts +1442 -0
- package/dist/index.js +523 -0
- package/package.json +63 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,1442 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration for Brasil API client
|
|
3
|
+
*/
|
|
4
|
+
interface BrasilApiConfig {
|
|
5
|
+
baseUrl: string;
|
|
6
|
+
timeout: number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Get current configuration
|
|
10
|
+
*/
|
|
11
|
+
declare function getConfig(): BrasilApiConfig;
|
|
12
|
+
/**
|
|
13
|
+
* Configure Brasil API client
|
|
14
|
+
* @param config Partial configuration to merge with defaults
|
|
15
|
+
*/
|
|
16
|
+
declare function configureBrasilApi(config: Partial<BrasilApiConfig>): void;
|
|
17
|
+
/**
|
|
18
|
+
* Set custom configuration (alias for configureBrasilApi)
|
|
19
|
+
* @param config Partial configuration to merge with defaults
|
|
20
|
+
*/
|
|
21
|
+
declare function setConfig(config: Partial<BrasilApiConfig>): void;
|
|
22
|
+
/**
|
|
23
|
+
* Reset configuration to defaults
|
|
24
|
+
*/
|
|
25
|
+
declare function resetConfig(): void;
|
|
26
|
+
import { ZodError } from "zod";
|
|
27
|
+
/**
|
|
28
|
+
* Base error class for Brasil API errors
|
|
29
|
+
*/
|
|
30
|
+
declare class BrasilApiError extends Error {
|
|
31
|
+
constructor(message: string);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Network-related errors (fetch failures, timeouts, HTTP errors)
|
|
35
|
+
*/
|
|
36
|
+
declare class BrasilApiNetworkError extends BrasilApiError {
|
|
37
|
+
readonly statusCode?: number;
|
|
38
|
+
readonly endpoint: string;
|
|
39
|
+
constructor(message: string, statusCode: number | undefined, endpoint: string);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Validation errors (input or response validation failures)
|
|
43
|
+
*/
|
|
44
|
+
declare class BrasilApiValidationError extends BrasilApiError {
|
|
45
|
+
readonly zodError: ZodError;
|
|
46
|
+
readonly validationType: "input" | "response";
|
|
47
|
+
constructor(message: string, zodError: ZodError, validationType: "input" | "response");
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Response validation errors (invalid API response)
|
|
51
|
+
*/
|
|
52
|
+
declare class BrasilApiResponseError extends BrasilApiValidationError {
|
|
53
|
+
constructor(message: string, zodError: ZodError);
|
|
54
|
+
}
|
|
55
|
+
import { z } from "zod";
|
|
56
|
+
/**
|
|
57
|
+
* CEP response schema (v1)
|
|
58
|
+
*/
|
|
59
|
+
declare const CepResponseSchema: z.ZodObject<{
|
|
60
|
+
cep: z.ZodString;
|
|
61
|
+
state: z.ZodString;
|
|
62
|
+
city: z.ZodString;
|
|
63
|
+
neighborhood: z.ZodString;
|
|
64
|
+
street: z.ZodString;
|
|
65
|
+
service: z.ZodString;
|
|
66
|
+
}, "strip", z.ZodTypeAny, {
|
|
67
|
+
cep?: string;
|
|
68
|
+
state?: string;
|
|
69
|
+
city?: string;
|
|
70
|
+
neighborhood?: string;
|
|
71
|
+
street?: string;
|
|
72
|
+
service?: string;
|
|
73
|
+
}, {
|
|
74
|
+
cep?: string;
|
|
75
|
+
state?: string;
|
|
76
|
+
city?: string;
|
|
77
|
+
neighborhood?: string;
|
|
78
|
+
street?: string;
|
|
79
|
+
service?: string;
|
|
80
|
+
}>;
|
|
81
|
+
/**
|
|
82
|
+
* CEP response type (v1)
|
|
83
|
+
*/
|
|
84
|
+
type CepResponse = z.infer<typeof CepResponseSchema>;
|
|
85
|
+
/**
|
|
86
|
+
* CEP response schema (v2 with coordinates)
|
|
87
|
+
*/
|
|
88
|
+
declare const CepV2ResponseSchema: z.ZodObject<{
|
|
89
|
+
cep: z.ZodString;
|
|
90
|
+
state: z.ZodString;
|
|
91
|
+
city: z.ZodString;
|
|
92
|
+
neighborhood: z.ZodString;
|
|
93
|
+
street: z.ZodString;
|
|
94
|
+
service: z.ZodString;
|
|
95
|
+
} & {
|
|
96
|
+
location: z.ZodObject<{
|
|
97
|
+
type: z.ZodLiteral<"Point">;
|
|
98
|
+
coordinates: z.ZodObject<{
|
|
99
|
+
longitude: z.ZodString;
|
|
100
|
+
latitude: z.ZodString;
|
|
101
|
+
}, "strip", z.ZodTypeAny, {
|
|
102
|
+
longitude?: string;
|
|
103
|
+
latitude?: string;
|
|
104
|
+
}, {
|
|
105
|
+
longitude?: string;
|
|
106
|
+
latitude?: string;
|
|
107
|
+
}>;
|
|
108
|
+
}, "strip", z.ZodTypeAny, {
|
|
109
|
+
type?: "Point";
|
|
110
|
+
coordinates?: {
|
|
111
|
+
longitude?: string;
|
|
112
|
+
latitude?: string;
|
|
113
|
+
};
|
|
114
|
+
}, {
|
|
115
|
+
type?: "Point";
|
|
116
|
+
coordinates?: {
|
|
117
|
+
longitude?: string;
|
|
118
|
+
latitude?: string;
|
|
119
|
+
};
|
|
120
|
+
}>;
|
|
121
|
+
}, "strip", z.ZodTypeAny, {
|
|
122
|
+
cep?: string;
|
|
123
|
+
state?: string;
|
|
124
|
+
city?: string;
|
|
125
|
+
neighborhood?: string;
|
|
126
|
+
street?: string;
|
|
127
|
+
service?: string;
|
|
128
|
+
location?: {
|
|
129
|
+
type?: "Point";
|
|
130
|
+
coordinates?: {
|
|
131
|
+
longitude?: string;
|
|
132
|
+
latitude?: string;
|
|
133
|
+
};
|
|
134
|
+
};
|
|
135
|
+
}, {
|
|
136
|
+
cep?: string;
|
|
137
|
+
state?: string;
|
|
138
|
+
city?: string;
|
|
139
|
+
neighborhood?: string;
|
|
140
|
+
street?: string;
|
|
141
|
+
service?: string;
|
|
142
|
+
location?: {
|
|
143
|
+
type?: "Point";
|
|
144
|
+
coordinates?: {
|
|
145
|
+
longitude?: string;
|
|
146
|
+
latitude?: string;
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
}>;
|
|
150
|
+
/**
|
|
151
|
+
* CEP response type (v2)
|
|
152
|
+
*/
|
|
153
|
+
type CepV2Response = z.infer<typeof CepV2ResponseSchema>;
|
|
154
|
+
/**
|
|
155
|
+
* Get address information by CEP (postal code)
|
|
156
|
+
* @param cep CEP in format 12345-678 or 12345678
|
|
157
|
+
* @returns Address data
|
|
158
|
+
* @throws {BrasilApiValidationError} On invalid input
|
|
159
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
160
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
161
|
+
*/
|
|
162
|
+
declare function getCep(cep: string): Promise<CepResponse>;
|
|
163
|
+
/**
|
|
164
|
+
* Get address information with geolocation by CEP
|
|
165
|
+
* @param cep CEP in format 12345-678 or 12345678
|
|
166
|
+
* @returns Address data with latitude/longitude
|
|
167
|
+
* @throws {BrasilApiValidationError} On invalid input
|
|
168
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
169
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
170
|
+
*/
|
|
171
|
+
declare function getCepV2(cep: string): Promise<CepV2Response>;
|
|
172
|
+
import { z as z2 } from "zod";
|
|
173
|
+
/**
|
|
174
|
+
* Bank response schema
|
|
175
|
+
*/
|
|
176
|
+
declare const BankSchema: z2.ZodObject<{
|
|
177
|
+
ispb: z2.ZodString;
|
|
178
|
+
name: z2.ZodString;
|
|
179
|
+
code: z2.ZodNullable<z2.ZodNumber>;
|
|
180
|
+
fullName: z2.ZodString;
|
|
181
|
+
}, "strip", z2.ZodTypeAny, {
|
|
182
|
+
ispb?: string;
|
|
183
|
+
name?: string;
|
|
184
|
+
code?: number;
|
|
185
|
+
fullName?: string;
|
|
186
|
+
}, {
|
|
187
|
+
ispb?: string;
|
|
188
|
+
name?: string;
|
|
189
|
+
code?: number;
|
|
190
|
+
fullName?: string;
|
|
191
|
+
}>;
|
|
192
|
+
/**
|
|
193
|
+
* Bank type
|
|
194
|
+
*/
|
|
195
|
+
type Bank = z2.infer<typeof BankSchema>;
|
|
196
|
+
/**
|
|
197
|
+
* Get all Brazilian banks
|
|
198
|
+
* @returns Array of all banks
|
|
199
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
200
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
201
|
+
*/
|
|
202
|
+
declare function getBanks(): Promise<Bank[]>;
|
|
203
|
+
/**
|
|
204
|
+
* Get bank information by code
|
|
205
|
+
* @param code Bank code (e.g., 1 for Banco do Brasil)
|
|
206
|
+
* @returns Bank data
|
|
207
|
+
* @throws {BrasilApiValidationError} On invalid input
|
|
208
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
209
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
210
|
+
*/
|
|
211
|
+
declare function getBank(code: number): Promise<Bank>;
|
|
212
|
+
import { z as z3 } from "zod";
|
|
213
|
+
/**
|
|
214
|
+
* CNPJ response schema
|
|
215
|
+
*/
|
|
216
|
+
declare const CnpjResponseSchema: z3.ZodObject<{
|
|
217
|
+
cnpj: z3.ZodString;
|
|
218
|
+
razao_social: z3.ZodOptional<z3.ZodString>;
|
|
219
|
+
nome_fantasia: z3.ZodOptional<z3.ZodString>;
|
|
220
|
+
uf: z3.ZodOptional<z3.ZodString>;
|
|
221
|
+
municipio: z3.ZodOptional<z3.ZodString>;
|
|
222
|
+
natureza_juridica: z3.ZodOptional<z3.ZodString>;
|
|
223
|
+
situacao_cadastral: z3.ZodOptional<z3.ZodString>;
|
|
224
|
+
data_inicio_atividade: z3.ZodOptional<z3.ZodString>;
|
|
225
|
+
cnae_fiscal: z3.ZodOptional<z3.ZodString>;
|
|
226
|
+
qsa: z3.ZodArray<z3.ZodAny, "many">;
|
|
227
|
+
}, "strip", z3.ZodTypeAny, {
|
|
228
|
+
cnpj?: string;
|
|
229
|
+
razao_social?: string;
|
|
230
|
+
nome_fantasia?: string;
|
|
231
|
+
uf?: string;
|
|
232
|
+
municipio?: string;
|
|
233
|
+
natureza_juridica?: string;
|
|
234
|
+
situacao_cadastral?: string;
|
|
235
|
+
data_inicio_atividade?: string;
|
|
236
|
+
cnae_fiscal?: string;
|
|
237
|
+
qsa?: any[];
|
|
238
|
+
}, {
|
|
239
|
+
cnpj?: string;
|
|
240
|
+
razao_social?: string;
|
|
241
|
+
nome_fantasia?: string;
|
|
242
|
+
uf?: string;
|
|
243
|
+
municipio?: string;
|
|
244
|
+
natureza_juridica?: string;
|
|
245
|
+
situacao_cadastral?: string;
|
|
246
|
+
data_inicio_atividade?: string;
|
|
247
|
+
cnae_fiscal?: string;
|
|
248
|
+
qsa?: any[];
|
|
249
|
+
}>;
|
|
250
|
+
/**
|
|
251
|
+
* CNPJ response type
|
|
252
|
+
*/
|
|
253
|
+
type CnpjResponse = z3.infer<typeof CnpjResponseSchema>;
|
|
254
|
+
/**
|
|
255
|
+
* Get company information by CNPJ
|
|
256
|
+
* @param cnpj CNPJ with or without punctuation (12.345.678/0001-90 or 12345678000190)
|
|
257
|
+
* @returns Company data
|
|
258
|
+
* @throws {BrasilApiValidationError} On invalid input
|
|
259
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
260
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
261
|
+
*/
|
|
262
|
+
declare function getCnpj(cnpj: string): Promise<CnpjResponse>;
|
|
263
|
+
import { z as z4 } from "zod";
|
|
264
|
+
/**
|
|
265
|
+
* DDD response schema
|
|
266
|
+
*/
|
|
267
|
+
declare const DddResponseSchema: z4.ZodObject<{
|
|
268
|
+
state: z4.ZodString;
|
|
269
|
+
cities: z4.ZodArray<z4.ZodString, "many">;
|
|
270
|
+
}, "strip", z4.ZodTypeAny, {
|
|
271
|
+
state?: string;
|
|
272
|
+
cities?: string[];
|
|
273
|
+
}, {
|
|
274
|
+
state?: string;
|
|
275
|
+
cities?: string[];
|
|
276
|
+
}>;
|
|
277
|
+
/**
|
|
278
|
+
* DDD response type
|
|
279
|
+
*/
|
|
280
|
+
type DddResponse = z4.infer<typeof DddResponseSchema>;
|
|
281
|
+
/**
|
|
282
|
+
* Get cities by area code (DDD)
|
|
283
|
+
* @param ddd Area code (2 digits)
|
|
284
|
+
* @returns State and list of cities
|
|
285
|
+
* @throws {BrasilApiValidationError} On invalid input
|
|
286
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
287
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
288
|
+
*/
|
|
289
|
+
declare function getDdd(ddd: number | string): Promise<DddResponse>;
|
|
290
|
+
import { z as z5 } from "zod";
|
|
291
|
+
/**
|
|
292
|
+
* Schema for a single holiday (feriado)
|
|
293
|
+
*/
|
|
294
|
+
declare const FeriadoSchema: z5.ZodObject<{
|
|
295
|
+
date: z5.ZodString;
|
|
296
|
+
name: z5.ZodString;
|
|
297
|
+
type: z5.ZodString;
|
|
298
|
+
}, "strip", z5.ZodTypeAny, {
|
|
299
|
+
name?: string;
|
|
300
|
+
type?: string;
|
|
301
|
+
date?: string;
|
|
302
|
+
}, {
|
|
303
|
+
name?: string;
|
|
304
|
+
type?: string;
|
|
305
|
+
date?: string;
|
|
306
|
+
}>;
|
|
307
|
+
/**
|
|
308
|
+
* Type for a Brazilian national holiday
|
|
309
|
+
*/
|
|
310
|
+
type Feriado = z5.infer<typeof FeriadoSchema>;
|
|
311
|
+
/**
|
|
312
|
+
* Get Brazilian national holidays for a given year
|
|
313
|
+
*
|
|
314
|
+
* @param year - Year to get holidays for (must be between 1900 and 2199)
|
|
315
|
+
* @returns Array of holidays with date, name, and type
|
|
316
|
+
* @throws {BrasilApiValidationError} If year is invalid
|
|
317
|
+
*
|
|
318
|
+
* @example
|
|
319
|
+
* ```typescript
|
|
320
|
+
* const holidays = await getFeriados(2024);
|
|
321
|
+
* console.log(holidays);
|
|
322
|
+
* // [
|
|
323
|
+
* // { date: "2024-01-01", name: "Confraternização mundial", type: "national" },
|
|
324
|
+
* // { date: "2024-04-21", name: "Tiradentes", type: "national" },
|
|
325
|
+
* // ...
|
|
326
|
+
* // ]
|
|
327
|
+
* ```
|
|
328
|
+
*/
|
|
329
|
+
declare function getFeriados(year: number): Promise<Feriado[]>;
|
|
330
|
+
import { z as z6 } from "zod";
|
|
331
|
+
/**
|
|
332
|
+
* Schema for a Brazilian state (estado)
|
|
333
|
+
*/
|
|
334
|
+
declare const EstadoSchema: z6.ZodObject<{
|
|
335
|
+
id: z6.ZodNumber;
|
|
336
|
+
sigla: z6.ZodString;
|
|
337
|
+
nome: z6.ZodString;
|
|
338
|
+
regiao: z6.ZodObject<{
|
|
339
|
+
id: z6.ZodNumber;
|
|
340
|
+
sigla: z6.ZodString;
|
|
341
|
+
nome: z6.ZodString;
|
|
342
|
+
}, "strip", z6.ZodTypeAny, {
|
|
343
|
+
nome?: string;
|
|
344
|
+
id?: number;
|
|
345
|
+
sigla?: string;
|
|
346
|
+
}, {
|
|
347
|
+
nome?: string;
|
|
348
|
+
id?: number;
|
|
349
|
+
sigla?: string;
|
|
350
|
+
}>;
|
|
351
|
+
}, "strip", z6.ZodTypeAny, {
|
|
352
|
+
nome?: string;
|
|
353
|
+
id?: number;
|
|
354
|
+
sigla?: string;
|
|
355
|
+
regiao?: {
|
|
356
|
+
nome?: string;
|
|
357
|
+
id?: number;
|
|
358
|
+
sigla?: string;
|
|
359
|
+
};
|
|
360
|
+
}, {
|
|
361
|
+
nome?: string;
|
|
362
|
+
id?: number;
|
|
363
|
+
sigla?: string;
|
|
364
|
+
regiao?: {
|
|
365
|
+
nome?: string;
|
|
366
|
+
id?: number;
|
|
367
|
+
sigla?: string;
|
|
368
|
+
};
|
|
369
|
+
}>;
|
|
370
|
+
/**
|
|
371
|
+
* Type for a Brazilian state
|
|
372
|
+
*/
|
|
373
|
+
type Estado = z6.infer<typeof EstadoSchema>;
|
|
374
|
+
/**
|
|
375
|
+
* Schema for a Brazilian municipality (municipio)
|
|
376
|
+
*/
|
|
377
|
+
declare const MunicipioSchema: z6.ZodObject<{
|
|
378
|
+
nome: z6.ZodString;
|
|
379
|
+
codigo_ibge: z6.ZodString;
|
|
380
|
+
}, "strip", z6.ZodTypeAny, {
|
|
381
|
+
nome?: string;
|
|
382
|
+
codigo_ibge?: string;
|
|
383
|
+
}, {
|
|
384
|
+
nome?: string;
|
|
385
|
+
codigo_ibge?: string;
|
|
386
|
+
}>;
|
|
387
|
+
/**
|
|
388
|
+
* Type for a Brazilian municipality
|
|
389
|
+
*/
|
|
390
|
+
type Municipio = z6.infer<typeof MunicipioSchema>;
|
|
391
|
+
/**
|
|
392
|
+
* Get all Brazilian states
|
|
393
|
+
*
|
|
394
|
+
* @returns Array of states with id, sigla, nome, and regiao
|
|
395
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
396
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
397
|
+
*
|
|
398
|
+
* @example
|
|
399
|
+
* ```typescript
|
|
400
|
+
* const estados = await getEstados();
|
|
401
|
+
* console.log(estados);
|
|
402
|
+
* // [
|
|
403
|
+
* // {
|
|
404
|
+
* // id: 35,
|
|
405
|
+
* // sigla: "SP",
|
|
406
|
+
* // nome: "São Paulo",
|
|
407
|
+
* // regiao: { id: 3, sigla: "SE", nome: "Sudeste" }
|
|
408
|
+
* // },
|
|
409
|
+
* // ...
|
|
410
|
+
* // ]
|
|
411
|
+
* ```
|
|
412
|
+
*/
|
|
413
|
+
declare function getEstados(): Promise<Estado[]>;
|
|
414
|
+
/**
|
|
415
|
+
* Get municipalities by state code
|
|
416
|
+
*
|
|
417
|
+
* @param uf - State code (2 letters, case-insensitive)
|
|
418
|
+
* @returns Array of municipalities with nome and codigo_ibge
|
|
419
|
+
* @throws {BrasilApiValidationError} If state code is invalid
|
|
420
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
421
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
422
|
+
*
|
|
423
|
+
* @example
|
|
424
|
+
* ```typescript
|
|
425
|
+
* const municipios = await getMunicipios("SP");
|
|
426
|
+
* console.log(municipios);
|
|
427
|
+
* // [
|
|
428
|
+
* // { nome: "São Paulo", codigo_ibge: "3550308" },
|
|
429
|
+
* // { nome: "Campinas", codigo_ibge: "3509502" },
|
|
430
|
+
* // ...
|
|
431
|
+
* // ]
|
|
432
|
+
* ```
|
|
433
|
+
*/
|
|
434
|
+
declare function getMunicipios(uf: string): Promise<Municipio[]>;
|
|
435
|
+
import { z as z7 } from "zod";
|
|
436
|
+
/**
|
|
437
|
+
* Schema for ISBN response
|
|
438
|
+
*/
|
|
439
|
+
declare const IsbnResponseSchema: z7.ZodObject<{
|
|
440
|
+
isbn: z7.ZodString;
|
|
441
|
+
title: z7.ZodString;
|
|
442
|
+
subtitle: z7.ZodNullable<z7.ZodString>;
|
|
443
|
+
authors: z7.ZodArray<z7.ZodString, "many">;
|
|
444
|
+
publisher: z7.ZodString;
|
|
445
|
+
synopsis: z7.ZodNullable<z7.ZodString>;
|
|
446
|
+
dimensions: z7.ZodNullable<z7.ZodObject<{}, "passthrough", z7.ZodTypeAny, z7.objectOutputType<{}, z7.ZodTypeAny, "passthrough">, z7.objectInputType<{}, z7.ZodTypeAny, "passthrough">>>;
|
|
447
|
+
year: z7.ZodNullable<z7.ZodNumber>;
|
|
448
|
+
format: z7.ZodString;
|
|
449
|
+
page_count: z7.ZodNumber;
|
|
450
|
+
subjects: z7.ZodArray<z7.ZodString, "many">;
|
|
451
|
+
location: z7.ZodNullable<z7.ZodString>;
|
|
452
|
+
retail_price: z7.ZodNullable<z7.ZodString>;
|
|
453
|
+
cover_url: z7.ZodNullable<z7.ZodString>;
|
|
454
|
+
provider: z7.ZodString;
|
|
455
|
+
}, "strip", z7.ZodTypeAny, {
|
|
456
|
+
location?: string;
|
|
457
|
+
isbn?: string;
|
|
458
|
+
title?: string;
|
|
459
|
+
subtitle?: string;
|
|
460
|
+
authors?: string[];
|
|
461
|
+
publisher?: string;
|
|
462
|
+
synopsis?: string;
|
|
463
|
+
dimensions?: {} & {
|
|
464
|
+
[k: string]: unknown;
|
|
465
|
+
};
|
|
466
|
+
year?: number;
|
|
467
|
+
format?: string;
|
|
468
|
+
page_count?: number;
|
|
469
|
+
subjects?: string[];
|
|
470
|
+
retail_price?: string;
|
|
471
|
+
cover_url?: string;
|
|
472
|
+
provider?: string;
|
|
473
|
+
}, {
|
|
474
|
+
location?: string;
|
|
475
|
+
isbn?: string;
|
|
476
|
+
title?: string;
|
|
477
|
+
subtitle?: string;
|
|
478
|
+
authors?: string[];
|
|
479
|
+
publisher?: string;
|
|
480
|
+
synopsis?: string;
|
|
481
|
+
dimensions?: {} & {
|
|
482
|
+
[k: string]: unknown;
|
|
483
|
+
};
|
|
484
|
+
year?: number;
|
|
485
|
+
format?: string;
|
|
486
|
+
page_count?: number;
|
|
487
|
+
subjects?: string[];
|
|
488
|
+
retail_price?: string;
|
|
489
|
+
cover_url?: string;
|
|
490
|
+
provider?: string;
|
|
491
|
+
}>;
|
|
492
|
+
/**
|
|
493
|
+
* Type for ISBN response
|
|
494
|
+
*/
|
|
495
|
+
type IsbnResponse = z7.infer<typeof IsbnResponseSchema>;
|
|
496
|
+
/**
|
|
497
|
+
* Get book information by ISBN
|
|
498
|
+
*
|
|
499
|
+
* @param isbn - ISBN code (10 or 13 digits)
|
|
500
|
+
* @returns Book information including title, authors, publisher, etc.
|
|
501
|
+
* @throws {BrasilApiValidationError} If ISBN format is invalid
|
|
502
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
503
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
504
|
+
*
|
|
505
|
+
* @example
|
|
506
|
+
* ```typescript
|
|
507
|
+
* const book = await getIsbn("9788545702269");
|
|
508
|
+
* console.log(book.title);
|
|
509
|
+
* console.log(book.authors);
|
|
510
|
+
* ```
|
|
511
|
+
*/
|
|
512
|
+
declare function getIsbn(isbn: string): Promise<IsbnResponse>;
|
|
513
|
+
import { z as z8 } from "zod";
|
|
514
|
+
/**
|
|
515
|
+
* Schema for NCM (Nomenclatura Comum do Mercosul)
|
|
516
|
+
*/
|
|
517
|
+
declare const NcmSchema: z8.ZodObject<{
|
|
518
|
+
codigo: z8.ZodString;
|
|
519
|
+
descricao: z8.ZodString;
|
|
520
|
+
data_inicio: z8.ZodString;
|
|
521
|
+
data_fim: z8.ZodString;
|
|
522
|
+
tipo_ato: z8.ZodString;
|
|
523
|
+
numero_ato: z8.ZodString;
|
|
524
|
+
ano_ato: z8.ZodString;
|
|
525
|
+
}, "strip", z8.ZodTypeAny, {
|
|
526
|
+
codigo?: string;
|
|
527
|
+
descricao?: string;
|
|
528
|
+
data_inicio?: string;
|
|
529
|
+
data_fim?: string;
|
|
530
|
+
tipo_ato?: string;
|
|
531
|
+
numero_ato?: string;
|
|
532
|
+
ano_ato?: string;
|
|
533
|
+
}, {
|
|
534
|
+
codigo?: string;
|
|
535
|
+
descricao?: string;
|
|
536
|
+
data_inicio?: string;
|
|
537
|
+
data_fim?: string;
|
|
538
|
+
tipo_ato?: string;
|
|
539
|
+
numero_ato?: string;
|
|
540
|
+
ano_ato?: string;
|
|
541
|
+
}>;
|
|
542
|
+
/**
|
|
543
|
+
* Type for NCM
|
|
544
|
+
*/
|
|
545
|
+
type Ncm = z8.infer<typeof NcmSchema>;
|
|
546
|
+
/**
|
|
547
|
+
* Get all NCM codes
|
|
548
|
+
*
|
|
549
|
+
* @returns Array of NCM codes with descriptions and metadata
|
|
550
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
551
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
552
|
+
*
|
|
553
|
+
* @example
|
|
554
|
+
* ```typescript
|
|
555
|
+
* const ncms = await getNcms();
|
|
556
|
+
* console.log(ncms);
|
|
557
|
+
* // [
|
|
558
|
+
* // {
|
|
559
|
+
* // codigo: "01012100",
|
|
560
|
+
* // descricao: "Reprodutores de raça pura",
|
|
561
|
+
* // data_inicio: "2017-01-01",
|
|
562
|
+
* // data_fim: "2023-03-31",
|
|
563
|
+
* // tipo_ato: "Res Camex",
|
|
564
|
+
* // numero_ato: "125",
|
|
565
|
+
* // ano_ato: "2016"
|
|
566
|
+
* // },
|
|
567
|
+
* // ...
|
|
568
|
+
* // ]
|
|
569
|
+
* ```
|
|
570
|
+
*/
|
|
571
|
+
declare function getNcms(): Promise<Ncm[]>;
|
|
572
|
+
/**
|
|
573
|
+
* Get NCM by code
|
|
574
|
+
*
|
|
575
|
+
* @param code - NCM code (8 digits)
|
|
576
|
+
* @returns NCM information with description and metadata
|
|
577
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
578
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
579
|
+
*
|
|
580
|
+
* @example
|
|
581
|
+
* ```typescript
|
|
582
|
+
* const ncm = await getNcm("01012100");
|
|
583
|
+
* console.log(ncm);
|
|
584
|
+
* // {
|
|
585
|
+
* // codigo: "01012100",
|
|
586
|
+
* // descricao: "Reprodutores de raça pura",
|
|
587
|
+
* // data_inicio: "2017-01-01",
|
|
588
|
+
* // data_fim: "2023-03-31",
|
|
589
|
+
* // tipo_ato: "Res Camex",
|
|
590
|
+
* // numero_ato: "125",
|
|
591
|
+
* // ano_ato: "2016"
|
|
592
|
+
* // }
|
|
593
|
+
* ```
|
|
594
|
+
*/
|
|
595
|
+
declare function getNcm(code: string): Promise<Ncm>;
|
|
596
|
+
import { z as z9 } from "zod";
|
|
597
|
+
/**
|
|
598
|
+
* Schema for PIX participant
|
|
599
|
+
*/
|
|
600
|
+
declare const PixParticipantSchema: z9.ZodObject<{
|
|
601
|
+
ispb: z9.ZodString;
|
|
602
|
+
nome: z9.ZodString;
|
|
603
|
+
nome_reduzido: z9.ZodString;
|
|
604
|
+
modalidade_participacao: z9.ZodString;
|
|
605
|
+
tipo_participacao: z9.ZodString;
|
|
606
|
+
inicio_operacao: z9.ZodString;
|
|
607
|
+
}, "strip", z9.ZodTypeAny, {
|
|
608
|
+
ispb?: string;
|
|
609
|
+
nome?: string;
|
|
610
|
+
nome_reduzido?: string;
|
|
611
|
+
modalidade_participacao?: string;
|
|
612
|
+
tipo_participacao?: string;
|
|
613
|
+
inicio_operacao?: string;
|
|
614
|
+
}, {
|
|
615
|
+
ispb?: string;
|
|
616
|
+
nome?: string;
|
|
617
|
+
nome_reduzido?: string;
|
|
618
|
+
modalidade_participacao?: string;
|
|
619
|
+
tipo_participacao?: string;
|
|
620
|
+
inicio_operacao?: string;
|
|
621
|
+
}>;
|
|
622
|
+
/**
|
|
623
|
+
* Type for PIX participant
|
|
624
|
+
*/
|
|
625
|
+
type PixParticipant = z9.infer<typeof PixParticipantSchema>;
|
|
626
|
+
/**
|
|
627
|
+
* Get all PIX participants
|
|
628
|
+
*
|
|
629
|
+
* @returns Array of PIX participants with ISPB, names, and participation info
|
|
630
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
631
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
632
|
+
*
|
|
633
|
+
* @example
|
|
634
|
+
* ```typescript
|
|
635
|
+
* const participants = await getPixParticipants();
|
|
636
|
+
* console.log(participants);
|
|
637
|
+
* // [
|
|
638
|
+
* // {
|
|
639
|
+
* // ispb: "00000000",
|
|
640
|
+
* // nome: "Banco Central do Brasil",
|
|
641
|
+
* // nome_reduzido: "BCB",
|
|
642
|
+
* // modalidade_participacao: "DIRETO",
|
|
643
|
+
* // tipo_participacao: "LIQUIDANTE",
|
|
644
|
+
* // inicio_operacao: "2020-11-03T00:00:00.000Z"
|
|
645
|
+
* // },
|
|
646
|
+
* // ...
|
|
647
|
+
* // ]
|
|
648
|
+
* ```
|
|
649
|
+
*/
|
|
650
|
+
declare function getPixParticipants(): Promise<PixParticipant[]>;
|
|
651
|
+
import { z as z10 } from "zod";
|
|
652
|
+
/**
|
|
653
|
+
* Schema for domain status from Registro.br
|
|
654
|
+
*/
|
|
655
|
+
declare const DomainStatusSchema: z10.ZodObject<{
|
|
656
|
+
status_code: z10.ZodNumber;
|
|
657
|
+
status: z10.ZodString;
|
|
658
|
+
fqdn: z10.ZodString;
|
|
659
|
+
hosts: z10.ZodArray<z10.ZodString, "many">;
|
|
660
|
+
"publication-status": z10.ZodString;
|
|
661
|
+
"expires-at": z10.ZodString;
|
|
662
|
+
suggestions: z10.ZodArray<z10.ZodString, "many">;
|
|
663
|
+
}, "strip", z10.ZodTypeAny, {
|
|
664
|
+
status?: string;
|
|
665
|
+
status_code?: number;
|
|
666
|
+
fqdn?: string;
|
|
667
|
+
hosts?: string[];
|
|
668
|
+
"publication-status"?: string;
|
|
669
|
+
"expires-at"?: string;
|
|
670
|
+
suggestions?: string[];
|
|
671
|
+
}, {
|
|
672
|
+
status?: string;
|
|
673
|
+
status_code?: number;
|
|
674
|
+
fqdn?: string;
|
|
675
|
+
hosts?: string[];
|
|
676
|
+
"publication-status"?: string;
|
|
677
|
+
"expires-at"?: string;
|
|
678
|
+
suggestions?: string[];
|
|
679
|
+
}>;
|
|
680
|
+
/**
|
|
681
|
+
* Type for domain status from Registro.br
|
|
682
|
+
*/
|
|
683
|
+
type DomainStatus = z10.infer<typeof DomainStatusSchema>;
|
|
684
|
+
/**
|
|
685
|
+
* Get status of a .br domain from Registro.br
|
|
686
|
+
*
|
|
687
|
+
* @param domain - The .br domain to check (e.g., "google.com.br")
|
|
688
|
+
* @returns Domain status information including availability, hosts, and
|
|
689
|
+
* expiration
|
|
690
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
691
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
692
|
+
*
|
|
693
|
+
* @example
|
|
694
|
+
* ```typescript
|
|
695
|
+
* const status = await getDomainStatus("google.com.br");
|
|
696
|
+
* console.log(status);
|
|
697
|
+
* // {
|
|
698
|
+
* // status_code: 1,
|
|
699
|
+
* // status: "REGISTERED",
|
|
700
|
+
* // fqdn: "google.com.br",
|
|
701
|
+
* // hosts: ["ns1.google.com", "ns2.google.com"],
|
|
702
|
+
* // publication_status: "published",
|
|
703
|
+
* // expires_at: "2025-12-31T23:59:59.000Z",
|
|
704
|
+
* // suggestions: []
|
|
705
|
+
* // }
|
|
706
|
+
* ```
|
|
707
|
+
*/
|
|
708
|
+
declare function getDomainStatus(domain: string): Promise<DomainStatus>;
|
|
709
|
+
import { z as z11 } from "zod";
|
|
710
|
+
/**
|
|
711
|
+
* Schema for interest rate (Taxa)
|
|
712
|
+
*/
|
|
713
|
+
declare const TaxaSchema: z11.ZodObject<{
|
|
714
|
+
nome: z11.ZodString;
|
|
715
|
+
valor: z11.ZodNullable<z11.ZodNumber>;
|
|
716
|
+
}, "strip", z11.ZodTypeAny, {
|
|
717
|
+
nome?: string;
|
|
718
|
+
valor?: number;
|
|
719
|
+
}, {
|
|
720
|
+
nome?: string;
|
|
721
|
+
valor?: number;
|
|
722
|
+
}>;
|
|
723
|
+
/**
|
|
724
|
+
* Type for interest rate (Taxa)
|
|
725
|
+
*/
|
|
726
|
+
type Taxa = z11.infer<typeof TaxaSchema>;
|
|
727
|
+
/**
|
|
728
|
+
* Get all Brazilian interest rates
|
|
729
|
+
*
|
|
730
|
+
* @returns Array of interest rates with names and values
|
|
731
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
732
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
733
|
+
*
|
|
734
|
+
* @example
|
|
735
|
+
* ```typescript
|
|
736
|
+
* const rates = await getTaxas();
|
|
737
|
+
* console.log(rates);
|
|
738
|
+
* // [
|
|
739
|
+
* // { nome: "SELIC", valor: 13.75 },
|
|
740
|
+
* // { nome: "CDI", valor: 13.65 },
|
|
741
|
+
* // { nome: "IPCA", valor: 4.62 },
|
|
742
|
+
* // ...
|
|
743
|
+
* // ]
|
|
744
|
+
* ```
|
|
745
|
+
*/
|
|
746
|
+
declare function getTaxas(): Promise<Taxa[]>;
|
|
747
|
+
/**
|
|
748
|
+
* Get a specific Brazilian interest rate by name/sigla
|
|
749
|
+
*
|
|
750
|
+
* @param sigla - The rate identifier/name (e.g., "SELIC", "CDI", "IPCA")
|
|
751
|
+
* @returns Interest rate with name and value
|
|
752
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
753
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
754
|
+
* @throws {BrasilApiNotFoundError} If rate not found
|
|
755
|
+
*
|
|
756
|
+
* @example
|
|
757
|
+
* ```typescript
|
|
758
|
+
* const rate = await getTaxa("SELIC");
|
|
759
|
+
* console.log(rate);
|
|
760
|
+
* // { nome: "SELIC", valor: 13.75 }
|
|
761
|
+
* ```
|
|
762
|
+
*/
|
|
763
|
+
declare function getTaxa(sigla: string): Promise<Taxa>;
|
|
764
|
+
import { z as z12 } from "zod";
|
|
765
|
+
/**
|
|
766
|
+
* Schema for broker (Corretora) from CVM
|
|
767
|
+
*/
|
|
768
|
+
declare const CorretoraSchema: z12.ZodObject<{
|
|
769
|
+
cnpj: z12.ZodString;
|
|
770
|
+
type: z12.ZodString;
|
|
771
|
+
nome_social: z12.ZodString;
|
|
772
|
+
nome_comercial: z12.ZodString;
|
|
773
|
+
status: z12.ZodString;
|
|
774
|
+
email: z12.ZodOptional<z12.ZodString>;
|
|
775
|
+
telefone: z12.ZodOptional<z12.ZodString>;
|
|
776
|
+
cep: z12.ZodOptional<z12.ZodString>;
|
|
777
|
+
pais: z12.ZodOptional<z12.ZodString>;
|
|
778
|
+
uf: z12.ZodOptional<z12.ZodString>;
|
|
779
|
+
municipio: z12.ZodOptional<z12.ZodString>;
|
|
780
|
+
bairro: z12.ZodOptional<z12.ZodString>;
|
|
781
|
+
complemento: z12.ZodOptional<z12.ZodString>;
|
|
782
|
+
logradouro: z12.ZodOptional<z12.ZodString>;
|
|
783
|
+
data_patrimonio_liquido: z12.ZodOptional<z12.ZodString>;
|
|
784
|
+
valor_patrimonio_liquido: z12.ZodOptional<z12.ZodString>;
|
|
785
|
+
codigo_cvm: z12.ZodOptional<z12.ZodString>;
|
|
786
|
+
data_inicio_situacao: z12.ZodOptional<z12.ZodString>;
|
|
787
|
+
data_registro: z12.ZodOptional<z12.ZodString>;
|
|
788
|
+
}, "strip", z12.ZodTypeAny, {
|
|
789
|
+
type?: string;
|
|
790
|
+
status?: string;
|
|
791
|
+
cep?: string;
|
|
792
|
+
cnpj?: string;
|
|
793
|
+
uf?: string;
|
|
794
|
+
municipio?: string;
|
|
795
|
+
nome_social?: string;
|
|
796
|
+
nome_comercial?: string;
|
|
797
|
+
email?: string;
|
|
798
|
+
telefone?: string;
|
|
799
|
+
pais?: string;
|
|
800
|
+
bairro?: string;
|
|
801
|
+
complemento?: string;
|
|
802
|
+
logradouro?: string;
|
|
803
|
+
data_patrimonio_liquido?: string;
|
|
804
|
+
valor_patrimonio_liquido?: string;
|
|
805
|
+
codigo_cvm?: string;
|
|
806
|
+
data_inicio_situacao?: string;
|
|
807
|
+
data_registro?: string;
|
|
808
|
+
}, {
|
|
809
|
+
type?: string;
|
|
810
|
+
status?: string;
|
|
811
|
+
cep?: string;
|
|
812
|
+
cnpj?: string;
|
|
813
|
+
uf?: string;
|
|
814
|
+
municipio?: string;
|
|
815
|
+
nome_social?: string;
|
|
816
|
+
nome_comercial?: string;
|
|
817
|
+
email?: string;
|
|
818
|
+
telefone?: string;
|
|
819
|
+
pais?: string;
|
|
820
|
+
bairro?: string;
|
|
821
|
+
complemento?: string;
|
|
822
|
+
logradouro?: string;
|
|
823
|
+
data_patrimonio_liquido?: string;
|
|
824
|
+
valor_patrimonio_liquido?: string;
|
|
825
|
+
codigo_cvm?: string;
|
|
826
|
+
data_inicio_situacao?: string;
|
|
827
|
+
data_registro?: string;
|
|
828
|
+
}>;
|
|
829
|
+
/**
|
|
830
|
+
* Type for broker (Corretora) from CVM
|
|
831
|
+
*/
|
|
832
|
+
type Corretora = z12.infer<typeof CorretoraSchema>;
|
|
833
|
+
/**
|
|
834
|
+
* Get all Brazilian brokers registered with CVM
|
|
835
|
+
*
|
|
836
|
+
* @returns Array of brokers with CNPJ, names, status, and contact
|
|
837
|
+
* information
|
|
838
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
839
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
840
|
+
*
|
|
841
|
+
* @example
|
|
842
|
+
* ```typescript
|
|
843
|
+
* const brokers = await getCorretoras();
|
|
844
|
+
* console.log(brokers);
|
|
845
|
+
* // [
|
|
846
|
+
* // {
|
|
847
|
+
* // cnpj: "00000000000000",
|
|
848
|
+
* // tipo: "Corretora de Valores",
|
|
849
|
+
* // nome_social: "Broker S.A.",
|
|
850
|
+
* // nome_comercial: "Broker",
|
|
851
|
+
* // status: "EM FUNCIONAMENTO NORMAL",
|
|
852
|
+
* // email: "contact@broker.com",
|
|
853
|
+
* // telefone: "11999999999",
|
|
854
|
+
* // ...
|
|
855
|
+
* // },
|
|
856
|
+
* // ...
|
|
857
|
+
* // ]
|
|
858
|
+
* ```
|
|
859
|
+
*/
|
|
860
|
+
declare function getCorretoras(): Promise<Corretora[]>;
|
|
861
|
+
/**
|
|
862
|
+
* Get a specific Brazilian broker by CNPJ from CVM
|
|
863
|
+
*
|
|
864
|
+
* @param cnpj - The broker's CNPJ (14 digits)
|
|
865
|
+
* @returns Broker information with CNPJ, names, status, and contact
|
|
866
|
+
* information
|
|
867
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
868
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
869
|
+
* @throws {BrasilApiNotFoundError} If broker not found
|
|
870
|
+
*
|
|
871
|
+
* @example
|
|
872
|
+
* ```typescript
|
|
873
|
+
* const broker = await getCorretora("00000000000000");
|
|
874
|
+
* console.log(broker);
|
|
875
|
+
* // {
|
|
876
|
+
* // cnpj: "00000000000000",
|
|
877
|
+
* // tipo: "Corretora de Valores",
|
|
878
|
+
* // nome_social: "Broker S.A.",
|
|
879
|
+
* // nome_comercial: "Broker",
|
|
880
|
+
* // status: "EM FUNCIONAMENTO NORMAL",
|
|
881
|
+
* // email: "contact@broker.com",
|
|
882
|
+
* // telefone: "11999999999",
|
|
883
|
+
* // ...
|
|
884
|
+
* // }
|
|
885
|
+
* ```
|
|
886
|
+
*/
|
|
887
|
+
declare function getCorretora(cnpj: string): Promise<Corretora>;
|
|
888
|
+
import { z as z13 } from "zod";
|
|
889
|
+
/**
|
|
890
|
+
* Schema for city information from CPTEC
|
|
891
|
+
*/
|
|
892
|
+
declare const CidadeSchema: z13.ZodObject<{
|
|
893
|
+
id: z13.ZodNumber;
|
|
894
|
+
nome: z13.ZodString;
|
|
895
|
+
estado: z13.ZodString;
|
|
896
|
+
}, "strip", z13.ZodTypeAny, {
|
|
897
|
+
nome?: string;
|
|
898
|
+
id?: number;
|
|
899
|
+
estado?: string;
|
|
900
|
+
}, {
|
|
901
|
+
nome?: string;
|
|
902
|
+
id?: number;
|
|
903
|
+
estado?: string;
|
|
904
|
+
}>;
|
|
905
|
+
/**
|
|
906
|
+
* Type for city from CPTEC
|
|
907
|
+
*/
|
|
908
|
+
type Cidade = z13.infer<typeof CidadeSchema>;
|
|
909
|
+
/**
|
|
910
|
+
* Schema for weather forecast
|
|
911
|
+
*/
|
|
912
|
+
declare const PrevisaoSchema: z13.ZodObject<{
|
|
913
|
+
cidade: z13.ZodString;
|
|
914
|
+
estado: z13.ZodString;
|
|
915
|
+
atualizado_em: z13.ZodString;
|
|
916
|
+
clima: z13.ZodArray<z13.ZodObject<{
|
|
917
|
+
data: z13.ZodString;
|
|
918
|
+
condicao: z13.ZodString;
|
|
919
|
+
condicao_desc: z13.ZodOptional<z13.ZodString>;
|
|
920
|
+
min: z13.ZodNumber;
|
|
921
|
+
max: z13.ZodNumber;
|
|
922
|
+
indice_uv: z13.ZodNumber;
|
|
923
|
+
}, "strip", z13.ZodTypeAny, {
|
|
924
|
+
data?: string;
|
|
925
|
+
condicao?: string;
|
|
926
|
+
condicao_desc?: string;
|
|
927
|
+
min?: number;
|
|
928
|
+
max?: number;
|
|
929
|
+
indice_uv?: number;
|
|
930
|
+
}, {
|
|
931
|
+
data?: string;
|
|
932
|
+
condicao?: string;
|
|
933
|
+
condicao_desc?: string;
|
|
934
|
+
min?: number;
|
|
935
|
+
max?: number;
|
|
936
|
+
indice_uv?: number;
|
|
937
|
+
}>, "many">;
|
|
938
|
+
}, "strip", z13.ZodTypeAny, {
|
|
939
|
+
estado?: string;
|
|
940
|
+
cidade?: string;
|
|
941
|
+
atualizado_em?: string;
|
|
942
|
+
clima?: {
|
|
943
|
+
data?: string;
|
|
944
|
+
condicao?: string;
|
|
945
|
+
condicao_desc?: string;
|
|
946
|
+
min?: number;
|
|
947
|
+
max?: number;
|
|
948
|
+
indice_uv?: number;
|
|
949
|
+
}[];
|
|
950
|
+
}, {
|
|
951
|
+
estado?: string;
|
|
952
|
+
cidade?: string;
|
|
953
|
+
atualizado_em?: string;
|
|
954
|
+
clima?: {
|
|
955
|
+
data?: string;
|
|
956
|
+
condicao?: string;
|
|
957
|
+
condicao_desc?: string;
|
|
958
|
+
min?: number;
|
|
959
|
+
max?: number;
|
|
960
|
+
indice_uv?: number;
|
|
961
|
+
}[];
|
|
962
|
+
}>;
|
|
963
|
+
/**
|
|
964
|
+
* Type for weather forecast
|
|
965
|
+
*/
|
|
966
|
+
type Previsao = z13.infer<typeof PrevisaoSchema>;
|
|
967
|
+
/**
|
|
968
|
+
* Schema for ocean wave forecast
|
|
969
|
+
*/
|
|
970
|
+
declare const PrevisaoOndasSchema: z13.ZodObject<{
|
|
971
|
+
cidade: z13.ZodString;
|
|
972
|
+
estado: z13.ZodString;
|
|
973
|
+
atualizado_em: z13.ZodString;
|
|
974
|
+
ondas: z13.ZodArray<z13.ZodObject<{
|
|
975
|
+
data: z13.ZodString;
|
|
976
|
+
dados_ondas: z13.ZodArray<z13.ZodObject<{
|
|
977
|
+
hora: z13.ZodOptional<z13.ZodString>;
|
|
978
|
+
vento: z13.ZodNumber;
|
|
979
|
+
direcao_vento: z13.ZodString;
|
|
980
|
+
direcao_vento_desc: z13.ZodOptional<z13.ZodString>;
|
|
981
|
+
altura_onda: z13.ZodNumber;
|
|
982
|
+
direcao_onda: z13.ZodOptional<z13.ZodString>;
|
|
983
|
+
direcao_onda_desc: z13.ZodOptional<z13.ZodString>;
|
|
984
|
+
agitation: z13.ZodString;
|
|
985
|
+
}, "strip", z13.ZodTypeAny, {
|
|
986
|
+
hora?: string;
|
|
987
|
+
vento?: number;
|
|
988
|
+
direcao_vento?: string;
|
|
989
|
+
direcao_vento_desc?: string;
|
|
990
|
+
altura_onda?: number;
|
|
991
|
+
direcao_onda?: string;
|
|
992
|
+
direcao_onda_desc?: string;
|
|
993
|
+
agitation?: string;
|
|
994
|
+
}, {
|
|
995
|
+
hora?: string;
|
|
996
|
+
vento?: number;
|
|
997
|
+
direcao_vento?: string;
|
|
998
|
+
direcao_vento_desc?: string;
|
|
999
|
+
altura_onda?: number;
|
|
1000
|
+
direcao_onda?: string;
|
|
1001
|
+
direcao_onda_desc?: string;
|
|
1002
|
+
agitation?: string;
|
|
1003
|
+
}>, "many">;
|
|
1004
|
+
}, "strip", z13.ZodTypeAny, {
|
|
1005
|
+
data?: string;
|
|
1006
|
+
dados_ondas?: {
|
|
1007
|
+
hora?: string;
|
|
1008
|
+
vento?: number;
|
|
1009
|
+
direcao_vento?: string;
|
|
1010
|
+
direcao_vento_desc?: string;
|
|
1011
|
+
altura_onda?: number;
|
|
1012
|
+
direcao_onda?: string;
|
|
1013
|
+
direcao_onda_desc?: string;
|
|
1014
|
+
agitation?: string;
|
|
1015
|
+
}[];
|
|
1016
|
+
}, {
|
|
1017
|
+
data?: string;
|
|
1018
|
+
dados_ondas?: {
|
|
1019
|
+
hora?: string;
|
|
1020
|
+
vento?: number;
|
|
1021
|
+
direcao_vento?: string;
|
|
1022
|
+
direcao_vento_desc?: string;
|
|
1023
|
+
altura_onda?: number;
|
|
1024
|
+
direcao_onda?: string;
|
|
1025
|
+
direcao_onda_desc?: string;
|
|
1026
|
+
agitation?: string;
|
|
1027
|
+
}[];
|
|
1028
|
+
}>, "many">;
|
|
1029
|
+
}, "strip", z13.ZodTypeAny, {
|
|
1030
|
+
estado?: string;
|
|
1031
|
+
cidade?: string;
|
|
1032
|
+
atualizado_em?: string;
|
|
1033
|
+
ondas?: {
|
|
1034
|
+
data?: string;
|
|
1035
|
+
dados_ondas?: {
|
|
1036
|
+
hora?: string;
|
|
1037
|
+
vento?: number;
|
|
1038
|
+
direcao_vento?: string;
|
|
1039
|
+
direcao_vento_desc?: string;
|
|
1040
|
+
altura_onda?: number;
|
|
1041
|
+
direcao_onda?: string;
|
|
1042
|
+
direcao_onda_desc?: string;
|
|
1043
|
+
agitation?: string;
|
|
1044
|
+
}[];
|
|
1045
|
+
}[];
|
|
1046
|
+
}, {
|
|
1047
|
+
estado?: string;
|
|
1048
|
+
cidade?: string;
|
|
1049
|
+
atualizado_em?: string;
|
|
1050
|
+
ondas?: {
|
|
1051
|
+
data?: string;
|
|
1052
|
+
dados_ondas?: {
|
|
1053
|
+
hora?: string;
|
|
1054
|
+
vento?: number;
|
|
1055
|
+
direcao_vento?: string;
|
|
1056
|
+
direcao_vento_desc?: string;
|
|
1057
|
+
altura_onda?: number;
|
|
1058
|
+
direcao_onda?: string;
|
|
1059
|
+
direcao_onda_desc?: string;
|
|
1060
|
+
agitation?: string;
|
|
1061
|
+
}[];
|
|
1062
|
+
}[];
|
|
1063
|
+
}>;
|
|
1064
|
+
/**
|
|
1065
|
+
* Type for ocean wave forecast
|
|
1066
|
+
*/
|
|
1067
|
+
type PrevisaoOndas = z13.infer<typeof PrevisaoOndasSchema>;
|
|
1068
|
+
/**
|
|
1069
|
+
* Get all cities available for weather forecast from CPTEC
|
|
1070
|
+
*
|
|
1071
|
+
* @returns Array of cities with ID, name, and state
|
|
1072
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1073
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1074
|
+
*
|
|
1075
|
+
* @example
|
|
1076
|
+
* ```typescript
|
|
1077
|
+
* const cities = await getCidades();
|
|
1078
|
+
* console.log(cities);
|
|
1079
|
+
* // [
|
|
1080
|
+
* // { id: 244, nome: "São Paulo", estado: "SP" },
|
|
1081
|
+
* // { id: 201, nome: "Rio de Janeiro", estado: "RJ" },
|
|
1082
|
+
* // ...
|
|
1083
|
+
* // ]
|
|
1084
|
+
* ```
|
|
1085
|
+
*/
|
|
1086
|
+
declare function getCidades(): Promise<Cidade[]>;
|
|
1087
|
+
/**
|
|
1088
|
+
* Get weather forecast for a specific city
|
|
1089
|
+
*
|
|
1090
|
+
* @param cityCode - CPTEC city code
|
|
1091
|
+
* @param days - Number of days for forecast (1-6, default: 1)
|
|
1092
|
+
* @returns Weather forecast with city info and climate data
|
|
1093
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1094
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1095
|
+
* @throws {BrasilApiNotFoundError} If city not found
|
|
1096
|
+
*
|
|
1097
|
+
* @example
|
|
1098
|
+
* ```typescript
|
|
1099
|
+
* const forecast = await getPrevisao(244, 3);
|
|
1100
|
+
* console.log(forecast);
|
|
1101
|
+
* // {
|
|
1102
|
+
* // cidade: "São Paulo",
|
|
1103
|
+
* // estado: "SP",
|
|
1104
|
+
* // atualizado_em: "2024-01-30 10:00:00",
|
|
1105
|
+
* // clima: [
|
|
1106
|
+
* // {
|
|
1107
|
+
* // data: "2024-01-30",
|
|
1108
|
+
* // condicao: "ps",
|
|
1109
|
+
* // min: 18,
|
|
1110
|
+
* // max: 28,
|
|
1111
|
+
* // indice_uv: 8
|
|
1112
|
+
* // },
|
|
1113
|
+
* // ...
|
|
1114
|
+
* // ]
|
|
1115
|
+
* // }
|
|
1116
|
+
* ```
|
|
1117
|
+
*/
|
|
1118
|
+
declare function getPrevisao(cityCode: number, days?: number): Promise<Previsao>;
|
|
1119
|
+
/**
|
|
1120
|
+
* Get ocean wave forecast for coastal cities
|
|
1121
|
+
*
|
|
1122
|
+
* @param cityCode - CPTEC city code (coastal city)
|
|
1123
|
+
* @returns Ocean wave forecast with wind, wave height, and agitation data
|
|
1124
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1125
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1126
|
+
* @throws {BrasilApiNotFoundError} If city not found
|
|
1127
|
+
*
|
|
1128
|
+
* @example
|
|
1129
|
+
* ```typescript
|
|
1130
|
+
* const waves = await getPrevisaoOndas(241);
|
|
1131
|
+
* console.log(waves);
|
|
1132
|
+
* // {
|
|
1133
|
+
* // cidade: "Santos",
|
|
1134
|
+
* // estado: "SP",
|
|
1135
|
+
* // atualizado_em: "2024-01-30 10:00:00",
|
|
1136
|
+
* // ondas: [
|
|
1137
|
+
* // {
|
|
1138
|
+
* // data: "2024-01-30",
|
|
1139
|
+
* // dados_ondas: [
|
|
1140
|
+
* // {
|
|
1141
|
+
* // vento: 15,
|
|
1142
|
+
* // direcao_vento: "SE",
|
|
1143
|
+
* // vento_medio: 12,
|
|
1144
|
+
* // agitation: "Fraca",
|
|
1145
|
+
* // altura_onda: 1.2
|
|
1146
|
+
* // },
|
|
1147
|
+
* // ...
|
|
1148
|
+
* // ]
|
|
1149
|
+
* // },
|
|
1150
|
+
* // ...
|
|
1151
|
+
* // ]
|
|
1152
|
+
* // }
|
|
1153
|
+
* ```
|
|
1154
|
+
*/
|
|
1155
|
+
declare function getPrevisaoOndas(cityCode: number): Promise<PrevisaoOndas>;
|
|
1156
|
+
import { z as z14 } from "zod";
|
|
1157
|
+
/**
|
|
1158
|
+
* Schema for currency information
|
|
1159
|
+
*/
|
|
1160
|
+
declare const MoedaSchema: z14.ZodObject<{
|
|
1161
|
+
simbolo: z14.ZodString;
|
|
1162
|
+
nome: z14.ZodString;
|
|
1163
|
+
tipo_moeda: z14.ZodString;
|
|
1164
|
+
}, "strip", z14.ZodTypeAny, {
|
|
1165
|
+
simbolo?: string;
|
|
1166
|
+
nome?: string;
|
|
1167
|
+
tipo_moeda?: string;
|
|
1168
|
+
}, {
|
|
1169
|
+
simbolo?: string;
|
|
1170
|
+
nome?: string;
|
|
1171
|
+
tipo_moeda?: string;
|
|
1172
|
+
}>;
|
|
1173
|
+
/**
|
|
1174
|
+
* Type for currency
|
|
1175
|
+
*/
|
|
1176
|
+
type Moeda = z14.infer<typeof MoedaSchema>;
|
|
1177
|
+
/**
|
|
1178
|
+
* Schema for currency exchange rate response
|
|
1179
|
+
*/
|
|
1180
|
+
declare const CotacaoResponseSchema: z14.ZodObject<{
|
|
1181
|
+
moeda: z14.ZodString;
|
|
1182
|
+
data: z14.ZodString;
|
|
1183
|
+
cotacoes: z14.ZodArray<z14.ZodObject<{
|
|
1184
|
+
paridade_compra: z14.ZodNumber;
|
|
1185
|
+
paridade_venda: z14.ZodNumber;
|
|
1186
|
+
cotacao_compra: z14.ZodNumber;
|
|
1187
|
+
cotacao_venda: z14.ZodNumber;
|
|
1188
|
+
data_hora_cotacao: z14.ZodString;
|
|
1189
|
+
tipo_boletim: z14.ZodString;
|
|
1190
|
+
}, "strip", z14.ZodTypeAny, {
|
|
1191
|
+
paridade_compra?: number;
|
|
1192
|
+
paridade_venda?: number;
|
|
1193
|
+
cotacao_compra?: number;
|
|
1194
|
+
cotacao_venda?: number;
|
|
1195
|
+
data_hora_cotacao?: string;
|
|
1196
|
+
tipo_boletim?: string;
|
|
1197
|
+
}, {
|
|
1198
|
+
paridade_compra?: number;
|
|
1199
|
+
paridade_venda?: number;
|
|
1200
|
+
cotacao_compra?: number;
|
|
1201
|
+
cotacao_venda?: number;
|
|
1202
|
+
data_hora_cotacao?: string;
|
|
1203
|
+
tipo_boletim?: string;
|
|
1204
|
+
}>, "many">;
|
|
1205
|
+
}, "strip", z14.ZodTypeAny, {
|
|
1206
|
+
moeda?: string;
|
|
1207
|
+
data?: string;
|
|
1208
|
+
cotacoes?: {
|
|
1209
|
+
paridade_compra?: number;
|
|
1210
|
+
paridade_venda?: number;
|
|
1211
|
+
cotacao_compra?: number;
|
|
1212
|
+
cotacao_venda?: number;
|
|
1213
|
+
data_hora_cotacao?: string;
|
|
1214
|
+
tipo_boletim?: string;
|
|
1215
|
+
}[];
|
|
1216
|
+
}, {
|
|
1217
|
+
moeda?: string;
|
|
1218
|
+
data?: string;
|
|
1219
|
+
cotacoes?: {
|
|
1220
|
+
paridade_compra?: number;
|
|
1221
|
+
paridade_venda?: number;
|
|
1222
|
+
cotacao_compra?: number;
|
|
1223
|
+
cotacao_venda?: number;
|
|
1224
|
+
data_hora_cotacao?: string;
|
|
1225
|
+
tipo_boletim?: string;
|
|
1226
|
+
}[];
|
|
1227
|
+
}>;
|
|
1228
|
+
/**
|
|
1229
|
+
* Type for currency exchange rate response
|
|
1230
|
+
*/
|
|
1231
|
+
type Cotacao = z14.infer<typeof CotacaoResponseSchema>;
|
|
1232
|
+
/**
|
|
1233
|
+
* Get list of available currencies for exchange rate queries
|
|
1234
|
+
*
|
|
1235
|
+
* @returns Array of available currencies with symbol, name, and type
|
|
1236
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1237
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1238
|
+
*
|
|
1239
|
+
* @example
|
|
1240
|
+
* ```typescript
|
|
1241
|
+
* const currencies = await getMoedas();
|
|
1242
|
+
* console.log(currencies);
|
|
1243
|
+
* // [
|
|
1244
|
+
* // {
|
|
1245
|
+
* // simbolo: "USD",
|
|
1246
|
+
* // nome: "Dólar Americano",
|
|
1247
|
+
* // tipo_moeda: "A"
|
|
1248
|
+
* // },
|
|
1249
|
+
* // {
|
|
1250
|
+
* // simbolo: "EUR",
|
|
1251
|
+
* // nome: "Euro",
|
|
1252
|
+
* // tipo_moeda: "B"
|
|
1253
|
+
* // },
|
|
1254
|
+
* // ...
|
|
1255
|
+
* // ]
|
|
1256
|
+
* ```
|
|
1257
|
+
*/
|
|
1258
|
+
declare function getMoedas(): Promise<Moeda[]>;
|
|
1259
|
+
/**
|
|
1260
|
+
* Get exchange rate for a specific currency on a specific date
|
|
1261
|
+
*
|
|
1262
|
+
* @param moeda - Currency symbol (e.g., "USD", "EUR")
|
|
1263
|
+
* @param data - Date in format "MM-DD-YYYY"
|
|
1264
|
+
* @returns Exchange rate information with array of quotations
|
|
1265
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1266
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1267
|
+
* @throws {BrasilApiNotFoundError} If rate not found for date
|
|
1268
|
+
*
|
|
1269
|
+
* @example
|
|
1270
|
+
* ```typescript
|
|
1271
|
+
* const rate = await getCotacao("USD", "01-30-2024");
|
|
1272
|
+
* console.log(rate);
|
|
1273
|
+
* // {
|
|
1274
|
+
* // moeda: "USD",
|
|
1275
|
+
* // data: "2024-01-30",
|
|
1276
|
+
* // cotacoes: [
|
|
1277
|
+
* // {
|
|
1278
|
+
* // paridade_compra: 1,
|
|
1279
|
+
* // paridade_venda: 1,
|
|
1280
|
+
* // cotacao_compra: 4.95,
|
|
1281
|
+
* // cotacao_venda: 4.96,
|
|
1282
|
+
* // data_hora_cotacao: "2024-01-30 13:00:00",
|
|
1283
|
+
* // tipo_boletim: "FECHAMENTO PTAX"
|
|
1284
|
+
* // },
|
|
1285
|
+
* // ...
|
|
1286
|
+
* // ]
|
|
1287
|
+
* // }
|
|
1288
|
+
* ```
|
|
1289
|
+
*/
|
|
1290
|
+
declare function getCotacao(moeda: string, data: string): Promise<Cotacao>;
|
|
1291
|
+
import { z as z15 } from "zod";
|
|
1292
|
+
/**
|
|
1293
|
+
* Vehicle type for FIPE queries
|
|
1294
|
+
*/
|
|
1295
|
+
type TipoVeiculo = "carros" | "motos" | "caminhoes";
|
|
1296
|
+
/**
|
|
1297
|
+
* Schema for vehicle brand
|
|
1298
|
+
*/
|
|
1299
|
+
declare const FipeMarcaSchema: z15.ZodObject<{
|
|
1300
|
+
nome: z15.ZodString;
|
|
1301
|
+
valor: z15.ZodString;
|
|
1302
|
+
}, "strip", z15.ZodTypeAny, {
|
|
1303
|
+
nome?: string;
|
|
1304
|
+
valor?: string;
|
|
1305
|
+
}, {
|
|
1306
|
+
nome?: string;
|
|
1307
|
+
valor?: string;
|
|
1308
|
+
}>;
|
|
1309
|
+
/**
|
|
1310
|
+
* Type for vehicle brand
|
|
1311
|
+
*/
|
|
1312
|
+
type FipeMarca = z15.infer<typeof FipeMarcaSchema>;
|
|
1313
|
+
/**
|
|
1314
|
+
* Schema for vehicle price information
|
|
1315
|
+
*/
|
|
1316
|
+
declare const FipePrecoSchema: z15.ZodObject<{
|
|
1317
|
+
valor: z15.ZodString;
|
|
1318
|
+
marca: z15.ZodString;
|
|
1319
|
+
modelo: z15.ZodString;
|
|
1320
|
+
anoModelo: z15.ZodNumber;
|
|
1321
|
+
combustivel: z15.ZodString;
|
|
1322
|
+
codigoFipe: z15.ZodString;
|
|
1323
|
+
mesReferencia: z15.ZodString;
|
|
1324
|
+
tipoVeiculo: z15.ZodNumber;
|
|
1325
|
+
siglaCombustivel: z15.ZodString;
|
|
1326
|
+
dataConsulta: z15.ZodOptional<z15.ZodString>;
|
|
1327
|
+
}, "strip", z15.ZodTypeAny, {
|
|
1328
|
+
valor?: string;
|
|
1329
|
+
marca?: string;
|
|
1330
|
+
modelo?: string;
|
|
1331
|
+
anoModelo?: number;
|
|
1332
|
+
combustivel?: string;
|
|
1333
|
+
codigoFipe?: string;
|
|
1334
|
+
mesReferencia?: string;
|
|
1335
|
+
tipoVeiculo?: number;
|
|
1336
|
+
siglaCombustivel?: string;
|
|
1337
|
+
dataConsulta?: string;
|
|
1338
|
+
}, {
|
|
1339
|
+
valor?: string;
|
|
1340
|
+
marca?: string;
|
|
1341
|
+
modelo?: string;
|
|
1342
|
+
anoModelo?: number;
|
|
1343
|
+
combustivel?: string;
|
|
1344
|
+
codigoFipe?: string;
|
|
1345
|
+
mesReferencia?: string;
|
|
1346
|
+
tipoVeiculo?: number;
|
|
1347
|
+
siglaCombustivel?: string;
|
|
1348
|
+
dataConsulta?: string;
|
|
1349
|
+
}>;
|
|
1350
|
+
/**
|
|
1351
|
+
* Type for vehicle price information
|
|
1352
|
+
*/
|
|
1353
|
+
type FipePreco = z15.infer<typeof FipePrecoSchema>;
|
|
1354
|
+
/**
|
|
1355
|
+
* Schema for FIPE reference table
|
|
1356
|
+
*/
|
|
1357
|
+
declare const FipeTabelaSchema: z15.ZodObject<{
|
|
1358
|
+
codigo: z15.ZodNumber;
|
|
1359
|
+
mes: z15.ZodString;
|
|
1360
|
+
}, "strip", z15.ZodTypeAny, {
|
|
1361
|
+
codigo?: number;
|
|
1362
|
+
mes?: string;
|
|
1363
|
+
}, {
|
|
1364
|
+
codigo?: number;
|
|
1365
|
+
mes?: string;
|
|
1366
|
+
}>;
|
|
1367
|
+
/**
|
|
1368
|
+
* Type for FIPE reference table
|
|
1369
|
+
*/
|
|
1370
|
+
type FipeTabela = z15.infer<typeof FipeTabelaSchema>;
|
|
1371
|
+
/**
|
|
1372
|
+
* Get list of vehicle brands from FIPE
|
|
1373
|
+
*
|
|
1374
|
+
* @param tipoVeiculo - Type of vehicle ("carros", "motos", or
|
|
1375
|
+
* "caminhoes")
|
|
1376
|
+
* @returns Array of brands with name and value code
|
|
1377
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1378
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1379
|
+
*
|
|
1380
|
+
* @example
|
|
1381
|
+
* ```typescript
|
|
1382
|
+
* const brands = await getFipeMarcas("carros");
|
|
1383
|
+
* console.log(brands);
|
|
1384
|
+
* // [
|
|
1385
|
+
* // { nome: "Acura", valor: "1" },
|
|
1386
|
+
* // { nome: "Audi", valor: "2" },
|
|
1387
|
+
* // { nome: "BMW", valor: "3" },
|
|
1388
|
+
* // ...
|
|
1389
|
+
* // ]
|
|
1390
|
+
* ```
|
|
1391
|
+
*/
|
|
1392
|
+
declare function getFipeMarcas(tipoVeiculo: TipoVeiculo): Promise<FipeMarca[]>;
|
|
1393
|
+
/**
|
|
1394
|
+
* Get vehicle price information by FIPE code
|
|
1395
|
+
*
|
|
1396
|
+
* @param codigoFipe - FIPE code (e.g., "004278-1")
|
|
1397
|
+
* @returns Vehicle price information including brand, model, year, fuel
|
|
1398
|
+
* type, and price
|
|
1399
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1400
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1401
|
+
* @throws {BrasilApiNotFoundError} If vehicle not found
|
|
1402
|
+
*
|
|
1403
|
+
* @example
|
|
1404
|
+
* ```typescript
|
|
1405
|
+
* const price = await getFipePreco("004278-1");
|
|
1406
|
+
* console.log(price);
|
|
1407
|
+
* // {
|
|
1408
|
+
* // valor: "R$ 45.000,00",
|
|
1409
|
+
* // marca: "VW - VolksWagen",
|
|
1410
|
+
* // modelo: "Gol 1.0",
|
|
1411
|
+
* // anoModelo: 2020,
|
|
1412
|
+
* // combustivel: "Gasolina",
|
|
1413
|
+
* // codigoFipe: "004278-1",
|
|
1414
|
+
* // mesReferencia: "janeiro de 2024",
|
|
1415
|
+
* // tipoVeiculo: 1,
|
|
1416
|
+
* // siglaCombustivel: "G"
|
|
1417
|
+
* // }
|
|
1418
|
+
* ```
|
|
1419
|
+
*/
|
|
1420
|
+
declare function getFipePreco(codigoFipe: string): Promise<FipePreco>;
|
|
1421
|
+
/**
|
|
1422
|
+
* Get FIPE reference tables
|
|
1423
|
+
*
|
|
1424
|
+
* @returns Array of reference tables with code and month description
|
|
1425
|
+
* @throws {BrasilApiNetworkError} On network errors
|
|
1426
|
+
* @throws {BrasilApiResponseError} On invalid response
|
|
1427
|
+
*
|
|
1428
|
+
* @example
|
|
1429
|
+
* ```typescript
|
|
1430
|
+
* const tables = await getFipeTabelas();
|
|
1431
|
+
* console.log(tables);
|
|
1432
|
+
* // [
|
|
1433
|
+
* // { codigo: 290, mes: "janeiro de 2024" },
|
|
1434
|
+
* // { codigo: 289, mes: "dezembro de 2023" },
|
|
1435
|
+
* // { codigo: 288, mes: "novembro de 2023" },
|
|
1436
|
+
* // ...
|
|
1437
|
+
* // ]
|
|
1438
|
+
* ```
|
|
1439
|
+
*/
|
|
1440
|
+
declare function getFipeTabelas(): Promise<FipeTabela[]>;
|
|
1441
|
+
declare const VERSION = "0.1.0";
|
|
1442
|
+
export { setConfig, resetConfig, getTaxas, getTaxa, getPrevisaoOndas, getPrevisao, getPixParticipants, getNcms, getNcm, getMunicipios, getMoedas, getIsbn, getFipeTabelas, getFipePreco, getFipeMarcas, getFeriados, getEstados, getDomainStatus, getDdd, getCotacao, getCorretoras, getCorretora, getConfig, getCnpj, getCidades, getCepV2, getCep, getBanks, getBank, configureBrasilApi, VERSION, TipoVeiculo, Taxa, PrevisaoOndas, Previsao, PixParticipant, Ncm, Municipio, Moeda, IsbnResponse, FipeTabela, FipePreco, FipeMarca, Feriado, Estado, DomainStatus, DddResponse, Cotacao, Corretora, CnpjResponse, Cidade, CepV2Response, CepResponse, BrasilApiValidationError, BrasilApiResponseError, BrasilApiNetworkError, BrasilApiError, BrasilApiConfig, Bank };
|