jsegd-fluig-types 1.0.11 → 1.0.13

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 CHANGED
@@ -1,9 +1,9 @@
1
1
  # jsegd-fluig-types
2
2
 
3
- ![Version](https://img.shields.io/badge/version-1.0.11-blue.svg)
3
+ ![Version](https://img.shields.io/badge/version-1.0.13-blue.svg)
4
4
  ![License](https://img.shields.io/badge/license-CC--BY--NC--ND--4.0-green.svg)
5
5
 
6
- Pacote de tipos TypeScript para desenvolvimento com a plataforma Fluig. Este pacote fornece tipagens completas para APIs do Fluig, facilitando o desenvolvimento tanto no frontend quanto no backend.
6
+ Pacote de tipos TypeScript para desenvolvimento com a plataforma Fluig. Este pacote fornece tipagens completas para APIs do Fluig, facilitando o desenvolvimento tanto no frontend quanto no backend, incluindo suporte para webservices e implementações duais de DatasetFactory.
7
7
 
8
8
  ## 📦 Instalação
9
9
 
@@ -28,6 +28,18 @@ import "jsegd-fluig-types";
28
28
  // Exemplo: usando tipos de formulário
29
29
  const mode: FormMod = FormMod.ADD;
30
30
 
31
+ // Exemplo: usando DatasetFactory no frontend (retorna DatasetWcmResult)
32
+ DatasetFactory.getDataset(
33
+ "colleague",
34
+ ["colleagueId", "colleagueName"],
35
+ constraints,
36
+ ["colleagueName"]
37
+ ).then(result => {
38
+ // result é do tipo DatasetWcmResult
39
+ console.log(result.columns); // string[]
40
+ console.log(result.values); // unknown[]
41
+ });
42
+
31
43
  // Exemplo: usando componentes de autocomplete
32
44
  const autocompleteConfig: AutocompleteOptions = {
33
45
  type: AutocompleteTypes.tag,
@@ -37,17 +49,40 @@ const autocompleteConfig: AutocompleteOptions = {
37
49
 
38
50
  #### Backend (Dataset/Evento de Workflow)
39
51
  ```typescript
40
- // Tipos para datasets
41
- function createDataset(fields: string[], constraints: Constraint[]): DatasetBuilder {
42
- // Implementação do dataset
52
+ // Tipos para datasets (retorna DefaultDataset com tipos Java)
53
+ function createDataset(fields: string[], constraints: SearchConstraint[]): DefaultDataset {
54
+ const dataset = DatasetFactory.getDataset("myDataset", fields, constraints, []);
55
+ // dataset é do tipo DefaultDataset com métodos Java tipados
56
+ return dataset;
43
57
  }
44
58
 
59
+ // Criando constraints com tipos específicos para backend
60
+ const constraint = DatasetFactory.createConstraint(
61
+ "status",
62
+ "active",
63
+ "active",
64
+ ConstraintType.MUST
65
+ ); // Retorna SearchConstraint para backend
66
+
45
67
  // Tipos para eventos de workflow
46
68
  function beforeTaskSave(colleagueId: string, nextSequenceId: number, userTaskVO: UserTaskVO): void {
47
69
  // Implementação do evento
48
70
  }
49
71
  ```
50
72
 
73
+ #### Webservices
74
+ ```typescript
75
+ // Exemplo: usando ECMWorkflowEngineService
76
+ const serviceManager = new ServiceManager();
77
+ const workflowService = serviceManager.instantiate("ECMWorkflowEngineService");
78
+ // ou alternativamente:
79
+ const workflowService2 = serviceManager.instantiate("WorkflowEngineService");
80
+
81
+ // Acesso ao service port com tipagem completa
82
+ const port = serviceManager.getWorkflowEngineServicePort();
83
+ const processes = port.listMyRequestProcesses("usuario123", 0, 10);
84
+ ```
85
+
51
86
  #### SDK do Fluig
52
87
  ```typescript
53
88
  // Acesso às APIs do Fluig com tipagem completa
@@ -62,8 +97,10 @@ const userService = fluigAPI.getUserService();
62
97
  |---------|-----------|
63
98
  | **`fluig.sdk.d.ts`** | Tipos para SDK do Fluig - APIs Java disponíveis no servidor |
64
99
  | **`java.d.ts`** | Tipos para classes Java básicas (List, ArrayList, HashMap, etc.) |
65
- | **`fluig.frontend.d.ts`** | Tipos para desenvolvimento frontend (widgets, portais) |
66
- | **`fluig.backend.d.ts`** | Tipos para desenvolvimento backend (datasets, eventos) |
100
+ | **`fluig.frontend.d.ts`** | Tipos para desenvolvimento frontend (widgets, portais, DatasetFactory frontend) |
101
+ | **`fluig.backend.d.ts`** | Tipos para desenvolvimento backend (datasets, eventos, ClassNameMap, ServiceManager) |
102
+ | **`fluig.webservice.d.ts`** | Tipos para webservices (ECMWorkflowEngineService, WorkflowEngineService) |
103
+ | **`fluig.dataset.d.ts`** | Tipos compartilhados para datasets (enums, interfaces, classes base) |
67
104
  | **`index.d.ts`** | Arquivo principal que exporta todos os tipos |
68
105
 
69
106
  ## 🎯 Funcionalidades
@@ -73,12 +110,22 @@ const userService = fluigAPI.getUserService();
73
110
  - Enums para modos de formulário (`FormMod`)
74
111
  - Tipos para autocomplete e widgets
75
112
  - Interfaces para eventos frontend
113
+ - **DatasetFactory** com retorno otimizado para JavaScript (`DatasetWcmResult`)
76
114
 
77
115
  ### ✅ Backend
78
116
  - Tipos para datasets e constrangimentos
79
117
  - Interfaces para eventos de workflow
80
118
  - Tipos para respostas de APIs
81
119
  - Enums para status e tipos de dados
120
+ - **ClassNameMap** para tipagem inteligente do método `instantiate()`
121
+ - **ServiceManager** com suporte a webservices
122
+ - **DatasetFactory** com retorno de tipos Java (`DefaultDataset`)
123
+
124
+ ### ✅ Webservices
125
+ - **ECMWorkflowEngineService** com tipagem completa baseada em WSDL
126
+ - Mais de 40 métodos tipados para workflow engine
127
+ - Interface **WorkflowEngineService** para operações de workflow
128
+ - Suporte a mapeamento duplo de nomes de classe
82
129
 
83
130
  ### ✅ SDK
84
131
  - Tipagem completa para todas as APIs do Fluig
@@ -87,23 +134,68 @@ const userService = fluigAPI.getUserService();
87
134
 
88
135
  ## 💡 Exemplos Práticos
89
136
 
90
- ### Criando um Dataset
137
+ ### DatasetFactory - Implementação Dual
138
+
139
+ #### No Backend (Tipos Java)
91
140
  ```typescript
92
- function createDataset(fields: string[], constraints: Constraint[]): DatasetBuilder {
93
- const dataset = DatasetBuilder.newDataset();
94
-
95
- // Adicionar colunas
96
- fields.forEach(field => {
97
- dataset.addColumn(field);
98
- });
99
-
100
- // Aplicar constraints
101
- constraints.forEach(constraint => {
102
- // Processar constraint com tipagem
103
- });
104
-
105
- return dataset;
106
- }
141
+ // Retorna DefaultDataset com métodos Java tipados
142
+ const dataset = DatasetFactory.getDataset(
143
+ "colleague",
144
+ ["colleagueId", "colleagueName"],
145
+ constraints,
146
+ ["colleagueName"]
147
+ );
148
+
149
+ // Métodos Java disponíveis
150
+ const rowCount = dataset.getRowsCount(); // number
151
+ const value = dataset.getValue(0, "colleagueId"); // java.lang.Object
152
+ const resultSet = dataset.toResultSet(); // java.sql.ResultSet
153
+ ```
154
+
155
+ #### No Frontend (Tipos JavaScript)
156
+ ```typescript
157
+ // Retorna DatasetWcmResult otimizado para frontend
158
+ const result = DatasetFactory.getDataset(
159
+ "colleague",
160
+ ["colleagueId", "colleagueName"],
161
+ constraints,
162
+ ["colleagueName"]
163
+ );
164
+
165
+ // Estrutura JavaScript simples
166
+ console.log(result.columns); // string[]
167
+ console.log(result.values); // unknown[]
168
+ ```
169
+
170
+ ### ServiceManager e ClassNameMap
171
+ ```typescript
172
+ const serviceManager = new ServiceManager();
173
+
174
+ // Tipagem inteligente - ambas as formas funcionam
175
+ const service1 = serviceManager.instantiate("ECMWorkflowEngineService");
176
+ const service2 = serviceManager.instantiate("WorkflowEngineService");
177
+
178
+ // IntelliSense completo para métodos do webservice
179
+ const processes = service1.listMyRequestProcesses("usuario", 0, 10);
180
+ ```
181
+
182
+ ### Criando Constraints Específicas por Contexto
183
+ ```typescript
184
+ // Backend - retorna SearchConstraint
185
+ const backendConstraint = DatasetFactory.createConstraint(
186
+ "field",
187
+ "value1",
188
+ "value2",
189
+ ConstraintType.MUST
190
+ );
191
+
192
+ // Frontend - retorna Constraint
193
+ const frontendConstraint = DatasetFactory.createConstraint(
194
+ "field",
195
+ "value1",
196
+ "value2",
197
+ ConstraintType.MUST
198
+ );
107
199
  ```
108
200
 
109
201
  ### Evento de Workflow
@@ -4,36 +4,12 @@ declare enum FormMod {
4
4
  "VIEW" = "VIEW",
5
5
  "NONE" = "NONE",
6
6
  }
7
- declare enum DatasetFieldType {
8
- NUMBER = "NUMBER",
9
- DATE = "DATE",
10
- BOOLEAN = "BOOLEAN",
11
- STRING = "STRING",
12
- TEXT = "TEXT",
13
- }
14
7
 
15
- declare enum Status {
16
- SUCCESS = "success",
17
- ERROR = "error",
18
- WARNING = "warning",
19
- FAIL = "fail",
20
- }
21
8
 
22
9
  declare type HttpMethod = "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
23
10
 
24
11
  declare global {
25
- interface ErrorDetail {
26
- code: string;
27
- message: string;
28
- field?: string;
29
- }
30
- interface DatasetResponse {
31
- status: Status;
32
- code: number;
33
- message: string;
34
- data?: unknown;
35
- errors?: ErrorDetail[];
36
- }
12
+
37
13
 
38
14
  interface WKValues {
39
15
  WKDef: string;
@@ -58,139 +34,6 @@ declare global {
58
34
  WKActualThread: string;
59
35
  }
60
36
 
61
- interface DatasetRequest {
62
- wkValues: WKValues;
63
- cardData: { [key: string]: string };
64
- }
65
-
66
- // Classe que representa um Dataset padrão do Fluig
67
- class DefaultDataset {
68
- // Implementação para adicionar uma coluna ao Dataset
69
- addColumn(colName: keyof DatasetResponse): void;
70
- addColumn(colName: java.lang.String): void;
71
-
72
- // Implementação para adicionar uma linha ao Dataset
73
- addRow(values: DatasetResponse): void;
74
- addRow(values: java.lang.Object[]): void;
75
-
76
- // Implementação para atualizar uma linha do Dataset
77
- updateRow(values: java.lang.Object[]): void;
78
-
79
- // Implementação para adicionar ou atualizar uma linha do Dataset
80
- addOrUpdateRow(values: java.lang.Object[]): void;
81
-
82
- // Implementação para remover uma linha do Dataset
83
- deleteRow(values: java.lang.Object[]): void;
84
-
85
- // Implementação para retornar o nome de uma coluna do Dataset
86
- getColumnName(colNum: number): java.lang.String;
87
-
88
- // Implementação para retornar os nomes das colunas do Dataset
89
- getColumnsName(): java.lang.String[];
90
-
91
- // Implementação para retornar a quantidade de colunas de um Dataset
92
- getColumnsCount(): number;
93
-
94
- // Implementação para retornar os valores do Dataset na forma de uma lista contendo mapas
95
- getMap(): java.util.ArrayList<
96
- java.util.HashMap<java.lang.String, java.lang.Object>
97
- >;
98
-
99
- // Implementação para retornar a quantidade de linhas disponíveis no Dataset
100
- getRowsCount(): number;
101
-
102
- // Implementação para retornar um subconjunto dos dados do Dataset, na forma de um novo Dataset
103
- getSubDataset(
104
- field: java.lang.String,
105
- value: java.lang.Object
106
- ): DefaultDataset;
107
-
108
- // Implementação para retornar o valor armazenado no Dataset, na linha e coluna passadas por parâmetro
109
- getValue(row: number, col: number): java.lang.Object;
110
-
111
- // Implementação para retornar o valor armazenado no Dataset, na linha passada e campo passados por parâmetro
112
- getValue(row: number, colName: java.lang.String): java.lang.Object;
113
-
114
- // Implementação para retornar todos os valores de um Dataset, na forma de um array bidimensional
115
- getValues(): java.lang.Object[][];
116
-
117
- // Implementação para retornar um ResultSet contendo os dados do Dataset.
118
- toResultSet(): java.sql.ResultSet;
119
- }
120
-
121
- // Cria uma nova instância do DatasetBuilder
122
- class DatasetBuilder {
123
- // Cria um novo Dataset
124
- static newDataset(): DefaultDataset;
125
- }
126
-
127
- enum ConstraintType {
128
- MUST = 1,
129
- SHOULD = 2,
130
- MUST_NOT = 3,
131
- }
132
-
133
- class DatasetFactory {
134
- // Cria uma nova constraint para a seleção de registros do Dataset.
135
- static createConstraint(
136
- field: java.lang.String,
137
- initialValue: java.lang.String,
138
- finalValue: java.lang.String,
139
- type: ConstraintType
140
- ): SearchConstraint;
141
-
142
- // Retorna uma lista de todos os Datasets disponíveis no sistema.
143
- static getAvailableDatasets(): java.util.List<java.lang.String>;
144
-
145
- // Carrega os dados de um Dataset.
146
- static getDataset(
147
- name: java.lang.String,
148
- fields: java.lang.String[],
149
- constraints: SearchConstraint[],
150
- order: java.lang.String[]
151
- ): DefaultDataset;
152
- }
153
-
154
- class SearchConstraint {
155
- fieldName: string;
156
- initialValue: string;
157
- finalValue: string;
158
- constraintType: ConstraintType;
159
- likeSearch: boolean;
160
-
161
- getFieldName(): string;
162
- getInitialValue(): string;
163
- getFinalValue(): string;
164
- setLikeSearch(likeSearch: boolean): void;
165
- }
166
-
167
- // Cria um campo na tabela com o nome e tipo informados. O nome sempre deve ser informado em caracteres maiúsculos. O tipo de campo pode ser omitido e neste caso o campo será criado com o tipo String
168
- function AddColumn(field: java.lang.String, type: DatasetFieldType): void;
169
-
170
- // Determina quais são os campos chaves para o dataset. No banco de dados será criado um índice utilizando os campos informados neste método. Esses campos serão utilizados na localização dos registros para atualização ou remoção das linhas através dos métodos updateRow e deleteRow. Importante informar apenas campos que foram previamente definidos com a função addColumn. Devem ser informados em caracteres maiúsculos.
171
- function setKey(fields: java.lang.String[]): void;
172
-
173
- // Permite adicionar mais índices para obtenção de maior performance nas consultas do dataset. Devem ser informados em caracteres maiúsculos.
174
- function addIndex(fields: java.lang.String[]): void;
175
-
176
- /**
177
- * Define a estrutura do dataset.
178
- * @example
179
- * function defineStructure(): void{
180
- * AddColumn("NOME", DatasetFieldType.STRING);
181
- * AddColumn("IDADE", DatasetFieldType.NUMBER);
182
- * setKey(["NOME"]);
183
- * addIndex(["IDADE"]);
184
- * };
185
- */
186
- function defineStructure(): void;
187
- function onSync(lastSyncDate: Date): DefaultDataset;
188
- function createDataset(
189
- fields: string[],
190
- constraints: SearchConstraint[],
191
- sortFields: string[]
192
- ): DefaultDataset;
193
- function onMobileSync(user: string): void;
194
37
 
195
38
  /**
196
39
  * GlobalVars
@@ -414,14 +257,53 @@ declare global {
414
257
  }
415
258
 
416
259
  // #########################################################################
417
- // ########################## WebService Types ############################
260
+ // ########################## ServiceManager Types #########################
418
261
  // #########################################################################
262
+
263
+ // Mapeamento de classes Java comuns no Fluig
264
+ interface ClassNameMap {
265
+ 'java.util.ArrayList': java.util.ArrayList<any>;
266
+ 'java.util.HashMap': java.util.HashMap<any, any>;
267
+ 'java.util.List': java.util.List<any>;
268
+ 'java.util.Collection': java.util.Collection<any>;
269
+ 'java.util.Map': java.util.Map<any, any>;
270
+ 'java.lang.String': java.lang.String;
271
+ 'java.lang.Integer': java.lang.Integer;
272
+ 'java.lang.Long': java.lang.Long;
273
+ 'java.lang.Object': java.lang.Object;
274
+ 'java.sql.ResultSet': java.sql.ResultSet;
275
+ 'java.sql.Date': java.sql.Date;
276
+ 'java.sql.Timestamp': java.sql.Timestamp;
277
+ 'javax.naming.InitialContext': javax.naming.InitialContext;
278
+ 'com.fluig.sdk.api.FluigAPI': com.fluig.sdk.api.FluigAPI;
279
+ 'com.totvs.technology.ecm.workflow.ws.ECMWorkflowEngineServiceService': com.totvs.technology.ecm.workflow.ws.ECMWorkflowEngineServiceService;
280
+ }
281
+
419
282
  class ServiceManager {
420
283
  static getService(serviceName: string): Service;
421
284
  }
285
+
422
286
  class Service {
423
287
  getBean(): {
424
- instantiate(): object;
288
+ /**
289
+ * Instancia uma classe Java com tipagem específica baseada no nome da classe
290
+ * @param className Nome completo da classe Java
291
+ * @returns Instância da classe com tipagem apropriada
292
+ * @example
293
+ * const arrayList = service.getBean().instantiate('java.util.ArrayList');
294
+ * arrayList.add("item"); // Métodos do ArrayList disponíveis
295
+ *
296
+ * const hashMap = service.getBean().instantiate('java.util.HashMap');
297
+ * hashMap.put("key", "value"); // Métodos do HashMap disponíveis
298
+ *
299
+ * const fluigAPI = service.getBean().instantiate('com.fluig.sdk.api.FluigAPI');
300
+ * fluigAPI.getUserService(); // Métodos da FluigAPI disponíveis
301
+ *
302
+ * const workflowService = service.getBean().instantiate('com.totvs.technology.ecm.workflow.ws.ECMWorkflowEngineServiceService');
303
+ * workflowService.startProcess(...); // Métodos do ECMWorkflowEngineService disponíveis
304
+ */
305
+ instantiate<T extends keyof ClassNameMap>(className: T): ClassNameMap[T];
306
+ instantiate<T = any>(className: string): T;
425
307
  };
426
308
  }
427
309
  }
@@ -0,0 +1,192 @@
1
+ declare enum DatasetFieldType {
2
+ NUMBER = "NUMBER",
3
+ DATE = "DATE",
4
+ BOOLEAN = "BOOLEAN",
5
+ STRING = "STRING",
6
+ TEXT = "TEXT",
7
+ }
8
+
9
+ declare enum Status {
10
+ SUCCESS = "success",
11
+ ERROR = "error",
12
+ WARNING = "warning",
13
+ FAIL = "fail",
14
+ }
15
+ declare global {
16
+ interface ErrorDetail {
17
+ code: string;
18
+ message: string;
19
+ field?: string;
20
+ }
21
+ interface DatasetResponse {
22
+ status: Status;
23
+ code: number;
24
+ message: string;
25
+ data?: unknown;
26
+ errors?: ErrorDetail[];
27
+ }
28
+ interface DatasetRequest {
29
+ wkValues: WKValues;
30
+ cardData: { [key: string]: string };
31
+ }
32
+
33
+ interface DatasetWcmResult<T = unknown> {
34
+ columns: string[];
35
+ values: T[];
36
+ }
37
+
38
+ interface DatasetWcmCallback {
39
+ success: (result: DatasetWcmResult) => unknown;
40
+ error: (error: object, message: string, details: string) => void;
41
+ }
42
+
43
+ // Classe que representa um Dataset padrão do Fluig
44
+ class DefaultDataset {
45
+ // Implementação para adicionar uma coluna ao Dataset
46
+ addColumn(colName: keyof DatasetResponse): void;
47
+ addColumn(colName: java.lang.String): void;
48
+
49
+ // Implementação para adicionar uma linha ao Dataset
50
+ addRow(values: DatasetResponse): void;
51
+ addRow(values: java.lang.Object[]): void;
52
+
53
+ // Implementação para atualizar uma linha do Dataset
54
+ updateRow(values: java.lang.Object[]): void;
55
+
56
+ // Implementação para adicionar ou atualizar uma linha do Dataset
57
+ addOrUpdateRow(values: java.lang.Object[]): void;
58
+
59
+ // Implementação para remover uma linha do Dataset
60
+ deleteRow(values: java.lang.Object[]): void;
61
+
62
+ // Implementação para retornar o nome de uma coluna do Dataset
63
+ getColumnName(colNum: number): java.lang.String;
64
+
65
+ // Implementação para retornar os nomes das colunas do Dataset
66
+ getColumnsName(): java.lang.String[];
67
+
68
+ // Implementação para retornar a quantidade de colunas de um Dataset
69
+ getColumnsCount(): number;
70
+
71
+ // Implementação para retornar os valores do Dataset na forma de uma lista contendo mapas
72
+ getMap(): java.util.ArrayList<
73
+ java.util.HashMap<java.lang.String, java.lang.Object>
74
+ >;
75
+
76
+ // Implementação para retornar a quantidade de linhas disponíveis no Dataset
77
+ getRowsCount(): number;
78
+
79
+ // Implementação para retornar um subconjunto dos dados do Dataset, na forma de um novo Dataset
80
+ getSubDataset(
81
+ field: java.lang.String,
82
+ value: java.lang.Object
83
+ ): DefaultDataset;
84
+
85
+ // Implementação para retornar o valor armazenado no Dataset, na linha e coluna passadas por parâmetro
86
+ getValue(row: number, col: number): java.lang.Object;
87
+
88
+ // Implementação para retornar o valor armazenado no Dataset, na linha passada e campo passados por parâmetro
89
+ getValue(row: number, colName: java.lang.String): java.lang.Object;
90
+
91
+ // Implementação para retornar todos os valores de um Dataset, na forma de um array bidimensional
92
+ getValues(): java.lang.Object[][];
93
+
94
+ // Implementação para retornar um ResultSet contendo os dados do Dataset.
95
+ toResultSet(): java.sql.ResultSet;
96
+ }
97
+
98
+ // Cria uma nova instância do DatasetBuilder
99
+ class DatasetBuilder {
100
+ // Cria um novo Dataset
101
+ static newDataset(): DefaultDataset;
102
+ }
103
+
104
+ enum ConstraintType {
105
+ MUST = 1,
106
+ SHOULD = 2,
107
+ MUST_NOT = 3,
108
+ }
109
+
110
+ class DatasetFactory {
111
+ // Cria uma nova constraint para a seleção de registros do Dataset.
112
+ static createConstraint(
113
+ field: java.lang.String,
114
+ initialValue: java.lang.String,
115
+ finalValue: java.lang.String,
116
+ type: ConstraintType
117
+ ): SearchConstraint;
118
+ static createConstraint(
119
+ field: string,
120
+ initialValue: string,
121
+ finalValue: string,
122
+ type: ConstraintType
123
+ ): Constraint;
124
+
125
+ // Retorna uma lista de todos os Datasets disponíveis no sistema.
126
+ static getAvailableDatasets(): java.util.List<java.lang.String>;
127
+
128
+ // Carrega os dados de um Dataset.
129
+ static getDataset(
130
+ name: java.lang.String,
131
+ fields: java.lang.String[],
132
+ constraints: SearchConstraint[],
133
+ order: java.lang.String[]
134
+ ): DefaultDataset;
135
+ static getDataset(
136
+ name: string,
137
+ fields: string[],
138
+ constraints: SearchConstraint[],
139
+ order: string[]
140
+ ): DatasetWcmResult<unknown>;
141
+ }
142
+
143
+ class SearchConstraint {
144
+ fieldName: string;
145
+ initialValue: string;
146
+ finalValue: string;
147
+ constraintType: ConstraintType;
148
+ likeSearch: boolean;
149
+
150
+ getFieldName(): string;
151
+ getInitialValue(): string;
152
+ getFinalValue(): string;
153
+ setLikeSearch(likeSearch: boolean): void;
154
+ }
155
+
156
+ class Constraint {
157
+ fieldName: string;
158
+ initialValue: string;
159
+ finalValue: string;
160
+ constraintType: ConstraintType;
161
+ likeSearch: boolean;
162
+ }
163
+
164
+ // Cria um campo na tabela com o nome e tipo informados. O nome sempre deve ser informado em caracteres maiúsculos. O tipo de campo pode ser omitido e neste caso o campo será criado com o tipo String
165
+ function AddColumn(field: java.lang.String, type: DatasetFieldType): void;
166
+
167
+ // Determina quais são os campos chaves para o dataset. No banco de dados será criado um índice utilizando os campos informados neste método. Esses campos serão utilizados na localização dos registros para atualização ou remoção das linhas através dos métodos updateRow e deleteRow. Importante informar apenas campos que foram previamente definidos com a função addColumn. Devem ser informados em caracteres maiúsculos.
168
+ function setKey(fields: java.lang.String[]): void;
169
+
170
+ // Permite adicionar mais índices para obtenção de maior performance nas consultas do dataset. Devem ser informados em caracteres maiúsculos.
171
+ function addIndex(fields: java.lang.String[]): void;
172
+
173
+ /**
174
+ * Define a estrutura do dataset.
175
+ * @example
176
+ * function defineStructure(): void{
177
+ * AddColumn("NOME", DatasetFieldType.STRING);
178
+ * AddColumn("IDADE", DatasetFieldType.NUMBER);
179
+ * setKey(["NOME"]);
180
+ * addIndex(["IDADE"]);
181
+ * };
182
+ */
183
+ function defineStructure(): void;
184
+ function onSync(lastSyncDate: Date): DefaultDataset;
185
+ function createDataset(
186
+ fields: string[],
187
+ constraints: SearchConstraint[],
188
+ sortFields: string[]
189
+ ): DefaultDataset;
190
+ function onMobileSync(user: string): void;
191
+ }
192
+ export {};
@@ -157,8 +157,6 @@ declare type ConfirmCallback = (
157
157
  ) => void;
158
158
  declare type MessageCallback = (element: HTMLElement, event: Event) => void;
159
159
 
160
-
161
-
162
160
  declare type HttpMethod = "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
163
161
 
164
162
  // =============================
@@ -257,21 +255,11 @@ declare global {
257
255
  // Variável global definida pelo Fluig no navegador
258
256
  const formMode: FormMod;
259
257
 
260
- // Adicione as declarações de tipos para Dataset e Constraint se não estiverem disponíveis globalmente
261
-
258
+
262
259
  // =============================
263
- // CLASSES DE DATASET
260
+ // CLASSES DE DATATABLE
264
261
  // =============================
265
262
 
266
- // Adicione o tipo HttpMethod
267
-
268
-
269
-
270
- class DatasetWcmCallback {
271
- success: (result: DatasetWcmResult) => unknown;
272
- error: (error: object, message: string, details: string) => void;
273
- }
274
-
275
263
  interface DataCallback {
276
264
  selectedRows(): number[];
277
265
  selectedIndex: number[];
@@ -458,11 +446,5 @@ declare global {
458
446
  static setMessage(message: string): void;
459
447
  static setVisible(visible: boolean): void;
460
448
  }
461
-
462
- interface DatasetWcmResult<T = unknown> {
463
- columns: string[];
464
- values: T[];
465
- }
466
-
467
449
  }
468
450
  export {};
@@ -0,0 +1,344 @@
1
+ // fluig.webservice.d.ts
2
+ // Tipos para webservices do Fluig
3
+
4
+ declare global {
5
+ // #########################################################################
6
+ // #################### ECM Workflow Engine Service Types ##################
7
+ // #########################################################################
8
+
9
+ namespace com {
10
+ namespace totvs {
11
+ namespace technology {
12
+ namespace ecm {
13
+ namespace workflow {
14
+ namespace ws {
15
+ // Classe principal do serviço ECM Workflow Engine
16
+ class ECMWorkflowEngineServiceService {
17
+ constructor();
18
+
19
+ // Método para obter a porta do serviço
20
+ getWorkflowEngineServicePort(): WorkflowEngineService;
21
+
22
+ // Métodos de gerenciamento de processo
23
+ importProcess(username: string, password: string, companyId: number, processId: string, processFile: string): string;
24
+ exportProcess(username: string, password: string, companyId: number, processId: string, version: number): string;
25
+ exportProcessInZipFormat(username: string, password: string, companyId: number, processId: string, version: number): string;
26
+
27
+ // Métodos de inicialização de processo
28
+ startProcess(username: string, password: string, companyId: number, processId: string, nextState: number, choosedUsers: java.util.ArrayList<string>, comments: string, completeTask: boolean, cardData: java.util.HashMap<string, string>, managerMode: boolean): java.util.HashMap<string, string>;
29
+ startProcessClassic(username: string, password: string, companyId: number, processId: string, nextState: number, choosedUsers: java.util.ArrayList<string>, comments: string, completeTask: boolean, cardData: java.util.HashMap<string, string>): java.util.HashMap<string, string>;
30
+ simpleStartProcess(username: string, password: string, companyId: number, processId: string, nextState: number, userId: string, comments: string): java.util.HashMap<string, string>;
31
+
32
+ // Métodos de gerenciamento de tarefas
33
+ saveAndSendTask(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>, managerMode: boolean): java.util.HashMap<string, string>;
34
+ saveAndSendTaskClassic(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>): java.util.HashMap<string, string>;
35
+ saveAndSendTaskByReplacement(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>, replacementUserId: string): java.util.HashMap<string, string>;
36
+
37
+ // Métodos de tarefa
38
+ takeProcessTask(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string): string;
39
+ takeProcessTaskByReplacement(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string, replacementUserId: string): string;
40
+
41
+ // Métodos de cancelamento
42
+ cancelInstance(username: string, password: string, companyId: number, processInstanceId: number, userId: string, cancelText: string): string;
43
+ cancelInstanceByReplacement(username: string, password: string, companyId: number, processInstanceId: number, userId: string, cancelText: string, replacementUserId: string): string;
44
+
45
+ // Métodos de consulta
46
+ getAvailableProcess(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
47
+ getAvailableProcessOnDemand(username: string, password: string, companyId: number, limit: number, initialProcess: number, processSearch: string): ProcessDefinitionVersionDtoArray;
48
+ getAllProcessAvailableToExport(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
49
+ getAllProcessAvailableToImport(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
50
+ searchProcess(username: string, password: string, companyId: number, processSearch: string): ProcessDefinitionVersionDtoArray;
51
+
52
+ // Métodos de estados
53
+ getAvailableStates(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number): java.util.ArrayList<StateDto>;
54
+ getAvailableStatesDetail(username: string, password: string, companyId: number, processInstanceId: number, userId: string, threadSequence?: number): AvailableStatesDetailDto;
55
+ getAllActiveStates(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<StateDto>;
56
+
57
+ // Métodos de usuários
58
+ getAvailableUsers(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number): AvailableUsersDto;
59
+ getAvailableUsersOnDemand(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number, limit: number, initialUser: number, userSearch: string): AvailableUsersDto;
60
+ getAvailableUsersStart(username: string, password: string, companyId: number, processId: string, state: number, threadSequence: number): AvailableUsersDto;
61
+ getAvailableUsersStartOnDemand(username: string, password: string, companyId: number, processId: string, state: number, threadSequence: number, limit: number, initialUser: number, userSearch: string): AvailableUsersDto;
62
+
63
+ // Métodos de dados do cartão
64
+ getInstanceCardData(username: string, password: string, companyId: number, processInstanceId: number): java.util.HashMap<string, string>;
65
+ getCardValue(username: string, password: string, companyId: number, processInstanceId: number, cardFieldId: string): string;
66
+
67
+ // Métodos de vencimento
68
+ setDueDate(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string, dueDate: java.sql.Date, timeInSeconds: number): string;
69
+ calculateDeadLineHours(deadlineDate: java.sql.Date, seconds: number, deadlineInHours: number, periodId: string): unknown;
70
+ calculateDeadLineTime(deadlineDate: java.sql.Date, seconds: number, deadlineInHours: number, periodId: string): unknown;
71
+
72
+ // Métodos diversos
73
+ getActualThread(username: string, password: string, companyId: number, processInstanceId: number, state: number): number;
74
+ getProcessFormId(username: string, password: string, companyId: number, processId: string): string;
75
+ getProcessImage(username: string, password: string, companyId: number, processId: string, version: number): string;
76
+ getAttachments(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<AttachmentDto>;
77
+ getHistories(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<HistoryDto>;
78
+
79
+ // Métodos de comentários
80
+ setTasksComments(username: string, password: string, companyId: number, processInstanceId: number, userId: string, threadSequence: number, comments: string): string;
81
+
82
+ // Métodos de decisão automática
83
+ setAutomaticDecisionClassic(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number, userId: string, targetUserId: string, comments: string): string;
84
+
85
+ // Métodos de versão de processo
86
+ createWorkFlowProcessVersion(username: string, password: string, companyId: number, processId: string): string;
87
+ getWorkFlowProcessVersion(username: string, password: string, companyId: number, processId: string): number;
88
+
89
+ // Métodos de importação avançada
90
+ importProcessWithCard(username: string, password: string, companyId: number, processId: string, processFile: string): string;
91
+ importProcessWithCardAndRelatedDatasets(username: string, password: string, companyId: number, processId: string, processFile: string): string;
92
+ importProcessWithCardAndPersistenceType(username: string, password: string, companyId: number, processId: string, processFile: string, persistenceType: string): string;
93
+ importProcessWithCardAndGeneralInfo(username: string, password: string, companyId: number, processId: string, processFile: string, generalInfo: string): string;
94
+
95
+ // Métodos de anexo
96
+ updateWorkflowAttachment(username: string, password: string, companyId: number, processInstanceId: number, attachmentData: AttachmentDto): string;
97
+
98
+ // Métodos de liberação
99
+ releaseProcess(username: string, password: string, companyId: number, processId: string): string;
100
+ }
101
+
102
+ // Interface do port/endpoint do webservice
103
+ interface WorkflowEngineService {
104
+ // Métodos de gerenciamento de processo
105
+ importProcess(username: string, password: string, companyId: number, processId: string, processFile: string): string;
106
+ exportProcess(username: string, password: string, companyId: number, processId: string, version: number): string;
107
+ exportProcessInZipFormat(username: string, password: string, companyId: number, processId: string, version: number): string;
108
+
109
+ // Métodos de inicialização de processo
110
+ startProcess(username: string, password: string, companyId: number, processId: string, nextState: number, choosedUsers: java.util.ArrayList<string>, comments: string, completeTask: boolean, cardData: java.util.HashMap<string, string>, managerMode: boolean): java.util.HashMap<string, string>;
111
+ startProcessClassic(username: string, password: string, companyId: number, processId: string, nextState: number, choosedUsers: java.util.ArrayList<string>, comments: string, completeTask: boolean, cardData: java.util.HashMap<string, string>): java.util.HashMap<string, string>;
112
+ simpleStartProcess(username: string, password: string, companyId: number, processId: string, nextState: number, userId: string, comments: string): java.util.HashMap<string, string>;
113
+
114
+ // Métodos de gerenciamento de tarefas
115
+ saveAndSendTask(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>, managerMode: boolean): java.util.HashMap<string, string>;
116
+ saveAndSendTaskClassic(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>): java.util.HashMap<string, string>;
117
+ saveAndSendTaskByReplacement(username: string, password: string, companyId: number, processInstanceId: number, choosedState: number, threadSequence: number, userId: string, completeTask: boolean, comments: string, cardData: java.util.HashMap<string, string>, replacementUserId: string): java.util.HashMap<string, string>;
118
+
119
+ // Métodos de tarefa
120
+ takeProcessTask(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string): string;
121
+ takeProcessTaskByReplacement(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string, replacementUserId: string): string;
122
+
123
+ // Métodos de cancelamento
124
+ cancelInstance(username: string, password: string, companyId: number, processInstanceId: number, userId: string, cancelText: string): string;
125
+ cancelInstanceByReplacement(username: string, password: string, companyId: number, processInstanceId: number, userId: string, cancelText: string, replacementUserId: string): string;
126
+
127
+ // Métodos de consulta
128
+ getAvailableProcess(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
129
+ getAvailableProcessOnDemand(username: string, password: string, companyId: number, limit: number, initialProcess: number, processSearch: string): ProcessDefinitionVersionDtoArray;
130
+ getAllProcessAvailableToExport(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
131
+ getAllProcessAvailableToImport(username: string, password: string, companyId: number): ProcessDefinitionVersionDtoArray;
132
+ searchProcess(username: string, password: string, companyId: number, processSearch: string): ProcessDefinitionVersionDtoArray;
133
+
134
+ // Métodos de estados
135
+ getAvailableStates(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number): java.util.ArrayList<StateDto>;
136
+ getAvailableStatesDetail(username: string, password: string, companyId: number, processInstanceId: number, userId: string, threadSequence?: number): AvailableStatesDetailDto;
137
+ getAllActiveStates(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<StateDto>;
138
+
139
+ // Métodos de usuários
140
+ getAvailableUsers(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number): AvailableUsersDto;
141
+ getAvailableUsersOnDemand(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number, limit: number, initialUser: number, userSearch: string): AvailableUsersDto;
142
+ getAvailableUsersStart(username: string, password: string, companyId: number, processId: string, state: number, threadSequence: number): AvailableUsersDto;
143
+ getAvailableUsersStartOnDemand(username: string, password: string, companyId: number, processId: string, state: number, threadSequence: number, limit: number, initialUser: number, userSearch: string): AvailableUsersDto;
144
+
145
+ // Métodos de dados do cartão
146
+ getInstanceCardData(username: string, password: string, companyId: number, processInstanceId: number): java.util.HashMap<string, string>;
147
+ getCardValue(username: string, password: string, companyId: number, processInstanceId: number, cardFieldId: string): string;
148
+
149
+ // Métodos de vencimento
150
+ setDueDate(username: string, password: string, companyId: number, processInstanceId: number, threadSequence: number, userId: string, dueDate: java.sql.Date, timeInSeconds: number): string;
151
+ calculateDeadLineHours(deadlineDate: java.sql.Date, seconds: number, deadlineInHours: number, periodId: string): unknown;
152
+ calculateDeadLineTime(deadlineDate: java.sql.Date, seconds: number, deadlineInHours: number, periodId: string): unknown;
153
+
154
+ // Métodos diversos
155
+ getActualThread(username: string, password: string, companyId: number, processInstanceId: number, state: number): number;
156
+ getProcessFormId(username: string, password: string, companyId: number, processId: string): string;
157
+ getProcessImage(username: string, password: string, companyId: number, processId: string, version: number): string;
158
+ getAttachments(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<AttachmentDto>;
159
+ getHistories(username: string, password: string, companyId: number, processInstanceId: number): java.util.ArrayList<HistoryDto>;
160
+
161
+ // Métodos de comentários
162
+ setTasksComments(username: string, password: string, companyId: number, processInstanceId: number, userId: string, threadSequence: number, comments: string): string;
163
+
164
+ // Métodos de decisão automática
165
+ setAutomaticDecisionClassic(username: string, password: string, companyId: number, processInstanceId: number, state: number, threadSequence: number, userId: string, targetUserId: string, comments: string): string;
166
+
167
+ // Métodos de versão de processo
168
+ createWorkFlowProcessVersion(username: string, password: string, companyId: number, processId: string): string;
169
+ getWorkFlowProcessVersion(username: string, password: string, companyId: number, processId: string): number;
170
+
171
+ // Métodos de importação avançada
172
+ importProcessWithCard(username: string, password: string, companyId: number, processId: string, processFile: string): string;
173
+ importProcessWithCardAndRelatedDatasets(username: string, password: string, companyId: number, processId: string, processFile: string): string;
174
+ importProcessWithCardAndPersistenceType(username: string, password: string, companyId: number, processId: string, processFile: string, persistenceType: string): string;
175
+ importProcessWithCardAndGeneralInfo(username: string, password: string, companyId: number, processId: string, processFile: string, generalInfo: string): string;
176
+
177
+ // Métodos de anexo
178
+ updateWorkflowAttachment(username: string, password: string, companyId: number, processInstanceId: number, attachmentData: AttachmentDto): string;
179
+
180
+ // Métodos de liberação
181
+ releaseProcess(username: string, password: string, companyId: number, processId: string): string;
182
+ }
183
+
184
+ // DTOs e tipos auxiliares
185
+ interface ProcessDefinitionVersionDtoArray {
186
+ item: ProcessDefinitionVersionDto[];
187
+ }
188
+
189
+ interface ProcessDefinitionVersionDto {
190
+ processId: string;
191
+ version: number;
192
+ description: string;
193
+ active: boolean;
194
+ }
195
+
196
+ interface StateDto {
197
+ sequence: number;
198
+ state: number;
199
+ description: string;
200
+ stateType: string;
201
+ }
202
+
203
+ interface AvailableStatesDetailDto {
204
+ item: StateDetailDto[];
205
+ }
206
+
207
+ interface StateDetailDto {
208
+ sequence: number;
209
+ state: number;
210
+ description: string;
211
+ stateType: string;
212
+ canReceiveTask: boolean;
213
+ canTakeTask: boolean;
214
+ }
215
+
216
+ interface AvailableUsersDto {
217
+ item: UserDto[];
218
+ }
219
+
220
+ interface UserDto {
221
+ userId: string;
222
+ userName: string;
223
+ email: string;
224
+ active: boolean;
225
+ }
226
+
227
+ interface AttachmentDto {
228
+ documentId: number;
229
+ version: number;
230
+ fileName: string;
231
+ description: string;
232
+ uploadDate: java.sql.Date;
233
+ userId: string;
234
+ }
235
+
236
+ interface HistoryDto {
237
+ processInstanceId: number;
238
+ state: number;
239
+ sequence: number;
240
+ userId: string;
241
+ dateTime: java.sql.Date;
242
+ comments: string;
243
+ action: string;
244
+ stateDescription: string;
245
+ }
246
+ }
247
+ }
248
+ }
249
+ }
250
+ }
251
+ }
252
+
253
+ // #########################################################################
254
+ // ##################### WebService ServiceManager Types ###################
255
+ // #########################################################################
256
+
257
+ // A classe ECMWorkflowEngineServiceService já está mapeada no ClassNameMap do fluig.backend.d.ts
258
+ // Este arquivo apenas define os tipos específicos para webservices
259
+ }
260
+
261
+ /*
262
+ // ############################################################################
263
+ // #################### Exemplos de uso do ECMWorkflowEngineService ##########
264
+ // ############################################################################
265
+
266
+ // Exemplo de uso básico do ECMWorkflowEngineService
267
+ function exemploWorkflowService() {
268
+ // Instanciando o serviço com tipagem completa
269
+ const service = ServiceManager.getService("ECMWorkflowEngineServiceService");
270
+ const workflowServiceClass = service.getBean().instantiate('com.totvs.technology.ecm.workflow.ws.ECMWorkflowEngineServiceService');
271
+
272
+ // Obtendo o port/endpoint do webservice
273
+ const workflowService = workflowServiceClass.getWorkflowEngineServicePort();
274
+
275
+ // Exemplo 1: Iniciar um processo
276
+ const cardData = new java.util.HashMap<string, string>();
277
+ cardData.put("campo1", "valor1");
278
+ cardData.put("campo2", "valor2");
279
+
280
+ const choosedUsers = new java.util.ArrayList<string>();
281
+ choosedUsers.add("usuario123");
282
+
283
+ const result = workflowService.startProcess(
284
+ "admin", // username
285
+ "senha", // password
286
+ 1, // companyId
287
+ "ProcessoTeste", // processId
288
+ 2, // nextState
289
+ choosedUsers, // choosedUsers
290
+ "Iniciando processo via webservice", // comments
291
+ true, // completeTask
292
+ cardData, // cardData
293
+ false // managerMode
294
+ );
295
+
296
+ // Exemplo 2: Obter processos disponíveis
297
+ const availableProcesses = workflowService.getAvailableProcess("admin", "senha", 1);
298
+ for (const process of availableProcesses.item) {
299
+ log.info(`Processo: ${process.processId} - Versão: ${process.version}`);
300
+ }
301
+
302
+ // Exemplo 3: Obter dados do cartão de uma instância
303
+ const instanceCardData = workflowService.getInstanceCardData("admin", "senha", 1, 12345);
304
+
305
+ // Exemplo 4: Avançar uma tarefa
306
+ const nextCardData = new java.util.HashMap<string, string>();
307
+ nextCardData.put("aprovacao", "APROVADO");
308
+ nextCardData.put("observacoes", "Processo aprovado com sucesso");
309
+
310
+ const taskResult = workflowService.saveAndSendTask(
311
+ "admin", // username
312
+ "senha", // password
313
+ 1, // companyId
314
+ 12345, // processInstanceId
315
+ 3, // choosedState
316
+ 1, // threadSequence
317
+ "usuario123", // userId
318
+ true, // completeTask
319
+ "Aprovando processo", // comments
320
+ nextCardData, // cardData
321
+ false // managerMode
322
+ );
323
+
324
+ // Exemplo 5: Obter usuários disponíveis para uma atividade
325
+ const availableUsers = workflowService.getAvailableUsers("admin", "senha", 1, 12345, 3, 1);
326
+ for (const user of availableUsers.item) {
327
+ log.info(`Usuário disponível: ${user.userId} - ${user.userName}`);
328
+ }
329
+
330
+ // Exemplo 6: Cancelar uma instância
331
+ const cancelResult = workflowService.cancelInstance(
332
+ "admin", // username
333
+ "senha", // password
334
+ 1, // companyId
335
+ 12345, // processInstanceId
336
+ "admin", // userId
337
+ "Cancelamento solicitado pelo administrador" // cancelText
338
+ );
339
+
340
+ return result;
341
+ }
342
+ */
343
+
344
+ export {};
package/index.d.ts CHANGED
@@ -2,3 +2,5 @@ export * from "./fluig.sdk.d";
2
2
  export * from "./java.d";
3
3
  export * from "./fluig.frontend.d";
4
4
  export * from "./fluig.backend.d";
5
+ export * from "./fluig.webservice.d";
6
+ export * from "./fluig.dataset.d";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jsegd-fluig-types",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "Pacote de tipos para fluig",
5
5
  "license": "CC-BY-NC-ND-4.0",
6
6
  "author": "Elemar Deckmann",
@@ -11,6 +11,8 @@
11
11
  "fluig.sdk.d.ts",
12
12
  "fluig.frontend.d.ts",
13
13
  "fluig.backend.d.ts",
14
+ "fluig.webservice.d.ts",
15
+ "fluig.dataset.d.ts",
14
16
  "java.d.ts"
15
17
  ]
16
18
  }