@seidor-cloud-produtos/tax-core 0.0.106 → 0.0.108
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 +239 -11
- package/dist/index.d.mts +20 -9
- package/dist/index.d.ts +20 -9
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,18 +1,246 @@
|
|
|
1
1
|
# Seidor Tax Core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Biblioteca TypeScript completa para gestão de obrigações fiscais brasileiras, oferecendo estruturas de dados, regras de negócio, conversão de documentos e geração de relatórios fiscais (SPED, EFD, REINF e outros).
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
* Cada bloco é constituído de registros. Cada registros pode conter 0 ou N outros registros filhos
|
|
7
|
-
* Cada registro é composto por um sequência exata de campos.
|
|
8
|
-
* Cada campo tem suas características e formato (númerico, alfanumérico, valor monetário, data)
|
|
9
|
-
* Cada característica pode ser um tipo que conterá as características + formato
|
|
5
|
+
## Motivação
|
|
10
6
|
|
|
11
|
-
|
|
7
|
+
Desde a recepção de documentos, a apuração de impostos e a geração das obrigações fiscais, costuma haver muitas similaridades de regras entre si. Muitas vezes, essas similaridades são implementadas de forma isolada em cada parte do sistema, o que gera retrabalho e inconsistências.
|
|
12
8
|
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
Esta biblioteca centraliza e padroniza:
|
|
10
|
+
- Modelos de documentos fiscais brasileiros (NF-e, NFC-e, NFSe, CT-e, CCe)
|
|
11
|
+
- Geração de arquivos SPED (Fiscal, Contribuições, ICMS/IPI)
|
|
12
|
+
- Validação e formatação de dados fiscais (CNPJ, CPF, códigos IBGE)
|
|
13
|
+
- Perfis de estabelecimentos e regimes tributários
|
|
14
|
+
- Conversão entre formatos de documentos
|
|
15
|
+
- Gerenciamento de dados mestres (municípios, estados, códigos de serviço)
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 📦 Módulos
|
|
20
|
+
|
|
21
|
+
### 1. **taxReport** - Framework de Geração de Relatórios Fiscais
|
|
22
|
+
Geração de relatórios fiscais brasileiros (SPED Fiscal, SPED Contribuições, EFD-ICMS/IPI) com API type-safe.
|
|
23
|
+
|
|
24
|
+
**Características principais:**
|
|
25
|
+
- Classes base: `TaxReport`, `Block`, `Register`
|
|
26
|
+
- Decorators TypeScript para definição de campos (`@Key`, `@Numeric`, `@Decimal`, `@Alphanumeric`)
|
|
27
|
+
- Estratégias de duplicação configuráveis (Error, Ignore, Overwrite)
|
|
28
|
+
- Sistema de eventos para validação (`RegisterEventNotifier`)
|
|
29
|
+
- Otimizado para grandes volumes (1M+ registros)
|
|
30
|
+
- Múltiplas estratégias de output (Console, StringArray, File)
|
|
31
|
+
|
|
32
|
+
**Documentação completa:** [`lib/taxReport/README.md`](lib/taxReport/README.md)
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
### 2. **documents** - Modelo de Domínio de Documentos Fiscais
|
|
37
|
+
Definição completa de entidades para documentos fiscais e seus componentes.
|
|
38
|
+
|
|
39
|
+
**Classes principais:**
|
|
40
|
+
- `Document` - Documento fiscal com metadados, datas, valores e referências
|
|
41
|
+
- `Item` - Itens/linhas de documentos
|
|
42
|
+
- `Person` - Entidades (emitente, destinatário)
|
|
43
|
+
- `Address` - Informações de endereço
|
|
44
|
+
- `Tax` - Cálculos e rastreamento de impostos
|
|
45
|
+
- `ImportDeclaration` - Declarações de importação
|
|
46
|
+
|
|
47
|
+
**Builders fluentes:**
|
|
48
|
+
- `BuilderDocument`, `BuilderItem`, `BuilderPerson`, `BuilderAddress`, `BuilderTax`
|
|
49
|
+
|
|
50
|
+
**Enumerações:** 25+ enums para tipos de documentos, status, operações, pagamentos, origens de produtos, códigos de serviço e classificações fiscais brasileiras.
|
|
51
|
+
|
|
52
|
+
**Persistência:** Suporte a MongoDB via `infra/db/mongo/` com repositórios e builders.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
### 3. **conversionDocuments** - Conversão de Formatos de Documentos
|
|
57
|
+
Conversão entre diferentes formatos de documentos fiscais brasileiros.
|
|
58
|
+
|
|
59
|
+
**Formatos suportados:**
|
|
60
|
+
- **NF-e** - Nota Fiscal Eletrônica
|
|
61
|
+
- **NFC-e** - Nota Fiscal ao Consumidor Eletrônica
|
|
62
|
+
- **NFSe** - Nota Fiscal de Serviços Eletrônica
|
|
63
|
+
- **CCe** - Carta de Correção Eletrônica
|
|
64
|
+
- **CT-e** - Conhecimento de Transporte Eletrônico
|
|
65
|
+
- **Communication** - Documentos de comunicação genéricos
|
|
66
|
+
- **Payment** - Documentos de pagamento
|
|
67
|
+
- **Receipt** - Documentos de recibo
|
|
68
|
+
|
|
69
|
+
Cada tipo possui interfaces de request/input para componentes (Address, Person, Item, Tax) e utilitários de conversão.
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### 4. **documentRollback** - Reversão de Estado de Documentos
|
|
74
|
+
Gerenciamento de rollback e reversão de estados de documentos fiscais.
|
|
75
|
+
|
|
76
|
+
**Funcionalidades:**
|
|
77
|
+
- Reversão de alterações em documentos
|
|
78
|
+
- Recriação de estados anteriores
|
|
79
|
+
- Capacidade de auditoria
|
|
80
|
+
- Suporte para todos os tipos de documentos (CCe, CT-e, NF-e, NFSe, etc.)
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
### 5. **profiles** - Gestão de Perfis de Estabelecimentos
|
|
85
|
+
Gerenciamento de perfis fiscais e configurações de regimes tributários especializados.
|
|
86
|
+
|
|
87
|
+
**Classes principais:**
|
|
88
|
+
- `Profile` - Perfil fiscal com validade e configurações
|
|
89
|
+
- `Establishment` - Filiais/estabelecimentos com identificação fiscal e endereço
|
|
90
|
+
|
|
91
|
+
**Perfis especializados por regime tributário:**
|
|
92
|
+
- `EcdSpecializedProfile` - Escrituração Contábil Digital (ECD)
|
|
93
|
+
- `EcfSpecializedProfile` - Escrituração Contábil Fiscal (ECF)
|
|
94
|
+
- `EfdContribSpecializedProfile` - SPED Contribuições (PIS/COFINS)
|
|
95
|
+
- `EfdIcmsIpiSpecializedProfile` - SPED ICMS/IPI
|
|
96
|
+
- `ReinfSpecializedProfile` - REINF (Retenções e Informações Fiscais)
|
|
97
|
+
|
|
98
|
+
**Infraestrutura:** `ProfileRestRepository` para integração via REST API.
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
### 6. **valueObjects** - Objetos de Valor do Domínio
|
|
103
|
+
Objetos de valor reutilizáveis e imutáveis para conceitos fiscais brasileiros.
|
|
104
|
+
|
|
105
|
+
**Classes:**
|
|
106
|
+
- `CPF` - Validação e formatação de CPF (pessoa física)
|
|
107
|
+
- `CNPJ` - Validação e formatação de CNPJ (pessoa jurídica)
|
|
108
|
+
- `Email` - Validação de e-mail
|
|
109
|
+
- `OurDate` - Manipulação de datas com formatos brasileiros
|
|
110
|
+
- Suporte a múltiplos formatos (`LayoutDateFormat`)
|
|
111
|
+
- Parsing e formatação
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
### 7. **errors** - Gestão de Erros e Mensagens
|
|
116
|
+
Tratamento centralizado de erros com templates de mensagens localizadas.
|
|
117
|
+
|
|
118
|
+
**Exports:**
|
|
119
|
+
- `MessageCode` & `MessageCodeType` - Enumeração de códigos de erro
|
|
120
|
+
- `Messages` - Templates de mensagens localizadas
|
|
121
|
+
- `formatMessage` & `logWithContext` - Utilitários de formatação e logging
|
|
122
|
+
|
|
123
|
+
**Características:**
|
|
124
|
+
- Sistema de dicionário organizado
|
|
125
|
+
- Mensagens baseadas em templates
|
|
126
|
+
- Type-safe na formatação de mensagens
|
|
127
|
+
- Suporte a múltiplos idiomas
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
### 8. **masterData** - Gestão de Dados de Referência
|
|
132
|
+
Gerenciamento de dados de referência brasileiros.
|
|
133
|
+
|
|
134
|
+
**Classes:**
|
|
135
|
+
- `State` - Informações de estados brasileiros
|
|
136
|
+
- `Municipality` - Dados de municípios com códigos IBGE
|
|
137
|
+
- `MunicipalObligation` - Metadados de obrigações municipais
|
|
138
|
+
- `ServiceCode` - Códigos de classificação de serviços
|
|
139
|
+
|
|
140
|
+
**Infraestrutura:** `MemoryMasterDataRepository` para cache em memória.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 🏗️ Arquitetura
|
|
145
|
+
|
|
146
|
+
A biblioteca é organizada em **arquitetura em camadas**:
|
|
147
|
+
|
|
148
|
+
1. **Camada de Domínio** (`documents`, `profiles`, `masterData`)
|
|
149
|
+
- Entidades de negócio e objetos de valor
|
|
150
|
+
- Enumerações e tipos
|
|
151
|
+
|
|
152
|
+
2. **Camada de Aplicação** (`conversionDocuments`, `documentRollback`)
|
|
153
|
+
- Casos de uso e transformações
|
|
154
|
+
- Conversões de formatos de documentos
|
|
155
|
+
|
|
156
|
+
3. **Camada de Framework** (`taxReport`)
|
|
157
|
+
- Framework genérico para relatórios fiscais
|
|
158
|
+
- Arquitetura extensível para diferentes tipos de relatórios
|
|
159
|
+
|
|
160
|
+
4. **Camada de Infraestrutura** (diretórios `infra` dentro dos módulos)
|
|
161
|
+
- Persistência em banco de dados (MongoDB)
|
|
162
|
+
- Integrações REST
|
|
163
|
+
- Implementações em memória
|
|
164
|
+
|
|
165
|
+
5. **Preocupações Transversais**
|
|
166
|
+
- Gestão de erros (`errors`)
|
|
167
|
+
- Objetos de valor (`valueObjects`)
|
|
168
|
+
- Dados de referência (`masterData`)
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## 🚀 Começando
|
|
173
|
+
|
|
174
|
+
### Instalação
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
npm install @seidor/br-fiscal
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Uso Básico
|
|
181
|
+
|
|
182
|
+
#### Criando um Documento Fiscal
|
|
183
|
+
|
|
184
|
+
```typescript
|
|
185
|
+
import { BuilderDocument, DocumentType, DocumentStatus } from '@seidor/br-fiscal';
|
|
186
|
+
|
|
187
|
+
const document = new BuilderDocument()
|
|
188
|
+
.setId('doc-123')
|
|
189
|
+
.setDocumentType(DocumentType.NFE)
|
|
190
|
+
.setStatus(DocumentStatus.AUTHORIZED)
|
|
191
|
+
.setAmount(1000.00)
|
|
192
|
+
.build();
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
#### Validando CNPJ/CPF
|
|
196
|
+
|
|
197
|
+
```typescript
|
|
198
|
+
import { CNPJ, CPF } from '@seidor/br-fiscal';
|
|
199
|
+
|
|
200
|
+
const cnpj = new CNPJ('12.345.678/0001-90');
|
|
201
|
+
if (cnpj.isValid()) {
|
|
202
|
+
console.log('CNPJ válido:', cnpj.format());
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
const cpf = new CPF('123.456.789-00');
|
|
206
|
+
if (cpf.isValid()) {
|
|
207
|
+
console.log('CPF válido:', cpf.format());
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
#### Gerando Relatório SPED
|
|
212
|
+
|
|
213
|
+
```typescript
|
|
214
|
+
import { TaxReport, Block, Register } from '@seidor/br-fiscal';
|
|
215
|
+
|
|
216
|
+
// Consulte a documentação completa em lib/taxReport/README.md
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## 📚 Documentação Adicional
|
|
222
|
+
|
|
223
|
+
- **Tax Report Framework:** [`lib/taxReport/README.md`](lib/taxReport/README.md)
|
|
224
|
+
- [Arquitetura](lib/taxReport/ARCHITECTURE.md)
|
|
225
|
+
- [Guia Rápido](lib/taxReport/QUICKSTART.md)
|
|
226
|
+
- [Exemplos](lib/taxReport/EXAMPLES.md)
|
|
227
|
+
- [FAQ](lib/taxReport/FAQ.md)
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## 🔑 Características Principais
|
|
232
|
+
|
|
233
|
+
- **Type-Safe:** Uso extensivo de TypeScript, decorators e enums
|
|
234
|
+
- **Orientado a Padrões:** Builder pattern, Repository pattern, Observer pattern
|
|
235
|
+
- **Extensível:** Classes abstratas e interfaces em toda a biblioteca
|
|
236
|
+
- **Otimizado para Performance:** Preparado para processar grandes volumes de registros fiscais
|
|
237
|
+
- **Específico para o Brasil:** Suporte completo aos requisitos fiscais brasileiros
|
|
238
|
+
- **Bem Documentado:** README, exemplos e documentação de arquitetura extensivos
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## 📄 Licença
|
|
243
|
+
|
|
244
|
+
Consulte o arquivo LICENSE para mais informações.
|
|
15
245
|
|
|
16
|
-
## Como foi construída a solução
|
|
17
246
|
|
|
18
|
-

|
package/dist/index.d.mts
CHANGED
|
@@ -3590,9 +3590,12 @@ declare const MessageCode: {
|
|
|
3590
3590
|
};
|
|
3591
3591
|
INTERNAL: {
|
|
3592
3592
|
INTERNAL_SERVER_ERROR: string;
|
|
3593
|
+
UNEXPECTED_ERROR: string;
|
|
3593
3594
|
};
|
|
3594
3595
|
SETTING: {
|
|
3595
|
-
|
|
3596
|
+
PROFILE_NOT_SET_UP: string;
|
|
3597
|
+
REINF_NOT_ENABLED: string;
|
|
3598
|
+
R2060_CONFIG_CONFLICT: string;
|
|
3596
3599
|
};
|
|
3597
3600
|
};
|
|
3598
3601
|
type AuthCodeType = (typeof MessageCode.AUTH)[keyof typeof MessageCode.AUTH];
|
|
@@ -3659,15 +3662,23 @@ declare function logWithContext<T extends MessageCodeType>(messageCode: T, param
|
|
|
3659
3662
|
actionSuggestion: string;
|
|
3660
3663
|
};
|
|
3661
3664
|
|
|
3665
|
+
declare enum MunicipalObligationTypeEnum {
|
|
3666
|
+
NORMAL = "Normal (Original)",// Representa a entrega inicial da obrigação fiscal
|
|
3667
|
+
CORRECTIVE = "Retificadora (Substitutiva)",// Corrige informações de uma obrigação já entregue anteriormente. Substitui integralmente a versão anterior.
|
|
3668
|
+
COMPLEMENTARY = "Complementar",// Utilizadas para acrescentar informações (ex.: notas fiscais) que não estavam incluídas na entrega original.
|
|
3669
|
+
CANCELLATION = "Cancelamento",// Indicadas quando é necessário invalidar totalmente uma obrigação ou registro anterior.
|
|
3670
|
+
ADJUSTMENT = "Ajuste"
|
|
3671
|
+
}
|
|
3672
|
+
|
|
3662
3673
|
declare class MunicipalObligation {
|
|
3663
3674
|
protected _name: string;
|
|
3664
3675
|
protected _versions: Set<string>;
|
|
3665
|
-
protected _types: Set<
|
|
3666
|
-
constructor(name: string, versions: string[], types:
|
|
3676
|
+
protected _types: Set<MunicipalObligationTypeEnum>;
|
|
3677
|
+
constructor(name: string, versions: string[], types: MunicipalObligationTypeEnum[]);
|
|
3667
3678
|
get name(): string;
|
|
3668
3679
|
addVersion(version: string): void;
|
|
3669
3680
|
get versions(): string[];
|
|
3670
|
-
addType(type:
|
|
3681
|
+
addType(type: MunicipalObligationTypeEnum): void;
|
|
3671
3682
|
get types(): string[];
|
|
3672
3683
|
isVersionAvailable(version: string): boolean;
|
|
3673
3684
|
}
|
|
@@ -3697,7 +3708,7 @@ declare class Municipality {
|
|
|
3697
3708
|
getMunicipalObligationByName(obligationName: string): MunicipalObligation;
|
|
3698
3709
|
}
|
|
3699
3710
|
|
|
3700
|
-
declare enum
|
|
3711
|
+
declare enum StateEnum {
|
|
3701
3712
|
Acre = "AC",
|
|
3702
3713
|
Alagoas = "AL",
|
|
3703
3714
|
Amapa = "AP",
|
|
@@ -3728,12 +3739,12 @@ declare enum UF {
|
|
|
3728
3739
|
}
|
|
3729
3740
|
|
|
3730
3741
|
declare class State {
|
|
3731
|
-
protected _uf:
|
|
3742
|
+
protected _uf: StateEnum;
|
|
3732
3743
|
protected _code: number;
|
|
3733
3744
|
protected _name: string;
|
|
3734
3745
|
protected _municipalities: Map<number, Municipality>;
|
|
3735
|
-
constructor(uf:
|
|
3736
|
-
get uf():
|
|
3746
|
+
constructor(uf: StateEnum, code: number, name: string);
|
|
3747
|
+
get uf(): StateEnum;
|
|
3737
3748
|
get code(): number;
|
|
3738
3749
|
get name(): string;
|
|
3739
3750
|
addMunicipality(municipality: Municipality): void;
|
|
@@ -3776,4 +3787,4 @@ declare class MemoryMasterDataRepository implements Repository {
|
|
|
3776
3787
|
getStateByUF(uf: string): State | undefined;
|
|
3777
3788
|
}
|
|
3778
3789
|
|
|
3779
|
-
export { Addition, Address, Alphanumeric, type AuthTokenExpiredParams, type AuthUnauthorizedParams, Block, BuilderAddition, BuilderAddress, BuilderDocument, BuilderImportDeclaration, BuilderItem, BuilderPerson, BuilderTax, CNPJ, CPF, CalculationBasisNatureSetting, CodeStatusEnum, ConsoleOutput, CountryCodeEnum, CteTypeEnum, DEFAULT_LOCALE, type DatabaseConnectionFailedParams, type DatabaseQueryErrorParams, Decimal, DefaultAlphanumericLength, DescriptionStatusEnum, DifalIcmsCategoryEnum, Document, DocumentTypeEnum, EcdSpecializedProfile, EcfSpecializedProfile, EfdContribSpecializedProfile, EfdIcmsIpiSpecializedProfile, Email, EnforceabilityOfISSEnum, Establishment, EstablishmentEvent, EventEnum, FieldDataType, type FieldFormat, type FiltersDocument, FreightContractedNatureIndicatorEnum, FreightTypeEnum, ReportGenerator$1 as Generation, GrossRevenueContributionHeaders, type IDocumentMongo, IcmsIpiAdjustmentVerification, type IdentificationNumber, ImportDeclaration, IntermediationTypeEnum, type InternalServerErrorParams, InternationalTransportTypeEnum, IssuerIndicatorEnum, Item, ItemTypeEnum, Key, type KeyComposition, type KeyFieldDefinition, LayoutDateFormat, type Locale, MaximumNumericLength, MemoryMasterDataRepository, MemoryPersist, MessageCategory, MessageCode, type MessageCodeType, Messages, ModelConverter, ModelRollback, MongoConfig, MongoRepository, MongoToDocumentBuilder, MunicipalObligation, Municipality, NatureConfig, Numeric, OnDuplication, OnDuplicationStrategy, OperationTypeEnum, OurDate, type OutputWriter, type ParameterTypes, PaymentTypeEnum, Person, ProductOriginEnum, Profile, ProfileRestRepository, Register, type RegisterEventData, type RegisterEventNotifier, type RegisterGenerator, type RegisterPersist, type RegisterSubscriber, ReinfSpecializedProfile, RevenueNatureSettings, RevenueTypeEnum, Scp, ServiceCode, ServiceCodeEnum, type SettingErrorParams, Signatory, SimpleReportGenerator, State, StateRegistrationIndicatorEnum, StatusDocumentEnum, StringArrayOutput, Tax, TaxRegimeEnum, type TaxRegisterGenerationOptions, TaxRegisterGenerator, TaxReport, TaxTypeEnum$1 as TaxTypeEnum,
|
|
3790
|
+
export { Addition, Address, Alphanumeric, type AuthTokenExpiredParams, type AuthUnauthorizedParams, Block, BuilderAddition, BuilderAddress, BuilderDocument, BuilderImportDeclaration, BuilderItem, BuilderPerson, BuilderTax, CNPJ, CPF, CalculationBasisNatureSetting, CodeStatusEnum, ConsoleOutput, CountryCodeEnum, CteTypeEnum, DEFAULT_LOCALE, type DatabaseConnectionFailedParams, type DatabaseQueryErrorParams, Decimal, DefaultAlphanumericLength, DescriptionStatusEnum, DifalIcmsCategoryEnum, Document, DocumentTypeEnum, EcdSpecializedProfile, EcfSpecializedProfile, EfdContribSpecializedProfile, EfdIcmsIpiSpecializedProfile, Email, EnforceabilityOfISSEnum, Establishment, EstablishmentEvent, EventEnum, FieldDataType, type FieldFormat, type FiltersDocument, FreightContractedNatureIndicatorEnum, FreightTypeEnum, ReportGenerator$1 as Generation, GrossRevenueContributionHeaders, type IDocumentMongo, IcmsIpiAdjustmentVerification, type IdentificationNumber, ImportDeclaration, IntermediationTypeEnum, type InternalServerErrorParams, InternationalTransportTypeEnum, IssuerIndicatorEnum, Item, ItemTypeEnum, Key, type KeyComposition, type KeyFieldDefinition, LayoutDateFormat, type Locale, MaximumNumericLength, MemoryMasterDataRepository, MemoryPersist, MessageCategory, MessageCode, type MessageCodeType, Messages, ModelConverter, ModelRollback, MongoConfig, MongoRepository, MongoToDocumentBuilder, MunicipalObligation, MunicipalObligationTypeEnum, Municipality, NatureConfig, Numeric, OnDuplication, OnDuplicationStrategy, OperationTypeEnum, OurDate, type OutputWriter, type ParameterTypes, PaymentTypeEnum, Person, ProductOriginEnum, Profile, ProfileRestRepository, Register, type RegisterEventData, type RegisterEventNotifier, type RegisterGenerator, type RegisterPersist, type RegisterSubscriber, ReinfSpecializedProfile, RevenueNatureSettings, RevenueTypeEnum, Scp, ServiceCode, ServiceCodeEnum, type SettingErrorParams, Signatory, SimpleReportGenerator, State, StateEnum, StateRegistrationIndicatorEnum, StatusDocumentEnum, StringArrayOutput, Tax, TaxRegimeEnum, type TaxRegisterGenerationOptions, TaxRegisterGenerator, TaxReport, TaxTypeEnum$1 as TaxTypeEnum, type ValidationInvalidInputParams, type ValidationMissingFieldParams, ValueProviderType, buildMongoFilter, formatMessage, logWithContext };
|
package/dist/index.d.ts
CHANGED
|
@@ -3590,9 +3590,12 @@ declare const MessageCode: {
|
|
|
3590
3590
|
};
|
|
3591
3591
|
INTERNAL: {
|
|
3592
3592
|
INTERNAL_SERVER_ERROR: string;
|
|
3593
|
+
UNEXPECTED_ERROR: string;
|
|
3593
3594
|
};
|
|
3594
3595
|
SETTING: {
|
|
3595
|
-
|
|
3596
|
+
PROFILE_NOT_SET_UP: string;
|
|
3597
|
+
REINF_NOT_ENABLED: string;
|
|
3598
|
+
R2060_CONFIG_CONFLICT: string;
|
|
3596
3599
|
};
|
|
3597
3600
|
};
|
|
3598
3601
|
type AuthCodeType = (typeof MessageCode.AUTH)[keyof typeof MessageCode.AUTH];
|
|
@@ -3659,15 +3662,23 @@ declare function logWithContext<T extends MessageCodeType>(messageCode: T, param
|
|
|
3659
3662
|
actionSuggestion: string;
|
|
3660
3663
|
};
|
|
3661
3664
|
|
|
3665
|
+
declare enum MunicipalObligationTypeEnum {
|
|
3666
|
+
NORMAL = "Normal (Original)",// Representa a entrega inicial da obrigação fiscal
|
|
3667
|
+
CORRECTIVE = "Retificadora (Substitutiva)",// Corrige informações de uma obrigação já entregue anteriormente. Substitui integralmente a versão anterior.
|
|
3668
|
+
COMPLEMENTARY = "Complementar",// Utilizadas para acrescentar informações (ex.: notas fiscais) que não estavam incluídas na entrega original.
|
|
3669
|
+
CANCELLATION = "Cancelamento",// Indicadas quando é necessário invalidar totalmente uma obrigação ou registro anterior.
|
|
3670
|
+
ADJUSTMENT = "Ajuste"
|
|
3671
|
+
}
|
|
3672
|
+
|
|
3662
3673
|
declare class MunicipalObligation {
|
|
3663
3674
|
protected _name: string;
|
|
3664
3675
|
protected _versions: Set<string>;
|
|
3665
|
-
protected _types: Set<
|
|
3666
|
-
constructor(name: string, versions: string[], types:
|
|
3676
|
+
protected _types: Set<MunicipalObligationTypeEnum>;
|
|
3677
|
+
constructor(name: string, versions: string[], types: MunicipalObligationTypeEnum[]);
|
|
3667
3678
|
get name(): string;
|
|
3668
3679
|
addVersion(version: string): void;
|
|
3669
3680
|
get versions(): string[];
|
|
3670
|
-
addType(type:
|
|
3681
|
+
addType(type: MunicipalObligationTypeEnum): void;
|
|
3671
3682
|
get types(): string[];
|
|
3672
3683
|
isVersionAvailable(version: string): boolean;
|
|
3673
3684
|
}
|
|
@@ -3697,7 +3708,7 @@ declare class Municipality {
|
|
|
3697
3708
|
getMunicipalObligationByName(obligationName: string): MunicipalObligation;
|
|
3698
3709
|
}
|
|
3699
3710
|
|
|
3700
|
-
declare enum
|
|
3711
|
+
declare enum StateEnum {
|
|
3701
3712
|
Acre = "AC",
|
|
3702
3713
|
Alagoas = "AL",
|
|
3703
3714
|
Amapa = "AP",
|
|
@@ -3728,12 +3739,12 @@ declare enum UF {
|
|
|
3728
3739
|
}
|
|
3729
3740
|
|
|
3730
3741
|
declare class State {
|
|
3731
|
-
protected _uf:
|
|
3742
|
+
protected _uf: StateEnum;
|
|
3732
3743
|
protected _code: number;
|
|
3733
3744
|
protected _name: string;
|
|
3734
3745
|
protected _municipalities: Map<number, Municipality>;
|
|
3735
|
-
constructor(uf:
|
|
3736
|
-
get uf():
|
|
3746
|
+
constructor(uf: StateEnum, code: number, name: string);
|
|
3747
|
+
get uf(): StateEnum;
|
|
3737
3748
|
get code(): number;
|
|
3738
3749
|
get name(): string;
|
|
3739
3750
|
addMunicipality(municipality: Municipality): void;
|
|
@@ -3776,4 +3787,4 @@ declare class MemoryMasterDataRepository implements Repository {
|
|
|
3776
3787
|
getStateByUF(uf: string): State | undefined;
|
|
3777
3788
|
}
|
|
3778
3789
|
|
|
3779
|
-
export { Addition, Address, Alphanumeric, type AuthTokenExpiredParams, type AuthUnauthorizedParams, Block, BuilderAddition, BuilderAddress, BuilderDocument, BuilderImportDeclaration, BuilderItem, BuilderPerson, BuilderTax, CNPJ, CPF, CalculationBasisNatureSetting, CodeStatusEnum, ConsoleOutput, CountryCodeEnum, CteTypeEnum, DEFAULT_LOCALE, type DatabaseConnectionFailedParams, type DatabaseQueryErrorParams, Decimal, DefaultAlphanumericLength, DescriptionStatusEnum, DifalIcmsCategoryEnum, Document, DocumentTypeEnum, EcdSpecializedProfile, EcfSpecializedProfile, EfdContribSpecializedProfile, EfdIcmsIpiSpecializedProfile, Email, EnforceabilityOfISSEnum, Establishment, EstablishmentEvent, EventEnum, FieldDataType, type FieldFormat, type FiltersDocument, FreightContractedNatureIndicatorEnum, FreightTypeEnum, ReportGenerator$1 as Generation, GrossRevenueContributionHeaders, type IDocumentMongo, IcmsIpiAdjustmentVerification, type IdentificationNumber, ImportDeclaration, IntermediationTypeEnum, type InternalServerErrorParams, InternationalTransportTypeEnum, IssuerIndicatorEnum, Item, ItemTypeEnum, Key, type KeyComposition, type KeyFieldDefinition, LayoutDateFormat, type Locale, MaximumNumericLength, MemoryMasterDataRepository, MemoryPersist, MessageCategory, MessageCode, type MessageCodeType, Messages, ModelConverter, ModelRollback, MongoConfig, MongoRepository, MongoToDocumentBuilder, MunicipalObligation, Municipality, NatureConfig, Numeric, OnDuplication, OnDuplicationStrategy, OperationTypeEnum, OurDate, type OutputWriter, type ParameterTypes, PaymentTypeEnum, Person, ProductOriginEnum, Profile, ProfileRestRepository, Register, type RegisterEventData, type RegisterEventNotifier, type RegisterGenerator, type RegisterPersist, type RegisterSubscriber, ReinfSpecializedProfile, RevenueNatureSettings, RevenueTypeEnum, Scp, ServiceCode, ServiceCodeEnum, type SettingErrorParams, Signatory, SimpleReportGenerator, State, StateRegistrationIndicatorEnum, StatusDocumentEnum, StringArrayOutput, Tax, TaxRegimeEnum, type TaxRegisterGenerationOptions, TaxRegisterGenerator, TaxReport, TaxTypeEnum$1 as TaxTypeEnum,
|
|
3790
|
+
export { Addition, Address, Alphanumeric, type AuthTokenExpiredParams, type AuthUnauthorizedParams, Block, BuilderAddition, BuilderAddress, BuilderDocument, BuilderImportDeclaration, BuilderItem, BuilderPerson, BuilderTax, CNPJ, CPF, CalculationBasisNatureSetting, CodeStatusEnum, ConsoleOutput, CountryCodeEnum, CteTypeEnum, DEFAULT_LOCALE, type DatabaseConnectionFailedParams, type DatabaseQueryErrorParams, Decimal, DefaultAlphanumericLength, DescriptionStatusEnum, DifalIcmsCategoryEnum, Document, DocumentTypeEnum, EcdSpecializedProfile, EcfSpecializedProfile, EfdContribSpecializedProfile, EfdIcmsIpiSpecializedProfile, Email, EnforceabilityOfISSEnum, Establishment, EstablishmentEvent, EventEnum, FieldDataType, type FieldFormat, type FiltersDocument, FreightContractedNatureIndicatorEnum, FreightTypeEnum, ReportGenerator$1 as Generation, GrossRevenueContributionHeaders, type IDocumentMongo, IcmsIpiAdjustmentVerification, type IdentificationNumber, ImportDeclaration, IntermediationTypeEnum, type InternalServerErrorParams, InternationalTransportTypeEnum, IssuerIndicatorEnum, Item, ItemTypeEnum, Key, type KeyComposition, type KeyFieldDefinition, LayoutDateFormat, type Locale, MaximumNumericLength, MemoryMasterDataRepository, MemoryPersist, MessageCategory, MessageCode, type MessageCodeType, Messages, ModelConverter, ModelRollback, MongoConfig, MongoRepository, MongoToDocumentBuilder, MunicipalObligation, MunicipalObligationTypeEnum, Municipality, NatureConfig, Numeric, OnDuplication, OnDuplicationStrategy, OperationTypeEnum, OurDate, type OutputWriter, type ParameterTypes, PaymentTypeEnum, Person, ProductOriginEnum, Profile, ProfileRestRepository, Register, type RegisterEventData, type RegisterEventNotifier, type RegisterGenerator, type RegisterPersist, type RegisterSubscriber, ReinfSpecializedProfile, RevenueNatureSettings, RevenueTypeEnum, Scp, ServiceCode, ServiceCodeEnum, type SettingErrorParams, Signatory, SimpleReportGenerator, State, StateEnum, StateRegistrationIndicatorEnum, StatusDocumentEnum, StringArrayOutput, Tax, TaxRegimeEnum, type TaxRegisterGenerationOptions, TaxRegisterGenerator, TaxReport, TaxTypeEnum$1 as TaxTypeEnum, type ValidationInvalidInputParams, type ValidationMissingFieldParams, ValueProviderType, buildMongoFilter, formatMessage, logWithContext };
|