@muni-sanfer/types-gestor-documental 0.0.1-beta.47 → 0.0.1-beta.49

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.
@@ -1,54 +1,13 @@
1
- import { type DocumentTemplateEntity } from '../base/entities';
2
- import { type DocumentTemplateAvailableResponseEntity, type DocumentTemplateContent, type DocumentTemplateCreateResponseEntity, type DocumentTemplateGetAllResponseEntity, type DocumentTemplateGetByIdResponseEntity, type DocumentTemplateUpdateResponseEntity } from '../entities';
3
- import { type RpcPage } from './contract';
4
- /** Patrones NATS de `documentTemplate` (plantillas propias del editor): `<servicio>.<recurso>.<acción>`. */
1
+ import { type DocumentTemplateAvailableResponseEntity } from '../entities';
2
+ /**
3
+ * Patrones NATS de `documentTemplate`. La plantilla de cada tipo documental se define y edita con el tipo
4
+ * (`documentType.create` y `documentType.update`); aquí solo se consulta al redactar.
5
+ */
5
6
  export declare const DocumentTemplatePatterns: {
6
- readonly getAll: "gestorDocumental.documentTemplate.getAll";
7
- readonly getById: "gestorDocumental.documentTemplate.getById";
8
- readonly create: "gestorDocumental.documentTemplate.create";
9
- readonly update: "gestorDocumental.documentTemplate.update";
10
- readonly setEnabled: "gestorDocumental.documentTemplate.setEnabled";
11
7
  readonly getAvailable: "gestorDocumental.documentTemplate.getAvailable";
12
8
  };
13
- /** Datos de una plantilla propia al crearla o editarla. */
14
- export interface DocumentTemplateWritePayload {
15
- name: string;
16
- description?: string | null;
17
- documentTypeIds?: string[];
18
- content: DocumentTemplateContent;
19
- enabled?: boolean;
20
- }
21
9
  export interface DocumentTemplateContract {
22
- [DocumentTemplatePatterns.getAll]: {
23
- payload: {
24
- pagination?: {
25
- page?: number;
26
- limit?: number;
27
- };
28
- filters?: {
29
- search?: string;
30
- enabled?: boolean;
31
- };
32
- };
33
- response: RpcPage<DocumentTemplateGetAllResponseEntity[]>;
34
- };
35
- [DocumentTemplatePatterns.getById]: {
36
- payload: Pick<DocumentTemplateEntity, 'id'>;
37
- response: DocumentTemplateGetByIdResponseEntity;
38
- };
39
- [DocumentTemplatePatterns.create]: {
40
- payload: DocumentTemplateWritePayload;
41
- response: DocumentTemplateCreateResponseEntity;
42
- };
43
- [DocumentTemplatePatterns.update]: {
44
- payload: DocumentTemplateWritePayload & Pick<DocumentTemplateEntity, 'id'>;
45
- response: DocumentTemplateUpdateResponseEntity;
46
- };
47
- [DocumentTemplatePatterns.setEnabled]: {
48
- payload: Pick<DocumentTemplateEntity, 'id' | 'enabled'>;
49
- response: DocumentTemplateUpdateResponseEntity;
50
- };
51
- /** Las habilitadas que se ofrecen al redactar un documento del tipo (las de todos los tipos y las suyas). */
10
+ /** La plantilla habilitada del tipo documental, si tiene (una lista de a lo sumo una). */
52
11
  [DocumentTemplatePatterns.getAvailable]: {
53
12
  payload: {
54
13
  documentTypeId: string;
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DocumentTemplatePatterns = void 0;
4
- /** Patrones NATS de `documentTemplate` (plantillas propias del editor): `<servicio>.<recurso>.<acción>`. */
4
+ /**
5
+ * Patrones NATS de `documentTemplate`. La plantilla de cada tipo documental se define y edita con el tipo
6
+ * (`documentType.create` y `documentType.update`); aquí solo se consulta al redactar.
7
+ */
5
8
  exports.DocumentTemplatePatterns = {
6
- getAll: 'gestorDocumental.documentTemplate.getAll',
7
- getById: 'gestorDocumental.documentTemplate.getById',
8
- create: 'gestorDocumental.documentTemplate.create',
9
- update: 'gestorDocumental.documentTemplate.update',
10
- setEnabled: 'gestorDocumental.documentTemplate.setEnabled',
11
9
  getAvailable: 'gestorDocumental.documentTemplate.getAvailable',
12
10
  };
@@ -202,11 +202,6 @@ export declare const GestorDocumentalPatterns: {
202
202
  readonly setEnabled: "gestorDocumental.textSnippet.setEnabled";
203
203
  };
204
204
  readonly documentTemplate: {
205
- readonly getAll: "gestorDocumental.documentTemplate.getAll";
206
- readonly getById: "gestorDocumental.documentTemplate.getById";
207
- readonly create: "gestorDocumental.documentTemplate.create";
208
- readonly update: "gestorDocumental.documentTemplate.update";
209
- readonly setEnabled: "gestorDocumental.documentTemplate.setEnabled";
210
205
  readonly getAvailable: "gestorDocumental.documentTemplate.getAvailable";
211
206
  };
212
207
  readonly holiday: {
@@ -128,9 +128,35 @@ export interface RichPage {
128
128
  }
129
129
  /** Página de siempre: Carta, con el espacio del membrete y los sellos, en Roboto 11. */
130
130
  export declare const RICH_DEFAULT_PAGE: RichPage;
131
+ /**
132
+ * Una imagen del encabezado (logo, escudo, sello) en el diseño libre: imagen registrada en el gestor, con su lugar y su
133
+ * tamaño en puntos desde la esquina superior izquierda de la hoja. Cabe en el margen superior.
134
+ */
135
+ export interface RichLetterheadImage {
136
+ imageId: string;
137
+ x: number;
138
+ y: number;
139
+ width: number;
140
+ height: number;
141
+ }
142
+ export type RichLetterheadAlign = 'left' | 'center' | 'right';
143
+ /** El texto del membrete (nombre de la municipalidad, unidad y líneas propias) en el diseño libre. */
144
+ export interface RichLetterheadText {
145
+ x: number;
146
+ y: number;
147
+ width: number;
148
+ align: RichLetterheadAlign;
149
+ /** Tamaño del nombre de la municipalidad, en puntos (sin valor, 10). */
150
+ organSize?: number;
151
+ /** Tamaño de la unidad y de las líneas propias, en puntos (sin valor, 8). */
152
+ lineSize?: number;
153
+ }
131
154
  /**
132
155
  * Membrete de la plantilla, en el margen superior de cada página: un logo o escudo (opcional) y el nombre de la
133
156
  * municipalidad y de la unidad que emite. Va a la izquierda: a la derecha el sistema estampa el número y la fecha.
157
+ *
158
+ * Con `text`, el diseño es libre: las imágenes de `images` y el texto van donde se ubicaron (y `imageId` e
159
+ * `imageHeight` no se usan). Sin `text`, el de siempre: el logo de `imageId` y, a su lado, el texto.
134
160
  */
135
161
  export interface RichLetterhead {
136
162
  /** Imagen registrada en el gestor (`RichImage`), no un archivo de Drive. */
@@ -141,7 +167,33 @@ export interface RichLetterhead {
141
167
  showUnitName: boolean;
142
168
  /** Líneas propias bajo el nombre, como la dirección o el teléfono. */
143
169
  lines?: string[];
170
+ /** Diseño libre: las imágenes del encabezado, donde se ubicaron. */
171
+ images?: RichLetterheadImage[];
172
+ /** Diseño libre: dónde va el texto y con qué tamaño. */
173
+ text?: RichLetterheadText;
174
+ /** Línea divisoria bajo el encabezado, de margen a margen. */
175
+ rule?: boolean;
144
176
  }
177
+ /** Límites del diseño libre del encabezado. */
178
+ export declare const RICH_LETTERHEAD_LIMITS: {
179
+ readonly maxImages: 4;
180
+ /** Lado mínimo de una imagen, en puntos. */
181
+ readonly minImageSize: 12;
182
+ /** Ancho mínimo del texto, en puntos. */
183
+ readonly minTextWidth: 60;
184
+ readonly organSizes: readonly [8, 9, 10, 11, 12, 13, 14, 16];
185
+ readonly lineSizes: readonly [6, 7, 8, 9, 10, 11, 12];
186
+ };
187
+ /**
188
+ * Lo que ocupa en la primera página el número y la fecha que estampa el sistema, arriba a la derecha: el encabezado no
189
+ * debe taparlo. En puntos; `right` es la distancia al borde derecho.
190
+ */
191
+ export declare const RICH_NUMBER_ZONE: {
192
+ readonly right: 36;
193
+ readonly top: 18;
194
+ readonly height: 30;
195
+ readonly width: 230;
196
+ };
145
197
  export declare const RICH_DEFAULT_LETTERHEAD: RichLetterhead;
146
198
  /** Límites de una imagen: formatos, peso y tamaño en el texto. */
147
199
  export declare const RICH_IMAGE_LIMITS: {
@@ -4,7 +4,7 @@
4
4
  * márgenes. Todo lo que el PDF muestra sale de aquí, así que el editor y el documento oficial se ven igual.
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.RICH_IMAGE_LIMITS = exports.RICH_DEFAULT_LETTERHEAD = exports.RICH_DEFAULT_PAGE = exports.RICH_MAX_MARGIN = exports.RICH_MIN_MARGINS = exports.RICH_PAGE_SIZES = exports.RICH_SPACING_LIMITS = exports.RICH_HIGHLIGHTS = exports.RICH_COLORS = exports.RICH_FONT_SIZES = exports.RICH_FONTS = void 0;
7
+ exports.RICH_IMAGE_LIMITS = exports.RICH_DEFAULT_LETTERHEAD = exports.RICH_NUMBER_ZONE = exports.RICH_LETTERHEAD_LIMITS = exports.RICH_DEFAULT_PAGE = exports.RICH_MAX_MARGIN = exports.RICH_MIN_MARGINS = exports.RICH_PAGE_SIZES = exports.RICH_SPACING_LIMITS = exports.RICH_HIGHLIGHTS = exports.RICH_COLORS = exports.RICH_FONT_SIZES = exports.RICH_FONTS = void 0;
8
8
  /**
9
9
  * Tipografías incrustadas en el PDF (PDF/A exige fuentes incrustadas). Liberation Sans, Liberation Serif y Carlito
10
10
  * miden igual que Arial, Times New Roman y Calibri: lo que se pegó desde Word ocupa lo mismo.
@@ -56,6 +56,21 @@ exports.RICH_DEFAULT_PAGE = {
56
56
  fontSize: 11,
57
57
  lineHeight: 1.2,
58
58
  };
59
+ /** Límites del diseño libre del encabezado. */
60
+ exports.RICH_LETTERHEAD_LIMITS = {
61
+ maxImages: 4,
62
+ /** Lado mínimo de una imagen, en puntos. */
63
+ minImageSize: 12,
64
+ /** Ancho mínimo del texto, en puntos. */
65
+ minTextWidth: 60,
66
+ organSizes: [8, 9, 10, 11, 12, 13, 14, 16],
67
+ lineSizes: [6, 7, 8, 9, 10, 11, 12],
68
+ };
69
+ /**
70
+ * Lo que ocupa en la primera página el número y la fecha que estampa el sistema, arriba a la derecha: el encabezado no
71
+ * debe taparlo. En puntos; `right` es la distancia al borde derecho.
72
+ */
73
+ exports.RICH_NUMBER_ZONE = { right: 36, top: 18, height: 30, width: 230 };
59
74
  exports.RICH_DEFAULT_LETTERHEAD = { imageId: null, showOrganName: true, showUnitName: true };
60
75
  /** Límites de una imagen: formatos, peso y tamaño en el texto. */
61
76
  exports.RICH_IMAGE_LIMITS = {
@@ -2,8 +2,8 @@ import { type DocumentTemplateEntity } from '../../base/entities';
2
2
  import { type RichBlock, type RichField } from '../document/document.entity';
3
3
  import { type RichLetterhead, type RichPage } from '../document/richStyle';
4
4
  /**
5
- * Contenido de una plantilla propia: los bloques del editor (con sus partes fijas) y los campos que completa quien
6
- * redacta (en la plantilla, sin valor).
5
+ * Contenido de la plantilla de un tipo documental: los bloques del editor (con sus partes fijas) y los campos que
6
+ * completa quien redacta (en la plantilla, sin valor).
7
7
  */
8
8
  export interface DocumentTemplateContent {
9
9
  blocks: RichBlock[];
@@ -13,30 +13,7 @@ export interface DocumentTemplateContent {
13
13
  /** Membrete con logo. Sin valor, el nombre de la municipalidad y de la unidad. */
14
14
  letterhead?: RichLetterhead;
15
15
  }
16
- /** Plantilla propia en el listado de quien las administra. */
17
- export interface DocumentTemplateGetAllResponseEntity {
18
- id: DocumentTemplateEntity['id'];
19
- name: DocumentTemplateEntity['name'];
20
- description: string | null;
21
- /** Tipos documentales donde se ofrece; vacío, en todos. */
22
- documentTypeIds: DocumentTemplateEntity['documentTypeIds'];
23
- documentTypeNames: string[];
24
- version: DocumentTemplateEntity['version'];
25
- enabled: DocumentTemplateEntity['enabled'];
26
- updatedAt: DocumentTemplateEntity['updatedAt'];
27
- updatedByFullName: string | null;
28
- }
29
- /** Una versión del contenido de una plantilla. */
30
- export interface DocumentTemplateVersionResponseEntity {
31
- version: number;
32
- createdAt: string;
33
- createdByFullName: string | null;
34
- }
35
- export interface DocumentTemplateGetByIdResponseEntity extends DocumentTemplateGetAllResponseEntity {
36
- content: DocumentTemplateContent;
37
- versions: DocumentTemplateVersionResponseEntity[];
38
- }
39
- /** Plantilla que se ofrece al redactar un documento de un tipo: con su contenido, lista para usar. */
16
+ /** La plantilla de un tipo documental, que se aplica al redactar uno de sus documentos: lista para usar. */
40
17
  export interface DocumentTemplateAvailableResponseEntity {
41
18
  id: DocumentTemplateEntity['id'];
42
19
  name: DocumentTemplateEntity['name'];
@@ -46,13 +23,3 @@ export interface DocumentTemplateAvailableResponseEntity {
46
23
  /** Es la plantilla del tipo documental pedido: se aplica sola al redactar. */
47
24
  ownedByType: boolean;
48
25
  }
49
- export interface DocumentTemplateCreateResponseEntity {
50
- id: DocumentTemplateEntity['id'];
51
- ok: boolean;
52
- }
53
- export interface DocumentTemplateUpdateResponseEntity {
54
- id: DocumentTemplateEntity['id'];
55
- ok: boolean;
56
- /** Versión vigente: sube solo si cambió el contenido. */
57
- version: number;
58
- }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@muni-sanfer/types-gestor-documental",
3
- "version": "0.0.1-beta.47",
3
+ "version": "0.0.1-beta.49",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -1,59 +1,15 @@
1
- import { type DocumentTemplateEntity } from '../base/entities';
2
- import {
3
- type DocumentTemplateAvailableResponseEntity,
4
- type DocumentTemplateContent,
5
- type DocumentTemplateCreateResponseEntity,
6
- type DocumentTemplateGetAllResponseEntity,
7
- type DocumentTemplateGetByIdResponseEntity,
8
- type DocumentTemplateUpdateResponseEntity,
9
- } from '../entities';
10
- import { type RpcPage } from './contract';
1
+ import { type DocumentTemplateAvailableResponseEntity } from '../entities';
11
2
 
12
- /** Patrones NATS de `documentTemplate` (plantillas propias del editor): `<servicio>.<recurso>.<acción>`. */
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
+ */
13
7
  export const DocumentTemplatePatterns = {
14
- getAll: 'gestorDocumental.documentTemplate.getAll',
15
- getById: 'gestorDocumental.documentTemplate.getById',
16
- create: 'gestorDocumental.documentTemplate.create',
17
- update: 'gestorDocumental.documentTemplate.update',
18
- setEnabled: 'gestorDocumental.documentTemplate.setEnabled',
19
8
  getAvailable: 'gestorDocumental.documentTemplate.getAvailable',
20
9
  } as const;
21
10
 
22
- /** Datos de una plantilla propia al crearla o editarla. */
23
- export interface DocumentTemplateWritePayload {
24
- name: string;
25
- description?: string | null;
26
- documentTypeIds?: string[];
27
- content: DocumentTemplateContent;
28
- enabled?: boolean;
29
- }
30
-
31
11
  export interface DocumentTemplateContract {
32
- [DocumentTemplatePatterns.getAll]: {
33
- // sin `page` y `limit` responde todas en una sola página
34
- payload: {
35
- pagination?: { page?: number; limit?: number };
36
- filters?: { search?: string; enabled?: boolean };
37
- };
38
- response: RpcPage<DocumentTemplateGetAllResponseEntity[]>;
39
- };
40
- [DocumentTemplatePatterns.getById]: {
41
- payload: Pick<DocumentTemplateEntity, 'id'>;
42
- response: DocumentTemplateGetByIdResponseEntity;
43
- };
44
- [DocumentTemplatePatterns.create]: {
45
- payload: DocumentTemplateWritePayload;
46
- response: DocumentTemplateCreateResponseEntity;
47
- };
48
- [DocumentTemplatePatterns.update]: {
49
- payload: DocumentTemplateWritePayload & Pick<DocumentTemplateEntity, 'id'>;
50
- response: DocumentTemplateUpdateResponseEntity;
51
- };
52
- [DocumentTemplatePatterns.setEnabled]: {
53
- payload: Pick<DocumentTemplateEntity, 'id' | 'enabled'>;
54
- response: DocumentTemplateUpdateResponseEntity;
55
- };
56
- /** Las habilitadas que se ofrecen al redactar un documento del tipo (las de todos los tipos y las suyas). */
12
+ /** La plantilla habilitada del tipo documental, si tiene (una lista de a lo sumo una). */
57
13
  [DocumentTemplatePatterns.getAvailable]: {
58
14
  payload: { documentTypeId: string };
59
15
  response: DocumentTemplateAvailableResponseEntity[];
@@ -106,9 +106,38 @@ export const RICH_DEFAULT_PAGE: RichPage = {
106
106
  lineHeight: 1.2,
107
107
  };
108
108
 
109
+ /**
110
+ * Una imagen del encabezado (logo, escudo, sello) en el diseño libre: imagen registrada en el gestor, con su lugar y su
111
+ * tamaño en puntos desde la esquina superior izquierda de la hoja. Cabe en el margen superior.
112
+ */
113
+ export interface RichLetterheadImage {
114
+ imageId: string;
115
+ x: number;
116
+ y: number;
117
+ width: number;
118
+ height: number;
119
+ }
120
+
121
+ export type RichLetterheadAlign = 'left' | 'center' | 'right';
122
+
123
+ /** El texto del membrete (nombre de la municipalidad, unidad y líneas propias) en el diseño libre. */
124
+ export interface RichLetterheadText {
125
+ x: number;
126
+ y: number;
127
+ width: number;
128
+ align: RichLetterheadAlign;
129
+ /** Tamaño del nombre de la municipalidad, en puntos (sin valor, 10). */
130
+ organSize?: number;
131
+ /** Tamaño de la unidad y de las líneas propias, en puntos (sin valor, 8). */
132
+ lineSize?: number;
133
+ }
134
+
109
135
  /**
110
136
  * Membrete de la plantilla, en el margen superior de cada página: un logo o escudo (opcional) y el nombre de la
111
137
  * municipalidad y de la unidad que emite. Va a la izquierda: a la derecha el sistema estampa el número y la fecha.
138
+ *
139
+ * Con `text`, el diseño es libre: las imágenes de `images` y el texto van donde se ubicaron (y `imageId` e
140
+ * `imageHeight` no se usan). Sin `text`, el de siempre: el logo de `imageId` y, a su lado, el texto.
112
141
  */
113
142
  export interface RichLetterhead {
114
143
  /** Imagen registrada en el gestor (`RichImage`), no un archivo de Drive. */
@@ -119,8 +148,31 @@ export interface RichLetterhead {
119
148
  showUnitName: boolean;
120
149
  /** Líneas propias bajo el nombre, como la dirección o el teléfono. */
121
150
  lines?: string[];
151
+ /** Diseño libre: las imágenes del encabezado, donde se ubicaron. */
152
+ images?: RichLetterheadImage[];
153
+ /** Diseño libre: dónde va el texto y con qué tamaño. */
154
+ text?: RichLetterheadText;
155
+ /** Línea divisoria bajo el encabezado, de margen a margen. */
156
+ rule?: boolean;
122
157
  }
123
158
 
159
+ /** Límites del diseño libre del encabezado. */
160
+ export const RICH_LETTERHEAD_LIMITS = {
161
+ maxImages: 4,
162
+ /** Lado mínimo de una imagen, en puntos. */
163
+ minImageSize: 12,
164
+ /** Ancho mínimo del texto, en puntos. */
165
+ minTextWidth: 60,
166
+ organSizes: [8, 9, 10, 11, 12, 13, 14, 16],
167
+ lineSizes: [6, 7, 8, 9, 10, 11, 12],
168
+ } as const;
169
+
170
+ /**
171
+ * Lo que ocupa en la primera página el número y la fecha que estampa el sistema, arriba a la derecha: el encabezado no
172
+ * debe taparlo. En puntos; `right` es la distancia al borde derecho.
173
+ */
174
+ export const RICH_NUMBER_ZONE = { right: 36, top: 18, height: 30, width: 230 } as const;
175
+
124
176
  export const RICH_DEFAULT_LETTERHEAD: RichLetterhead = { imageId: null, showOrganName: true, showUnitName: true };
125
177
 
126
178
  /** Límites de una imagen: formatos, peso y tamaño en el texto. */
@@ -3,8 +3,8 @@ import { type RichBlock, type RichField } from '../document/document.entity';
3
3
  import { type RichLetterhead, type RichPage } from '../document/richStyle';
4
4
 
5
5
  /**
6
- * Contenido de una plantilla propia: los bloques del editor (con sus partes fijas) y los campos que completa quien
7
- * redacta (en la plantilla, sin valor).
6
+ * Contenido de la plantilla de un tipo documental: los bloques del editor (con sus partes fijas) y los campos que
7
+ * completa quien redacta (en la plantilla, sin valor).
8
8
  */
9
9
  export interface DocumentTemplateContent {
10
10
  blocks: RichBlock[];
@@ -15,33 +15,7 @@ export interface DocumentTemplateContent {
15
15
  letterhead?: RichLetterhead;
16
16
  }
17
17
 
18
- /** Plantilla propia en el listado de quien las administra. */
19
- export interface DocumentTemplateGetAllResponseEntity {
20
- id: DocumentTemplateEntity['id'];
21
- name: DocumentTemplateEntity['name'];
22
- description: string | null;
23
- /** Tipos documentales donde se ofrece; vacío, en todos. */
24
- documentTypeIds: DocumentTemplateEntity['documentTypeIds'];
25
- documentTypeNames: string[];
26
- version: DocumentTemplateEntity['version'];
27
- enabled: DocumentTemplateEntity['enabled'];
28
- updatedAt: DocumentTemplateEntity['updatedAt'];
29
- updatedByFullName: string | null;
30
- }
31
-
32
- /** Una versión del contenido de una plantilla. */
33
- export interface DocumentTemplateVersionResponseEntity {
34
- version: number;
35
- createdAt: string;
36
- createdByFullName: string | null;
37
- }
38
-
39
- export interface DocumentTemplateGetByIdResponseEntity extends DocumentTemplateGetAllResponseEntity {
40
- content: DocumentTemplateContent;
41
- versions: DocumentTemplateVersionResponseEntity[];
42
- }
43
-
44
- /** Plantilla que se ofrece al redactar un documento de un tipo: con su contenido, lista para usar. */
18
+ /** La plantilla de un tipo documental, que se aplica al redactar uno de sus documentos: lista para usar. */
45
19
  export interface DocumentTemplateAvailableResponseEntity {
46
20
  id: DocumentTemplateEntity['id'];
47
21
  name: DocumentTemplateEntity['name'];
@@ -51,15 +25,3 @@ export interface DocumentTemplateAvailableResponseEntity {
51
25
  /** Es la plantilla del tipo documental pedido: se aplica sola al redactar. */
52
26
  ownedByType: boolean;
53
27
  }
54
-
55
- export interface DocumentTemplateCreateResponseEntity {
56
- id: DocumentTemplateEntity['id'];
57
- ok: boolean;
58
- }
59
-
60
- export interface DocumentTemplateUpdateResponseEntity {
61
- id: DocumentTemplateEntity['id'];
62
- ok: boolean;
63
- /** Versión vigente: sube solo si cambió el contenido. */
64
- version: number;
65
- }