@muni-sanfer/types-gestor-documental 0.0.1-beta.5 → 0.0.1-beta.50

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 (242) hide show
  1. package/dist/base/entities.d.ts +996 -5
  2. package/dist/base/entities.js +235 -1
  3. package/dist/contracts/accessRequest.contract.d.ts +109 -0
  4. package/dist/contracts/accessRequest.contract.js +12 -0
  5. package/dist/contracts/archivalSeries.contract.d.ts +56 -0
  6. package/dist/contracts/archivalSeries.contract.js +11 -0
  7. package/dist/contracts/audit.contract.d.ts +32 -0
  8. package/dist/contracts/audit.contract.js +8 -0
  9. package/dist/contracts/caseFile.contract.d.ts +124 -1
  10. package/dist/contracts/caseFile.contract.js +10 -0
  11. package/dist/contracts/dataProtection.contract.d.ts +256 -0
  12. package/dist/contracts/dataProtection.contract.js +23 -0
  13. package/dist/contracts/desk.contract.d.ts +88 -0
  14. package/dist/contracts/desk.contract.js +13 -0
  15. package/dist/contracts/document.contract.d.ts +218 -3
  16. package/dist/contracts/document.contract.js +15 -0
  17. package/dist/contracts/documentTemplate.contract.d.ts +17 -0
  18. package/dist/contracts/documentTemplate.contract.js +10 -0
  19. package/dist/contracts/documentType.contract.d.ts +15 -2
  20. package/dist/contracts/draftingRequest.contract.d.ts +94 -0
  21. package/dist/contracts/draftingRequest.contract.js +11 -0
  22. package/dist/contracts/holiday.contract.d.ts +39 -0
  23. package/dist/contracts/holiday.contract.js +10 -0
  24. package/dist/contracts/index.d.ts +246 -4
  25. package/dist/contracts/index.js +69 -0
  26. package/dist/contracts/indicators.contract.d.ts +103 -0
  27. package/dist/contracts/indicators.contract.js +15 -0
  28. package/dist/contracts/internalReview.contract.d.ts +55 -0
  29. package/dist/contracts/internalReview.contract.js +9 -0
  30. package/dist/contracts/issuingEntity.contract.d.ts +52 -0
  31. package/dist/contracts/issuingEntity.contract.js +11 -0
  32. package/dist/contracts/mailIntake.contract.d.ts +61 -0
  33. package/dist/contracts/mailIntake.contract.js +15 -0
  34. package/dist/contracts/partsOffice.contract.d.ts +94 -2
  35. package/dist/contracts/partsOffice.contract.js +5 -0
  36. package/dist/contracts/procedure.contract.d.ts +14 -23
  37. package/dist/contracts/procedure.contract.js +6 -4
  38. package/dist/contracts/push.contract.d.ts +59 -0
  39. package/dist/contracts/push.contract.js +14 -0
  40. package/dist/contracts/registerBook.contract.d.ts +27 -0
  41. package/dist/contracts/registerBook.contract.js +8 -0
  42. package/dist/contracts/repositoryExport.contract.d.ts +57 -0
  43. package/dist/contracts/repositoryExport.contract.js +13 -0
  44. package/dist/contracts/retention.contract.d.ts +58 -0
  45. package/dist/contracts/retention.contract.js +11 -0
  46. package/dist/contracts/richImage.contract.d.ts +33 -0
  47. package/dist/contracts/richImage.contract.js +8 -0
  48. package/dist/contracts/scan.contract.d.ts +63 -0
  49. package/dist/contracts/scan.contract.js +12 -0
  50. package/dist/contracts/signatureBatch.contract.d.ts +109 -0
  51. package/dist/contracts/signatureBatch.contract.js +12 -0
  52. package/dist/contracts/signatureCheck.contract.d.ts +14 -0
  53. package/dist/contracts/signatureCheck.contract.js +7 -0
  54. package/dist/contracts/textSnippet.contract.d.ts +51 -0
  55. package/dist/contracts/textSnippet.contract.js +11 -0
  56. package/dist/contracts/transparency.contract.d.ts +96 -0
  57. package/dist/contracts/transparency.contract.js +12 -0
  58. package/dist/contracts/workFolder.contract.d.ts +114 -0
  59. package/dist/contracts/workFolder.contract.js +16 -0
  60. package/dist/entities/accessRequest/accessRequest.entity.d.ts +73 -0
  61. package/dist/entities/accessRequest/accessRequest.entity.js +2 -0
  62. package/dist/entities/accessRequest/index.d.ts +1 -0
  63. package/dist/entities/accessRequest/index.js +17 -0
  64. package/dist/entities/archivalSeries/archivalSeries.entity.d.ts +32 -0
  65. package/dist/entities/archivalSeries/archivalSeries.entity.js +2 -0
  66. package/dist/entities/archivalSeries/index.d.ts +1 -0
  67. package/dist/entities/archivalSeries/index.js +17 -0
  68. package/dist/entities/audit/audit.entity.d.ts +30 -0
  69. package/dist/entities/audit/audit.entity.js +2 -0
  70. package/dist/entities/audit/index.d.ts +1 -0
  71. package/dist/entities/audit/index.js +17 -0
  72. package/dist/entities/caseFile/caseFile.entity.d.ts +135 -0
  73. package/dist/entities/dataProtection/dataProtection.entity.d.ts +180 -0
  74. package/dist/entities/dataProtection/dataProtection.entity.js +2 -0
  75. package/dist/entities/dataProtection/index.d.ts +1 -0
  76. package/dist/entities/dataProtection/index.js +17 -0
  77. package/dist/entities/desk/desk.entity.d.ts +25 -0
  78. package/dist/entities/desk/desk.entity.js +2 -0
  79. package/dist/entities/desk/index.d.ts +1 -0
  80. package/dist/entities/desk/index.js +17 -0
  81. package/dist/entities/document/document.entity.d.ts +429 -1
  82. package/dist/entities/document/index.d.ts +1 -0
  83. package/dist/entities/document/index.js +1 -0
  84. package/dist/entities/document/richStyle.d.ts +212 -0
  85. package/dist/entities/document/richStyle.js +81 -0
  86. package/dist/entities/documentTemplate/documentTemplate.entity.d.ts +25 -0
  87. package/dist/entities/documentTemplate/documentTemplate.entity.js +2 -0
  88. package/dist/entities/documentTemplate/index.d.ts +1 -0
  89. package/dist/entities/documentTemplate/index.js +17 -0
  90. package/dist/entities/documentType/documentType.entity.d.ts +43 -0
  91. package/dist/entities/draftingRequest/draftingRequest.entity.d.ts +76 -0
  92. package/dist/entities/draftingRequest/draftingRequest.entity.js +2 -0
  93. package/dist/entities/draftingRequest/index.d.ts +1 -0
  94. package/dist/entities/draftingRequest/index.js +17 -0
  95. package/dist/entities/holiday/holiday.entity.d.ts +32 -0
  96. package/dist/entities/holiday/holiday.entity.js +2 -0
  97. package/dist/entities/holiday/index.d.ts +1 -0
  98. package/dist/entities/holiday/index.js +17 -0
  99. package/dist/entities/index.d.ts +22 -0
  100. package/dist/entities/index.js +22 -0
  101. package/dist/entities/indicators/index.d.ts +1 -0
  102. package/dist/entities/indicators/index.js +17 -0
  103. package/dist/entities/indicators/indicators.entity.d.ts +152 -0
  104. package/dist/entities/indicators/indicators.entity.js +2 -0
  105. package/dist/entities/internalReview/index.d.ts +1 -0
  106. package/dist/entities/internalReview/index.js +17 -0
  107. package/dist/entities/internalReview/internalReview.entity.d.ts +50 -0
  108. package/dist/entities/internalReview/internalReview.entity.js +2 -0
  109. package/dist/entities/issuingEntity/index.d.ts +1 -0
  110. package/dist/entities/issuingEntity/index.js +17 -0
  111. package/dist/entities/issuingEntity/issuingEntity.entity.d.ts +20 -0
  112. package/dist/entities/issuingEntity/issuingEntity.entity.js +2 -0
  113. package/dist/entities/mailIntake/index.d.ts +1 -0
  114. package/dist/entities/mailIntake/index.js +17 -0
  115. package/dist/entities/mailIntake/mailIntake.entity.d.ts +51 -0
  116. package/dist/entities/mailIntake/mailIntake.entity.js +2 -0
  117. package/dist/entities/partsOffice/partsOffice.entity.d.ts +39 -0
  118. package/dist/entities/procedure/procedure.entity.d.ts +27 -6
  119. package/dist/entities/push/index.d.ts +1 -0
  120. package/dist/entities/push/index.js +17 -0
  121. package/dist/entities/push/push.entity.d.ts +28 -0
  122. package/dist/entities/push/push.entity.js +2 -0
  123. package/dist/entities/registerBook/index.d.ts +1 -0
  124. package/dist/entities/registerBook/index.js +17 -0
  125. package/dist/entities/registerBook/registerBook.entity.d.ts +48 -0
  126. package/dist/entities/registerBook/registerBook.entity.js +2 -0
  127. package/dist/entities/repositoryExport/index.d.ts +1 -0
  128. package/dist/entities/repositoryExport/index.js +17 -0
  129. package/dist/entities/repositoryExport/repositoryExport.entity.d.ts +124 -0
  130. package/dist/entities/repositoryExport/repositoryExport.entity.js +2 -0
  131. package/dist/entities/retention/index.d.ts +1 -0
  132. package/dist/entities/retention/index.js +17 -0
  133. package/dist/entities/retention/retention.entity.d.ts +49 -0
  134. package/dist/entities/retention/retention.entity.js +2 -0
  135. package/dist/entities/scan/index.d.ts +1 -0
  136. package/dist/entities/scan/index.js +17 -0
  137. package/dist/entities/scan/scan.entity.d.ts +29 -0
  138. package/dist/entities/scan/scan.entity.js +2 -0
  139. package/dist/entities/signatureBatch/index.d.ts +1 -0
  140. package/dist/entities/signatureBatch/index.js +17 -0
  141. package/dist/entities/signatureBatch/signatureBatch.entity.d.ts +107 -0
  142. package/dist/entities/signatureBatch/signatureBatch.entity.js +2 -0
  143. package/dist/entities/signatureCheck/index.d.ts +1 -0
  144. package/dist/entities/signatureCheck/index.js +17 -0
  145. package/dist/entities/signatureCheck/signatureCheck.entity.d.ts +60 -0
  146. package/dist/entities/signatureCheck/signatureCheck.entity.js +2 -0
  147. package/dist/entities/textSnippet/index.d.ts +1 -0
  148. package/dist/entities/textSnippet/index.js +17 -0
  149. package/dist/entities/textSnippet/textSnippet.entity.d.ts +20 -0
  150. package/dist/entities/textSnippet/textSnippet.entity.js +2 -0
  151. package/dist/entities/transparency/index.d.ts +1 -0
  152. package/dist/entities/transparency/index.js +17 -0
  153. package/dist/entities/transparency/transparency.entity.d.ts +77 -0
  154. package/dist/entities/transparency/transparency.entity.js +2 -0
  155. package/dist/entities/workFolder/index.d.ts +1 -0
  156. package/dist/entities/workFolder/index.js +17 -0
  157. package/dist/entities/workFolder/workFolder.entity.d.ts +83 -0
  158. package/dist/entities/workFolder/workFolder.entity.js +2 -0
  159. package/package.json +1 -1
  160. package/src/base/entities.ts +1164 -5
  161. package/src/contracts/accessRequest.contract.ts +81 -0
  162. package/src/contracts/archivalSeries.contract.ts +59 -0
  163. package/src/contracts/audit.contract.ts +30 -0
  164. package/src/contracts/caseFile.contract.ts +107 -2
  165. package/src/contracts/dataProtection.contract.ts +197 -0
  166. package/src/contracts/desk.contract.ts +72 -0
  167. package/src/contracts/document.contract.ts +200 -3
  168. package/src/contracts/documentTemplate.contract.ts +17 -0
  169. package/src/contracts/documentType.contract.ts +32 -3
  170. package/src/contracts/draftingRequest.contract.ts +73 -0
  171. package/src/contracts/holiday.contract.ts +25 -0
  172. package/src/contracts/index.ts +93 -1
  173. package/src/contracts/indicators.contract.ts +80 -0
  174. package/src/contracts/internalReview.contract.ts +48 -0
  175. package/src/contracts/issuingEntity.contract.ts +55 -0
  176. package/src/contracts/mailIntake.contract.ts +49 -0
  177. package/src/contracts/partsOffice.contract.ts +81 -2
  178. package/src/contracts/procedure.contract.ts +11 -27
  179. package/src/contracts/push.contract.ts +41 -0
  180. package/src/contracts/registerBook.contract.ts +24 -0
  181. package/src/contracts/repositoryExport.contract.ts +54 -0
  182. package/src/contracts/retention.contract.ts +44 -0
  183. package/src/contracts/richImage.contract.ts +23 -0
  184. package/src/contracts/scan.contract.ts +52 -0
  185. package/src/contracts/signatureBatch.contract.ts +96 -0
  186. package/src/contracts/signatureCheck.contract.ts +11 -0
  187. package/src/contracts/textSnippet.contract.ts +53 -0
  188. package/src/contracts/transparency.contract.ts +55 -0
  189. package/src/contracts/workFolder.contract.ts +75 -0
  190. package/src/entities/accessRequest/accessRequest.entity.ts +78 -0
  191. package/src/entities/accessRequest/index.ts +1 -0
  192. package/src/entities/archivalSeries/archivalSeries.entity.ts +37 -0
  193. package/src/entities/archivalSeries/index.ts +1 -0
  194. package/src/entities/audit/audit.entity.ts +41 -0
  195. package/src/entities/audit/index.ts +1 -0
  196. package/src/entities/caseFile/caseFile.entity.ts +132 -0
  197. package/src/entities/dataProtection/dataProtection.entity.ts +191 -0
  198. package/src/entities/dataProtection/index.ts +1 -0
  199. package/src/entities/desk/desk.entity.ts +28 -0
  200. package/src/entities/desk/index.ts +1 -0
  201. package/src/entities/document/document.entity.ts +413 -1
  202. package/src/entities/document/index.ts +1 -0
  203. package/src/entities/document/richStyle.ts +193 -0
  204. package/src/entities/documentTemplate/documentTemplate.entity.ts +27 -0
  205. package/src/entities/documentTemplate/index.ts +1 -0
  206. package/src/entities/documentType/documentType.entity.ts +45 -0
  207. package/src/entities/draftingRequest/draftingRequest.entity.ts +78 -0
  208. package/src/entities/draftingRequest/index.ts +1 -0
  209. package/src/entities/holiday/holiday.entity.ts +36 -0
  210. package/src/entities/holiday/index.ts +1 -0
  211. package/src/entities/index.ts +22 -0
  212. package/src/entities/indicators/index.ts +1 -0
  213. package/src/entities/indicators/indicators.entity.ts +157 -0
  214. package/src/entities/internalReview/index.ts +1 -0
  215. package/src/entities/internalReview/internalReview.entity.ts +50 -0
  216. package/src/entities/issuingEntity/index.ts +1 -0
  217. package/src/entities/issuingEntity/issuingEntity.entity.ts +24 -0
  218. package/src/entities/mailIntake/index.ts +1 -0
  219. package/src/entities/mailIntake/mailIntake.entity.ts +55 -0
  220. package/src/entities/partsOffice/partsOffice.entity.ts +35 -0
  221. package/src/entities/procedure/procedure.entity.ts +27 -6
  222. package/src/entities/push/index.ts +1 -0
  223. package/src/entities/push/push.entity.ts +31 -0
  224. package/src/entities/registerBook/index.ts +1 -0
  225. package/src/entities/registerBook/registerBook.entity.ts +52 -0
  226. package/src/entities/repositoryExport/index.ts +1 -0
  227. package/src/entities/repositoryExport/repositoryExport.entity.ts +86 -0
  228. package/src/entities/retention/index.ts +1 -0
  229. package/src/entities/retention/retention.entity.ts +53 -0
  230. package/src/entities/scan/index.ts +1 -0
  231. package/src/entities/scan/scan.entity.ts +32 -0
  232. package/src/entities/signatureBatch/index.ts +1 -0
  233. package/src/entities/signatureBatch/signatureBatch.entity.ts +110 -0
  234. package/src/entities/signatureCheck/index.ts +1 -0
  235. package/src/entities/signatureCheck/signatureCheck.entity.ts +63 -0
  236. package/src/entities/textSnippet/index.ts +1 -0
  237. package/src/entities/textSnippet/textSnippet.entity.ts +24 -0
  238. package/src/entities/transparency/index.ts +1 -0
  239. package/src/entities/transparency/transparency.entity.ts +78 -0
  240. package/src/entities/workFolder/index.ts +1 -0
  241. package/src/entities/workFolder/workFolder.entity.ts +84 -0
  242. package/tsconfig.json +1 -3
@@ -1,4 +1,5 @@
1
1
  import {
2
+ type DocumentAccessAction,
2
3
  type DocumentAccessLevel,
3
4
  type DocumentAttachmentEntity,
4
5
  type DocumentDeliveryEntity,
@@ -13,6 +14,9 @@ import {
13
14
  type DocumentCreateResponseEntity,
14
15
  type DocumentDeriveResponseEntity,
15
16
  type DocumentDiscardResponseEntity,
17
+ type DocumentEmailCopyIssuedEntity,
18
+ type DocumentEmailCopyViewEntity,
19
+ type DocumentReminderEntity,
16
20
  type DocumentGetAllResponseEntity,
17
21
  type DocumentGetByIdResponseEntity,
18
22
  type DocumentGetSummaryResponseEntity,
@@ -20,8 +24,17 @@ import {
20
24
  type DocumentPublicFileResponseEntity,
21
25
  type DocumentReassignResponseEntity,
22
26
  type DocumentReviewResponseEntity,
27
+ type DocumentSignManyResponseEntity,
28
+ type DocumentAgendaResponseEntity,
29
+ type DocumentComposeResponseEntity,
30
+ type DocumentComposition,
31
+ type DocumentTrailExportEntity,
23
32
  type DocumentUpdateResponseEntity,
24
33
  type DocumentVerifyResponseEntity,
34
+ type DocumentCommentResponseEntity,
35
+ type DocumentCommentsResponseEntity,
36
+ type DocumentVersionResponseEntity,
37
+ type DocumentDraftReviewResponseEntity,
25
38
  } from '../entities';
26
39
  import { type RpcPage } from './contract';
27
40
 
@@ -34,14 +47,29 @@ export const DocumentPatterns = {
34
47
  create: 'gestorDocumental.document.create',
35
48
  update: 'gestorDocumental.document.update',
36
49
  review: 'gestorDocumental.document.review',
50
+ signMany: 'gestorDocumental.document.signMany',
37
51
  reassign: 'gestorDocumental.document.reassign',
52
+ requestDraftReview: 'gestorDocumental.document.requestDraftReview',
53
+ resolveDraftReview: 'gestorDocumental.document.resolveDraftReview',
38
54
  discard: 'gestorDocumental.document.discard',
39
55
  annul: 'gestorDocumental.document.annul',
40
56
  derive: 'gestorDocumental.document.derive',
41
57
  closeDelivery: 'gestorDocumental.document.closeDelivery',
42
58
  verify: 'gestorDocumental.document.verify',
59
+ getVersions: 'gestorDocumental.document.getVersions',
60
+ getVersionFile: 'gestorDocumental.document.getVersionFile',
61
+ getComments: 'gestorDocumental.document.getComments',
62
+ addComment: 'gestorDocumental.document.addComment',
63
+ resolveComment: 'gestorDocumental.document.resolveComment',
43
64
  getPublicFile: 'gestorDocumental.document.getPublicFile',
44
65
  getFilesFolder: 'gestorDocumental.document.getFilesFolder',
66
+ getAgenda: 'gestorDocumental.document.getAgenda',
67
+ exportTrail: 'gestorDocumental.document.exportTrail',
68
+ compose: 'gestorDocumental.document.compose',
69
+ issueEmailCopies: 'gestorDocumental.document.issueEmailCopies',
70
+ getEmailCopy: 'gestorDocumental.document.getEmailCopy',
71
+ getEmailCopyFile: 'gestorDocumental.document.getEmailCopyFile',
72
+ claimReminders: 'gestorDocumental.document.claimReminders',
45
73
  } as const;
46
74
 
47
75
  /**
@@ -52,6 +80,11 @@ export interface DocumentActor {
52
80
  employeeId: string;
53
81
  directorateCodes: number[];
54
82
  departmentIds: string[];
83
+ /**
84
+ * Jefaturas para las que revisa (revisora de jefatura): ve los documentos que les esperan. Lo resuelve el gateway
85
+ * solo donde hace falta (el detalle y el PDF).
86
+ */
87
+ reviewFor?: string[];
55
88
  }
56
89
 
57
90
  /** Bandeja desde la que se lista. Todas son del funcionario (`actor`), salvo `all`. */
@@ -61,6 +94,7 @@ export type DocumentBucket =
61
94
  | 'toVisa' // le toca visarlos
62
95
  | 'toSign' // le toca firmarlos
63
96
  | 'participated' // ya los visó, firmó o rechazó
97
+ | 'toReview' // borradores que le toca revisar como jefatura de la dirección revisora
64
98
  | 'all'; // todos los que están en tramitación o finalizados (historial)
65
99
 
66
100
  /**
@@ -84,6 +118,14 @@ export type DocumentReviewAction = 'Visa' | 'Sign' | 'Reject';
84
118
  */
85
119
  export interface DocumentWritePayload extends Pick<DocumentEntity, 'subject' | 'documentTypeId'> {
86
120
  keywords: string[];
121
+ /** Resumen breve (hasta 250 caracteres): va a DocDigital como «descripcion» al despacharlo. */
122
+ description?: string | null;
123
+ /** Procedimiento administrativo del catálogo propio. */
124
+ procedureId?: string | null;
125
+ /** Qué cambió, si el guardado crea una versión nueva (otro PDF, otro texto u otro asunto). */
126
+ versionNote?: string | null;
127
+ /** Al crearlo: solicitud de redacción que atiende (la tomó quien redacta). */
128
+ draftingRequestId?: string | null;
87
129
  accessLevel?: DocumentAccessLevel;
88
130
  hasSensitiveData?: boolean;
89
131
  directorateCodeReference?: number | null;
@@ -93,21 +135,38 @@ export interface DocumentWritePayload extends Pick<DocumentEntity, 'subject' | '
93
135
  attachments?: Pick<DocumentAttachmentEntity, 'name' | 'type' | 'fileId' | 'url'>[];
94
136
  // Funcionarios que visan y que firman, en el orden en que les toca. Primero visan todos y después firman.
95
137
  visaEmployeeIds: string[];
138
+ // Etapa de cada visador, en su orden ([1, 1, 2]: los dos primeros visan a la vez). Sin etapas, visan en cadena.
139
+ visaStages?: number[] | null;
140
+ // Al reenviar un documento rechazado, pedir de nuevo las visaciones ya hechas en vez de seguir donde quedó.
141
+ restartFlow?: boolean;
142
+ // Contenido redactado con una plantilla (el PDF ya armado va en `file`): se guarda para volver a editarlo.
143
+ composition?: DocumentComposition | null;
96
144
  signatureEmployeeIds: string[];
97
145
  // Firmas y visaciones en una hoja aparte al final, en vez de al pie de la última página.
98
146
  signatureSheet?: boolean;
99
147
  // A quién va dirigido: le llega a su bandeja cuando el documento termina su tramitación.
100
148
  recipients?: DocumentRecipientInput[];
101
- // Plazo en que se espera respuesta de los destinatarios (ISO 8601).
149
+ // Plazo en que se espera respuesta de los destinatarios (ISO 8601), o en días hábiles desde que lo reciben (uno u otro).
102
150
  responseDueAt?: string | null;
151
+ responseDueBusinessDays?: number | null;
103
152
  // Documento al que este responde.
104
153
  replyToDocumentId?: string | null;
105
154
  // Instituciones (y usuarios) de DocDigital a quienes va: al terminar la firma pasa a Oficina de Partes.
106
155
  externalRecipients?: DocumentExternalRecipientInput[];
156
+ // Fin de la restricción de acceso (ISO 8601), si no es público.
157
+ restrictionEndsAt?: string | null;
158
+ // Copia por correo a quienes están fuera del Estado: sale al finalizar o, si también va por DocDigital, al despacharlo.
159
+ emailCopies?: DocumentEmailCopyInput[];
107
160
  action?: 'Submit';
108
161
  actor: DocumentActor;
109
162
  }
110
163
 
164
+ /** Persona u organización fuera del Estado que recibe una copia por correo. */
165
+ export interface DocumentEmailCopyInput {
166
+ name: string;
167
+ email: string;
168
+ }
169
+
111
170
  /** Destinatario externo: una institución de DocDigital y, si se indica, uno de sus usuarios. */
112
171
  export interface DocumentExternalRecipientInput {
113
172
  entityId: number;
@@ -117,7 +176,46 @@ export interface DocumentExternalRecipientInput {
117
176
  /**
118
177
  * Qué se envía y qué se responde en cada patrón. Generado desde los handlers y los DTO del microservicio.
119
178
  */
179
+ /** Una lectura que queda en el registro de accesos del documento. */
180
+ export interface DocumentAccessInput {
181
+ action: DocumentAccessAction;
182
+ fullName: string;
183
+ }
184
+
120
185
  export interface DocumentContract {
186
+ /**
187
+ * Arma el PDF de un documento redactado con una plantilla oficial: membrete, estructura y espacio libre para el
188
+ * número, las visaciones, las firmas y el QR. Con `preview` lo entrega para verlo; si no, lo sube y entrega su
189
+ * `fileId` para guardarlo como el PDF del documento.
190
+ */
191
+ [DocumentPatterns.compose]: {
192
+ payload: {
193
+ documentTypeId: string;
194
+ subject: string;
195
+ composition: DocumentComposition;
196
+ visaCount: number;
197
+ signatureCount: number;
198
+ signatureSheet?: boolean;
199
+ /** Unidad que emite, para el membrete. */
200
+ issuingUnitName?: string | null;
201
+ preview?: boolean;
202
+ actor: DocumentActor;
203
+ };
204
+ response: DocumentComposeResponseEntity;
205
+ };
206
+ /** Plazos del funcionario entre `from` y `to` (hasta 62 días), y lo que tiene vencido sin atender. */
207
+ [DocumentPatterns.getAgenda]: {
208
+ payload: { from: string; to: string; actor: DocumentActor };
209
+ response: DocumentAgendaResponseEntity;
210
+ };
211
+ /**
212
+ * Trazabilidad del documento en PDF: datos, flujo, hechos y huella de sus archivos. Con las mismas reglas de acceso
213
+ * del detalle. `generatedBy`: quién la descarga (va al pie).
214
+ */
215
+ [DocumentPatterns.exportTrail]: {
216
+ payload: Pick<DocumentEntity, 'id'> & { actor?: DocumentActor; viewAll?: boolean; generatedBy: string };
217
+ response: DocumentTrailExportEntity;
218
+ };
121
219
  [DocumentPatterns.getAll]: {
122
220
  payload: {
123
221
  pagination?: { page?: number; limit?: number };
@@ -129,6 +227,14 @@ export interface DocumentContract {
129
227
  // Rango de fechas de creación (ISO 8601).
130
228
  dateFrom?: string;
131
229
  dateTo?: string;
230
+ // Búsqueda avanzada: número (del documento o folio de ingreso) y año, firmante, redactor y unidad emisora.
231
+ number?: number;
232
+ year?: number;
233
+ signerEmployeeId?: string;
234
+ authorEmployeeId?: string;
235
+ directorateCodeReference?: number;
236
+ // Texto completo, en el asunto y en el contenido del PDF.
237
+ text?: string;
132
238
  };
133
239
  // Obligatorio en todas las bandejas salvo `all`.
134
240
  actor?: DocumentActor;
@@ -151,8 +257,9 @@ export interface DocumentContract {
151
257
  [DocumentPatterns.getById]: {
152
258
  // Con `actor`, el documento solo se entrega a su redactor y a quienes lo visan o firman, y la respuesta dice qué
153
259
  // puede hacer con él. `viewAll` levanta esa restricción para quien tiene permiso de ver todos los documentos
154
- // (historial), sin perder lo que puede hacer si además participa.
155
- payload: Pick<DocumentEntity, 'id'> & { actor?: DocumentActor; viewAll?: boolean };
260
+ // (historial), sin perder lo que puede hacer si además participa. Con `access`, la lectura queda en el registro de
261
+ // accesos del documento a nombre de `fullName` (abrirlo varias veces seguidas cuenta una vez).
262
+ payload: Pick<DocumentEntity, 'id'> & { actor?: DocumentActor; viewAll?: boolean; access?: DocumentAccessInput };
156
263
  response: DocumentGetByIdResponseEntity;
157
264
  };
158
265
  [DocumentPatterns.create]: {
@@ -176,10 +283,42 @@ export interface DocumentContract {
176
283
  };
177
284
  response: DocumentReviewResponseEntity;
178
285
  };
286
+ /**
287
+ * Firma con un solo OTP varios documentos que el funcionario tiene en su turno de firma (los de un lote, o los que
288
+ * marcó en su bandeja). Cada uno queda firmado aparte; los que no caben en la solicitud quedan en `remaining`.
289
+ */
290
+ [DocumentPatterns.signMany]: {
291
+ payload: {
292
+ ids: DocumentEntity['id'][];
293
+ observation?: string | null;
294
+ // Datos de quien firma, para el sello de la firma (los resuelve el gateway desde la sesión).
295
+ signer: { rut: string; fullName: string; role: string; areaName: string };
296
+ otp?: string;
297
+ actor: DocumentActor;
298
+ };
299
+ response: DocumentSignManyResponseEntity;
300
+ };
179
301
  /**
180
302
  * Pasa un turno pendiente (de visación o de firma) a otro funcionario, por ausencia o por error, y lo deja en la
181
303
  * trazabilidad con su motivo. Puede hacerlo quien redactó el documento; con `anyDocument`, quien lleva el registro.
182
304
  */
305
+ /** El redactor pide la revisión del borrador; el gateway resuelve quién dirige hoy la dirección revisora. */
306
+ [DocumentPatterns.requestDraftReview]: {
307
+ payload: Pick<DocumentEntity, 'id'> & {
308
+ reviewer: { employeeId: string; fullName: string };
309
+ actor: DocumentActor;
310
+ };
311
+ response: DocumentDraftReviewResponseEntity;
312
+ };
313
+ /** La jefatura revisora aprueba o devuelve (con observaciones); el redactor puede retirar la solicitud. */
314
+ [DocumentPatterns.resolveDraftReview]: {
315
+ payload: Pick<DocumentEntity, 'id'> & {
316
+ decision: 'Approve' | 'Reject' | 'Cancel';
317
+ observation?: string | null;
318
+ actor: DocumentActor;
319
+ };
320
+ response: DocumentDraftReviewResponseEntity;
321
+ };
183
322
  [DocumentPatterns.reassign]: {
184
323
  payload: Pick<DocumentEntity, 'id'> & {
185
324
  participantId: DocumentParticipantEntity['id'];
@@ -212,6 +351,8 @@ export interface DocumentContract {
212
351
  note?: string | null;
213
352
  // Plazo para atenderlo (ISO 8601).
214
353
  dueAt?: string | null;
354
+ // O el plazo en días hábiles (Ley 19.880): el servicio calcula la fecha con los feriados cargados.
355
+ dueBusinessDays?: number | null;
215
356
  actor: DocumentActor;
216
357
  viewAll?: boolean;
217
358
  };
@@ -222,6 +363,37 @@ export interface DocumentContract {
222
363
  payload: { deliveryId: DocumentDeliveryEntity['id']; note?: string | null; actor: DocumentActor };
223
364
  response: DocumentCloseDeliveryResponseEntity;
224
365
  };
366
+ /** Versiones del documento, de la más reciente a la primera, con quién visó o firmó cada una. */
367
+ [DocumentPatterns.getVersions]: {
368
+ payload: { id: string; actor?: DocumentActor; viewAll?: boolean };
369
+ response: DocumentVersionResponseEntity[];
370
+ };
371
+ /** El PDF original de una versión (sin estampar), con las mismas reglas de acceso. */
372
+ [DocumentPatterns.getVersionFile]: {
373
+ payload: { id: string; number: number; actor?: DocumentActor; viewAll?: boolean };
374
+ response: DocumentPublicFileResponseEntity;
375
+ };
376
+ /** Comentarios de redacción: los ven el redactor y quienes tienen un turno (y quien ve todo el historial). */
377
+ [DocumentPatterns.getComments]: {
378
+ payload: { id: string; actor?: DocumentActor; viewAll?: boolean };
379
+ response: DocumentCommentsResponseEntity;
380
+ };
381
+ /** Comenta el redactor o quien tiene un turno, mientras el documento no termina, sobre la versión vigente. */
382
+ [DocumentPatterns.addComment]: {
383
+ payload: {
384
+ id: string;
385
+ section?: string | null;
386
+ quote?: string | null;
387
+ text: string;
388
+ actor: DocumentActor & { fullName: string };
389
+ };
390
+ response: DocumentCommentResponseEntity;
391
+ };
392
+ /** Lo marca como resuelto el redactor o quien lo escribió, con una nota opcional. */
393
+ [DocumentPatterns.resolveComment]: {
394
+ payload: { commentId: string; note?: string | null; actor: DocumentActor & { fullName: string } };
395
+ response: DocumentCommentResponseEntity;
396
+ };
225
397
  /** Comprobación pública de un documento con el código que lleva impreso. No exige sesión. */
226
398
  [DocumentPatterns.verify]: {
227
399
  payload: { code: string };
@@ -232,6 +404,31 @@ export interface DocumentContract {
232
404
  payload: { code: string };
233
405
  response: DocumentPublicFileResponseEntity;
234
406
  };
407
+ /**
408
+ * Emite las copias por correo pendientes de estos documentos, si ya corresponde (finalizado y, si va por DocDigital,
409
+ * despachado): genera el enlace de cada una. Se puede pedir de más: lo ya emitido no se repite.
410
+ */
411
+ [DocumentPatterns.issueEmailCopies]: {
412
+ payload: { documentIds: string[] };
413
+ response: DocumentEmailCopyIssuedEntity[];
414
+ };
415
+ /** Sin sesión, con el token de la copia: el documento y quién lo emitió. */
416
+ [DocumentPatterns.getEmailCopy]: {
417
+ payload: { token: string };
418
+ response: DocumentEmailCopyViewEntity;
419
+ };
420
+ /**
421
+ * Recordatorios de plazos que corresponde enviar ahora: lo que vence en un día hábil y lo vencido sin atender. Cada
422
+ * uno se entrega una sola vez (queda marcado al reclamarlo), aunque lo pidan varias instancias del gateway a la vez.
423
+ */
424
+ [DocumentPatterns.claimReminders]: {
425
+ payload: Record<string, never>;
426
+ response: DocumentReminderEntity[];
427
+ };
428
+ [DocumentPatterns.getEmailCopyFile]: {
429
+ payload: { token: string };
430
+ response: DocumentPublicFileResponseEntity;
431
+ };
235
432
  /** Carpeta de Drive de los documentos y sus anexos: el gateway la pide antes de subir cada archivo. */
236
433
  [DocumentPatterns.getFilesFolder]: {
237
434
  payload: Record<string, never>;
@@ -0,0 +1,17 @@
1
+ import { type DocumentTemplateAvailableResponseEntity } from '../entities';
2
+
3
+ /**
4
+ * Patrones NATS de `documentTemplate`. La plantilla de cada tipo documental se define y edita con el tipo
5
+ * (`documentType.create` y `documentType.update`); aquí solo se consulta al redactar.
6
+ */
7
+ export const DocumentTemplatePatterns = {
8
+ getAvailable: 'gestorDocumental.documentTemplate.getAvailable',
9
+ } as const;
10
+
11
+ export interface DocumentTemplateContract {
12
+ /** La plantilla habilitada del tipo documental, si tiene (una lista de a lo sumo una). */
13
+ [DocumentTemplatePatterns.getAvailable]: {
14
+ payload: { documentTypeId: string };
15
+ response: DocumentTemplateAvailableResponseEntity[];
16
+ };
17
+ }
@@ -1,5 +1,6 @@
1
1
  import { type DocumentCategory, type DocumentParticipantRole, type DocumentTypeEntity } from '../base/entities';
2
2
  import {
3
+ type DocumentTemplateContent,
3
4
  type DocumentTypeCreateResponseEntity,
4
5
  type DocumentTypeGetAllResponseEntity,
5
6
  type DocumentTypeGetByIdResponseEntity,
@@ -21,9 +22,13 @@ export const DocumentTypePatterns = {
21
22
  * momento de redactar (su jefatura o, con subrogancia activa, el subrogante). El nombre de la dirección lo resuelve
22
23
  * el gateway; el navegador solo indica cuál es.
23
24
  */
24
- export type DocumentFlowStepInput =
25
+ export type DocumentFlowStepInput = (
25
26
  | { role: DocumentParticipantRole; type: 'Employee'; employeeId: string }
26
- | { role: DocumentParticipantRole; type: 'DirectorateHead'; directorateCodeReference: number; name: string };
27
+ | { role: DocumentParticipantRole; type: 'DirectorateHead'; directorateCodeReference: number; name: string }
28
+ ) & {
29
+ // Visa a la vez con el paso anterior (visación en paralelo). Solo en visaciones.
30
+ withPrevious?: boolean;
31
+ };
27
32
 
28
33
  /** Datos de un tipo documental al crearlo o editarlo. */
29
34
  export interface DocumentTypeWritePayload {
@@ -34,10 +39,27 @@ export interface DocumentTypeWritePayload {
34
39
  // Próximo número que se asignará: permite partir desde el correlativo que la municipalidad ya lleva.
35
40
  nextCorrelative?: number;
36
41
  resetsYearly?: boolean;
42
+ // Sus documentos llevan número (por omisión, sí).
43
+ numbered?: boolean;
44
+ /** Transparencia Activa: sus documentos se publican cada mes, en esta sección del Portal. */
45
+ activeTransparency?: boolean;
46
+ transparencySection?: string | null;
37
47
  directorateCodeReference?: number | null;
48
+ // Dirección cuya jefatura revisa los borradores antes de enviarlos (sin valor: sin revisión). El nombre lo pone el
49
+ // gateway desde caschile-ms.
50
+ draftReviewDirectorateCode?: number | null;
51
+ draftReviewDirectorateName?: string | null;
52
+ // Serie documental del Cuadro de Clasificación (sin valor: sin clasificar).
53
+ archivalSeriesId?: string | null;
54
+ // Entidad emisora (sin valor: la municipalidad).
55
+ issuingEntityId?: string | null;
56
+ // Tipo cuyo correlativo comparte (sin valor: el suyo propio).
57
+ sharesNumberingWithId?: string | null;
38
58
  enabled?: boolean;
39
59
  // Flujo sugerido, en el orden en que les toca dentro de cada rol. Al editar, si no viene, el flujo no cambia.
40
60
  flowSteps?: DocumentFlowStepInput[];
61
+ // Plantilla propia del tipo: se aplica sola al redactar. `null` la quita; al editar, si no viene, no cambia.
62
+ template?: DocumentTemplateContent | null;
41
63
  }
42
64
 
43
65
  /**
@@ -48,7 +70,14 @@ export interface DocumentTypeContract {
48
70
  // sin `page` y `limit` responde todos los tipos en una sola página
49
71
  payload: {
50
72
  pagination?: { page?: number; limit?: number };
51
- filters?: { search?: string; enabled?: boolean; category?: DocumentCategory };
73
+ filters?: {
74
+ search?: string;
75
+ enabled?: boolean;
76
+ category?: DocumentCategory;
77
+ // Solo los que puede usar quien redacta: los de toda la municipalidad y los de estas direcciones (o de una
78
+ // entidad emisora por la que actúan).
79
+ usableByDirectorates?: number[];
80
+ };
52
81
  };
53
82
  response: RpcPage<DocumentTypeGetAllResponseEntity[]>;
54
83
  };
@@ -0,0 +1,73 @@
1
+ import { type DraftingRequestDetailEntity, type DraftingRequestListItemEntity } from '../entities';
2
+ import { type RpcPage } from './contract';
3
+
4
+ /** Patrones NATS de `draftingRequest`: solicitudes de redacción entre áreas. */
5
+ export const DraftingRequestPatterns = {
6
+ getAll: 'gestorDocumental.draftingRequest.getAll',
7
+ getById: 'gestorDocumental.draftingRequest.getById',
8
+ create: 'gestorDocumental.draftingRequest.create',
9
+ act: 'gestorDocumental.draftingRequest.act',
10
+ getAttachmentFile: 'gestorDocumental.draftingRequest.getAttachmentFile',
11
+ } as const;
12
+
13
+ /** Quien consulta o actúa: el funcionario de la sesión, con su nombre. */
14
+ export interface DraftingRequestActor {
15
+ employeeId: string;
16
+ fullName: string;
17
+ }
18
+
19
+ /**
20
+ * Bandeja: las que le llegaron a su dirección, las que tomó o las que pidió. `state`: abiertas (sin tomar, tomadas o
21
+ * en redacción), cerradas (atendidas, devueltas o retiradas) o todas.
22
+ */
23
+ export type DraftingRequestBox = 'received' | 'taken' | 'sent';
24
+
25
+ export interface DraftingRequestCreatePayload {
26
+ subject: string;
27
+ details: string;
28
+ documentTypeId?: string | null;
29
+ dueAt?: string | null;
30
+ attachments?: { fileId: string; name: string }[];
31
+ /** Dirección a la que se pide, con el nombre que le pone el gateway. */
32
+ targetDirectorateCode: number;
33
+ targetDirectorateName: string;
34
+ /** Quienes la integran hoy, resueltos por el gateway (sin quien la pide). */
35
+ recipientEmployeeIds: string[];
36
+ requesterAreaName?: string | null;
37
+ actor: DraftingRequestActor;
38
+ }
39
+
40
+ /** Lo que se hace con una solicitud, un paso a la vez. */
41
+ export type DraftingRequestAction =
42
+ | { type: 'take' }
43
+ | { type: 'release'; note?: string | null }
44
+ | { type: 'decline'; note: string }
45
+ | { type: 'cancel'; note?: string | null };
46
+
47
+ export interface DraftingRequestContract {
48
+ [DraftingRequestPatterns.getAll]: {
49
+ payload: {
50
+ box: DraftingRequestBox;
51
+ state?: 'open' | 'closed' | 'all';
52
+ search?: string;
53
+ page?: number;
54
+ limit?: number;
55
+ actor: Pick<DraftingRequestActor, 'employeeId'>;
56
+ };
57
+ response: RpcPage<DraftingRequestListItemEntity[]>;
58
+ };
59
+ [DraftingRequestPatterns.getById]: {
60
+ payload: { id: string; actor: Pick<DraftingRequestActor, 'employeeId'> };
61
+ response: DraftingRequestDetailEntity;
62
+ };
63
+ [DraftingRequestPatterns.create]: { payload: DraftingRequestCreatePayload; response: DraftingRequestDetailEntity };
64
+ [DraftingRequestPatterns.act]: {
65
+ payload: { id: string; action: DraftingRequestAction; actor: DraftingRequestActor };
66
+ response: DraftingRequestDetailEntity;
67
+ };
68
+ /** Archivo adjunto, con las mismas reglas de acceso del detalle. */
69
+ [DraftingRequestPatterns.getAttachmentFile]: {
70
+ payload: { id: string; attachmentId: string; actor: Pick<DraftingRequestActor, 'employeeId'> };
71
+ response: { fileId: string; fileName: string };
72
+ };
73
+ }
@@ -0,0 +1,25 @@
1
+ import {
2
+ type HolidayListResponseEntity,
3
+ type HolidayRemoveResponseEntity,
4
+ type HolidayResponseEntity,
5
+ type HolidaySyncResponseEntity,
6
+ } from '../entities';
7
+
8
+ /** Patrones NATS de `holiday`: feriados para contar días hábiles. */
9
+ export const HolidayPatterns = {
10
+ getAll: 'gestorDocumental.holiday.getAll',
11
+ create: 'gestorDocumental.holiday.create',
12
+ remove: 'gestorDocumental.holiday.remove',
13
+ sync: 'gestorDocumental.holiday.sync',
14
+ } as const;
15
+
16
+ export interface HolidayContract {
17
+ /** Feriados de un año, en orden (también los de la API que se quitaron a mano). */
18
+ [HolidayPatterns.getAll]: { payload: { year: number }; response: HolidayListResponseEntity };
19
+ /** `date` como «AAAA-MM-DD». Si es uno de la API que se había quitado, vuelve a contar. */
20
+ [HolidayPatterns.create]: { payload: { date: string; name: string }; response: HolidayResponseEntity };
21
+ /** Uno cargado a mano se borra; uno de la API se marca como quitado. */
22
+ [HolidayPatterns.remove]: { payload: { id: string }; response: HolidayRemoveResponseEntity };
23
+ /** Trae de la API pública los feriados de un año. Lo cargado o quitado a mano se respeta. */
24
+ [HolidayPatterns.sync]: { payload: { year: number }; response: HolidaySyncResponseEntity };
25
+ }
@@ -1,28 +1,120 @@
1
1
  import { CaseFilePatterns, type CaseFileContract } from './caseFile.contract';
2
2
  import { DocumentPatterns, type DocumentContract } from './document.contract';
3
3
  import { DocumentTypePatterns, type DocumentTypeContract } from './documentType.contract';
4
+ import { IssuingEntityPatterns, type IssuingEntityContract } from './issuingEntity.contract';
5
+ import { ArchivalSeriesPatterns, type ArchivalSeriesContract } from './archivalSeries.contract';
6
+ import { TextSnippetPatterns, type TextSnippetContract } from './textSnippet.contract';
7
+ import { DocumentTemplatePatterns, type DocumentTemplateContract } from './documentTemplate.contract';
8
+ import { HolidayPatterns, type HolidayContract } from './holiday.contract';
9
+ import { IndicatorsPatterns, type IndicatorsContract } from './indicators.contract';
10
+ import { AuditPatterns, type AuditContract } from './audit.contract';
11
+ import { SignatureCheckPatterns, type SignatureCheckContract } from './signatureCheck.contract';
12
+ import { RepositoryExportPatterns, type RepositoryExportContract } from './repositoryExport.contract';
13
+ import { RetentionPatterns, type RetentionContract } from './retention.contract';
14
+ import { AccessRequestPatterns, type AccessRequestContract } from './accessRequest.contract';
15
+ import { TransparencyPatterns, type TransparencyContract } from './transparency.contract';
16
+ import { DataProtectionPatterns, type DataProtectionContract } from './dataProtection.contract';
17
+ import { DeskPatterns, type DeskContract } from './desk.contract';
18
+ import { MailIntakePatterns, type MailIntakeContract } from './mailIntake.contract';
19
+ import { PushPatterns, type PushContract } from './push.contract';
20
+ import { ScanPatterns, type ScanContract } from './scan.contract';
4
21
  import { PartsOfficePatterns, type PartsOfficeContract } from './partsOffice.contract';
5
22
  import { ProcedurePatterns, type ProcedureContract } from './procedure.contract';
23
+ import { RegisterBookPatterns, type RegisterBookContract } from './registerBook.contract';
24
+ import { SignatureBatchPatterns, type SignatureBatchContract } from './signatureBatch.contract';
25
+ import { WorkFolderPatterns, type WorkFolderContract } from './workFolder.contract';
26
+ import { DraftingRequestPatterns, type DraftingRequestContract } from './draftingRequest.contract';
27
+ import { InternalReviewPatterns, type InternalReviewContract } from './internalReview.contract';
28
+ import { RichImagePatterns, type RichImageContract } from './richImage.contract';
6
29
 
7
30
  export * from './contract';
8
31
  export * from './document.contract';
9
32
  export * from './documentType.contract';
10
33
  export * from './procedure.contract';
34
+ export * from './issuingEntity.contract';
11
35
  export * from './caseFile.contract';
12
36
  export * from './partsOffice.contract';
37
+ export * from './registerBook.contract';
38
+ export * from './signatureBatch.contract';
39
+ export * from './workFolder.contract';
40
+ export * from './scan.contract';
41
+ export * from './archivalSeries.contract';
42
+ export * from './textSnippet.contract';
43
+ export * from './documentTemplate.contract';
44
+ export * from './holiday.contract';
45
+ export * from './indicators.contract';
46
+ export * from './audit.contract';
47
+ export * from './signatureCheck.contract';
48
+ export * from './repositoryExport.contract';
49
+ export * from './retention.contract';
50
+ export * from './accessRequest.contract';
51
+ export * from './transparency.contract';
52
+ export * from './dataProtection.contract';
53
+ export * from './desk.contract';
54
+ export * from './mailIntake.contract';
55
+ export * from './push.contract';
56
+ export * from './draftingRequest.contract';
57
+ export * from './internalReview.contract';
58
+ export * from './richImage.contract';
13
59
 
14
60
  /** Patrones NATS de gestor-documental-ms, por recurso: `gestorDocumental.<recurso>.<acción>`. */
15
61
  export const GestorDocumentalPatterns = {
16
62
  documentType: DocumentTypePatterns,
17
63
  document: DocumentPatterns,
18
64
  procedure: ProcedurePatterns,
65
+ issuingEntity: IssuingEntityPatterns,
19
66
  caseFile: CaseFilePatterns,
20
67
  partsOffice: PartsOfficePatterns,
68
+ registerBook: RegisterBookPatterns,
69
+ signatureBatch: SignatureBatchPatterns,
70
+ workFolder: WorkFolderPatterns,
71
+ scan: ScanPatterns,
72
+ archivalSeries: ArchivalSeriesPatterns,
73
+ textSnippet: TextSnippetPatterns,
74
+ documentTemplate: DocumentTemplatePatterns,
75
+ holiday: HolidayPatterns,
76
+ indicators: IndicatorsPatterns,
77
+ audit: AuditPatterns,
78
+ signatureCheck: SignatureCheckPatterns,
79
+ repositoryExport: RepositoryExportPatterns,
80
+ retention: RetentionPatterns,
81
+ accessRequest: AccessRequestPatterns,
82
+ transparency: TransparencyPatterns,
83
+ dataProtection: DataProtectionPatterns,
84
+ desk: DeskPatterns,
85
+ mailIntake: MailIntakePatterns,
86
+ push: PushPatterns,
87
+ draftingRequest: DraftingRequestPatterns,
88
+ internalReview: InternalReviewPatterns,
89
+ richImage: RichImagePatterns,
21
90
  } as const;
22
91
 
23
92
  /** Contrato completo de gestor-documental-ms: la unión de los contratos de sus recursos. */
24
93
  export type GestorDocumentalContract = DocumentTypeContract &
25
94
  DocumentContract &
26
95
  ProcedureContract &
96
+ IssuingEntityContract &
27
97
  CaseFileContract &
28
- PartsOfficeContract;
98
+ PartsOfficeContract &
99
+ RegisterBookContract &
100
+ SignatureBatchContract &
101
+ WorkFolderContract &
102
+ ScanContract &
103
+ ArchivalSeriesContract &
104
+ TextSnippetContract &
105
+ DocumentTemplateContract &
106
+ HolidayContract &
107
+ IndicatorsContract &
108
+ AuditContract &
109
+ SignatureCheckContract &
110
+ RepositoryExportContract &
111
+ RetentionContract &
112
+ AccessRequestContract &
113
+ TransparencyContract &
114
+ DataProtectionContract &
115
+ DeskContract &
116
+ MailIntakeContract &
117
+ PushContract &
118
+ DraftingRequestContract &
119
+ InternalReviewContract &
120
+ RichImageContract;