@muni-sanfer/types-gestor-documental 0.0.1-beta.3 → 0.0.1-beta.30

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 (200) hide show
  1. package/dist/base/entities.d.ts +978 -1
  2. package/dist/base/entities.js +263 -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 +262 -0
  10. package/dist/contracts/caseFile.contract.js +26 -0
  11. package/dist/contracts/dataProtection.contract.d.ts +251 -0
  12. package/dist/contracts/dataProtection.contract.js +23 -0
  13. package/dist/contracts/desk.contract.d.ts +86 -0
  14. package/dist/contracts/desk.contract.js +13 -0
  15. package/dist/contracts/document.contract.d.ts +130 -2
  16. package/dist/contracts/document.contract.js +8 -0
  17. package/dist/contracts/documentType.contract.d.ts +11 -1
  18. package/dist/contracts/holiday.contract.d.ts +30 -0
  19. package/dist/contracts/holiday.contract.js +9 -0
  20. package/dist/contracts/index.d.ts +234 -1
  21. package/dist/contracts/index.js +60 -0
  22. package/dist/contracts/indicators.contract.d.ts +103 -0
  23. package/dist/contracts/indicators.contract.js +15 -0
  24. package/dist/contracts/issuingEntity.contract.d.ts +52 -0
  25. package/dist/contracts/issuingEntity.contract.js +11 -0
  26. package/dist/contracts/partsOffice.contract.d.ts +263 -0
  27. package/dist/contracts/partsOffice.contract.js +27 -0
  28. package/dist/contracts/procedure.contract.d.ts +50 -0
  29. package/dist/contracts/procedure.contract.js +11 -0
  30. package/dist/contracts/registerBook.contract.d.ts +27 -0
  31. package/dist/contracts/registerBook.contract.js +8 -0
  32. package/dist/contracts/repositoryExport.contract.d.ts +57 -0
  33. package/dist/contracts/repositoryExport.contract.js +13 -0
  34. package/dist/contracts/retention.contract.d.ts +58 -0
  35. package/dist/contracts/retention.contract.js +11 -0
  36. package/dist/contracts/scan.contract.d.ts +63 -0
  37. package/dist/contracts/scan.contract.js +12 -0
  38. package/dist/contracts/signatureBatch.contract.d.ts +109 -0
  39. package/dist/contracts/signatureBatch.contract.js +12 -0
  40. package/dist/contracts/signatureCheck.contract.d.ts +14 -0
  41. package/dist/contracts/signatureCheck.contract.js +7 -0
  42. package/dist/contracts/textSnippet.contract.d.ts +51 -0
  43. package/dist/contracts/textSnippet.contract.js +11 -0
  44. package/dist/contracts/transparency.contract.d.ts +96 -0
  45. package/dist/contracts/transparency.contract.js +12 -0
  46. package/dist/contracts/workFolder.contract.d.ts +114 -0
  47. package/dist/contracts/workFolder.contract.js +16 -0
  48. package/dist/entities/accessRequest/accessRequest.entity.d.ts +73 -0
  49. package/dist/entities/accessRequest/accessRequest.entity.js +2 -0
  50. package/dist/entities/accessRequest/index.d.ts +1 -0
  51. package/dist/entities/accessRequest/index.js +17 -0
  52. package/dist/entities/archivalSeries/archivalSeries.entity.d.ts +32 -0
  53. package/dist/entities/archivalSeries/archivalSeries.entity.js +2 -0
  54. package/dist/entities/archivalSeries/index.d.ts +1 -0
  55. package/dist/entities/archivalSeries/index.js +17 -0
  56. package/dist/entities/audit/audit.entity.d.ts +27 -0
  57. package/dist/entities/audit/audit.entity.js +2 -0
  58. package/dist/entities/audit/index.d.ts +1 -0
  59. package/dist/entities/audit/index.js +17 -0
  60. package/dist/entities/caseFile/caseFile.entity.d.ts +302 -0
  61. package/dist/entities/caseFile/caseFile.entity.js +2 -0
  62. package/dist/entities/caseFile/index.d.ts +1 -0
  63. package/dist/entities/caseFile/index.js +17 -0
  64. package/dist/entities/dataProtection/dataProtection.entity.d.ts +174 -0
  65. package/dist/entities/dataProtection/dataProtection.entity.js +2 -0
  66. package/dist/entities/dataProtection/index.d.ts +1 -0
  67. package/dist/entities/dataProtection/index.js +17 -0
  68. package/dist/entities/desk/desk.entity.d.ts +21 -0
  69. package/dist/entities/desk/desk.entity.js +2 -0
  70. package/dist/entities/desk/index.d.ts +1 -0
  71. package/dist/entities/desk/index.js +17 -0
  72. package/dist/entities/document/document.entity.d.ts +256 -1
  73. package/dist/entities/documentType/documentType.entity.d.ts +23 -0
  74. package/dist/entities/holiday/holiday.entity.d.ts +10 -0
  75. package/dist/entities/holiday/holiday.entity.js +2 -0
  76. package/dist/entities/holiday/index.d.ts +1 -0
  77. package/dist/entities/holiday/index.js +17 -0
  78. package/dist/entities/index.d.ts +20 -0
  79. package/dist/entities/index.js +20 -0
  80. package/dist/entities/indicators/index.d.ts +1 -0
  81. package/dist/entities/indicators/index.js +17 -0
  82. package/dist/entities/indicators/indicators.entity.d.ts +152 -0
  83. package/dist/entities/indicators/indicators.entity.js +2 -0
  84. package/dist/entities/issuingEntity/index.d.ts +1 -0
  85. package/dist/entities/issuingEntity/index.js +17 -0
  86. package/dist/entities/issuingEntity/issuingEntity.entity.d.ts +20 -0
  87. package/dist/entities/issuingEntity/issuingEntity.entity.js +2 -0
  88. package/dist/entities/partsOffice/index.d.ts +1 -0
  89. package/dist/entities/partsOffice/index.js +17 -0
  90. package/dist/entities/partsOffice/partsOffice.entity.d.ts +137 -0
  91. package/dist/entities/partsOffice/partsOffice.entity.js +2 -0
  92. package/dist/entities/procedure/index.d.ts +1 -0
  93. package/dist/entities/procedure/index.js +17 -0
  94. package/dist/entities/procedure/procedure.entity.d.ts +20 -0
  95. package/dist/entities/procedure/procedure.entity.js +2 -0
  96. package/dist/entities/registerBook/index.d.ts +1 -0
  97. package/dist/entities/registerBook/index.js +17 -0
  98. package/dist/entities/registerBook/registerBook.entity.d.ts +48 -0
  99. package/dist/entities/registerBook/registerBook.entity.js +2 -0
  100. package/dist/entities/repositoryExport/index.d.ts +1 -0
  101. package/dist/entities/repositoryExport/index.js +17 -0
  102. package/dist/entities/repositoryExport/repositoryExport.entity.d.ts +124 -0
  103. package/dist/entities/repositoryExport/repositoryExport.entity.js +2 -0
  104. package/dist/entities/retention/index.d.ts +1 -0
  105. package/dist/entities/retention/index.js +17 -0
  106. package/dist/entities/retention/retention.entity.d.ts +49 -0
  107. package/dist/entities/retention/retention.entity.js +2 -0
  108. package/dist/entities/scan/index.d.ts +1 -0
  109. package/dist/entities/scan/index.js +17 -0
  110. package/dist/entities/scan/scan.entity.d.ts +29 -0
  111. package/dist/entities/scan/scan.entity.js +2 -0
  112. package/dist/entities/signatureBatch/index.d.ts +1 -0
  113. package/dist/entities/signatureBatch/index.js +17 -0
  114. package/dist/entities/signatureBatch/signatureBatch.entity.d.ts +107 -0
  115. package/dist/entities/signatureBatch/signatureBatch.entity.js +2 -0
  116. package/dist/entities/signatureCheck/index.d.ts +1 -0
  117. package/dist/entities/signatureCheck/index.js +17 -0
  118. package/dist/entities/signatureCheck/signatureCheck.entity.d.ts +49 -0
  119. package/dist/entities/signatureCheck/signatureCheck.entity.js +2 -0
  120. package/dist/entities/textSnippet/index.d.ts +1 -0
  121. package/dist/entities/textSnippet/index.js +17 -0
  122. package/dist/entities/textSnippet/textSnippet.entity.d.ts +20 -0
  123. package/dist/entities/textSnippet/textSnippet.entity.js +2 -0
  124. package/dist/entities/transparency/index.d.ts +1 -0
  125. package/dist/entities/transparency/index.js +17 -0
  126. package/dist/entities/transparency/transparency.entity.d.ts +77 -0
  127. package/dist/entities/transparency/transparency.entity.js +2 -0
  128. package/dist/entities/workFolder/index.d.ts +1 -0
  129. package/dist/entities/workFolder/index.js +17 -0
  130. package/dist/entities/workFolder/workFolder.entity.d.ts +83 -0
  131. package/dist/entities/workFolder/workFolder.entity.js +2 -0
  132. package/package.json +1 -1
  133. package/src/base/entities.ts +1163 -1
  134. package/src/contracts/accessRequest.contract.ts +81 -0
  135. package/src/contracts/archivalSeries.contract.ts +59 -0
  136. package/src/contracts/audit.contract.ts +30 -0
  137. package/src/contracts/caseFile.contract.ts +228 -0
  138. package/src/contracts/dataProtection.contract.ts +195 -0
  139. package/src/contracts/desk.contract.ts +68 -0
  140. package/src/contracts/document.contract.ts +133 -2
  141. package/src/contracts/documentType.contract.ts +25 -3
  142. package/src/contracts/holiday.contract.ts +16 -0
  143. package/src/contracts/index.ts +82 -1
  144. package/src/contracts/indicators.contract.ts +80 -0
  145. package/src/contracts/issuingEntity.contract.ts +55 -0
  146. package/src/contracts/partsOffice.contract.ts +199 -0
  147. package/src/contracts/procedure.contract.ts +53 -0
  148. package/src/contracts/registerBook.contract.ts +24 -0
  149. package/src/contracts/repositoryExport.contract.ts +54 -0
  150. package/src/contracts/retention.contract.ts +44 -0
  151. package/src/contracts/scan.contract.ts +52 -0
  152. package/src/contracts/signatureBatch.contract.ts +96 -0
  153. package/src/contracts/signatureCheck.contract.ts +11 -0
  154. package/src/contracts/textSnippet.contract.ts +53 -0
  155. package/src/contracts/transparency.contract.ts +55 -0
  156. package/src/contracts/workFolder.contract.ts +75 -0
  157. package/src/entities/accessRequest/accessRequest.entity.ts +78 -0
  158. package/src/entities/accessRequest/index.ts +1 -0
  159. package/src/entities/archivalSeries/archivalSeries.entity.ts +37 -0
  160. package/src/entities/archivalSeries/index.ts +1 -0
  161. package/src/entities/audit/audit.entity.ts +30 -0
  162. package/src/entities/audit/index.ts +1 -0
  163. package/src/entities/caseFile/caseFile.entity.ts +326 -0
  164. package/src/entities/caseFile/index.ts +1 -0
  165. package/src/entities/dataProtection/dataProtection.entity.ts +185 -0
  166. package/src/entities/dataProtection/index.ts +1 -0
  167. package/src/entities/desk/desk.entity.ts +24 -0
  168. package/src/entities/desk/index.ts +1 -0
  169. package/src/entities/document/document.entity.ts +252 -0
  170. package/src/entities/documentType/documentType.entity.ts +16 -0
  171. package/src/entities/holiday/holiday.entity.ts +11 -0
  172. package/src/entities/holiday/index.ts +1 -0
  173. package/src/entities/index.ts +20 -0
  174. package/src/entities/indicators/index.ts +1 -0
  175. package/src/entities/indicators/indicators.entity.ts +157 -0
  176. package/src/entities/issuingEntity/index.ts +1 -0
  177. package/src/entities/issuingEntity/issuingEntity.entity.ts +24 -0
  178. package/src/entities/partsOffice/index.ts +1 -0
  179. package/src/entities/partsOffice/partsOffice.entity.ts +138 -0
  180. package/src/entities/procedure/index.ts +1 -0
  181. package/src/entities/procedure/procedure.entity.ts +24 -0
  182. package/src/entities/registerBook/index.ts +1 -0
  183. package/src/entities/registerBook/registerBook.entity.ts +52 -0
  184. package/src/entities/repositoryExport/index.ts +1 -0
  185. package/src/entities/repositoryExport/repositoryExport.entity.ts +86 -0
  186. package/src/entities/retention/index.ts +1 -0
  187. package/src/entities/retention/retention.entity.ts +53 -0
  188. package/src/entities/scan/index.ts +1 -0
  189. package/src/entities/scan/scan.entity.ts +32 -0
  190. package/src/entities/signatureBatch/index.ts +1 -0
  191. package/src/entities/signatureBatch/signatureBatch.entity.ts +110 -0
  192. package/src/entities/signatureCheck/index.ts +1 -0
  193. package/src/entities/signatureCheck/signatureCheck.entity.ts +51 -0
  194. package/src/entities/textSnippet/index.ts +1 -0
  195. package/src/entities/textSnippet/textSnippet.entity.ts +24 -0
  196. package/src/entities/transparency/index.ts +1 -0
  197. package/src/entities/transparency/transparency.entity.ts +78 -0
  198. package/src/entities/workFolder/index.ts +1 -0
  199. package/src/entities/workFolder/workFolder.entity.ts +84 -0
  200. package/tsconfig.json +1 -3
@@ -0,0 +1,110 @@
1
+ import {
2
+ type DocumentAccessLevel,
3
+ type DocumentEntity,
4
+ type DocumentParticipantRole,
5
+ type DocumentStatus,
6
+ type SignatureBatchEntity,
7
+ } from '../../base/entities';
8
+ import { type DocumentSignManyResponseEntity, type DocumentSignManyResultEntity } from '../document';
9
+
10
+ /**
11
+ * Estado de un lote, deducido del de sus documentos: en tramitación mientras alguno lo esté; devuelto si no queda
12
+ * ninguno en tramitación y alguno volvió a su redactor; finalizado si todos terminaron (o se anularon después).
13
+ */
14
+ export type SignatureBatchStatus = 'InProgress' | 'Returned' | 'Finished';
15
+
16
+ /** Lista de lotes: los que esperan al funcionario, los que redactó o todos en que participa. */
17
+ export type SignatureBatchTab = 'pending' | 'created' | 'participated';
18
+
19
+ /** Cuántos documentos del lote hay en cada situación. */
20
+ export interface SignatureBatchCountsEntity {
21
+ total: number;
22
+ inProgress: number;
23
+ finished: number;
24
+ /** Devueltos a su redactor (rechazados), para corregirlos y reenviarlos. */
25
+ returned: number;
26
+ annulled: number;
27
+ }
28
+
29
+ export interface SignatureBatchGetAllResponseEntity {
30
+ id: string;
31
+ name: string;
32
+ documentType: { id: string; name: string };
33
+ createdByEmployeeId: string;
34
+ createdByFullName: string;
35
+ createdAt: SignatureBatchEntity['createdAt'];
36
+ status: SignatureBatchStatus;
37
+ counts: SignatureBatchCountsEntity;
38
+ /** Documentos del lote que esperan al funcionario que consulta, por rol. */
39
+ myPending: { visa: number; signature: number };
40
+ }
41
+
42
+ /** Un documento del lote, con su turno vigente. */
43
+ export interface SignatureBatchDocumentEntity {
44
+ id: string;
45
+ subject: string;
46
+ status: DocumentStatus;
47
+ correlative: number | null;
48
+ correlativeYear: number | null;
49
+ numberedAt: DocumentEntity['numberedAt'];
50
+ verificationCode: string | null;
51
+ originalFileName: string;
52
+ currentTurn: { employeeId: string; fullName: string; role: DocumentParticipantRole } | null;
53
+ /** Si el turno vigente es del funcionario que consulta, qué le toca hacer. */
54
+ myTurn: DocumentParticipantRole | null;
55
+ }
56
+
57
+ export interface SignatureBatchGetByIdResponseEntity extends SignatureBatchGetAllResponseEntity {
58
+ documentType: { id: string; name: string; abbreviation: string | null; numbered: boolean };
59
+ keywords: string[];
60
+ accessLevel: DocumentAccessLevel;
61
+ hasSensitiveData: boolean;
62
+ /** Visadores y firmantes del lote, en orden (los del primer documento: todos parten con el mismo flujo). */
63
+ flow: {
64
+ role: DocumentParticipantRole;
65
+ stage: number;
66
+ employeeId: string;
67
+ fullName: string;
68
+ position: string | null;
69
+ }[];
70
+ documents: SignatureBatchDocumentEntity[];
71
+ }
72
+
73
+ /** A quién le quedó el turno después de una operación sobre el lote: para avisarle una sola vez por lote. */
74
+ export interface SignatureBatchTurnEntity {
75
+ employeeId: string;
76
+ fullName: string;
77
+ role: DocumentParticipantRole;
78
+ count: number;
79
+ }
80
+
81
+ /** Lo que el gateway necesita para avisar: el lote, su redactor, a quién le toca ahora y cuántos terminaron. */
82
+ export interface SignatureBatchOutcomeEntity {
83
+ id: string;
84
+ name: string;
85
+ createdByEmployeeId: string;
86
+ nextTurns: SignatureBatchTurnEntity[];
87
+ /** Documentos que quedaron finalizados con esta operación. */
88
+ finished: number;
89
+ }
90
+
91
+ export interface SignatureBatchCreateResponseEntity extends SignatureBatchOutcomeEntity {
92
+ ok: boolean;
93
+ documentIds: string[];
94
+ }
95
+
96
+ export interface SignatureBatchVisaResponseEntity extends SignatureBatchOutcomeEntity {
97
+ ok: boolean;
98
+ visaed: number;
99
+ /** Los que no se pudieron visar, con el motivo. */
100
+ failures: DocumentSignManyResultEntity[];
101
+ }
102
+
103
+ export type SignatureBatchSignResponseEntity = SignatureBatchOutcomeEntity & DocumentSignManyResponseEntity;
104
+
105
+ export interface SignatureBatchRejectResponseEntity extends SignatureBatchOutcomeEntity {
106
+ ok: boolean;
107
+ /** Documentos devueltos a su redactor. */
108
+ rejected: number;
109
+ observation: string;
110
+ }
@@ -0,0 +1 @@
1
+ export * from './signatureCheck.entity';
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Resultado de una firma o del archivo completo: válida, inválida (algo no cuadra) o indeterminada (lo firmado está
3
+ * íntegro, pero falta confirmar algo: la cadena de confianza, la vigencia o cambios posteriores sin firmar).
4
+ */
5
+ export type PdfSignatureStatus = 'Valid' | 'Invalid' | 'Indeterminate';
6
+
7
+ /** Una firma electrónica de un PDF, como se pudo comprobar. */
8
+ export interface PdfSignatureEntity {
9
+ /** Orden en el archivo: 1 es la primera. */
10
+ index: number;
11
+ /** Firma de una persona o sello de tiempo del documento. */
12
+ kind: 'Signature' | 'Timestamp';
13
+ signerName: string | null;
14
+ /** Identificador del titular en el certificado (en Chile, suele ser el RUN). */
15
+ signerSerialNumber: string | null;
16
+ organization: string | null;
17
+ issuerName: string | null;
18
+ certificateSerial: string | null;
19
+ certificateValidFrom: string | null;
20
+ certificateValidTo: string | null;
21
+ signingTime: string | null;
22
+ /** De dónde sale la hora de la firma: sello de tiempo (la más confiable), el certificado firmado o el PDF. */
23
+ signingTimeSource: 'Timestamp' | 'SignedAttribute' | 'PdfDate' | null;
24
+ reason: string | null;
25
+ location: string | null;
26
+ hasTimestamp: boolean;
27
+ /** Lo firmado no cambió y la firma corresponde al certificado. */
28
+ intact: boolean;
29
+ /** La firma abarca el archivo completo (las anteriores a la última, solo su versión). */
30
+ coversWholeDocument: boolean;
31
+ /** El certificado estaba vigente al firmar. `null` si no se sabe cuándo se firmó. */
32
+ certificateValidAtSigning: boolean | null;
33
+ /** Cadena hasta un certificado raíz de confianza. `null` si no hay raíces configuradas. */
34
+ trusted: boolean | null;
35
+ status: PdfSignatureStatus;
36
+ /** Lo que no cuadra o no se pudo confirmar, en palabras. */
37
+ problems: string[];
38
+ }
39
+
40
+ /** Revisión de las firmas de un PDF. */
41
+ export interface PdfSignatureReportEntity {
42
+ checkedAt: string;
43
+ status: 'NoSignatures' | PdfSignatureStatus;
44
+ signatures: PdfSignatureEntity[];
45
+ /** Hay contenido agregado después de la última firma, que no está firmado. */
46
+ modifiedAfterLastSignature: boolean;
47
+ /** Se configuraron certificados raíz para confirmar la cadena de confianza. */
48
+ trustConfigured: boolean;
49
+ /** Huella SHA-256 del archivo revisado. */
50
+ fileSha256: string;
51
+ }
@@ -0,0 +1 @@
1
+ export * from './textSnippet.entity';
@@ -0,0 +1,24 @@
1
+ import { TextSnippetEntity } from '../../base/entities';
2
+
3
+ /** Texto de la biblioteca de vistos y cláusulas. */
4
+ export interface TextSnippetGetAllResponseEntity {
5
+ id: TextSnippetEntity['id'];
6
+ title: TextSnippetEntity['title'];
7
+ text: TextSnippetEntity['text'];
8
+ section: TextSnippetEntity['section'];
9
+ keywords: TextSnippetEntity['keywords'];
10
+ enabled: TextSnippetEntity['enabled'];
11
+ updatedAt: TextSnippetEntity['updatedAt'];
12
+ }
13
+
14
+ export type TextSnippetGetByIdResponseEntity = TextSnippetGetAllResponseEntity;
15
+
16
+ export interface TextSnippetCreateResponseEntity {
17
+ id: TextSnippetEntity['id'];
18
+ ok: boolean;
19
+ }
20
+
21
+ export interface TextSnippetUpdateResponseEntity {
22
+ id: TextSnippetEntity['id'];
23
+ ok: boolean;
24
+ }
@@ -0,0 +1 @@
1
+ export * from './transparency.entity';
@@ -0,0 +1,78 @@
1
+ import { type DocumentAccessLevel, type DocumentStatus } from '../../base/entities';
2
+ import { type PersonalDataHintsEntity } from '../dataProtection';
3
+
4
+ /** En qué quedó un documento en Transparencia Activa: aún sin decidir, publicado o excluido con su motivo. */
5
+ export type TransparencyItemStatus = 'Pending' | 'Published' | 'Excluded';
6
+
7
+ /** Un documento que se publica en Transparencia Activa (Ley 20.285, art. 7°), con lo que se decidió de él. */
8
+ export interface TransparencyItemEntity {
9
+ documentId: string;
10
+ documentStatus: DocumentStatus;
11
+ verificationCode: string | null;
12
+ documentTypeName: string;
13
+ documentTypeAbbreviation: string | null;
14
+ /** Sección del Portal en que se publica, según su tipo documental. */
15
+ section: string | null;
16
+ /** Folio del documento (`Decreto Alcaldicio N° 15/2026`), o el nombre del tipo si no lleva número. */
17
+ reference: string;
18
+ correlative: number | null;
19
+ correlativeYear: number | null;
20
+ subject: string;
21
+ finishedAt: string | null;
22
+ annulledAt: string | null;
23
+ accessLevel: DocumentAccessLevel;
24
+ hasSensitiveData: boolean;
25
+ /** El original se puede publicar tal cual: es público (o su restricción terminó) y no tiene datos sensibles. */
26
+ originalIsPublic: boolean;
27
+ /** Para publicarlo hace falta antes la versión tarjada. */
28
+ needsRedacted: boolean;
29
+ redactedFileName: string | null;
30
+ /** RUN, correos y teléfonos que se reconocen en el texto del original (`null` si no tiene texto): ayudan a tarjar. */
31
+ personalData: PersonalDataHintsEntity | null;
32
+ status: TransparencyItemStatus;
33
+ /** Dirección de la publicación en el Portal de Transparencia, si se anotó. */
34
+ transparencyUrl: string | null;
35
+ /** Motivo de la exclusión, u observación de la publicación. */
36
+ transparencyNote: string | null;
37
+ transparencyAt: string | null;
38
+ transparencyByFullName: string | null;
39
+ /** Enlace público estable a la versión que se publica (`<TRANSPARENCY_URL>/<código>`), si está configurado. */
40
+ publicLink: string | null;
41
+ }
42
+
43
+ export interface TransparencyMonthCountsEntity {
44
+ total: number;
45
+ pending: number;
46
+ published: number;
47
+ excluded: number;
48
+ /** Publicados que después se anularon: hay que retirarlos o actualizarlos en el Portal. */
49
+ annulledPublished: number;
50
+ }
51
+
52
+ /** Lo firmado en un mes de los tipos documentales que se publican, con lo que falta por decidir. */
53
+ export interface TransparencyMonthEntity {
54
+ year: number;
55
+ month: number;
56
+ counts: TransparencyMonthCountsEntity;
57
+ /** Tipos documentales marcados para Transparencia Activa. Sin ninguno, la bandeja queda vacía. */
58
+ documentTypes: { id: string; name: string; section: string | null }[];
59
+ items: TransparencyItemEntity[];
60
+ }
61
+
62
+ /** Lo que muestra la página pública de un documento publicado en Transparencia Activa. No exige sesión. */
63
+ export interface TransparencyPublicEntity {
64
+ verificationCode: string;
65
+ documentTypeName: string;
66
+ issuerName: string;
67
+ section: string | null;
68
+ reference: string;
69
+ /** La materia solo se muestra si el original es público; si se publicó tarjado, se lee en el archivo. */
70
+ subject: string | null;
71
+ finishedAt: string | null;
72
+ /** Anulado después de publicarse: se informa y ya no se descarga. */
73
+ annulled: boolean;
74
+ /** Se publicó una versión tarjada (sin datos personales o reservados). */
75
+ redacted: boolean;
76
+ canDownload: boolean;
77
+ publishedAt: string | null;
78
+ }
@@ -0,0 +1 @@
1
+ export * from './workFolder.entity';
@@ -0,0 +1,84 @@
1
+ import {
2
+ type CaseFileActuationType,
3
+ type DocumentAccessLevel,
4
+ type DocumentStatus,
5
+ type WorkFolderItemKind,
6
+ } from '../../base/entities';
7
+
8
+ export interface WorkFolderGetAllResponseEntity {
9
+ id: string;
10
+ name: string;
11
+ description: string | null;
12
+ ownerEmployeeId: string;
13
+ ownerFullName: string;
14
+ itemCount: number;
15
+ participantCount: number;
16
+ /** Expediente en que se convirtió: desde ahí la carpeta queda solo de consulta. */
17
+ caseFile: { id: string; code: string } | null;
18
+ createdAt: string;
19
+ updatedAt: string;
20
+ /** Quien consulta es su responsable. */
21
+ isOwner: boolean;
22
+ }
23
+
24
+ export interface WorkFolderItemResponseEntity {
25
+ id: string;
26
+ kind: WorkFolderItemKind;
27
+ title: string;
28
+ /** Documento del gestor (si es uno). */
29
+ document: {
30
+ id: string;
31
+ status: DocumentStatus;
32
+ documentType: { name: string; abbreviation: string | null };
33
+ correlative: number | null;
34
+ correlativeYear: number | null;
35
+ intakeNumber: number | null;
36
+ intakeYear: number | null;
37
+ } | null;
38
+ /** Archivo subido (si es uno). Se descarga por la carpeta, que comprueba el acceso. */
39
+ fileId: string | null;
40
+ fileName: string | null;
41
+ addedByEmployeeId: string;
42
+ addedByFullName: string;
43
+ createdAt: string;
44
+ /** Lo puede quitar quien consulta: el responsable o quien lo agregó, mientras no se convierta en expediente. */
45
+ canRemove: boolean;
46
+ }
47
+
48
+ export interface WorkFolderGetByIdResponseEntity extends WorkFolderGetAllResponseEntity {
49
+ participants: { id: string; employeeId: string; fullName: string }[];
50
+ items: WorkFolderItemResponseEntity[];
51
+ /** Editar, compartir y convertir: solo el responsable, mientras no se haya convertido. */
52
+ canEdit: boolean;
53
+ /** Agregar ítems: el responsable y aquellos con quienes se compartió, mientras no se haya convertido. */
54
+ canAdd: boolean;
55
+ }
56
+
57
+ export interface WorkFolderWriteResponseEntity {
58
+ id: string;
59
+ ok: boolean;
60
+ }
61
+
62
+ /** La carpeta convertida en expediente: cuántos ítems entraron a su índice y cuántos no (documentos sin finalizar). */
63
+ export interface WorkFolderConvertResponseEntity {
64
+ id: string;
65
+ caseFileId: string;
66
+ code: string;
67
+ added: number;
68
+ skipped: number;
69
+ ok: boolean;
70
+ }
71
+
72
+ /** Metadatos del expediente que nace de una carpeta (los mismos de un expediente nuevo). */
73
+ export interface WorkFolderConvertInput {
74
+ title: string;
75
+ subject: string;
76
+ summary?: string | null;
77
+ procedureId: string;
78
+ accessLevel: DocumentAccessLevel;
79
+ hasSensitiveData: boolean;
80
+ /** Tipo de actuación con que entran los documentos al índice. */
81
+ actuationType: CaseFileActuationType;
82
+ /** Palabras clave de los archivos subidos (metadato obligatorio de cada actuación). */
83
+ keywords: string[];
84
+ }
package/tsconfig.json CHANGED
@@ -9,7 +9,5 @@
9
9
  "skipLibCheck": true,
10
10
  "rootDir": "./src"
11
11
  },
12
- "include": [
13
- "src"
14
- ]
12
+ "include": ["src"]
15
13
  }