fiscalapi 4.0.141 → 4.0.270

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.
Files changed (34) hide show
  1. package/README.md +54 -18
  2. package/dist/cjs/abstractions/download-catalog.inteface.js +3 -0
  3. package/dist/cjs/abstractions/download-request.service.interface.js +3 -0
  4. package/dist/cjs/abstractions/download-rule.service.inteface.js +3 -0
  5. package/dist/cjs/abstractions/fiscalapi-client.interface.js +1 -1
  6. package/dist/cjs/abstractions/person-service.interface.js +1 -1
  7. package/dist/cjs/index.js +3 -4
  8. package/dist/cjs/models/download.js +3 -0
  9. package/dist/cjs/services/download-catalog.service.js +39 -0
  10. package/dist/cjs/services/download-request.service.js +92 -0
  11. package/dist/cjs/services/download-rule.service.js +30 -0
  12. package/dist/cjs/services/fiscalapi-client.js +7 -1
  13. package/dist/esm/abstractions/download-catalog.inteface.js +2 -0
  14. package/dist/esm/abstractions/download-request.service.interface.js +2 -0
  15. package/dist/esm/abstractions/download-rule.service.inteface.js +2 -0
  16. package/dist/esm/abstractions/fiscalapi-client.interface.js +1 -1
  17. package/dist/esm/abstractions/person-service.interface.js +1 -1
  18. package/dist/esm/index.js +3 -4
  19. package/dist/esm/models/download.js +2 -0
  20. package/dist/esm/services/download-catalog.service.js +35 -0
  21. package/dist/esm/services/download-request.service.js +88 -0
  22. package/dist/esm/services/download-rule.service.js +26 -0
  23. package/dist/esm/services/fiscalapi-client.js +7 -1
  24. package/dist/types/abstractions/download-catalog.inteface.d.ts +22 -0
  25. package/dist/types/abstractions/download-request.service.interface.d.ts +52 -0
  26. package/dist/types/abstractions/download-rule.service.inteface.d.ts +15 -0
  27. package/dist/types/abstractions/fiscalapi-client.interface.d.ts +15 -0
  28. package/dist/types/index.d.ts +18 -16
  29. package/dist/types/models/download.d.ts +432 -0
  30. package/dist/types/services/download-catalog.service.d.ts +29 -0
  31. package/dist/types/services/download-request.service.d.ts +60 -0
  32. package/dist/types/services/download-rule.service.d.ts +22 -0
  33. package/dist/types/services/fiscalapi-client.d.ts +22 -1
  34. package/package.json +4 -3
@@ -0,0 +1,432 @@
1
+ import { DateTime } from 'luxon';
2
+ import { BaseDto } from '../common/base-dto';
3
+ import { CatalogDto } from '../common/catalog-dto';
4
+ import { Person } from './person';
5
+ /**
6
+ * Representa una plantilla para crear solicitudes de descarga de CFDI o metadatos.
7
+ */
8
+ export interface DownloadRule extends BaseDto {
9
+ /** ID de la persona asociada a la regla de descarga */
10
+ personId?: string;
11
+ /** Información de la persona asociada */
12
+ person?: Person;
13
+ /** RFC (Tax Identification Number) del solicitante */
14
+ tin?: string;
15
+ /** Descripción de la regla de descarga */
16
+ description?: string;
17
+ /**
18
+ * Estado de la regla de descarga
19
+ * 1: Pendiente, 2: Aprobada, 3: Rechazada, 4: Abandonada
20
+ */
21
+ downloadRuleStatusId?: string;
22
+ /** Catálogo del estado de la regla de descarga */
23
+ downloadRuleStatus?: CatalogDto;
24
+ /**
25
+ * Tipo de consulta SAT
26
+ * CFDI, Metadata
27
+ */
28
+ satQueryTypeId?: string;
29
+ /** Catálogo del tipo de consulta SAT */
30
+ satQueryType?: CatalogDto;
31
+ /**
32
+ * Tipo de descarga
33
+ * Emitidos, Recibidos
34
+ */
35
+ downloadTypeId?: string;
36
+ /** Catálogo del tipo de descarga */
37
+ downloadType?: CatalogDto;
38
+ /**
39
+ * Estado de la factura SAT
40
+ * Vigente, Cancelado
41
+ */
42
+ satInvoiceStatusId?: string;
43
+ /** Catálogo del estado de la factura SAT */
44
+ satInvoiceStatus?: CatalogDto;
45
+ }
46
+ /**
47
+ * Representa una solicitud de descarga de CFDI o metadatos
48
+ */
49
+ export interface DownloadRequest extends BaseDto {
50
+ /** Número consecutivo de la solicitud */
51
+ consecutive?: number;
52
+ /**
53
+ * ID de solicitud SAT utilizado para rastrear la solicitud en el sistema SAT
54
+ */
55
+ satRequestId?: string;
56
+ /**
57
+ * ID de la regla asociada con la solicitud
58
+ */
59
+ downloadRuleId?: string;
60
+ /** ID del tipo de descarga */
61
+ downloadTypeId?: string;
62
+ /** Catálogo del tipo de descarga */
63
+ downloadType?: CatalogDto;
64
+ /** ID del tipo de solicitud de descarga */
65
+ downloadRequestTypeId?: string;
66
+ /** Catálogo del tipo de solicitud de descarga */
67
+ downloadRequestType?: CatalogDto;
68
+ /**
69
+ * RFC Receptor
70
+ * CFDI específicos o metadatos del RFC receptor dado
71
+ */
72
+ recipientTin?: string;
73
+ /**
74
+ * RFC Emisor
75
+ * CFDI específicos o metadatos del RFC emisor dado
76
+ */
77
+ issuerTin?: string;
78
+ /**
79
+ * RFC Solicitante
80
+ * RFC quien está solicitando la consulta
81
+ */
82
+ requesterTin?: string;
83
+ /**
84
+ * Fecha inicial
85
+ * Fecha de inicio para la solicitud asociada
86
+ */
87
+ startDate: DateTime;
88
+ /**
89
+ * Fecha final
90
+ * Fecha de fin para la solicitud asociada
91
+ */
92
+ endDate: DateTime;
93
+ /**
94
+ * Tipo de solicitud
95
+ * Tipo de solicitud para la petición
96
+ * CFDI o Metadata
97
+ */
98
+ satQueryTypeId?: string;
99
+ /** Catálogo del tipo de consulta SAT */
100
+ satQueryType?: CatalogDto;
101
+ /**
102
+ * Tipo de comprobante
103
+ * Tipo específico de factura a solicitar
104
+ * Ingreso, Egreso, Traslado, Nómina, Pago, Todos
105
+ */
106
+ satInvoiceTypeId?: string;
107
+ /** Catálogo del tipo de factura SAT */
108
+ satInvoiceType?: CatalogDto;
109
+ /**
110
+ * Estado del comprobante
111
+ * Estado de los CFDI a solicitar
112
+ */
113
+ satInvoiceStatusId?: string;
114
+ /** Catálogo del estado de la factura SAT */
115
+ satInvoiceStatus?: CatalogDto;
116
+ /**
117
+ * Complemento
118
+ * Complementos CFDI para la solicitud
119
+ */
120
+ satInvoiceComplementId?: string;
121
+ /** Catálogo del complemento de factura SAT */
122
+ satInvoiceComplement?: CatalogDto;
123
+ /**
124
+ * Estado actual de la solicitud
125
+ * DESCONOCIDO, ACEPTADA, EN PROCESO, TERMINADA, ERROR, RECHAZADA, VENCIDA
126
+ */
127
+ satRequestStatusId?: string;
128
+ /** Catálogo del estado de la solicitud SAT */
129
+ satRequestStatus?: CatalogDto;
130
+ /**
131
+ * ID del estado de la solicitud en Fiscalapi
132
+ */
133
+ downloadRequestStatusId?: string;
134
+ /** Catálogo del estado de la solicitud de descarga */
135
+ downloadRequestStatus?: CatalogDto;
136
+ /**
137
+ * Fecha del último intento
138
+ * Fecha del último intento para la solicitud asociada
139
+ */
140
+ lastAttemptDate?: DateTime | string;
141
+ /**
142
+ * Fecha del siguiente intento
143
+ * Fecha del siguiente intento para la solicitud asociada
144
+ */
145
+ nextAttemptDate?: DateTime | string;
146
+ /**
147
+ * Número de CFDI encontrados para la solicitud cuando la solicitud está terminada
148
+ */
149
+ invoiceCount?: number;
150
+ /**
151
+ * Lista de IDs de paquetes disponibles para descarga cuando la solicitud está terminada
152
+ */
153
+ packageIds?: string[];
154
+ /**
155
+ * Indica si la solicitud está lista para descarga, se vuelve verdadero cuando la solicitud está terminada y los paquetes están disponibles
156
+ */
157
+ isReadyToDownload?: boolean;
158
+ /**
159
+ * Número total de reintentos intentados para esta solicitud a través de todas las re-submisiones
160
+ */
161
+ retriesCount?: number;
162
+ }
163
+ /**
164
+ * Representa un elemento de metadatos de CFDI descargado desde el SAT
165
+ */
166
+ export interface MetadataItem extends BaseDto {
167
+ /**
168
+ * Folio de la factura - UUID
169
+ */
170
+ invoiceUuid?: string;
171
+ /**
172
+ * RFC del emisor del comprobante - RfcEmisor
173
+ */
174
+ issuerTin?: string;
175
+ /**
176
+ * Nombre o razón social del emisor - NombreEmisor
177
+ */
178
+ issuerName?: string;
179
+ /**
180
+ * RFC del receptor del comprobante - RfcReceptor
181
+ */
182
+ recipientTin?: string;
183
+ /**
184
+ * Nombre o razón social del receptor - NombreReceptor
185
+ */
186
+ recipientName?: string;
187
+ /**
188
+ * RFC del Proveedor Autorizado de Certificación (PAC) - RfcPac
189
+ */
190
+ pacTin?: string;
191
+ /**
192
+ * Fecha y hora de emisión del comprobante - FechaEmision
193
+ */
194
+ invoiceDate: DateTime | string;
195
+ /**
196
+ * Fecha y hora de certificación por el SAT - FechaCertificacionSat
197
+ */
198
+ satCertificationDate: DateTime | string;
199
+ /**
200
+ * Monto total del comprobante - Monto
201
+ */
202
+ amount?: number;
203
+ /**
204
+ * Tipo de comprobante (I = Ingreso, E = Egreso, T = Traslado, N = Nómina, P = Pago) - EfectoComprobante
205
+ */
206
+ invoiceType?: string;
207
+ /**
208
+ * Estatus del comprobante (1 = Vigente, 0 = Cancelado) - Estatus
209
+ */
210
+ status?: number;
211
+ /**
212
+ * Fecha de cancelación del comprobante (si aplica) - FechaCancelacion
213
+ */
214
+ cancellationDate?: DateTime | string;
215
+ /** ID del paquete de descarga */
216
+ downloadPackageId?: string;
217
+ /** ID de la solicitud de descarga */
218
+ downloadRequestId?: string;
219
+ }
220
+ /**
221
+ * Representa el XML de un CFDI (Comprobante Fiscal Digital por Internet) descargado desde el SAT
222
+ */
223
+ export interface Xml extends BaseDto {
224
+ /** ID de la solicitud de descarga */
225
+ downloadRequestId?: string;
226
+ /** Versión del CFDI */
227
+ version?: string;
228
+ /** Serie */
229
+ series?: string;
230
+ /** Folio */
231
+ number?: string;
232
+ /** Fecha de emisión del CFDI */
233
+ date: DateTime | string;
234
+ /** Código de la forma de pago */
235
+ paymentForm?: string;
236
+ /** Código del método de pago */
237
+ paymentMethod?: string;
238
+ /** Número de certificado del emisor */
239
+ certificateNumber?: string;
240
+ /** Condiciones de pago */
241
+ paymentConditions?: string;
242
+ /** Subtotal del CFDI */
243
+ subTotal?: number;
244
+ /** Descuento aplicado al CFDI */
245
+ discount?: number;
246
+ /** Código de la moneda del CFDI */
247
+ currency?: string;
248
+ /** Tipo de cambio del CFDI (si aplica) */
249
+ exchangeRate?: number;
250
+ /** Total del CFDI */
251
+ total?: number;
252
+ /** Tipo de comprobante (I = Ingreso, E = Egreso, T = Traslado, N = Nómina, P = Pago) */
253
+ invoiceType?: string;
254
+ /** Código de exportación (si aplica) */
255
+ export?: string;
256
+ /** Lugar de expedición del CFDI */
257
+ expeditionZipCode?: string;
258
+ /** Confirmación si aplica */
259
+ confirmation?: string;
260
+ /** Total impuestos retenidos */
261
+ totalWithheldTaxes?: number;
262
+ /** Total impuestos trasladados */
263
+ totalTransferredTaxes?: number;
264
+ /** Información global del CFDI (para CFDI globales) */
265
+ xmlGlobalInformation?: XmlGlobalInformation;
266
+ /** Información de impuestos del CFDI */
267
+ taxes?: XmlTax[];
268
+ /** Información sobre facturas relacionadas del CFDI (CFDI relacionados) */
269
+ xmlRelated?: XmlRelated[];
270
+ /** Información del emisor del CFDI */
271
+ xmlIssuer?: XmlIssuer;
272
+ /** Información del receptor del CFDI */
273
+ xmlRecipient?: XmlRecipient;
274
+ /** Información de los conceptos del CFDI */
275
+ xmlItems?: XmlItem[];
276
+ /** Información de los complementos del CFDI */
277
+ xmlComplements?: XmlComplement[];
278
+ /** XML crudo en base64 */
279
+ base64Content?: string;
280
+ }
281
+ /**
282
+ * Información global del CFDI
283
+ */
284
+ export interface XmlGlobalInformation extends BaseDto {
285
+ /** Periodicidad */
286
+ periodicity?: string;
287
+ /** Mes */
288
+ month?: string;
289
+ /** Año */
290
+ year?: number;
291
+ }
292
+ /**
293
+ * Información del emisor del CFDI
294
+ */
295
+ export interface XmlIssuer extends BaseDto {
296
+ /** RFC del emisor */
297
+ tin?: string;
298
+ /** Razón social */
299
+ legalName?: string;
300
+ /** Régimen fiscal */
301
+ taxRegime?: string;
302
+ }
303
+ /**
304
+ * Información aduanera del concepto
305
+ */
306
+ export interface XmlItemCustomsInformation extends BaseDto {
307
+ /** ID del concepto XML */
308
+ xmlItemId?: string;
309
+ /** Número de documento aduanero */
310
+ customsDocumentNumber?: string;
311
+ }
312
+ /**
313
+ * Concepto del CFDI
314
+ */
315
+ export interface XmlItem extends BaseDto {
316
+ /** ID del XML */
317
+ xmlId?: string;
318
+ /** Código del concepto */
319
+ itemCode?: string;
320
+ /** SKU del concepto */
321
+ sku?: string;
322
+ /** Cantidad */
323
+ quantity?: number;
324
+ /** Unidad de medida */
325
+ unitMeasurement?: string;
326
+ /** Descripción */
327
+ description?: string;
328
+ /** Precio unitario */
329
+ unitPrice?: number;
330
+ /** Importe */
331
+ amount?: number;
332
+ /** Descuento */
333
+ discount?: number;
334
+ /** Objeto de impuesto */
335
+ taxObject?: string;
336
+ /** Cuenta de terceros */
337
+ thirdPartyAccount?: string;
338
+ /** Información aduanera del concepto */
339
+ xmlItemCustomsInformation?: XmlItemCustomsInformation[];
340
+ /** Cuentas prediales del concepto */
341
+ xmlItemPropertyAccounts?: XmlItemPropertyAccount[];
342
+ /** Impuestos del concepto */
343
+ taxes?: XmlItemTax[];
344
+ }
345
+ /**
346
+ * Cuenta predial del concepto
347
+ */
348
+ export interface XmlItemPropertyAccount extends BaseDto {
349
+ /** ID del concepto XML */
350
+ xmlItemId?: string;
351
+ /** Número de cuenta predial */
352
+ propertyAccountNumber?: string;
353
+ }
354
+ /**
355
+ * Impuesto del concepto
356
+ */
357
+ export interface XmlItemTax extends BaseDto {
358
+ /** Base del impuesto */
359
+ base?: number;
360
+ /** Código del impuesto */
361
+ tax?: string;
362
+ /** Tipo de impuesto */
363
+ taxType?: string;
364
+ /** Tasa o cuota */
365
+ rate?: number;
366
+ /** Importe del impuesto */
367
+ amount?: number;
368
+ /** Naturaleza del impuesto (T = Traslado, R = Retención) */
369
+ taxFlag?: string;
370
+ /** ID del concepto XML */
371
+ xmlItemId?: string;
372
+ }
373
+ /**
374
+ * Información del receptor del CFDI
375
+ */
376
+ export interface XmlRecipient extends BaseDto {
377
+ /** RFC del receptor */
378
+ tin?: string;
379
+ /** Razón social */
380
+ legalName?: string;
381
+ /** Código postal */
382
+ zipCode?: string;
383
+ /** Régimen fiscal */
384
+ taxRegime?: string;
385
+ /** Uso del CFDI */
386
+ cfdiUse?: string;
387
+ /** ID fiscal extranjero */
388
+ foreignTaxId?: string;
389
+ /** Residencia fiscal */
390
+ fiscalResidence?: string;
391
+ }
392
+ /**
393
+ * CFDI relacionado
394
+ */
395
+ export interface XmlRelated extends BaseDto {
396
+ /** ID del XML */
397
+ xmlId?: string;
398
+ /** Tipo de relación */
399
+ relationshipType?: string;
400
+ /** UUID del CFDI relacionado */
401
+ cfdiUuid?: string;
402
+ }
403
+ /**
404
+ * Impuesto del CFDI
405
+ */
406
+ export interface XmlTax extends BaseDto {
407
+ /** Base del impuesto */
408
+ base?: number;
409
+ /** Código del impuesto */
410
+ tax?: string;
411
+ /** Tipo de impuesto */
412
+ taxType?: string;
413
+ /** Tasa o cuota */
414
+ rate?: number;
415
+ /** Importe del impuesto */
416
+ amount?: number;
417
+ /** Naturaleza del impuesto (T = Traslado, R = Retención) */
418
+ taxFlag?: string;
419
+ /** ID del XML */
420
+ xmlId?: string;
421
+ }
422
+ /**
423
+ * Complemento del CFDI
424
+ */
425
+ export interface XmlComplement extends BaseDto {
426
+ /** Nombre del complemento */
427
+ complementName?: string;
428
+ /** Valor del complemento en base64 */
429
+ base64ComplementValue?: string;
430
+ /** ID del XML */
431
+ xmlId?: string;
432
+ }
@@ -0,0 +1,29 @@
1
+ import { CatalogDto } from '../common/catalog-dto';
2
+ import { ApiResponse } from '../common/api-response';
3
+ import { IFiscalapiHttpClient } from '../http/fiscalapi-http-client.interface';
4
+ import { IDownloadCatalogService } from '../abstractions/download-catalog.inteface';
5
+ /**
6
+ * Implementación del servicio de catálogos de descarga masiva
7
+ */
8
+ export declare class DownloadCatalogService implements IDownloadCatalogService {
9
+ private readonly httpClient;
10
+ private readonly baseEndpoint;
11
+ private readonly apiVersion;
12
+ constructor(httpClient: IFiscalapiHttpClient, apiVersion?: string);
13
+ /**
14
+ * Construye el endpoint completo para las peticiones
15
+ * @param path - Ruta adicional opcional
16
+ * @returns URL completa del endpoint
17
+ */
18
+ private buildEndpoint;
19
+ /**
20
+ * GET /api/v4/download-catalogs
21
+ * Recupera todos los nombres de los catálogos de descarga masiva disponibles
22
+ */
23
+ getList(): Promise<ApiResponse<string[]>>;
24
+ /**
25
+ * GET /api/v4/download-catalogs/{catalogName}
26
+ * Lista todos los registros de un catálogo específico
27
+ */
28
+ listCatalog(catalogName: string): Promise<ApiResponse<CatalogDto[]>>;
29
+ }
@@ -0,0 +1,60 @@
1
+ import { DownloadRequest, Xml, MetadataItem } from '../models/download';
2
+ import { IFiscalapiHttpClient } from '../http/fiscalapi-http-client.interface';
3
+ import { BaseFiscalapiService } from './base-fiscalapi-service';
4
+ import { IDownloadRequestService } from '../abstractions/download-request.service.interface';
5
+ import { ApiResponse } from '../common/api-response';
6
+ import { PagedList } from '../common/paged-list';
7
+ import { FileResponse } from '../common/file-response';
8
+ /**
9
+ * Implementación del servicio de solicitudes de descarga masiva
10
+ */
11
+ export declare class DownloadRequestService extends BaseFiscalapiService<DownloadRequest> implements IDownloadRequestService {
12
+ /**
13
+ * Crea una nueva instancia del servicio de solicitudes de descarga masiva
14
+ * @param {IFiscalapiHttpClient} httpClient - Cliente HTTP
15
+ * @param {string} apiVersion - Versión de la API
16
+ */
17
+ constructor(httpClient: IFiscalapiHttpClient, apiVersion: string);
18
+ /**
19
+ * Lista los xmls descargados para un requestId.
20
+ *
21
+ * @param requestId - ID de la solicitud
22
+ * @returns Lista paginada de objetos Xml
23
+ */
24
+ getXmlsAsync(requestId: string): Promise<ApiResponse<PagedList<Xml>>>;
25
+ /**
26
+ * Lista los meta-items descargados para un requestId.
27
+ *
28
+ * @param requestId - ID de la solicitud
29
+ * @returns Lista paginada de objetos MetadataItem
30
+ */
31
+ getMetadataItemsAsync(requestId: string): Promise<ApiResponse<PagedList<MetadataItem>>>;
32
+ /**
33
+ * Downloads la lista de paquetes (archivos .zip) de un requestId.
34
+ *
35
+ * @param requestId - ID de la solicitud
36
+ * @returns Lista de FileResponses
37
+ */
38
+ downloadPackageAsync(requestId: string): Promise<ApiResponse<FileResponse[]>>;
39
+ /**
40
+ * Descarga el archivo crudo de solicitud SAT para un requestId.
41
+ *
42
+ * @param requestId - ID de la solicitud
43
+ * @returns Objeto de respuesta de archivo
44
+ */
45
+ downloadSatRequestAsync(requestId: string): Promise<ApiResponse<FileResponse>>;
46
+ /**
47
+ * Descarga la respuesta SAT para un requestId.
48
+ *
49
+ * @param requestId - ID de la solicitud
50
+ * @returns Objeto de respuesta de archivo
51
+ */
52
+ downloadSatResponseAsync(requestId: string): Promise<ApiResponse<FileResponse>>;
53
+ /**
54
+ * Busca solicitudes de descarga creadas en una fecha específica.
55
+ *
56
+ * @param createdAt - Fecha de creación
57
+ * @returns Lista de solicitudes de descarga
58
+ */
59
+ searchAsync(createdAt: Date): Promise<ApiResponse<DownloadRequest[]>>;
60
+ }
@@ -0,0 +1,22 @@
1
+ import { DownloadRequest, DownloadRule } from '../models/download';
2
+ import { IFiscalapiHttpClient } from '../http/fiscalapi-http-client.interface';
3
+ import { BaseFiscalapiService } from './base-fiscalapi-service';
4
+ import { IDownloadRuleService } from '../abstractions/download-rule.service.inteface';
5
+ import { ApiResponse } from '../common/api-response';
6
+ /**
7
+ * Implementación del servicio de reglas de descarga masiva
8
+ */
9
+ export declare class DownloadRuleService extends BaseFiscalapiService<DownloadRule> implements IDownloadRuleService {
10
+ /**
11
+ * Crea una nueva instancia del servicio de reglas de descarga masiva
12
+ * @param {IFiscalapiHttpClient} httpClient - Cliente HTTP
13
+ * @param {string} apiVersion - Versión de la API
14
+ */
15
+ constructor(httpClient: IFiscalapiHttpClient, apiVersion: string);
16
+ /**
17
+ * Crea una regla y una solicitud de descarga masiva de prueba.
18
+ *
19
+ * @returns solicitud de descarga masiva de prueba
20
+ */
21
+ createTestRule(): Promise<ApiResponse<DownloadRequest>>;
22
+ }
@@ -1,5 +1,14 @@
1
- import { IFiscalapiClient, IInvoiceService, IProductService, IPersonService, IApiKeyService, ICatalogService, ITaxFileService } from '..';
1
+ import { IFiscalapiClient } from '../abstractions/fiscalapi-client.interface';
2
+ import { IInvoiceService } from '../abstractions/invoice-service.interface';
3
+ import { IProductService } from '../abstractions/product-service.interface';
4
+ import { IPersonService } from '../abstractions/person-service.interface';
5
+ import { IApiKeyService } from '../abstractions/api-key-service.interface';
6
+ import { ICatalogService } from '../abstractions/catalog-service.interface';
7
+ import { ITaxFileService } from '../abstractions/tax-file-service.interface';
8
+ import { IDownloadCatalogService } from '../abstractions/download-catalog.inteface';
2
9
  import { FiscalapiSettings } from '../common/fiscalapi-settings';
10
+ import { IDownloadRuleService } from '../abstractions/download-rule.service.inteface';
11
+ import { IDownloadRequestService } from '../abstractions/download-request.service.interface';
3
12
  /**
4
13
  * Cliente principal para FiscalAPI
5
14
  */
@@ -28,6 +37,18 @@ export declare class FiscalapiClient implements IFiscalapiClient {
28
37
  * Servicio de archivos fiscales
29
38
  */
30
39
  readonly taxFiles: ITaxFileService;
40
+ /**
41
+ * Servicio de catálogos de descarga masiva
42
+ */
43
+ readonly downloadCatalogs: IDownloadCatalogService;
44
+ /**
45
+ * Servicio de reglas de descarga masiva
46
+ */
47
+ readonly downloadRules: IDownloadRuleService;
48
+ /**
49
+ * Servicio de solicitudes de descarga masiva
50
+ */
51
+ readonly downloadRequests: IDownloadRequestService;
31
52
  /**
32
53
  * Crea una nueva instancia del cliente de FiscalAPI
33
54
  * @param {FiscalapiSettings} settings - Configuración
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "fiscalapi",
3
- "version": "4.0.141",
4
- "description": "SDK de Node.js para FiscalAPI",
3
+ "version": "4.0.270",
4
+ "description": "SDK de Node.js para Fiscalapi",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
7
7
  "types": "dist/types/index.d.ts",
8
8
  "files": [
9
9
  "dist/",
10
+ "README.md",
10
11
  "fiscalapi.ico",
11
12
  "fiscalapi.png",
12
13
  "LICENSE.txt"
@@ -59,6 +60,6 @@
59
60
  "@types/node": "^22.13.14",
60
61
  "rimraf": "^6.0.1",
61
62
  "ts-node": "^10.9.2",
62
- "typescript": "^5.8.2"
63
+ "typescript": "^5.8.3"
63
64
  }
64
65
  }