@nubiia/mcp-freematica 0.6.1
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/LICENSE +21 -0
- package/README.md +485 -0
- package/dist/clients/base-client.d.ts +31 -0
- package/dist/clients/base-client.js +102 -0
- package/dist/clients/base-client.js.map +1 -0
- package/dist/clients/fiql-builder.d.ts +118 -0
- package/dist/clients/fiql-builder.js +257 -0
- package/dist/clients/fiql-builder.js.map +1 -0
- package/dist/clients/freematica-client.d.ts +659 -0
- package/dist/clients/freematica-client.js +1327 -0
- package/dist/clients/freematica-client.js.map +1 -0
- package/dist/clients/hardened-base-client.d.ts +143 -0
- package/dist/clients/hardened-base-client.js +366 -0
- package/dist/clients/hardened-base-client.js.map +1 -0
- package/dist/config.d.ts +104 -0
- package/dist/config.js +105 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +71 -0
- package/dist/logger.js +114 -0
- package/dist/logger.js.map +1 -0
- package/dist/schemas/albaranes.d.ts +124 -0
- package/dist/schemas/albaranes.js +250 -0
- package/dist/schemas/albaranes.js.map +1 -0
- package/dist/schemas/cartera.d.ts +70 -0
- package/dist/schemas/cartera.js +104 -0
- package/dist/schemas/cartera.js.map +1 -0
- package/dist/schemas/contratos.d.ts +7 -0
- package/dist/schemas/contratos.js +2 -0
- package/dist/schemas/contratos.js.map +1 -0
- package/dist/schemas/facturas-electronicas.d.ts +60 -0
- package/dist/schemas/facturas-electronicas.js +79 -0
- package/dist/schemas/facturas-electronicas.js.map +1 -0
- package/dist/schemas/facturas-ventas.d.ts +118 -0
- package/dist/schemas/facturas-ventas.js +153 -0
- package/dist/schemas/facturas-ventas.js.map +1 -0
- package/dist/schemas/filters.d.ts +92 -0
- package/dist/schemas/filters.js +76 -0
- package/dist/schemas/filters.js.map +1 -0
- package/dist/schemas/master-data.d.ts +26 -0
- package/dist/schemas/master-data.js +86 -0
- package/dist/schemas/master-data.js.map +1 -0
- package/dist/schemas/pagination.d.ts +14 -0
- package/dist/schemas/pagination.js +27 -0
- package/dist/schemas/pagination.js.map +1 -0
- package/dist/schemas/pedidos-compras.d.ts +92 -0
- package/dist/schemas/pedidos-compras.js +189 -0
- package/dist/schemas/pedidos-compras.js.map +1 -0
- package/dist/server-instructions.d.ts +1 -0
- package/dist/server-instructions.js +83 -0
- package/dist/server-instructions.js.map +1 -0
- package/dist/server.d.ts +6 -0
- package/dist/server.js +41 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/albaranes.d.ts +16 -0
- package/dist/tools/albaranes.js +202 -0
- package/dist/tools/albaranes.js.map +1 -0
- package/dist/tools/calendarios.d.ts +13 -0
- package/dist/tools/calendarios.js +82 -0
- package/dist/tools/calendarios.js.map +1 -0
- package/dist/tools/cartera.d.ts +13 -0
- package/dist/tools/cartera.js +78 -0
- package/dist/tools/cartera.js.map +1 -0
- package/dist/tools/clientes.d.ts +3 -0
- package/dist/tools/clientes.js +48 -0
- package/dist/tools/clientes.js.map +1 -0
- package/dist/tools/contabilidad.d.ts +14 -0
- package/dist/tools/contabilidad.js +259 -0
- package/dist/tools/contabilidad.js.map +1 -0
- package/dist/tools/contactos-clientes.d.ts +3 -0
- package/dist/tools/contactos-clientes.js +25 -0
- package/dist/tools/contactos-clientes.js.map +1 -0
- package/dist/tools/contratos.d.ts +10 -0
- package/dist/tools/contratos.js +35 -0
- package/dist/tools/contratos.js.map +1 -0
- package/dist/tools/facturas-compras.d.ts +13 -0
- package/dist/tools/facturas-compras.js +131 -0
- package/dist/tools/facturas-compras.js.map +1 -0
- package/dist/tools/facturas-electronicas.d.ts +17 -0
- package/dist/tools/facturas-electronicas.js +268 -0
- package/dist/tools/facturas-electronicas.js.map +1 -0
- package/dist/tools/facturas-ventas.d.ts +16 -0
- package/dist/tools/facturas-ventas.js +181 -0
- package/dist/tools/facturas-ventas.js.map +1 -0
- package/dist/tools/helpers.d.ts +17 -0
- package/dist/tools/helpers.js +36 -0
- package/dist/tools/helpers.js.map +1 -0
- package/dist/tools/localizaciones.d.ts +17 -0
- package/dist/tools/localizaciones.js +192 -0
- package/dist/tools/localizaciones.js.map +1 -0
- package/dist/tools/master-data.d.ts +10 -0
- package/dist/tools/master-data.js +70 -0
- package/dist/tools/master-data.js.map +1 -0
- package/dist/tools/oportunidades-negocio.d.ts +3 -0
- package/dist/tools/oportunidades-negocio.js +68 -0
- package/dist/tools/oportunidades-negocio.js.map +1 -0
- package/dist/tools/pedidos-compras.d.ts +14 -0
- package/dist/tools/pedidos-compras.js +105 -0
- package/dist/tools/pedidos-compras.js.map +1 -0
- package/dist/tools/personal.d.ts +13 -0
- package/dist/tools/personal.js +154 -0
- package/dist/tools/personal.js.map +1 -0
- package/dist/tools/prl.d.ts +47 -0
- package/dist/tools/prl.js +242 -0
- package/dist/tools/prl.js.map +1 -0
- package/dist/tools/proveedores.d.ts +14 -0
- package/dist/tools/proveedores.js +122 -0
- package/dist/tools/proveedores.js.map +1 -0
- package/dist/transports/http.d.ts +12 -0
- package/dist/transports/http.js +110 -0
- package/dist/transports/http.js.map +1 -0
- package/dist/transports/stdio.d.ts +12 -0
- package/dist/transports/stdio.js +15 -0
- package/dist/transports/stdio.js.map +1 -0
- package/dist/types/api-envelope.d.ts +27 -0
- package/dist/types/api-envelope.js +2 -0
- package/dist/types/api-envelope.js.map +1 -0
- package/dist/types/clientes.d.ts +9 -0
- package/dist/types/clientes.js +2 -0
- package/dist/types/clientes.js.map +1 -0
- package/dist/types/contactos-clientes.d.ts +7 -0
- package/dist/types/contactos-clientes.js +2 -0
- package/dist/types/contactos-clientes.js.map +1 -0
- package/dist/types/contratos.d.ts +8 -0
- package/dist/types/contratos.js +2 -0
- package/dist/types/contratos.js.map +1 -0
- package/dist/types/master-data.d.ts +9 -0
- package/dist/types/master-data.js +2 -0
- package/dist/types/master-data.js.map +1 -0
- package/dist/types/oportunidades-negocio.d.ts +8 -0
- package/dist/types/oportunidades-negocio.js +2 -0
- package/dist/types/oportunidades-negocio.js.map +1 -0
- package/dist/utils/size-guardrail.d.ts +22 -0
- package/dist/utils/size-guardrail.js +31 -0
- package/dist/utils/size-guardrail.js.map +1 -0
- package/package.json +90 -0
|
@@ -0,0 +1,659 @@
|
|
|
1
|
+
import { BaseClient } from './base-client.js';
|
|
2
|
+
import { type MasterDataCatalog } from '../schemas/master-data.js';
|
|
3
|
+
import { type ListCarteraFilters } from '../schemas/cartera.js';
|
|
4
|
+
import type { ListFacturasCabeceraFilters, ListFacturaLineasFilters, ListFacturaIvaFilters, ListFacturaVencimientosFilters } from '../schemas/facturas-ventas.js';
|
|
5
|
+
import { type ListPedidosCompraFilters } from '../schemas/pedidos-compras.js';
|
|
6
|
+
import type { Cliente } from '../types/clientes.js';
|
|
7
|
+
import type { ContactoCliente } from '../types/contactos-clientes.js';
|
|
8
|
+
import type { MasterDataItem } from '../types/master-data.js';
|
|
9
|
+
import type { OportunidadNegocio } from '../types/oportunidades-negocio.js';
|
|
10
|
+
import type { VoContratosServMatAsignado } from '../types/contratos.js';
|
|
11
|
+
export interface ListResult<T> {
|
|
12
|
+
items: T[];
|
|
13
|
+
total: number;
|
|
14
|
+
}
|
|
15
|
+
export interface ListOptions {
|
|
16
|
+
page?: number;
|
|
17
|
+
items?: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Typed client for the Freemática REST API.
|
|
21
|
+
*
|
|
22
|
+
* One method per exposed endpoint (or per family of endpoints). The wrapper
|
|
23
|
+
* `{ errorCode, errorMessage, data }` is unwrapped by `BaseClient.request`,
|
|
24
|
+
* so methods only see `data`.
|
|
25
|
+
*
|
|
26
|
+
* For list endpoints, `data` has shape `{ total, items, rowHeight }`. List
|
|
27
|
+
* methods unwrap that to `{ items, total }` (string total → number; rowHeight
|
|
28
|
+
* discarded).
|
|
29
|
+
*
|
|
30
|
+
* For detail endpoints, `data` is the entity directly.
|
|
31
|
+
*/
|
|
32
|
+
export declare class FreematicaClient extends BaseClient {
|
|
33
|
+
/**
|
|
34
|
+
* Obtener lista de material asignado a servicios.
|
|
35
|
+
*
|
|
36
|
+
* Endpoint: GET /pvss/v2/contratos-servicios-material
|
|
37
|
+
*/
|
|
38
|
+
getMaterialesAsignadosServicios(): Promise<ListResult<VoContratosServMatAsignado>>;
|
|
39
|
+
/**
|
|
40
|
+
* Obtener un catálogo de datos maestros.
|
|
41
|
+
*/
|
|
42
|
+
getMasterData(catalog: MasterDataCatalog): Promise<ListResult<MasterDataItem>>;
|
|
43
|
+
/** Lista paginada de clientes. */
|
|
44
|
+
listClientes(opts?: ListOptions): Promise<ListResult<Cliente>>;
|
|
45
|
+
/** Detalle de un cliente por `idReg` opaco. */
|
|
46
|
+
getCliente(idReg: string): Promise<Cliente>;
|
|
47
|
+
/** Lista paginada de contactos de clientes. */
|
|
48
|
+
listContactosClientes(opts?: ListOptions): Promise<ListResult<ContactoCliente>>;
|
|
49
|
+
/** Lista paginada de oportunidades de negocio. */
|
|
50
|
+
listOportunidadesNegocio(opts?: ListOptions): Promise<ListResult<OportunidadNegocio>>;
|
|
51
|
+
/** Detalle de una oportunidad por `idReg` opaco. */
|
|
52
|
+
getOportunidadNegocio(idReg: string): Promise<OportunidadNegocio>;
|
|
53
|
+
/**
|
|
54
|
+
* Datos ampliados de una oportunidad por `idReg` opaco.
|
|
55
|
+
*
|
|
56
|
+
* Puede devolver `not_found` si la oportunidad no tiene datos ampliados.
|
|
57
|
+
* El caller debe manejar el `FreematicaError` con código `not_found`.
|
|
58
|
+
*/
|
|
59
|
+
getOportunidadNegocioDatosAmpliados(idReg: string): Promise<Record<string, unknown>>;
|
|
60
|
+
/**
|
|
61
|
+
* Opciones de filtro para getFichaPrevCliente.
|
|
62
|
+
*
|
|
63
|
+
* Los query params mapean directamente a los parámetros nativos del endpoint
|
|
64
|
+
* GET /pprl/v2/ficha-prev-cliente. NO se usa FIQL en este endpoint.
|
|
65
|
+
*/
|
|
66
|
+
/**
|
|
67
|
+
* Obtiene la ficha de PRL de un cliente.
|
|
68
|
+
*
|
|
69
|
+
* Endpoint: GET /pprl/v2/ficha-prev-cliente
|
|
70
|
+
*
|
|
71
|
+
* Los filtros se envían como query params nativos (codCli, grpCli, locServ,
|
|
72
|
+
* codigo). La validación de "al menos uno" es responsabilidad del caller
|
|
73
|
+
* (la tool lo hace via Zod .refine()).
|
|
74
|
+
*
|
|
75
|
+
* @param opts - Filtros: codCliente, grupoCliente, codLocalizacionServicio, codigoFicha.
|
|
76
|
+
* @returns Lista de fichas PRL que coinciden con los filtros.
|
|
77
|
+
*/
|
|
78
|
+
getFichaPrevCliente(opts: {
|
|
79
|
+
codCliente?: string;
|
|
80
|
+
grupoCliente?: number;
|
|
81
|
+
codLocalizacionServicio?: number;
|
|
82
|
+
codigoFicha?: string;
|
|
83
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
84
|
+
/**
|
|
85
|
+
* Lista de cuentas del plan contable.
|
|
86
|
+
*
|
|
87
|
+
* Endpoint: GET /pcon/v2/cuentas
|
|
88
|
+
*
|
|
89
|
+
* Los filtros opcionales se mapean a una expresión FIQL y se pasan como
|
|
90
|
+
* query param `rquery`. El prefijoCuenta usa operador `=ge=` / `=lt=` para
|
|
91
|
+
* emular un prefix match sobre COD_CTA (rango léxico).
|
|
92
|
+
*
|
|
93
|
+
* @param opts - Filtros opcionales: codPlan, prefijoCuenta, activa, grupoCuenta.
|
|
94
|
+
*/
|
|
95
|
+
listCuentasContables(opts?: CuentasContablesOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
96
|
+
/**
|
|
97
|
+
* Opciones de filtro para listVigilanciaSalud.
|
|
98
|
+
*/
|
|
99
|
+
/**
|
|
100
|
+
* Lista paginada de registros de Vigilancia de la Salud.
|
|
101
|
+
*
|
|
102
|
+
* Endpoint: GET /pprl/v1/vigilancia-salud
|
|
103
|
+
*
|
|
104
|
+
* `idRegPersona` se envía como query param nativo. El resto de filtros se
|
|
105
|
+
* codifican en FIQL y se envían como `rquery`.
|
|
106
|
+
*
|
|
107
|
+
* @param opts - Opciones de paginación y filtrado.
|
|
108
|
+
* @returns Lista paginada de registros VS.
|
|
109
|
+
*/
|
|
110
|
+
listVigilanciaSalud(opts: {
|
|
111
|
+
page?: number;
|
|
112
|
+
items?: number;
|
|
113
|
+
idRegPersona?: string;
|
|
114
|
+
empresa?: string;
|
|
115
|
+
delegacion?: string;
|
|
116
|
+
codPersona?: string;
|
|
117
|
+
tipoRevision?: string;
|
|
118
|
+
resultado?: string;
|
|
119
|
+
fechaCitaDesde?: string;
|
|
120
|
+
fechaCitaHasta?: string;
|
|
121
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
122
|
+
/**
|
|
123
|
+
* Lista de cuentas analíticas.
|
|
124
|
+
*
|
|
125
|
+
* Endpoint: GET /pcon/v2/cuentas-analiticas
|
|
126
|
+
*
|
|
127
|
+
* @param opts - Filtros opcionales: codPlan, prefijoCuenta, activa, grupoCuenta, area, delegacion.
|
|
128
|
+
*/
|
|
129
|
+
listCuentasAnaliticas(opts?: CuentasAnaliticasOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
130
|
+
/**
|
|
131
|
+
* Detalle de un registro de Vigilancia de la Salud por `idReg` opaco.
|
|
132
|
+
*
|
|
133
|
+
* Endpoint: GET /pprl/v1/vigilancia-salud/{idreg}
|
|
134
|
+
*
|
|
135
|
+
* @param idReg - Identificador opaco del registro.
|
|
136
|
+
* @returns Objeto con todos los campos del registro VS.
|
|
137
|
+
*/
|
|
138
|
+
getVigilanciaSalud(idReg: string): Promise<Record<string, unknown>>;
|
|
139
|
+
/**
|
|
140
|
+
* Lista paginada de personas (empleados) con filtros FIQL opcionales.
|
|
141
|
+
*
|
|
142
|
+
* Endpoint: GET /pers/v2/personal
|
|
143
|
+
*
|
|
144
|
+
* El filtro `activo` (boolean) se traduce a `VSSPER_ACTIVO==S` (true) o
|
|
145
|
+
* `VSSPER_ACTIVO==N` (false). Las búsquedas por `nombre` y `apellido` usan
|
|
146
|
+
* el operador de igualdad estándar FIQL (el servidor aplica LIKE internamente
|
|
147
|
+
* para estos campos).
|
|
148
|
+
*
|
|
149
|
+
* @param opts - Opciones de paginación y filtrado.
|
|
150
|
+
* @returns Lista paginada de personas.
|
|
151
|
+
*/
|
|
152
|
+
listPersonal(opts: {
|
|
153
|
+
page?: number;
|
|
154
|
+
items?: number;
|
|
155
|
+
empresa?: string;
|
|
156
|
+
delegacion?: string;
|
|
157
|
+
codPersona?: string;
|
|
158
|
+
nombre?: string;
|
|
159
|
+
apellido?: string;
|
|
160
|
+
nif?: string;
|
|
161
|
+
situacion?: string;
|
|
162
|
+
departamento?: string;
|
|
163
|
+
seccion?: string;
|
|
164
|
+
activo?: boolean;
|
|
165
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
166
|
+
/**
|
|
167
|
+
* Detalle de una persona por `idReg` opaco.
|
|
168
|
+
*
|
|
169
|
+
* Endpoint: GET /pers/v2/personal/{idreg}
|
|
170
|
+
*
|
|
171
|
+
* @param idReg - Identificador opaco de la persona.
|
|
172
|
+
* @returns Objeto con todos los campos de la persona.
|
|
173
|
+
*/
|
|
174
|
+
getPersona(idReg: string): Promise<Record<string, unknown>>;
|
|
175
|
+
/**
|
|
176
|
+
* Lista paginada de calendarios laborales.
|
|
177
|
+
*
|
|
178
|
+
* Endpoint: GET /pgrl/v1/calendarios
|
|
179
|
+
*
|
|
180
|
+
* @param opts - Opciones de paginación.
|
|
181
|
+
* @returns Lista paginada de calendarios.
|
|
182
|
+
*/
|
|
183
|
+
listCalendarios(opts?: ListOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
184
|
+
/**
|
|
185
|
+
* Lista paginada de periodos de un calendario laboral.
|
|
186
|
+
*
|
|
187
|
+
* Endpoint: GET /pgrl/v1/calendarios/{idreg}/periodos
|
|
188
|
+
*
|
|
189
|
+
* @param idCalendario - idReg opaco del calendario.
|
|
190
|
+
* @param opts - Opciones de paginación.
|
|
191
|
+
* @returns Lista paginada de periodos del calendario.
|
|
192
|
+
*/
|
|
193
|
+
listCalendarioPeriodos(idCalendario: string, opts?: ListOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
194
|
+
/**
|
|
195
|
+
* Exporta asientos contables de Freemática.
|
|
196
|
+
*
|
|
197
|
+
* Endpoint: GET /pcon/v2/export-asientos
|
|
198
|
+
*
|
|
199
|
+
* Los parámetros `empresa`, `cal` y `periodo` son query params nativos.
|
|
200
|
+
* Los filtros `fechaDesde`, `fechaHasta`, `diario` y `borrador` se envían
|
|
201
|
+
* como expresión FIQL en el param `rquery`.
|
|
202
|
+
*
|
|
203
|
+
* Protección de tamaño: si el JSON serializado supera
|
|
204
|
+
* `FREEMATICA_MAX_RESPONSE_SIZE_MB` (default 10 MB), los items se truncan
|
|
205
|
+
* y se añade un campo `warning` a la respuesta.
|
|
206
|
+
*
|
|
207
|
+
* @param opts - Opciones de exportación.
|
|
208
|
+
* @returns Resultado con `items`, `total`, y opcionalmente `truncated`+`warning`.
|
|
209
|
+
*/
|
|
210
|
+
exportAsientos(opts: ExportAsientosOptions): Promise<ExportAsientosResult>;
|
|
211
|
+
/**
|
|
212
|
+
* Lista paginada de facturas de compras con filtros FIQL + query params nativos.
|
|
213
|
+
*
|
|
214
|
+
* El campo `exportado` es un enum nativo del endpoint (no FIQL): `all` | `not_exported`.
|
|
215
|
+
* El resto de filtros se envían mediante el query param `rquery` (FIQL).
|
|
216
|
+
*
|
|
217
|
+
* Endpoint: GET /pcmp/v2/facturas-compras
|
|
218
|
+
*/
|
|
219
|
+
listFacturasCompras(opts?: ListOptions & {
|
|
220
|
+
fechaDesde?: string;
|
|
221
|
+
fechaHasta?: string;
|
|
222
|
+
empresa?: string;
|
|
223
|
+
codProveedor?: string;
|
|
224
|
+
serie?: string;
|
|
225
|
+
numFactura?: string;
|
|
226
|
+
formaPago?: string;
|
|
227
|
+
traspasadoContabilidad?: boolean;
|
|
228
|
+
delegacion?: string;
|
|
229
|
+
lineaNegocio?: string;
|
|
230
|
+
exportado?: 'all' | 'not_exported';
|
|
231
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
232
|
+
/**
|
|
233
|
+
* Lista paginada de documentos de cartera de clientes con filtros FIQL.
|
|
234
|
+
*
|
|
235
|
+
* Endpoint: GET /pcar/v1/cartera-clientes
|
|
236
|
+
*
|
|
237
|
+
* Construye la FIQL a partir de los filtros tipados y la añade como `rquery`
|
|
238
|
+
* usando `appendRquery()` (patrón canónico del foundation TD-117).
|
|
239
|
+
*
|
|
240
|
+
* El filtro `soloImpagados=true` genera `CARCL_FECIMPAG!=null`, donde el
|
|
241
|
+
* valor `'null'` es la convención centinela de Freemática para indicar "sin
|
|
242
|
+
* valor" en campos de fecha opcionales (assumption empírica: observado en
|
|
243
|
+
* datos reales de la API; documentado para futuras implementaciones).
|
|
244
|
+
* El operador `ne` se pasa vía `buildFiql` para garantizar escaping
|
|
245
|
+
* consistente con el resto de filtros.
|
|
246
|
+
*
|
|
247
|
+
* El filtro `estado` mapea a los valores numéricos de `CARCL_SITCAR`
|
|
248
|
+
* (1=pendiente, 2=cancelado, 3=derivado).
|
|
249
|
+
*
|
|
250
|
+
* @param opts - Filtros tipados del schema `ListCarteraFiltersSchema`.
|
|
251
|
+
* @returns Lista paginada de documentos de cartera.
|
|
252
|
+
*/
|
|
253
|
+
listCarteraClientes(opts?: ListCarteraFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
254
|
+
/**
|
|
255
|
+
* Detalle de una factura de compra por `idReg` opaco.
|
|
256
|
+
*
|
|
257
|
+
* Endpoint: GET /pcmp/v2/facturas-compras/{idReg}
|
|
258
|
+
*/
|
|
259
|
+
getFacturaCompra(idReg: string): Promise<Record<string, unknown>>;
|
|
260
|
+
/**
|
|
261
|
+
* Lista paginada de pedidos de compra con diseño mixto de filtros.
|
|
262
|
+
*
|
|
263
|
+
* Endpoint: GET /pcmp/v2/pedidos
|
|
264
|
+
*
|
|
265
|
+
* DISEÑO MIXTO: el endpoint combina 4 query params nativos con filtros FIQL
|
|
266
|
+
* adicionales vía `rquery`.
|
|
267
|
+
*
|
|
268
|
+
* Filtros que van como **query params nativos** (NO FIQL):
|
|
269
|
+
* - `empresa` (4c) → `codEmpresa`
|
|
270
|
+
* - `codProveedor` (≤10c) → `codProveedor`
|
|
271
|
+
* - `fechaPedidoDesde` (ISO date) → `desdeFecha`
|
|
272
|
+
* - `fechaPedidoHasta` (ISO date) → `hastaFecha`
|
|
273
|
+
*
|
|
274
|
+
* Filtros que van como **FIQL en `rquery`** (campos `ALCC_*`):
|
|
275
|
+
* - `numPedido` → `ALCC_NUMDOC==N`
|
|
276
|
+
* - `codDocumento` → `ALCC_CODDOC==XXXX`
|
|
277
|
+
* - `delegacion` → `ALCC_DELEG==XXXX`
|
|
278
|
+
* - `formaPago` → `ALCC_FPAGO==XXX`
|
|
279
|
+
* - `tipoIva` → `ALCC_TIPO_IVA==XXXX`
|
|
280
|
+
* - `codCliente` → `ALCC_COD_CLIENTE==X`
|
|
281
|
+
* - `codInstalador` → `ALCC_COD_INSTALADOR==X`
|
|
282
|
+
* - `codMantenedor` → `ALCC_COD_MANTENEDOR==X`
|
|
283
|
+
* - `fechaEntregaDesde` → `ALCC_FCHENTREGA=ge=YYYY-MM-DD`
|
|
284
|
+
* - `fechaEntregaHasta` → `ALCC_FCHENTREGA=le=YYYY-MM-DD`
|
|
285
|
+
* - `referencia` → `ALCC_REFERENCIA==X`
|
|
286
|
+
* - `estado` → expresión compuesta sobre `ALCC_PED_BLOQ` y `ALCC_PED_RECIB`
|
|
287
|
+
* (ver `buildEstadoPedidoFiql` y comentario empírico en `EstadoPedidoEnum`)
|
|
288
|
+
*
|
|
289
|
+
* @param opts - Filtros tipados del schema `ListPedidosCompraFiltersSchema`.
|
|
290
|
+
* @returns Lista paginada de pedidos de compra.
|
|
291
|
+
*/
|
|
292
|
+
listPedidosCompra(opts?: ListPedidosCompraFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
293
|
+
/**
|
|
294
|
+
* Detalle de un pedido de compra por `idReg` opaco.
|
|
295
|
+
*
|
|
296
|
+
* Endpoint: GET /pcmp/v2/pedidos/{idreg}
|
|
297
|
+
*
|
|
298
|
+
* La respuesta es un objeto compuesto `{ VoPedidosCompraCab, cabecera_proveedor, lineas[] }`
|
|
299
|
+
* que se devuelve sin aplanar para conservar la estructura original del API.
|
|
300
|
+
*
|
|
301
|
+
* @param idReg - Identificador opaco (puede contener caracteres como "==" de base64).
|
|
302
|
+
* @returns Objeto compuesto con la cabecera, datos del proveedor y líneas del pedido.
|
|
303
|
+
*/
|
|
304
|
+
getPedidoCompra(idReg: string): Promise<Record<string, unknown>>;
|
|
305
|
+
/**
|
|
306
|
+
* Detalle de un documento de cartera de clientes por `idReg` opaco.
|
|
307
|
+
*
|
|
308
|
+
* Endpoint: GET /pcar/v1/cartera-clientes/{idreg}
|
|
309
|
+
*
|
|
310
|
+
* @param idReg - Identificador opaco (base64) del documento.
|
|
311
|
+
* @returns Documento de cartera completo.
|
|
312
|
+
*/
|
|
313
|
+
getCarteraCliente(idReg: string): Promise<Record<string, unknown>>;
|
|
314
|
+
/**
|
|
315
|
+
* Lista paginada de proveedores con filtros FIQL.
|
|
316
|
+
*
|
|
317
|
+
* El filtro `activo` mapea a FECHA_BAJA:
|
|
318
|
+
* - `true` → FECHA_BAJA es nula (proveedor activo). Se usa el operador `=is-null=true` si el
|
|
319
|
+
* API lo soporta; como fallback se omite el filtro y se filtra post-process.
|
|
320
|
+
* En Freemática el convenio estándar es: activo=true → `FECHA_BAJA==null` (FIQL `==null`).
|
|
321
|
+
* - `false` → FECHA_BAJA tiene valor (proveedor de baja).
|
|
322
|
+
*
|
|
323
|
+
* El filtro `nombre` usa operador FIQL `=lk=` para búsqueda parcial (LIKE).
|
|
324
|
+
*
|
|
325
|
+
* Endpoint: GET /pgrl/v2/proveedores
|
|
326
|
+
*/
|
|
327
|
+
listProveedores(opts?: ListOptions & {
|
|
328
|
+
codProveedor?: string;
|
|
329
|
+
grupoProveedor?: string;
|
|
330
|
+
nif?: string;
|
|
331
|
+
nombre?: string;
|
|
332
|
+
activo?: boolean;
|
|
333
|
+
tipoIdent?: string;
|
|
334
|
+
codProvincia?: string;
|
|
335
|
+
codPais?: string;
|
|
336
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
337
|
+
/**
|
|
338
|
+
* Lista paginada de cabeceras de facturas de ventas con filtros FIQL.
|
|
339
|
+
*
|
|
340
|
+
* Endpoint: GET /pven/v1/facturas-cabecera
|
|
341
|
+
*
|
|
342
|
+
* @param opts - Filtros tipados del schema `ListFacturasCabeceraFiltersSchema`.
|
|
343
|
+
* @returns Lista paginada de cabeceras de facturas.
|
|
344
|
+
*/
|
|
345
|
+
listFacturasCabecera(opts?: ListFacturasCabeceraFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
346
|
+
/**
|
|
347
|
+
* Detalle de un proveedor por `idReg` opaco.
|
|
348
|
+
*
|
|
349
|
+
* Endpoint: GET /pgrl/v2/proveedores/{idReg}
|
|
350
|
+
*/
|
|
351
|
+
getProveedor(idReg: string): Promise<Record<string, unknown>>;
|
|
352
|
+
/**
|
|
353
|
+
* Lista paginada de localizaciones de cobro de clientes.
|
|
354
|
+
*
|
|
355
|
+
* Filtros soportados: codCliente (COD_CLI), grupoCliente (GRUPO_CLI), formaPago (COD_FORMA_COBRO).
|
|
356
|
+
*
|
|
357
|
+
* Endpoint: GET /pgrl/v2/localizaciones-cobro-clientes
|
|
358
|
+
*/
|
|
359
|
+
listLocalizacionesCobroClientes(opts?: ListOptions & {
|
|
360
|
+
codCliente?: string;
|
|
361
|
+
grupoCliente?: string;
|
|
362
|
+
formaPago?: string;
|
|
363
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
364
|
+
/**
|
|
365
|
+
* Lista paginada de localizaciones de pago de proveedores.
|
|
366
|
+
*
|
|
367
|
+
* Filtros soportados: codProveedor (COD_PRO), grupoProveedor (COD_GRUPO_PRO), formaPago (COD_FORMA_PAGO).
|
|
368
|
+
*
|
|
369
|
+
* Endpoint: GET /pgrl/v2/localizaciones-pago-proveedores
|
|
370
|
+
*/
|
|
371
|
+
listLocalizacionesPagoProveedores(opts?: ListOptions & {
|
|
372
|
+
codProveedor?: string;
|
|
373
|
+
grupoProveedor?: string;
|
|
374
|
+
formaPago?: string;
|
|
375
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
376
|
+
/**
|
|
377
|
+
* Lista paginada de localizaciones de servicio de clientes.
|
|
378
|
+
*
|
|
379
|
+
* Filtros soportados: codCliente (COD_CLI), grupoCliente (GRUPO_CLI), codPais (COD_PAIS),
|
|
380
|
+
* codProvincia (COD_PROVINCIA), representante (COD_REPRES), activo (FECHA_BAJA nulo/no nulo).
|
|
381
|
+
*
|
|
382
|
+
* Endpoint: GET /pgrl/v2/localizaciones-servicio-clientes
|
|
383
|
+
*/
|
|
384
|
+
listLocalizacionesServicioClientes(opts?: ListOptions & {
|
|
385
|
+
codCliente?: string;
|
|
386
|
+
grupoCliente?: string;
|
|
387
|
+
codPais?: string;
|
|
388
|
+
codProvincia?: string;
|
|
389
|
+
representante?: string;
|
|
390
|
+
activo?: boolean;
|
|
391
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
392
|
+
/**
|
|
393
|
+
* Detalle de una factura de ventas (cabecera) por `idReg` opaco.
|
|
394
|
+
*
|
|
395
|
+
* Endpoint: GET /pven/v1/facturas-cabecera/{idreg}
|
|
396
|
+
*
|
|
397
|
+
* @param idReg - Identificador opaco (base64) de la factura.
|
|
398
|
+
* @returns Factura cabecera completa.
|
|
399
|
+
*/
|
|
400
|
+
getFacturaCabecera(idReg: string): Promise<Record<string, unknown>>;
|
|
401
|
+
/**
|
|
402
|
+
* Lista paginada de líneas de una factura de ventas con filtros FIQL.
|
|
403
|
+
*
|
|
404
|
+
* Endpoint: GET /pven/v1/facturas-cabecera/{idreg}/lineas
|
|
405
|
+
*
|
|
406
|
+
* @param idReg - idReg opaco de la factura cabecera.
|
|
407
|
+
* @param opts - Filtros tipados del schema `ListFacturaLineasFiltersSchema`.
|
|
408
|
+
* @returns Lista paginada de líneas de factura.
|
|
409
|
+
*/
|
|
410
|
+
listFacturaLineas(idReg: string, opts?: ListFacturaLineasFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
411
|
+
/**
|
|
412
|
+
* Lista paginada de líneas de IVA de una factura de ventas con filtros FIQL.
|
|
413
|
+
*
|
|
414
|
+
* Endpoint: GET /pven/v1/facturas-cabecera/{idreg}/iva
|
|
415
|
+
*
|
|
416
|
+
* @param idReg - idReg opaco de la factura cabecera.
|
|
417
|
+
* @param opts - Filtros tipados del schema `ListFacturaIvaFiltersSchema`.
|
|
418
|
+
* @returns Lista paginada de líneas de IVA.
|
|
419
|
+
*/
|
|
420
|
+
listFacturaIva(idReg: string, opts?: ListFacturaIvaFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
421
|
+
/**
|
|
422
|
+
* Lista paginada de vencimientos de una factura de ventas con filtros FIQL.
|
|
423
|
+
*
|
|
424
|
+
* Endpoint: GET /pven/v1/facturas-cabecera/{idreg}/vencimientos
|
|
425
|
+
*
|
|
426
|
+
* @param idReg - idReg opaco de la factura cabecera.
|
|
427
|
+
* @param opts - Filtros tipados del schema `ListFacturaVencimientosFiltersSchema`.
|
|
428
|
+
* @returns Lista paginada de vencimientos.
|
|
429
|
+
*/
|
|
430
|
+
listFacturaVencimientos(idReg: string, opts?: ListFacturaVencimientosFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
431
|
+
/**
|
|
432
|
+
* Lista paginada de facturas electrónicas con filtros nativos (NO FIQL).
|
|
433
|
+
*
|
|
434
|
+
* Endpoint: GET /pven/v1/facturas
|
|
435
|
+
*
|
|
436
|
+
* Diferente de listFacturasCabecera: expone las facturas firmadas/enviadas vía
|
|
437
|
+
* Facturae, EDICOM y/o FACe. Los filtros son query params nativos del API.
|
|
438
|
+
*
|
|
439
|
+
* @param opts - Filtros nativos: empresa, codCliente, fechaDesde/Hasta, estado, leido + paginación.
|
|
440
|
+
* @returns Lista paginada de facturas electrónicas con campos FACED_*.
|
|
441
|
+
*/
|
|
442
|
+
listFacturasElectronicas(opts: import('../schemas/facturas-electronicas.js').ListFacturasElectronicasFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
443
|
+
/**
|
|
444
|
+
* Lista paginada de albaranes de ventas con filtros nativos del endpoint.
|
|
445
|
+
*
|
|
446
|
+
* Endpoint: GET /pven/v2/albaranes-ventas
|
|
447
|
+
*
|
|
448
|
+
* El endpoint usa exclusivamente query params nativos para los filtros
|
|
449
|
+
* principales (no FIQL). `codEmpresa` es obligatorio según el spec OpenAPI.
|
|
450
|
+
*/
|
|
451
|
+
listAlbaranesVentas(opts: {
|
|
452
|
+
page?: number;
|
|
453
|
+
items?: number;
|
|
454
|
+
empresa: string;
|
|
455
|
+
delegacion?: string;
|
|
456
|
+
codCliente?: string;
|
|
457
|
+
codDocumento?: string;
|
|
458
|
+
fechaDesde?: string;
|
|
459
|
+
fechaHasta?: string;
|
|
460
|
+
order?: string;
|
|
461
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
462
|
+
/**
|
|
463
|
+
* Detalle de una factura electrónica por `idReg` opaco.
|
|
464
|
+
*
|
|
465
|
+
* Endpoint: GET /pven/v1/facturas/{idreg}
|
|
466
|
+
*
|
|
467
|
+
* @param idReg - Identificador opaco (base64) de la factura electrónica.
|
|
468
|
+
* @returns Objeto con los campos de la factura electrónica.
|
|
469
|
+
*/
|
|
470
|
+
getFacturaElectronica(idReg: string): Promise<Record<string, unknown>>;
|
|
471
|
+
/**
|
|
472
|
+
* Recupera el documento (PDF o XML Facturae firmado) de una factura electrónica.
|
|
473
|
+
*
|
|
474
|
+
* Endpoint: GET /pven/v1/facturas/{idreg}/documento
|
|
475
|
+
*
|
|
476
|
+
* La API devuelve un JSON (VoFacturasDocumento) con los documentos codificados en base64
|
|
477
|
+
* en los campos FACED_DOCUMENTO_PDF, FACED_DOCUMENTO_XML, etc.
|
|
478
|
+
*
|
|
479
|
+
* Si el tamaño del JSON supera FREEMATICA_MAX_RESPONSE_SIZE_MB, la tool aplica el
|
|
480
|
+
* guardrail de tamaño y devuelve `{ truncated: true, warning, sizeBytes }` sin el cuerpo.
|
|
481
|
+
*
|
|
482
|
+
* @param idReg - Identificador opaco de la factura.
|
|
483
|
+
* @param opts - Opciones: documentType (tipo de documento), actualizaLeido (marcar como leído).
|
|
484
|
+
* @returns Objeto VoFacturasDocumento con campos FACED_DOCUMENTO_*.
|
|
485
|
+
*/
|
|
486
|
+
getFacturaDocumento(idReg: string, opts?: {
|
|
487
|
+
documentType?: string;
|
|
488
|
+
actualizaLeido?: boolean;
|
|
489
|
+
}): Promise<FacturaDocumentoResult>;
|
|
490
|
+
/**
|
|
491
|
+
* Log de auditoría de una factura electrónica (envío, recepción, aceptación AAPP, etc.).
|
|
492
|
+
*
|
|
493
|
+
* Endpoint: GET /pven/v1/facturas/{idreg}/log
|
|
494
|
+
*
|
|
495
|
+
* @param idReg - Identificador opaco de la factura.
|
|
496
|
+
* @param opts - Opciones de paginación.
|
|
497
|
+
* @returns Lista paginada de eventos de auditoría con campos FVCTRLE_*.
|
|
498
|
+
*/
|
|
499
|
+
getFacturaLog(idReg: string, opts?: ListOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
500
|
+
/**
|
|
501
|
+
* Configuración de la integración EDICOM (empresa, aplicación, URLs, credenciales).
|
|
502
|
+
*
|
|
503
|
+
* Endpoint: GET /pven/v1/facturas/edicominfo
|
|
504
|
+
*
|
|
505
|
+
* Devuelve una lista de configuraciones EDICOM (campos EDICOM_*).
|
|
506
|
+
* NOTA: incluye campos sensibles (EDICOM_USER, EDICOM_PASSWORD). Usar con precaución.
|
|
507
|
+
*
|
|
508
|
+
* @param opts - Opciones de paginación.
|
|
509
|
+
* @returns Lista de configuraciones EDICOM con campos EDICOM_*.
|
|
510
|
+
*/
|
|
511
|
+
getEdicomInfo(opts?: ListOptions): Promise<ListResult<Record<string, unknown>>>;
|
|
512
|
+
/**
|
|
513
|
+
* Descarga masiva de documentos de facturas electrónicas (PDF/XML/ERROR).
|
|
514
|
+
*
|
|
515
|
+
* Endpoint: GET /pven/v1/facturas/download
|
|
516
|
+
*
|
|
517
|
+
* Permite recuperar múltiples documentos filtrando por identificadores y tipo.
|
|
518
|
+
* Los documentos se devuelven con campos VoEFraDoc (empresa, serie, numFra, documentoPdf, etc.).
|
|
519
|
+
*
|
|
520
|
+
* @param opts - Filtros: documents (IDs separados por comas), documentType (PDF/XML/ERROR).
|
|
521
|
+
* @returns Lista de documentos con campos VoEFraDoc.
|
|
522
|
+
*/
|
|
523
|
+
listFacturasDocumentos(opts?: import('../schemas/facturas-electronicas.js').ListFacturasDocumentosFilters): Promise<ListResult<Record<string, unknown>>>;
|
|
524
|
+
/**
|
|
525
|
+
* Detalle de un albarán de venta por `idReg` opaco.
|
|
526
|
+
*
|
|
527
|
+
* Endpoint: GET /pven/v2/albaranes-ventas/{idReg}
|
|
528
|
+
*
|
|
529
|
+
* @param idReg - Identificador opaco (base64) del albarán.
|
|
530
|
+
* @returns Objeto completo del albarán de venta.
|
|
531
|
+
*/
|
|
532
|
+
getAlbaranVenta(idReg: string): Promise<Record<string, unknown>>;
|
|
533
|
+
/**
|
|
534
|
+
* Lista paginada de vinculaciones albarán↔factura.
|
|
535
|
+
*
|
|
536
|
+
* Endpoint: GET /pven/v2/albaranes-facturas
|
|
537
|
+
*
|
|
538
|
+
* El filtro `idReg` es un query param nativo. Los filtros empresa, serie,
|
|
539
|
+
* numFactura y codCliente se envían como FIQL en el parámetro `rQuery`.
|
|
540
|
+
*
|
|
541
|
+
* Mapeo de filtros FIQL:
|
|
542
|
+
* | opts.empresa | FVCA_CODEMP |
|
|
543
|
+
* | opts.serie | FVCA_SERIEFRA |
|
|
544
|
+
* | opts.numFactura | FVCA_NUMFRA |
|
|
545
|
+
* | opts.codCliente | FVCA_CODCLI |
|
|
546
|
+
*
|
|
547
|
+
* @param opts - Opciones de paginación y filtros.
|
|
548
|
+
* @returns Lista paginada de vinculaciones albarán-factura.
|
|
549
|
+
*/
|
|
550
|
+
listAlbaranesFactura(opts: {
|
|
551
|
+
page?: number;
|
|
552
|
+
items?: number;
|
|
553
|
+
idReg?: string;
|
|
554
|
+
empresa?: string;
|
|
555
|
+
serie?: string;
|
|
556
|
+
numFactura?: string;
|
|
557
|
+
codCliente?: string;
|
|
558
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
559
|
+
/**
|
|
560
|
+
* Detalle de una vinculación albarán↔factura por `idReg` opaco.
|
|
561
|
+
*
|
|
562
|
+
* Endpoint: GET /pven/v2/albaranes-facturas/{idReg}
|
|
563
|
+
*
|
|
564
|
+
* @param idReg - Identificador opaco (base64) del registro de vinculación.
|
|
565
|
+
* @returns Objeto completo de la vinculación albarán-factura.
|
|
566
|
+
*/
|
|
567
|
+
getAlbaranFactura(idReg: string): Promise<Record<string, unknown>>;
|
|
568
|
+
/**
|
|
569
|
+
* Lista paginada de resultados del proceso batch de facturación de vigilancia.
|
|
570
|
+
*
|
|
571
|
+
* Endpoint: GET /pvss/v1/facturacion-resultados
|
|
572
|
+
*
|
|
573
|
+
* Todos los filtros se envían como FIQL en el parámetro `rquery`.
|
|
574
|
+
* El parámetro `order` es nativo del endpoint.
|
|
575
|
+
*
|
|
576
|
+
* Mapeo de filtros FIQL:
|
|
577
|
+
* | opts.empresa | FACT_EMP |
|
|
578
|
+
* | opts.delegacion | FACT_DELEG |
|
|
579
|
+
* | opts.codCliente | FACT_COD_CLI |
|
|
580
|
+
* | opts.calendario | FACT_CAL |
|
|
581
|
+
* | opts.mes | FACT_MES |
|
|
582
|
+
* | opts.contrato | FACT_CTRT |
|
|
583
|
+
* | opts.servicio | FACT_SERV |
|
|
584
|
+
* | opts.tipoFac | FACT_TIPFAC |
|
|
585
|
+
* | opts.traspasado | FACT_TRASP |
|
|
586
|
+
*
|
|
587
|
+
* @param opts - Opciones de paginación y filtros FIQL.
|
|
588
|
+
* @returns Lista paginada de resultados de facturación.
|
|
589
|
+
*/
|
|
590
|
+
listResultadosFacturacion(opts: {
|
|
591
|
+
page?: number;
|
|
592
|
+
items?: number;
|
|
593
|
+
empresa?: string;
|
|
594
|
+
delegacion?: string;
|
|
595
|
+
codCliente?: string;
|
|
596
|
+
calendario?: string;
|
|
597
|
+
mes?: number;
|
|
598
|
+
contrato?: string;
|
|
599
|
+
servicio?: string;
|
|
600
|
+
tipoFac?: string;
|
|
601
|
+
traspasado?: string;
|
|
602
|
+
order?: string;
|
|
603
|
+
}): Promise<ListResult<Record<string, unknown>>>;
|
|
604
|
+
private listResource;
|
|
605
|
+
/**
|
|
606
|
+
* Helper genérico para endpoints de lista que soportan paginación + filtros FIQL
|
|
607
|
+
* vía query param `rquery`.
|
|
608
|
+
*
|
|
609
|
+
* @param path - Path base del endpoint (sin query string).
|
|
610
|
+
* @param opts - Opciones de paginación.
|
|
611
|
+
* @param fiqlFields - Mapa de nombre de campo FIQL → valor. Los valores `undefined` se omiten.
|
|
612
|
+
* @returns Lista de items con total.
|
|
613
|
+
*/
|
|
614
|
+
private listResourceWithFiql;
|
|
615
|
+
}
|
|
616
|
+
/** Filtros para listCuentasContables. */
|
|
617
|
+
export interface CuentasContablesOptions {
|
|
618
|
+
codPlan?: string;
|
|
619
|
+
prefijoCuenta?: string;
|
|
620
|
+
activa?: boolean;
|
|
621
|
+
grupoCuenta?: string;
|
|
622
|
+
}
|
|
623
|
+
/** Filtros para listCuentasAnaliticas. */
|
|
624
|
+
export interface CuentasAnaliticasOptions {
|
|
625
|
+
codPlan?: string;
|
|
626
|
+
prefijoCuenta?: string;
|
|
627
|
+
activa?: boolean;
|
|
628
|
+
grupoCuenta?: string;
|
|
629
|
+
area?: string;
|
|
630
|
+
delegacion?: string;
|
|
631
|
+
}
|
|
632
|
+
/** Opciones para exportAsientos. */
|
|
633
|
+
export interface ExportAsientosOptions {
|
|
634
|
+
empresa: string;
|
|
635
|
+
cal: string;
|
|
636
|
+
periodo?: string;
|
|
637
|
+
fechaDesde?: string;
|
|
638
|
+
fechaHasta?: string;
|
|
639
|
+
diario?: string;
|
|
640
|
+
borrador?: boolean;
|
|
641
|
+
}
|
|
642
|
+
/** Resultado de exportAsientos. */
|
|
643
|
+
export interface ExportAsientosResult extends ListResult<Record<string, unknown>> {
|
|
644
|
+
truncated: boolean;
|
|
645
|
+
warning?: string;
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Resultado de getFacturaDocumento.
|
|
649
|
+
*
|
|
650
|
+
* - Si truncated=false: incluye todos los campos VoFacturasDocumento (FACED_DOCUMENTO_PDF, etc.).
|
|
651
|
+
* - Si truncated=true: incluye solo `truncated`, `warning` y `sizeBytes` (sin el cuerpo del documento).
|
|
652
|
+
*/
|
|
653
|
+
export type FacturaDocumentoResult = ({
|
|
654
|
+
truncated: false;
|
|
655
|
+
} & Record<string, unknown>) | {
|
|
656
|
+
truncated: true;
|
|
657
|
+
warning: string;
|
|
658
|
+
sizeBytes: number;
|
|
659
|
+
};
|