@remnawave/backend-contract 2.0.0-alpha.12 → 2.0.0-alpha.14

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 (52) hide show
  1. package/build/backend/commands/infra-billing/create-bill-record.command.d.ts +15 -15
  2. package/build/backend/commands/infra-billing/create-bill-record.command.d.ts.map +1 -1
  3. package/build/backend/commands/infra-billing/create-bill-record.command.js +0 -1
  4. package/build/backend/commands/infra-billing/create-billing-node.command.d.ts +364 -0
  5. package/build/backend/commands/infra-billing/create-billing-node.command.d.ts.map +1 -0
  6. package/build/backend/commands/infra-billing/create-billing-node.command.js +33 -0
  7. package/build/backend/commands/infra-billing/delete-bill-record-by-uuid.command.d.ts +12 -12
  8. package/build/backend/commands/infra-billing/delete-billing-node-by-uuid.command.d.ts +353 -0
  9. package/build/backend/commands/infra-billing/delete-billing-node-by-uuid.command.d.ts.map +1 -0
  10. package/build/backend/commands/infra-billing/delete-billing-node-by-uuid.command.js +23 -0
  11. package/build/backend/commands/infra-billing/get-bill-records.command.d.ts +12 -12
  12. package/build/backend/commands/infra-billing/get-blling-nodes.command.d.ts +350 -0
  13. package/build/backend/commands/infra-billing/get-blling-nodes.command.d.ts.map +1 -0
  14. package/build/backend/commands/infra-billing/get-blling-nodes.command.js +21 -0
  15. package/build/backend/commands/infra-billing/index.d.ts +4 -0
  16. package/build/backend/commands/infra-billing/index.d.ts.map +1 -1
  17. package/build/backend/commands/infra-billing/index.js +4 -0
  18. package/build/backend/commands/infra-billing/update-billing-node.command.d.ts +361 -0
  19. package/build/backend/commands/infra-billing/update-billing-node.command.d.ts.map +1 -0
  20. package/build/backend/commands/infra-billing/update-billing-node.command.js +31 -0
  21. package/build/backend/commands/nodes/actions/disable.command.d.ts +36 -36
  22. package/build/backend/commands/nodes/actions/enable.command.d.ts +36 -36
  23. package/build/backend/commands/nodes/actions/reorder.command.d.ts +36 -36
  24. package/build/backend/commands/nodes/create.command.d.ts +38 -38
  25. package/build/backend/commands/nodes/get-all.command.d.ts +36 -36
  26. package/build/backend/commands/nodes/get-one.command.d.ts +36 -36
  27. package/build/backend/commands/nodes/update.command.d.ts +38 -38
  28. package/build/backend/constants/errors/errors.d.ts +15 -0
  29. package/build/backend/constants/errors/errors.d.ts.map +1 -1
  30. package/build/backend/constants/errors/errors.js +15 -0
  31. package/build/backend/models/index.d.ts +2 -0
  32. package/build/backend/models/index.d.ts.map +1 -1
  33. package/build/backend/models/index.js +2 -0
  34. package/build/backend/models/infra-billing-available-node.schema.d.ts +90 -0
  35. package/build/backend/models/infra-billing-available-node.schema.d.ts.map +1 -0
  36. package/build/backend/models/infra-billing-available-node.schema.js +9 -0
  37. package/build/backend/models/infra-billing-history-record.schema.d.ts +4 -4
  38. package/build/backend/models/infra-billing-node.schema.d.ts +145 -0
  39. package/build/backend/models/infra-billing-node.schema.d.ts.map +1 -0
  40. package/build/backend/models/infra-billing-node.schema.js +34 -0
  41. package/build/backend/models/nodes.schema.d.ts +18 -18
  42. package/build/frontend/commands/infra-billing/create-bill-record.command.js +0 -1
  43. package/build/frontend/commands/infra-billing/create-billing-node.command.js +33 -0
  44. package/build/frontend/commands/infra-billing/delete-billing-node-by-uuid.command.js +23 -0
  45. package/build/frontend/commands/infra-billing/get-blling-nodes.command.js +21 -0
  46. package/build/frontend/commands/infra-billing/index.js +4 -0
  47. package/build/frontend/commands/infra-billing/update-billing-node.command.js +31 -0
  48. package/build/frontend/constants/errors/errors.js +15 -0
  49. package/build/frontend/models/index.js +2 -0
  50. package/build/frontend/models/infra-billing-available-node.schema.js +9 -0
  51. package/build/frontend/models/infra-billing-node.schema.js +34 -0
  52. package/package.json +1 -1
@@ -0,0 +1,353 @@
1
+ import { z } from 'zod';
2
+ export declare namespace DeleteInfraBillingNodeByUuidCommand {
3
+ const url: string;
4
+ const TSQ_url: string;
5
+ const endpointDetails: import("../../constants").EndpointDetails;
6
+ const RequestSchema: z.ZodObject<{
7
+ uuid: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ uuid: string;
10
+ }, {
11
+ uuid: string;
12
+ }>;
13
+ type Request = z.infer<typeof RequestSchema>;
14
+ const ResponseSchema: z.ZodObject<{
15
+ response: z.ZodObject<{
16
+ nodes: z.ZodArray<z.ZodObject<{
17
+ uuid: z.ZodString;
18
+ nodeUuid: z.ZodString;
19
+ providerUuid: z.ZodString;
20
+ provider: z.ZodObject<Omit<{
21
+ uuid: z.ZodString;
22
+ name: z.ZodString;
23
+ faviconLink: z.ZodNullable<z.ZodString>;
24
+ loginUrl: z.ZodNullable<z.ZodString>;
25
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
26
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
27
+ }, "createdAt" | "updatedAt" | "faviconLink" | "loginUrl">, "strip", z.ZodTypeAny, {
28
+ uuid: string;
29
+ name: string;
30
+ }, {
31
+ uuid: string;
32
+ name: string;
33
+ }>;
34
+ node: z.ZodObject<Pick<{
35
+ uuid: z.ZodString;
36
+ name: z.ZodString;
37
+ address: z.ZodString;
38
+ port: z.ZodNullable<z.ZodNumber>;
39
+ isConnected: z.ZodBoolean;
40
+ isDisabled: z.ZodBoolean;
41
+ isConnecting: z.ZodBoolean;
42
+ isNodeOnline: z.ZodBoolean;
43
+ isXrayRunning: z.ZodBoolean;
44
+ lastStatusChange: z.ZodNullable<z.ZodEffects<z.ZodString, Date, string>>;
45
+ lastStatusMessage: z.ZodNullable<z.ZodString>;
46
+ xrayVersion: z.ZodNullable<z.ZodString>;
47
+ xrayUptime: z.ZodString;
48
+ isTrafficTrackingActive: z.ZodBoolean;
49
+ trafficResetDay: z.ZodNullable<z.ZodNumber>;
50
+ trafficLimitBytes: z.ZodNullable<z.ZodNumber>;
51
+ trafficUsedBytes: z.ZodNullable<z.ZodNumber>;
52
+ notifyPercent: z.ZodNullable<z.ZodNumber>;
53
+ usersOnline: z.ZodNullable<z.ZodNumber>;
54
+ viewPosition: z.ZodNumber;
55
+ countryCode: z.ZodString;
56
+ consumptionMultiplier: z.ZodNumber;
57
+ cpuCount: z.ZodNullable<z.ZodNumber>;
58
+ cpuModel: z.ZodNullable<z.ZodString>;
59
+ totalRam: z.ZodNullable<z.ZodString>;
60
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
61
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
62
+ activeConfigProfileUuid: z.ZodNullable<z.ZodString>;
63
+ activeInbounds: z.ZodNullable<z.ZodArray<z.ZodObject<{
64
+ uuid: z.ZodString;
65
+ profileUuid: z.ZodString;
66
+ tag: z.ZodString;
67
+ type: z.ZodString;
68
+ network: z.ZodNullable<z.ZodString>;
69
+ security: z.ZodNullable<z.ZodString>;
70
+ port: z.ZodNullable<z.ZodNumber>;
71
+ rawInbound: z.ZodNullable<z.ZodUnknown>;
72
+ }, "strip", z.ZodTypeAny, {
73
+ type: string;
74
+ uuid: string;
75
+ profileUuid: string;
76
+ tag: string;
77
+ network: string | null;
78
+ security: string | null;
79
+ port: number | null;
80
+ rawInbound?: unknown;
81
+ }, {
82
+ type: string;
83
+ uuid: string;
84
+ profileUuid: string;
85
+ tag: string;
86
+ network: string | null;
87
+ security: string | null;
88
+ port: number | null;
89
+ rawInbound?: unknown;
90
+ }>, "many">>;
91
+ providerUuid: z.ZodNullable<z.ZodString>;
92
+ provider: z.ZodNullable<z.ZodObject<{
93
+ uuid: z.ZodString;
94
+ name: z.ZodString;
95
+ faviconLink: z.ZodNullable<z.ZodString>;
96
+ loginUrl: z.ZodNullable<z.ZodString>;
97
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
98
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
99
+ }, "strip", z.ZodTypeAny, {
100
+ uuid: string;
101
+ createdAt: Date;
102
+ updatedAt: Date;
103
+ name: string;
104
+ faviconLink: string | null;
105
+ loginUrl: string | null;
106
+ }, {
107
+ uuid: string;
108
+ createdAt: string;
109
+ updatedAt: string;
110
+ name: string;
111
+ faviconLink: string | null;
112
+ loginUrl: string | null;
113
+ }>>;
114
+ }, "uuid" | "name" | "countryCode">, "strip", z.ZodTypeAny, {
115
+ uuid: string;
116
+ name: string;
117
+ countryCode: string;
118
+ }, {
119
+ uuid: string;
120
+ name: string;
121
+ countryCode: string;
122
+ }>;
123
+ nextBillingAt: z.ZodEffects<z.ZodString, Date, string>;
124
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
125
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
126
+ }, "strip", z.ZodTypeAny, {
127
+ uuid: string;
128
+ createdAt: Date;
129
+ updatedAt: Date;
130
+ nodeUuid: string;
131
+ providerUuid: string;
132
+ provider: {
133
+ uuid: string;
134
+ name: string;
135
+ };
136
+ node: {
137
+ uuid: string;
138
+ name: string;
139
+ countryCode: string;
140
+ };
141
+ nextBillingAt: Date;
142
+ }, {
143
+ uuid: string;
144
+ createdAt: string;
145
+ updatedAt: string;
146
+ nodeUuid: string;
147
+ providerUuid: string;
148
+ provider: {
149
+ uuid: string;
150
+ name: string;
151
+ };
152
+ node: {
153
+ uuid: string;
154
+ name: string;
155
+ countryCode: string;
156
+ };
157
+ nextBillingAt: string;
158
+ }>, "many">;
159
+ availableNodes: z.ZodArray<z.ZodObject<Pick<{
160
+ uuid: z.ZodString;
161
+ name: z.ZodString;
162
+ address: z.ZodString;
163
+ port: z.ZodNullable<z.ZodNumber>;
164
+ isConnected: z.ZodBoolean;
165
+ isDisabled: z.ZodBoolean;
166
+ isConnecting: z.ZodBoolean;
167
+ isNodeOnline: z.ZodBoolean;
168
+ isXrayRunning: z.ZodBoolean;
169
+ lastStatusChange: z.ZodNullable<z.ZodEffects<z.ZodString, Date, string>>;
170
+ lastStatusMessage: z.ZodNullable<z.ZodString>;
171
+ xrayVersion: z.ZodNullable<z.ZodString>;
172
+ xrayUptime: z.ZodString;
173
+ isTrafficTrackingActive: z.ZodBoolean;
174
+ trafficResetDay: z.ZodNullable<z.ZodNumber>;
175
+ trafficLimitBytes: z.ZodNullable<z.ZodNumber>;
176
+ trafficUsedBytes: z.ZodNullable<z.ZodNumber>;
177
+ notifyPercent: z.ZodNullable<z.ZodNumber>;
178
+ usersOnline: z.ZodNullable<z.ZodNumber>;
179
+ viewPosition: z.ZodNumber;
180
+ countryCode: z.ZodString;
181
+ consumptionMultiplier: z.ZodNumber;
182
+ cpuCount: z.ZodNullable<z.ZodNumber>;
183
+ cpuModel: z.ZodNullable<z.ZodString>;
184
+ totalRam: z.ZodNullable<z.ZodString>;
185
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
186
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
187
+ activeConfigProfileUuid: z.ZodNullable<z.ZodString>;
188
+ activeInbounds: z.ZodNullable<z.ZodArray<z.ZodObject<{
189
+ uuid: z.ZodString;
190
+ profileUuid: z.ZodString;
191
+ tag: z.ZodString;
192
+ type: z.ZodString;
193
+ network: z.ZodNullable<z.ZodString>;
194
+ security: z.ZodNullable<z.ZodString>;
195
+ port: z.ZodNullable<z.ZodNumber>;
196
+ rawInbound: z.ZodNullable<z.ZodUnknown>;
197
+ }, "strip", z.ZodTypeAny, {
198
+ type: string;
199
+ uuid: string;
200
+ profileUuid: string;
201
+ tag: string;
202
+ network: string | null;
203
+ security: string | null;
204
+ port: number | null;
205
+ rawInbound?: unknown;
206
+ }, {
207
+ type: string;
208
+ uuid: string;
209
+ profileUuid: string;
210
+ tag: string;
211
+ network: string | null;
212
+ security: string | null;
213
+ port: number | null;
214
+ rawInbound?: unknown;
215
+ }>, "many">>;
216
+ providerUuid: z.ZodNullable<z.ZodString>;
217
+ provider: z.ZodNullable<z.ZodObject<{
218
+ uuid: z.ZodString;
219
+ name: z.ZodString;
220
+ faviconLink: z.ZodNullable<z.ZodString>;
221
+ loginUrl: z.ZodNullable<z.ZodString>;
222
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
223
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
224
+ }, "strip", z.ZodTypeAny, {
225
+ uuid: string;
226
+ createdAt: Date;
227
+ updatedAt: Date;
228
+ name: string;
229
+ faviconLink: string | null;
230
+ loginUrl: string | null;
231
+ }, {
232
+ uuid: string;
233
+ createdAt: string;
234
+ updatedAt: string;
235
+ name: string;
236
+ faviconLink: string | null;
237
+ loginUrl: string | null;
238
+ }>>;
239
+ }, "uuid" | "name" | "countryCode">, "strip", z.ZodTypeAny, {
240
+ uuid: string;
241
+ name: string;
242
+ countryCode: string;
243
+ }, {
244
+ uuid: string;
245
+ name: string;
246
+ countryCode: string;
247
+ }>, "many">;
248
+ total: z.ZodNumber;
249
+ }, "strip", z.ZodTypeAny, {
250
+ nodes: {
251
+ uuid: string;
252
+ createdAt: Date;
253
+ updatedAt: Date;
254
+ nodeUuid: string;
255
+ providerUuid: string;
256
+ provider: {
257
+ uuid: string;
258
+ name: string;
259
+ };
260
+ node: {
261
+ uuid: string;
262
+ name: string;
263
+ countryCode: string;
264
+ };
265
+ nextBillingAt: Date;
266
+ }[];
267
+ total: number;
268
+ availableNodes: {
269
+ uuid: string;
270
+ name: string;
271
+ countryCode: string;
272
+ }[];
273
+ }, {
274
+ nodes: {
275
+ uuid: string;
276
+ createdAt: string;
277
+ updatedAt: string;
278
+ nodeUuid: string;
279
+ providerUuid: string;
280
+ provider: {
281
+ uuid: string;
282
+ name: string;
283
+ };
284
+ node: {
285
+ uuid: string;
286
+ name: string;
287
+ countryCode: string;
288
+ };
289
+ nextBillingAt: string;
290
+ }[];
291
+ total: number;
292
+ availableNodes: {
293
+ uuid: string;
294
+ name: string;
295
+ countryCode: string;
296
+ }[];
297
+ }>;
298
+ }, "strip", z.ZodTypeAny, {
299
+ response: {
300
+ nodes: {
301
+ uuid: string;
302
+ createdAt: Date;
303
+ updatedAt: Date;
304
+ nodeUuid: string;
305
+ providerUuid: string;
306
+ provider: {
307
+ uuid: string;
308
+ name: string;
309
+ };
310
+ node: {
311
+ uuid: string;
312
+ name: string;
313
+ countryCode: string;
314
+ };
315
+ nextBillingAt: Date;
316
+ }[];
317
+ total: number;
318
+ availableNodes: {
319
+ uuid: string;
320
+ name: string;
321
+ countryCode: string;
322
+ }[];
323
+ };
324
+ }, {
325
+ response: {
326
+ nodes: {
327
+ uuid: string;
328
+ createdAt: string;
329
+ updatedAt: string;
330
+ nodeUuid: string;
331
+ providerUuid: string;
332
+ provider: {
333
+ uuid: string;
334
+ name: string;
335
+ };
336
+ node: {
337
+ uuid: string;
338
+ name: string;
339
+ countryCode: string;
340
+ };
341
+ nextBillingAt: string;
342
+ }[];
343
+ total: number;
344
+ availableNodes: {
345
+ uuid: string;
346
+ name: string;
347
+ countryCode: string;
348
+ }[];
349
+ };
350
+ }>;
351
+ type Response = z.infer<typeof ResponseSchema>;
352
+ }
353
+ //# sourceMappingURL=delete-billing-node-by-uuid.command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-billing-node-by-uuid.command.d.ts","sourceRoot":"","sources":["../../../../commands/infra-billing/delete-billing-node-by-uuid.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,yBAAiB,mCAAmC,CAAC;IAC1C,MAAM,GAAG,QAAsD,CAAC;IAChE,MAAM,OAAO,QAAM,CAAC;IAEpB,MAAM,eAAe,2CAI3B,CAAC;IAEK,MAAM,aAAa;;;;;;MAExB,CAAC;IAEH,KAAY,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;IAE7C,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAMzB,CAAC;IAEH,KAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;CACzD"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteInfraBillingNodeByUuidCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ const api_1 = require("../../api");
7
+ const constants_1 = require("../../constants");
8
+ var DeleteInfraBillingNodeByUuidCommand;
9
+ (function (DeleteInfraBillingNodeByUuidCommand) {
10
+ DeleteInfraBillingNodeByUuidCommand.url = api_1.REST_API.INFRA_BILLING.DELETE_BILLING_NODE(':uuid');
11
+ DeleteInfraBillingNodeByUuidCommand.TSQ_url = DeleteInfraBillingNodeByUuidCommand.url;
12
+ DeleteInfraBillingNodeByUuidCommand.endpointDetails = (0, constants_1.getEndpointDetails)(api_1.INFRA_BILLING_ROUTES.DELETE_BILLING_NODE(':uuid'), 'delete', 'Delete infra billing node');
13
+ DeleteInfraBillingNodeByUuidCommand.RequestSchema = zod_1.z.object({
14
+ uuid: zod_1.z.string().uuid(),
15
+ });
16
+ DeleteInfraBillingNodeByUuidCommand.ResponseSchema = zod_1.z.object({
17
+ response: zod_1.z.object({
18
+ nodes: zod_1.z.array(models_1.InfraBillingNodeSchema),
19
+ availableNodes: zod_1.z.array(models_1.InfraBillingAvailableNodeSchema),
20
+ total: zod_1.z.number(),
21
+ }),
22
+ });
23
+ })(DeleteInfraBillingNodeByUuidCommand || (exports.DeleteInfraBillingNodeByUuidCommand = DeleteInfraBillingNodeByUuidCommand = {}));
@@ -40,23 +40,23 @@ export declare namespace GetInfraBillingHistoryRecordsCommand {
40
40
  }, "strip", z.ZodTypeAny, {
41
41
  uuid: string;
42
42
  providerUuid: string;
43
- amount: number;
44
- billedAt: Date;
45
43
  provider: {
46
44
  uuid: string;
47
45
  name: string;
48
46
  faviconLink: string | null;
49
47
  };
48
+ amount: number;
49
+ billedAt: Date;
50
50
  }, {
51
51
  uuid: string;
52
52
  providerUuid: string;
53
- amount: number;
54
- billedAt: string;
55
53
  provider: {
56
54
  uuid: string;
57
55
  name: string;
58
56
  faviconLink: string | null;
59
57
  };
58
+ amount: number;
59
+ billedAt: string;
60
60
  }>, "many">;
61
61
  total: z.ZodNumber;
62
62
  }, "strip", z.ZodTypeAny, {
@@ -64,26 +64,26 @@ export declare namespace GetInfraBillingHistoryRecordsCommand {
64
64
  records: {
65
65
  uuid: string;
66
66
  providerUuid: string;
67
- amount: number;
68
- billedAt: Date;
69
67
  provider: {
70
68
  uuid: string;
71
69
  name: string;
72
70
  faviconLink: string | null;
73
71
  };
72
+ amount: number;
73
+ billedAt: Date;
74
74
  }[];
75
75
  }, {
76
76
  total: number;
77
77
  records: {
78
78
  uuid: string;
79
79
  providerUuid: string;
80
- amount: number;
81
- billedAt: string;
82
80
  provider: {
83
81
  uuid: string;
84
82
  name: string;
85
83
  faviconLink: string | null;
86
84
  };
85
+ amount: number;
86
+ billedAt: string;
87
87
  }[];
88
88
  }>;
89
89
  }, "strip", z.ZodTypeAny, {
@@ -92,13 +92,13 @@ export declare namespace GetInfraBillingHistoryRecordsCommand {
92
92
  records: {
93
93
  uuid: string;
94
94
  providerUuid: string;
95
- amount: number;
96
- billedAt: Date;
97
95
  provider: {
98
96
  uuid: string;
99
97
  name: string;
100
98
  faviconLink: string | null;
101
99
  };
100
+ amount: number;
101
+ billedAt: Date;
102
102
  }[];
103
103
  };
104
104
  }, {
@@ -107,13 +107,13 @@ export declare namespace GetInfraBillingHistoryRecordsCommand {
107
107
  records: {
108
108
  uuid: string;
109
109
  providerUuid: string;
110
- amount: number;
111
- billedAt: string;
112
110
  provider: {
113
111
  uuid: string;
114
112
  name: string;
115
113
  faviconLink: string | null;
116
114
  };
115
+ amount: number;
116
+ billedAt: string;
117
117
  }[];
118
118
  };
119
119
  }>;