@muni-sanfer/types-gestor-documental 0.0.1-beta.26 → 0.0.1-beta.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/base/entities.d.ts +150 -2
  2. package/dist/base/entities.js +53 -1
  3. package/dist/contracts/dataProtection.contract.d.ts +168 -0
  4. package/dist/contracts/dataProtection.contract.js +17 -0
  5. package/dist/contracts/documentType.contract.d.ts +3 -0
  6. package/dist/contracts/index.d.ts +26 -1
  7. package/dist/contracts/index.js +6 -0
  8. package/dist/contracts/transparency.contract.d.ts +96 -0
  9. package/dist/contracts/transparency.contract.js +12 -0
  10. package/dist/entities/dataProtection/dataProtection.entity.d.ts +129 -0
  11. package/dist/entities/dataProtection/dataProtection.entity.js +2 -0
  12. package/dist/entities/dataProtection/index.d.ts +1 -0
  13. package/dist/entities/dataProtection/index.js +17 -0
  14. package/dist/entities/documentType/documentType.entity.d.ts +3 -0
  15. package/dist/entities/index.d.ts +2 -0
  16. package/dist/entities/index.js +2 -0
  17. package/dist/entities/transparency/index.d.ts +1 -0
  18. package/dist/entities/transparency/index.js +17 -0
  19. package/dist/entities/transparency/transparency.entity.d.ts +77 -0
  20. package/dist/entities/transparency/transparency.entity.js +2 -0
  21. package/package.json +1 -1
  22. package/src/base/entities.ts +182 -2
  23. package/src/contracts/dataProtection.contract.ts +137 -0
  24. package/src/contracts/documentType.contract.ts +3 -0
  25. package/src/contracts/index.ts +9 -1
  26. package/src/contracts/transparency.contract.ts +55 -0
  27. package/src/entities/dataProtection/dataProtection.entity.ts +140 -0
  28. package/src/entities/dataProtection/index.ts +1 -0
  29. package/src/entities/documentType/documentType.entity.ts +3 -0
  30. package/src/entities/index.ts +2 -0
  31. package/src/entities/transparency/index.ts +1 -0
  32. package/src/entities/transparency/transparency.entity.ts +78 -0
@@ -33,7 +33,7 @@ export declare const DocumentParticipantStatus: {
33
33
  Resolved: "Resolved";
34
34
  Rejected: "Rejected";
35
35
  };
36
- export type DocumentTrackingAction = 'Created' | 'Updated' | 'Submitted' | 'Visaed' | 'Signed' | 'Rejected' | 'Finished' | 'Discarded' | 'Numbered' | 'NumberAnnulled' | 'Annulled' | 'Delivered' | 'Derived' | 'Reassigned' | 'Dispatched' | 'DispatchReturned' | 'DispatchedByContingency' | 'Received' | 'EmailCopySent' | 'EmailCopyOpened' | 'DispositionRecorded';
36
+ export type DocumentTrackingAction = 'Created' | 'Updated' | 'Submitted' | 'Visaed' | 'Signed' | 'Rejected' | 'Finished' | 'Discarded' | 'Numbered' | 'NumberAnnulled' | 'Annulled' | 'Delivered' | 'Derived' | 'Reassigned' | 'Dispatched' | 'DispatchReturned' | 'DispatchedByContingency' | 'Received' | 'EmailCopySent' | 'EmailCopyOpened' | 'DispositionRecorded' | 'TransparencyRedacted' | 'TransparencyPublished' | 'TransparencyExcluded' | 'TransparencyWithdrawn';
37
37
  export declare const DocumentTrackingAction: {
38
38
  Created: "Created";
39
39
  Updated: "Updated";
@@ -56,6 +56,10 @@ export declare const DocumentTrackingAction: {
56
56
  EmailCopySent: "EmailCopySent";
57
57
  EmailCopyOpened: "EmailCopyOpened";
58
58
  DispositionRecorded: "DispositionRecorded";
59
+ TransparencyRedacted: "TransparencyRedacted";
60
+ TransparencyPublished: "TransparencyPublished";
61
+ TransparencyExcluded: "TransparencyExcluded";
62
+ TransparencyWithdrawn: "TransparencyWithdrawn";
59
63
  };
60
64
  export type DocumentOrigin = 'Internal' | 'DocDigital' | 'Manual';
61
65
  export declare const DocumentOrigin: {
@@ -216,7 +220,7 @@ export declare const DocumentAccessAction: {
216
220
  FileDownloaded: "FileDownloaded";
217
221
  TrailExported: "TrailExported";
218
222
  };
219
- export type AuditEntity = 'DocumentType' | 'IssuingEntity' | 'ArchivalSeries' | 'TextSnippet' | 'Holiday' | 'Procedure' | 'QualityMetric' | 'ServiceOutage' | 'Repository';
223
+ export type AuditEntity = 'DocumentType' | 'IssuingEntity' | 'ArchivalSeries' | 'TextSnippet' | 'Holiday' | 'Procedure' | 'QualityMetric' | 'ServiceOutage' | 'Repository' | 'DataTreatment';
220
224
  export declare const AuditEntity: {
221
225
  DocumentType: "DocumentType";
222
226
  IssuingEntity: "IssuingEntity";
@@ -227,6 +231,7 @@ export declare const AuditEntity: {
227
231
  QualityMetric: "QualityMetric";
228
232
  ServiceOutage: "ServiceOutage";
229
233
  Repository: "Repository";
234
+ DataTreatment: "DataTreatment";
230
235
  };
231
236
  export type AuditAction = 'Created' | 'Updated' | 'Enabled' | 'Disabled' | 'Removed' | 'Exported';
232
237
  export declare const AuditAction: {
@@ -284,6 +289,60 @@ export declare const AccessRequestEventAction: {
284
289
  Resolved: "Resolved";
285
290
  AppealRegistered: "AppealRegistered";
286
291
  };
292
+ export type TransparencyStatus = 'Published' | 'Excluded';
293
+ export declare const TransparencyStatus: {
294
+ Published: "Published";
295
+ Excluded: "Excluded";
296
+ };
297
+ export type DataLegalBasis = 'LegalFunction' | 'LegalObligation' | 'Consent' | 'Contract' | 'VitalInterest';
298
+ export declare const DataLegalBasis: {
299
+ LegalFunction: "LegalFunction";
300
+ LegalObligation: "LegalObligation";
301
+ Consent: "Consent";
302
+ Contract: "Contract";
303
+ VitalInterest: "VitalInterest";
304
+ };
305
+ export type DataRight = 'Access' | 'Rectification' | 'Suppression' | 'Opposition' | 'Portability';
306
+ export declare const DataRight: {
307
+ Access: "Access";
308
+ Rectification: "Rectification";
309
+ Suppression: "Suppression";
310
+ Opposition: "Opposition";
311
+ Portability: "Portability";
312
+ };
313
+ export type DataRightsChannel = 'Email' | 'WebForm' | 'InPerson' | 'Letter';
314
+ export declare const DataRightsChannel: {
315
+ Email: "Email";
316
+ WebForm: "WebForm";
317
+ InPerson: "InPerson";
318
+ Letter: "Letter";
319
+ };
320
+ export type DataRightsRequestStatus = 'Received' | 'InProgress' | 'Resolved';
321
+ export declare const DataRightsRequestStatus: {
322
+ Received: "Received";
323
+ InProgress: "InProgress";
324
+ Resolved: "Resolved";
325
+ };
326
+ export type DataRightsResolution = 'Granted' | 'PartiallyGranted' | 'Denied' | 'Withdrawn';
327
+ export declare const DataRightsResolution: {
328
+ Granted: "Granted";
329
+ PartiallyGranted: "PartiallyGranted";
330
+ Denied: "Denied";
331
+ Withdrawn: "Withdrawn";
332
+ };
333
+ export type DataRightsEventAction = 'Received' | 'Updated' | 'Acknowledged' | 'IdentityVerified' | 'Assigned' | 'BlockingResolved' | 'Extended' | 'Resolved' | 'ResponseSent' | 'ComplaintRegistered';
334
+ export declare const DataRightsEventAction: {
335
+ Received: "Received";
336
+ Updated: "Updated";
337
+ Acknowledged: "Acknowledged";
338
+ IdentityVerified: "IdentityVerified";
339
+ Assigned: "Assigned";
340
+ BlockingResolved: "BlockingResolved";
341
+ Extended: "Extended";
342
+ Resolved: "Resolved";
343
+ ResponseSent: "ResponseSent";
344
+ ComplaintRegistered: "ComplaintRegistered";
345
+ };
287
346
  export interface DocumentTypeEntity {
288
347
  id: string;
289
348
  name: string;
@@ -294,6 +353,8 @@ export interface DocumentTypeEntity {
294
353
  correlativeYear?: number | null;
295
354
  resetsYearly: boolean;
296
355
  numbered: boolean;
356
+ activeTransparency: boolean;
357
+ transparencySection?: string | null;
297
358
  directorateCodeReference?: number | null;
298
359
  archivalSeries?: ArchivalSeriesEntity | null;
299
360
  archivalSeriesId?: string | null;
@@ -367,7 +428,15 @@ export interface DocumentEntity {
367
428
  accesses?: DocumentAccessEntity[];
368
429
  disposition?: DispositionRecordEntity | null;
369
430
  dispositionId?: string | null;
431
+ transparencyStatus?: TransparencyStatus | null;
432
+ transparencyUrl?: string | null;
433
+ transparencyNote?: string | null;
434
+ transparencyAt?: string | null;
435
+ transparencyByFullName?: string | null;
436
+ redactedFileId?: string | null;
437
+ redactedFileName?: string | null;
370
438
  accessRequestResponses?: AccessRequestEntity[];
439
+ dataRightsResponses?: DataRightsRequestEntity[];
371
440
  accessRequestDeliveries?: AccessRequestDocumentEntity[];
372
441
  dispatch?: DocumentDispatchEntity | null;
373
442
  docDigitalInbound?: DocDigitalInboundEntity | null;
@@ -960,6 +1029,85 @@ export interface AccessRequestEventEntity {
960
1029
  accessRequestId: string;
961
1030
  createdAt: string;
962
1031
  }
1032
+ export interface DataTreatmentEntity {
1033
+ id: string;
1034
+ name: string;
1035
+ purpose: string;
1036
+ legalBasis: DataLegalBasis;
1037
+ legalBasisDetail?: string | null;
1038
+ dataCategories: string[];
1039
+ sensitiveData: boolean;
1040
+ dataSubjects: string;
1041
+ recipients?: string | null;
1042
+ source?: string | null;
1043
+ retention?: string | null;
1044
+ securityMeasures?: string | null;
1045
+ internationalTransfer?: string | null;
1046
+ responsibleUnit?: string | null;
1047
+ published: boolean;
1048
+ requests?: DataRightsRequestEntity[];
1049
+ enabled: boolean;
1050
+ deleted: boolean;
1051
+ createdAt: string;
1052
+ updatedAt: string;
1053
+ }
1054
+ export interface DataRightsRequestEntity {
1055
+ id: string;
1056
+ number: number;
1057
+ year: number;
1058
+ channel: DataRightsChannel;
1059
+ receivedAt: string;
1060
+ rights: DataRight[];
1061
+ requesterName: string;
1062
+ requesterRut?: string | null;
1063
+ requesterEmail?: string | null;
1064
+ requesterAddress?: string | null;
1065
+ representativeName?: string | null;
1066
+ identityVerifiedAt?: string | null;
1067
+ identityNote?: string | null;
1068
+ requestText: string;
1069
+ treatment?: DataTreatmentEntity | null;
1070
+ treatmentId?: string | null;
1071
+ status: DataRightsRequestStatus;
1072
+ acknowledgedAt?: string | null;
1073
+ dueAt: string;
1074
+ extendedAt?: string | null;
1075
+ extensionNote?: string | null;
1076
+ blockingRequested: boolean;
1077
+ blockingReason?: string | null;
1078
+ blockingDueAt?: string | null;
1079
+ blockingGranted?: boolean | null;
1080
+ blockingResolvedAt?: string | null;
1081
+ blockingNote?: string | null;
1082
+ assigneeEmployeeId?: string | null;
1083
+ assigneeFullName?: string | null;
1084
+ resolution?: DataRightsResolution | null;
1085
+ resolvedAt?: string | null;
1086
+ denialGrounds: string[];
1087
+ resolutionNote?: string | null;
1088
+ responseDocument?: DocumentEntity | null;
1089
+ responseDocumentId?: string | null;
1090
+ responseSentAt?: string | null;
1091
+ responseSentTo?: string | null;
1092
+ responseSentMeans?: CommunicationMeans | null;
1093
+ complaintAt?: string | null;
1094
+ complaintNote?: string | null;
1095
+ createdByEmployeeId: string;
1096
+ createdByFullName: string;
1097
+ events?: DataRightsEventEntity[];
1098
+ createdAt: string;
1099
+ updatedAt: string;
1100
+ }
1101
+ export interface DataRightsEventEntity {
1102
+ id: string;
1103
+ action: DataRightsEventAction;
1104
+ note?: string | null;
1105
+ employeeId?: string | null;
1106
+ employeeFullName: string;
1107
+ request?: DataRightsRequestEntity;
1108
+ requestId: string;
1109
+ createdAt: string;
1110
+ }
963
1111
  type JsonValue = string | number | boolean | {
964
1112
  [key in string]?: JsonValue;
965
1113
  } | Array<JsonValue> | null;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // This file was auto-generated by prisma-generator-typescript-interfaces
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.AccessRequestEventAction = exports.AccessRequestResolution = exports.AccessRequestStatus = exports.AccessRequestChannel = exports.DispositionKind = exports.FinalDisposition = exports.AuditAction = exports.AuditEntity = exports.DocumentAccessAction = exports.QualityMetricKey = exports.ServiceOutageKind = exports.WorkFolderItemKind = exports.TextSnippetSection = exports.ScanSessionStatus = exports.CaseFileAccessAction = exports.CaseFileTrackingAction = exports.CaseFileActorType = exports.CaseFileActorRelation = exports.CaseFileEntryKind = exports.CaseFileActuationType = exports.CaseFileIncorporationMechanism = exports.CaseFileStatus = exports.DocumentInstruction = exports.DocumentDeliveryOrigin = exports.DocumentRecipientType = exports.DocumentAttachmentType = exports.DocumentFlowStepType = exports.DocDigitalInboundStatus = exports.DocumentDispatchStatus = exports.CommunicationMeans = exports.DocumentOrigin = exports.DocumentTrackingAction = exports.DocumentParticipantStatus = exports.DocumentParticipantRole = exports.DocumentAccessLevel = exports.DocumentStatus = exports.DocumentCategory = void 0;
4
+ exports.DataRightsEventAction = exports.DataRightsResolution = exports.DataRightsRequestStatus = exports.DataRightsChannel = exports.DataRight = exports.DataLegalBasis = exports.TransparencyStatus = exports.AccessRequestEventAction = exports.AccessRequestResolution = exports.AccessRequestStatus = exports.AccessRequestChannel = exports.DispositionKind = exports.FinalDisposition = exports.AuditAction = exports.AuditEntity = exports.DocumentAccessAction = exports.QualityMetricKey = exports.ServiceOutageKind = exports.WorkFolderItemKind = exports.TextSnippetSection = exports.ScanSessionStatus = exports.CaseFileAccessAction = exports.CaseFileTrackingAction = exports.CaseFileActorType = exports.CaseFileActorRelation = exports.CaseFileEntryKind = exports.CaseFileActuationType = exports.CaseFileIncorporationMechanism = exports.CaseFileStatus = exports.DocumentInstruction = exports.DocumentDeliveryOrigin = exports.DocumentRecipientType = exports.DocumentAttachmentType = exports.DocumentFlowStepType = exports.DocDigitalInboundStatus = exports.DocumentDispatchStatus = exports.CommunicationMeans = exports.DocumentOrigin = exports.DocumentTrackingAction = exports.DocumentParticipantStatus = exports.DocumentParticipantRole = exports.DocumentAccessLevel = exports.DocumentStatus = exports.DocumentCategory = void 0;
5
5
  exports.DocumentCategory = {
6
6
  Decree: 'Decree',
7
7
  Communication: 'Communication',
@@ -54,6 +54,10 @@ exports.DocumentTrackingAction = {
54
54
  EmailCopySent: 'EmailCopySent',
55
55
  EmailCopyOpened: 'EmailCopyOpened',
56
56
  DispositionRecorded: 'DispositionRecorded',
57
+ TransparencyRedacted: 'TransparencyRedacted',
58
+ TransparencyPublished: 'TransparencyPublished',
59
+ TransparencyExcluded: 'TransparencyExcluded',
60
+ TransparencyWithdrawn: 'TransparencyWithdrawn',
57
61
  };
58
62
  exports.DocumentOrigin = {
59
63
  Internal: 'Internal',
@@ -201,6 +205,7 @@ exports.AuditEntity = {
201
205
  QualityMetric: 'QualityMetric',
202
206
  ServiceOutage: 'ServiceOutage',
203
207
  Repository: 'Repository',
208
+ DataTreatment: 'DataTreatment',
204
209
  };
205
210
  exports.AuditAction = {
206
211
  Created: 'Created',
@@ -251,3 +256,50 @@ exports.AccessRequestEventAction = {
251
256
  Resolved: 'Resolved',
252
257
  AppealRegistered: 'AppealRegistered',
253
258
  };
259
+ exports.TransparencyStatus = {
260
+ Published: 'Published',
261
+ Excluded: 'Excluded',
262
+ };
263
+ exports.DataLegalBasis = {
264
+ LegalFunction: 'LegalFunction',
265
+ LegalObligation: 'LegalObligation',
266
+ Consent: 'Consent',
267
+ Contract: 'Contract',
268
+ VitalInterest: 'VitalInterest',
269
+ };
270
+ exports.DataRight = {
271
+ Access: 'Access',
272
+ Rectification: 'Rectification',
273
+ Suppression: 'Suppression',
274
+ Opposition: 'Opposition',
275
+ Portability: 'Portability',
276
+ };
277
+ exports.DataRightsChannel = {
278
+ Email: 'Email',
279
+ WebForm: 'WebForm',
280
+ InPerson: 'InPerson',
281
+ Letter: 'Letter',
282
+ };
283
+ exports.DataRightsRequestStatus = {
284
+ Received: 'Received',
285
+ InProgress: 'InProgress',
286
+ Resolved: 'Resolved',
287
+ };
288
+ exports.DataRightsResolution = {
289
+ Granted: 'Granted',
290
+ PartiallyGranted: 'PartiallyGranted',
291
+ Denied: 'Denied',
292
+ Withdrawn: 'Withdrawn',
293
+ };
294
+ exports.DataRightsEventAction = {
295
+ Received: 'Received',
296
+ Updated: 'Updated',
297
+ Acknowledged: 'Acknowledged',
298
+ IdentityVerified: 'IdentityVerified',
299
+ Assigned: 'Assigned',
300
+ BlockingResolved: 'BlockingResolved',
301
+ Extended: 'Extended',
302
+ Resolved: 'Resolved',
303
+ ResponseSent: 'ResponseSent',
304
+ ComplaintRegistered: 'ComplaintRegistered',
305
+ };
@@ -0,0 +1,168 @@
1
+ import { type CommunicationMeans, type DataLegalBasis, type DataRight, type DataRightsChannel, type DataRightsResolution } from '../base/entities';
2
+ import { type DataProtectionPolicyEntity, type DataRightsRequestDetailEntity, type DataRightsRequestListItemEntity, type DataRightsSummaryEntity, type DataTreatmentResponseEntity } from '../entities';
3
+ import { type RpcPage } from './contract';
4
+ /** Patrones NATS de `dataProtection`: tratamientos de datos y solicitudes de los titulares (Ley 19.628). */
5
+ export declare const DataProtectionPatterns: {
6
+ readonly getTreatments: "gestorDocumental.dataProtection.getTreatments";
7
+ readonly createTreatment: "gestorDocumental.dataProtection.createTreatment";
8
+ readonly updateTreatment: "gestorDocumental.dataProtection.updateTreatment";
9
+ readonly setTreatmentEnabled: "gestorDocumental.dataProtection.setTreatmentEnabled";
10
+ readonly getPolicy: "gestorDocumental.dataProtection.getPolicy";
11
+ readonly getRequests: "gestorDocumental.dataProtection.getRequests";
12
+ readonly getRequest: "gestorDocumental.dataProtection.getRequest";
13
+ readonly getSummary: "gestorDocumental.dataProtection.getSummary";
14
+ readonly createRequest: "gestorDocumental.dataProtection.createRequest";
15
+ readonly updateRequest: "gestorDocumental.dataProtection.updateRequest";
16
+ readonly actOnRequest: "gestorDocumental.dataProtection.actOnRequest";
17
+ };
18
+ type TActor = {
19
+ employeeId: string;
20
+ fullName: string;
21
+ };
22
+ /** Datos de un tratamiento al crearlo o editarlo. */
23
+ export interface DataTreatmentWritePayload {
24
+ name: string;
25
+ purpose: string;
26
+ legalBasis: DataLegalBasis;
27
+ legalBasisDetail?: string | null;
28
+ dataCategories: string[];
29
+ sensitiveData?: boolean;
30
+ dataSubjects: string;
31
+ recipients?: string | null;
32
+ source?: string | null;
33
+ retention?: string | null;
34
+ securityMeasures?: string | null;
35
+ internationalTransfer?: string | null;
36
+ responsibleUnit?: string | null;
37
+ published?: boolean;
38
+ }
39
+ /** Datos de una solicitud al ingresarla o corregirla. */
40
+ export interface DataRightsRequestWritePayload {
41
+ channel: DataRightsChannel;
42
+ receivedAt: string;
43
+ rights: DataRight[];
44
+ requesterName: string;
45
+ requesterRut?: string | null;
46
+ requesterEmail?: string | null;
47
+ requesterAddress?: string | null;
48
+ representativeName?: string | null;
49
+ requestText: string;
50
+ treatmentId?: string | null;
51
+ /** Bloqueo temporal: solo con rectificación, supresión u oposición, y fundado. */
52
+ blockingRequested?: boolean;
53
+ blockingReason?: string | null;
54
+ }
55
+ /** Un paso de la tramitación. */
56
+ export type DataRightsAction = {
57
+ type: 'acknowledge';
58
+ note?: string | null;
59
+ } | {
60
+ type: 'verifyIdentity';
61
+ note?: string | null;
62
+ } | {
63
+ type: 'assign';
64
+ employeeId: string;
65
+ fullName: string;
66
+ note?: string | null;
67
+ }
68
+ /** Bloqueo temporal, en 2 días hábiles; si se rechaza, fundado (y se comunica a la Agencia). */
69
+ | {
70
+ type: 'resolveBlocking';
71
+ granted: boolean;
72
+ note?: string | null;
73
+ } | {
74
+ type: 'extend';
75
+ note: string;
76
+ } | {
77
+ type: 'resolve';
78
+ resolution: DataRightsResolution;
79
+ grounds?: string[];
80
+ note?: string | null;
81
+ responseDocumentId?: string | null;
82
+ }
83
+ /** Respaldo del envío de la respuesta escrita (art. 11). */
84
+ | {
85
+ type: 'registerResponseSent';
86
+ sentAt?: string | null;
87
+ sentTo: string;
88
+ means: CommunicationMeans;
89
+ note?: string | null;
90
+ } | {
91
+ type: 'registerComplaint';
92
+ complaintAt?: string | null;
93
+ note: string;
94
+ };
95
+ export interface DataProtectionContract {
96
+ [DataProtectionPatterns.getTreatments]: {
97
+ payload: {
98
+ enabled?: boolean | null;
99
+ };
100
+ response: DataTreatmentResponseEntity[];
101
+ };
102
+ [DataProtectionPatterns.createTreatment]: {
103
+ payload: DataTreatmentWritePayload;
104
+ response: DataTreatmentResponseEntity;
105
+ };
106
+ [DataProtectionPatterns.updateTreatment]: {
107
+ payload: DataTreatmentWritePayload & {
108
+ id: string;
109
+ };
110
+ response: DataTreatmentResponseEntity;
111
+ };
112
+ [DataProtectionPatterns.setTreatmentEnabled]: {
113
+ payload: {
114
+ id: string;
115
+ enabled: boolean;
116
+ };
117
+ response: DataTreatmentResponseEntity;
118
+ };
119
+ /** Lo que se publica sin sesión (art. 14 ter): los tratamientos habilitados y publicados. */
120
+ [DataProtectionPatterns.getPolicy]: {
121
+ payload: Record<string, never>;
122
+ response: DataProtectionPolicyEntity;
123
+ };
124
+ [DataProtectionPatterns.getRequests]: {
125
+ payload: {
126
+ status?: 'open' | 'resolved' | 'all';
127
+ year?: number | null;
128
+ search?: string;
129
+ page?: number;
130
+ limit?: number;
131
+ };
132
+ response: RpcPage<DataRightsRequestListItemEntity[]>;
133
+ };
134
+ [DataProtectionPatterns.getRequest]: {
135
+ payload: {
136
+ id: string;
137
+ };
138
+ response: DataRightsRequestDetailEntity;
139
+ };
140
+ [DataProtectionPatterns.getSummary]: {
141
+ payload: {
142
+ year: number;
143
+ };
144
+ response: DataRightsSummaryEntity;
145
+ };
146
+ [DataProtectionPatterns.createRequest]: {
147
+ payload: DataRightsRequestWritePayload & {
148
+ actor: TActor;
149
+ };
150
+ response: DataRightsRequestDetailEntity;
151
+ };
152
+ [DataProtectionPatterns.updateRequest]: {
153
+ payload: DataRightsRequestWritePayload & {
154
+ id: string;
155
+ actor: TActor;
156
+ };
157
+ response: DataRightsRequestDetailEntity;
158
+ };
159
+ [DataProtectionPatterns.actOnRequest]: {
160
+ payload: {
161
+ id: string;
162
+ action: DataRightsAction;
163
+ actor: TActor;
164
+ };
165
+ response: DataRightsRequestDetailEntity;
166
+ };
167
+ }
168
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DataProtectionPatterns = void 0;
4
+ /** Patrones NATS de `dataProtection`: tratamientos de datos y solicitudes de los titulares (Ley 19.628). */
5
+ exports.DataProtectionPatterns = {
6
+ getTreatments: 'gestorDocumental.dataProtection.getTreatments',
7
+ createTreatment: 'gestorDocumental.dataProtection.createTreatment',
8
+ updateTreatment: 'gestorDocumental.dataProtection.updateTreatment',
9
+ setTreatmentEnabled: 'gestorDocumental.dataProtection.setTreatmentEnabled',
10
+ getPolicy: 'gestorDocumental.dataProtection.getPolicy',
11
+ getRequests: 'gestorDocumental.dataProtection.getRequests',
12
+ getRequest: 'gestorDocumental.dataProtection.getRequest',
13
+ getSummary: 'gestorDocumental.dataProtection.getSummary',
14
+ createRequest: 'gestorDocumental.dataProtection.createRequest',
15
+ updateRequest: 'gestorDocumental.dataProtection.updateRequest',
16
+ actOnRequest: 'gestorDocumental.dataProtection.actOnRequest',
17
+ };
@@ -35,6 +35,9 @@ export interface DocumentTypeWritePayload {
35
35
  nextCorrelative?: number;
36
36
  resetsYearly?: boolean;
37
37
  numbered?: boolean;
38
+ /** Transparencia Activa: sus documentos se publican cada mes, en esta sección del Portal. */
39
+ activeTransparency?: boolean;
40
+ transparencySection?: string | null;
38
41
  directorateCodeReference?: number | null;
39
42
  archivalSeriesId?: string | null;
40
43
  issuingEntityId?: string | null;
@@ -11,6 +11,8 @@ import { type SignatureCheckContract } from './signatureCheck.contract';
11
11
  import { type RepositoryExportContract } from './repositoryExport.contract';
12
12
  import { type RetentionContract } from './retention.contract';
13
13
  import { type AccessRequestContract } from './accessRequest.contract';
14
+ import { type TransparencyContract } from './transparency.contract';
15
+ import { type DataProtectionContract } from './dataProtection.contract';
14
16
  import { type ScanContract } from './scan.contract';
15
17
  import { type PartsOfficeContract } from './partsOffice.contract';
16
18
  import { type ProcedureContract } from './procedure.contract';
@@ -37,6 +39,8 @@ export * from './signatureCheck.contract';
37
39
  export * from './repositoryExport.contract';
38
40
  export * from './retention.contract';
39
41
  export * from './accessRequest.contract';
42
+ export * from './transparency.contract';
43
+ export * from './dataProtection.contract';
40
44
  /** Patrones NATS de gestor-documental-ms, por recurso: `gestorDocumental.<recurso>.<acción>`. */
41
45
  export declare const GestorDocumentalPatterns: {
42
46
  readonly documentType: {
@@ -219,6 +223,27 @@ export declare const GestorDocumentalPatterns: {
219
223
  readonly update: "gestorDocumental.accessRequest.update";
220
224
  readonly act: "gestorDocumental.accessRequest.act";
221
225
  };
226
+ readonly transparency: {
227
+ readonly getMonth: "gestorDocumental.transparency.getMonth";
228
+ readonly update: "gestorDocumental.transparency.update";
229
+ readonly export: "gestorDocumental.transparency.export";
230
+ readonly getRedactedFile: "gestorDocumental.transparency.getRedactedFile";
231
+ readonly getPublic: "gestorDocumental.transparency.getPublic";
232
+ readonly getPublicFile: "gestorDocumental.transparency.getPublicFile";
233
+ };
234
+ readonly dataProtection: {
235
+ readonly getTreatments: "gestorDocumental.dataProtection.getTreatments";
236
+ readonly createTreatment: "gestorDocumental.dataProtection.createTreatment";
237
+ readonly updateTreatment: "gestorDocumental.dataProtection.updateTreatment";
238
+ readonly setTreatmentEnabled: "gestorDocumental.dataProtection.setTreatmentEnabled";
239
+ readonly getPolicy: "gestorDocumental.dataProtection.getPolicy";
240
+ readonly getRequests: "gestorDocumental.dataProtection.getRequests";
241
+ readonly getRequest: "gestorDocumental.dataProtection.getRequest";
242
+ readonly getSummary: "gestorDocumental.dataProtection.getSummary";
243
+ readonly createRequest: "gestorDocumental.dataProtection.createRequest";
244
+ readonly updateRequest: "gestorDocumental.dataProtection.updateRequest";
245
+ readonly actOnRequest: "gestorDocumental.dataProtection.actOnRequest";
246
+ };
222
247
  };
223
248
  /** Contrato completo de gestor-documental-ms: la unión de los contratos de sus recursos. */
224
- export type GestorDocumentalContract = DocumentTypeContract & DocumentContract & ProcedureContract & IssuingEntityContract & CaseFileContract & PartsOfficeContract & RegisterBookContract & SignatureBatchContract & WorkFolderContract & ScanContract & ArchivalSeriesContract & TextSnippetContract & HolidayContract & IndicatorsContract & AuditContract & SignatureCheckContract & RepositoryExportContract & RetentionContract & AccessRequestContract;
249
+ export type GestorDocumentalContract = DocumentTypeContract & DocumentContract & ProcedureContract & IssuingEntityContract & CaseFileContract & PartsOfficeContract & RegisterBookContract & SignatureBatchContract & WorkFolderContract & ScanContract & ArchivalSeriesContract & TextSnippetContract & HolidayContract & IndicatorsContract & AuditContract & SignatureCheckContract & RepositoryExportContract & RetentionContract & AccessRequestContract & TransparencyContract & DataProtectionContract;
@@ -28,6 +28,8 @@ const signatureCheck_contract_1 = require("./signatureCheck.contract");
28
28
  const repositoryExport_contract_1 = require("./repositoryExport.contract");
29
29
  const retention_contract_1 = require("./retention.contract");
30
30
  const accessRequest_contract_1 = require("./accessRequest.contract");
31
+ const transparency_contract_1 = require("./transparency.contract");
32
+ const dataProtection_contract_1 = require("./dataProtection.contract");
31
33
  const scan_contract_1 = require("./scan.contract");
32
34
  const partsOffice_contract_1 = require("./partsOffice.contract");
33
35
  const procedure_contract_1 = require("./procedure.contract");
@@ -54,6 +56,8 @@ __exportStar(require("./signatureCheck.contract"), exports);
54
56
  __exportStar(require("./repositoryExport.contract"), exports);
55
57
  __exportStar(require("./retention.contract"), exports);
56
58
  __exportStar(require("./accessRequest.contract"), exports);
59
+ __exportStar(require("./transparency.contract"), exports);
60
+ __exportStar(require("./dataProtection.contract"), exports);
57
61
  /** Patrones NATS de gestor-documental-ms, por recurso: `gestorDocumental.<recurso>.<acción>`. */
58
62
  exports.GestorDocumentalPatterns = {
59
63
  documentType: documentType_contract_1.DocumentTypePatterns,
@@ -75,4 +79,6 @@ exports.GestorDocumentalPatterns = {
75
79
  repositoryExport: repositoryExport_contract_1.RepositoryExportPatterns,
76
80
  retention: retention_contract_1.RetentionPatterns,
77
81
  accessRequest: accessRequest_contract_1.AccessRequestPatterns,
82
+ transparency: transparency_contract_1.TransparencyPatterns,
83
+ dataProtection: dataProtection_contract_1.DataProtectionPatterns,
78
84
  };
@@ -0,0 +1,96 @@
1
+ import { type DocumentPublicFileResponseEntity, type IndicatorsFileEntity, type TransparencyItemEntity, type TransparencyItemStatus, type TransparencyMonthEntity, type TransparencyPublicEntity } from '../entities';
2
+ /** Patrones NATS de `transparency`: Transparencia Activa de los documentos firmados (Ley 20.285, art. 7°). */
3
+ export declare const TransparencyPatterns: {
4
+ readonly getMonth: "gestorDocumental.transparency.getMonth";
5
+ readonly update: "gestorDocumental.transparency.update";
6
+ readonly export: "gestorDocumental.transparency.export";
7
+ readonly getRedactedFile: "gestorDocumental.transparency.getRedactedFile";
8
+ readonly getPublic: "gestorDocumental.transparency.getPublic";
9
+ readonly getPublicFile: "gestorDocumental.transparency.getPublicFile";
10
+ };
11
+ type TTransparencyActor = {
12
+ employeeId: string;
13
+ fullName: string;
14
+ };
15
+ /** Lo que se decide sobre un documento en Transparencia Activa. */
16
+ export type TransparencyUpdatePayload =
17
+ /** Publicarlo (o corregir el enlace): si el original no es público, exige antes la versión tarjada. */
18
+ {
19
+ action: 'publish';
20
+ documentId: string;
21
+ url?: string | null;
22
+ note?: string | null;
23
+ actor: TTransparencyActor;
24
+ }
25
+ /** No se publica, con su motivo (p. ej. reservado por el art. 21 de la Ley 20.285). */
26
+ | {
27
+ action: 'exclude';
28
+ documentId: string;
29
+ reason: string;
30
+ actor: TTransparencyActor;
31
+ }
32
+ /** Vuelve a pendiente: se retiró la publicación o se revisó la exclusión. */
33
+ | {
34
+ action: 'withdraw';
35
+ documentId: string;
36
+ reason: string;
37
+ actor: TTransparencyActor;
38
+ }
39
+ /** Versión tarjada ya subida al gestor de archivos (PDF). */
40
+ | {
41
+ action: 'setRedacted';
42
+ documentId: string;
43
+ fileId: string;
44
+ fileName: string;
45
+ actor: TTransparencyActor;
46
+ } | {
47
+ action: 'removeRedacted';
48
+ documentId: string;
49
+ actor: TTransparencyActor;
50
+ };
51
+ export interface TransparencyContract {
52
+ /** Lo firmado en el mes (hora de Chile) de los tipos que se publican, y lo que ya se publicó aunque el tipo cambie. */
53
+ [TransparencyPatterns.getMonth]: {
54
+ payload: {
55
+ year: number;
56
+ month: number;
57
+ status?: TransparencyItemStatus | null;
58
+ };
59
+ response: TransparencyMonthEntity;
60
+ };
61
+ [TransparencyPatterns.update]: {
62
+ payload: TransparencyUpdatePayload;
63
+ response: TransparencyItemEntity;
64
+ };
65
+ /** Planilla del mes (Excel) para cargar en el Portal de Transparencia. */
66
+ [TransparencyPatterns.export]: {
67
+ payload: {
68
+ year: number;
69
+ month: number;
70
+ generatedBy: string;
71
+ };
72
+ response: IndicatorsFileEntity;
73
+ };
74
+ /** La versión tarjada cargada, para revisarla antes de publicar. */
75
+ [TransparencyPatterns.getRedactedFile]: {
76
+ payload: {
77
+ documentId: string;
78
+ };
79
+ response: DocumentPublicFileResponseEntity;
80
+ };
81
+ /** Página pública de un documento publicado, por su código de verificación. No exige sesión. */
82
+ [TransparencyPatterns.getPublic]: {
83
+ payload: {
84
+ code: string;
85
+ };
86
+ response: TransparencyPublicEntity;
87
+ };
88
+ /** La versión publicada: la tarjada si existe; si no, el original público. Solo de un documento vigente. */
89
+ [TransparencyPatterns.getPublicFile]: {
90
+ payload: {
91
+ code: string;
92
+ };
93
+ response: DocumentPublicFileResponseEntity;
94
+ };
95
+ }
96
+ export {};
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransparencyPatterns = void 0;
4
+ /** Patrones NATS de `transparency`: Transparencia Activa de los documentos firmados (Ley 20.285, art. 7°). */
5
+ exports.TransparencyPatterns = {
6
+ getMonth: 'gestorDocumental.transparency.getMonth',
7
+ update: 'gestorDocumental.transparency.update',
8
+ export: 'gestorDocumental.transparency.export',
9
+ getRedactedFile: 'gestorDocumental.transparency.getRedactedFile',
10
+ getPublic: 'gestorDocumental.transparency.getPublic',
11
+ getPublicFile: 'gestorDocumental.transparency.getPublicFile',
12
+ };