depflow 1.1.2 → 2.0.0-dev.2

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 (80) hide show
  1. package/build/cli/DepFLowCLI.d.ts +15 -0
  2. package/build/cli/DepFLowCLI.js +193 -0
  3. package/build/cli/DepFLowCLI.js.map +1 -0
  4. package/build/cli/bin.d.ts +2 -0
  5. package/build/cli/bin.js +37 -0
  6. package/build/cli/bin.js.map +1 -0
  7. package/build/config/Config.d.ts +28 -0
  8. package/build/config/Config.js +46 -0
  9. package/build/config/Config.js.map +1 -0
  10. package/build/config/ImportMap.d.ts +38 -0
  11. package/build/config/ImportMap.js +83 -0
  12. package/build/config/ImportMap.js.map +1 -0
  13. package/build/config/Tsconfig.d.ts +57 -0
  14. package/build/config/Tsconfig.js +99 -0
  15. package/build/config/Tsconfig.js.map +1 -0
  16. package/build/config/schemas.d.ts +592 -0
  17. package/build/config/schemas.js +51 -0
  18. package/build/config/schemas.js.map +1 -0
  19. package/build/support/Dependency.d.ts +127 -0
  20. package/build/support/Dependency.js +307 -0
  21. package/build/support/Dependency.js.map +1 -0
  22. package/build/support/File.d.ts +80 -0
  23. package/build/support/File.js +123 -0
  24. package/build/support/File.js.map +1 -0
  25. package/build/support/Git.js.map +1 -0
  26. package/build/support/PathFixer.d.ts +36 -0
  27. package/build/support/PathFixer.js +161 -0
  28. package/build/support/PathFixer.js.map +1 -0
  29. package/build/support/PathResolver/AliasCompiler.d.ts +25 -0
  30. package/build/support/PathResolver/AliasCompiler.js +39 -0
  31. package/build/support/PathResolver/AliasCompiler.js.map +1 -0
  32. package/build/support/PathResolver/PathResolver.d.ts +45 -0
  33. package/build/support/PathResolver/PathResolver.js +99 -0
  34. package/build/support/PathResolver/PathResolver.js.map +1 -0
  35. package/build/support/PathResolver/PathRewriter.d.ts +18 -0
  36. package/build/support/PathResolver/PathRewriter.js +47 -0
  37. package/build/support/PathResolver/PathRewriter.js.map +1 -0
  38. package/build/support/PathResolver/Utils.d.ts +36 -0
  39. package/build/support/PathResolver/Utils.js +45 -0
  40. package/build/support/PathResolver/Utils.js.map +1 -0
  41. package/build/support/PathResolver.d.ts +100 -0
  42. package/build/support/PathResolver.js +280 -0
  43. package/build/support/PathResolver.js.map +1 -0
  44. package/build/support/Resolver/AliasCompiler.d.ts +18 -0
  45. package/build/support/Resolver/AliasCompiler.js +32 -0
  46. package/build/support/Resolver/AliasCompiler.js.map +1 -0
  47. package/build/support/Resolver/PathResolver.d.ts +25 -0
  48. package/build/support/Resolver/PathResolver.js +79 -0
  49. package/build/support/Resolver/PathResolver.js.map +1 -0
  50. package/build/support/Resolver/PathRewriter.d.ts +10 -0
  51. package/build/support/Resolver/PathRewriter.js +39 -0
  52. package/build/support/Resolver/PathRewriter.js.map +1 -0
  53. package/build/support/Resolver/Utils.d.ts +36 -0
  54. package/build/support/Resolver/Utils.js +45 -0
  55. package/build/support/Resolver/Utils.js.map +1 -0
  56. package/build/support/Utils.d.ts +30 -0
  57. package/build/support/Utils.js +95 -0
  58. package/build/support/Utils.js.map +1 -0
  59. package/build/support/Validator.d.ts +22 -0
  60. package/build/support/Validator.js +28 -0
  61. package/build/support/Validator.js.map +1 -0
  62. package/package.json +6 -4
  63. package/build/Dependency.d.ts +0 -99
  64. package/build/Dependency.js +0 -258
  65. package/build/Dependency.js.map +0 -1
  66. package/build/File.d.ts +0 -45
  67. package/build/File.js +0 -113
  68. package/build/File.js.map +0 -1
  69. package/build/Git.js.map +0 -1
  70. package/build/PathFixer.d.ts +0 -35
  71. package/build/PathFixer.js +0 -159
  72. package/build/PathFixer.js.map +0 -1
  73. package/build/Validator.d.ts +0 -54
  74. package/build/Validator.js +0 -150
  75. package/build/Validator.js.map +0 -1
  76. package/build/bin.d.ts +0 -7
  77. package/build/bin.js +0 -241
  78. package/build/bin.js.map +0 -1
  79. /package/build/{Git.d.ts → support/Git.d.ts} +0 -0
  80. /package/build/{Git.js → support/Git.js} +0 -0
@@ -0,0 +1,99 @@
1
+ import PATH from 'node:path';
2
+ import { Logger } from '@netfeez/vterm';
3
+ import { File, Path } from '@netfeez/common-node';
4
+ import schemas from "./schemas.js";
5
+ export class Tsconfig {
6
+ data;
7
+ projectRoot;
8
+ filename;
9
+ logger;
10
+ constructor(data, projectRoot, filename, options = {}) {
11
+ this.data = data;
12
+ this.projectRoot = projectRoot;
13
+ this.filename = filename;
14
+ this.logger = options.logger || new Logger({ name: 'TS-CFG' });
15
+ }
16
+ /**
17
+ * Updates the paths in the tsconfig data based on the provided compiled aliases.
18
+ * It ensures that the compilerOptions and paths properties exist in the tsconfig data, and then iterates through the compiled aliases to construct the appropriate path mappings.
19
+ * For each alias, it calculates the relative path from the project root to the local target and normalizes it. If the alias is a wildcard, it appends '/*' to the target path.
20
+ * Finally, it updates the paths in the tsconfig data with the new mappings, allowing TypeScript to resolve module paths according to the defined aliases.
21
+ * @param aliases An array of compiled aliases containing alias names, target paths, and wildcard information.
22
+ */
23
+ updatePaths(aliases) {
24
+ if (!this.data.compilerOptions)
25
+ this.data.compilerOptions = {};
26
+ if (!this.data.compilerOptions.paths)
27
+ this.data.compilerOptions.paths = {};
28
+ for (const aliasObj of aliases) {
29
+ const key = aliasObj.isWildcard ? `${aliasObj.alias}/*` : aliasObj.alias;
30
+ let target = PATH.relative(this.projectRoot, aliasObj.targets.local);
31
+ target = Path.normalize(target);
32
+ if (aliasObj.isWildcard) {
33
+ const suffix = target.endsWith('/') ? '*' : '/*';
34
+ target = `${target}${suffix}`;
35
+ }
36
+ this.data.compilerOptions.paths[key] = [target];
37
+ }
38
+ }
39
+ /**
40
+ * Saves the current tsconfig data to a file.
41
+ * It constructs the path to the tsconfig file using the project root and filename, converts the data to a JSON string with proper formatting, and writes it to the file system using the File.write method.
42
+ * The method also includes error handling to log any issues that occur during the save process, ensuring that users are informed of any problems when attempting to save the tsconfig configuration.
43
+ * @param filename The name of the tsconfig file to save (default is the instance's filename property).
44
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
45
+ */
46
+ async save(filename = this.filename) {
47
+ await Tsconfig.save(this.projectRoot, filename, this.data, { logger: this.logger });
48
+ }
49
+ /**
50
+ * Static method to save tsconfig data to a specified file. It takes the project root, filename, tsconfig data, and options (including a logger) as parameters.
51
+ * The method constructs the full path to the tsconfig file, converts the data to a formatted JSON string, and writes it to the file system.
52
+ * It also includes error handling to log any issues that arise during the save process, providing feedback on whether the operation was successful or if it encountered problems.
53
+ * @param projectRoot The root directory of the project where the tsconfig file should be saved.
54
+ * @param filename The name of the tsconfig file (default is 'tsconfig.json').
55
+ * @param data The tsconfig data to be saved, structured according to the defined schema.
56
+ * @param options Additional options for saving, such as a logger for logging messages during the save process.
57
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
58
+ * @throws Will throw an error if there is an issue during the save process, which can be caught by the caller to handle it appropriately.
59
+ */
60
+ static async save(projectRoot, filename = 'tsconfig.json', data, options = {}) {
61
+ const logger = options.logger || new Logger({ name: 'TS-CFG' });
62
+ const tsconfigPath = PATH.resolve(projectRoot, filename);
63
+ const folder = PATH.dirname(tsconfigPath);
64
+ if (!await File.exists(folder))
65
+ await File.mkdir(folder, { recursive: true });
66
+ const json = JSON.stringify(data, null, 4);
67
+ await File.write(tsconfigPath, json);
68
+ logger.log(`&C2Updated &C4${filename}&C2 successfully.`);
69
+ }
70
+ /**
71
+ * Static method to load tsconfig data from a specified file.
72
+ * It takes the project root, filename, and options (including a logger) as parameters.
73
+ * The method checks if the tsconfig file exists, and if it does, it reads the content, parses it as JSON, and processes it using the defined schema to ensure it conforms to the expected structure.
74
+ * If the file does not exist, it creates a default tsconfig data object using the schema. Finally, it returns an instance of the Tsconfig class initialized with the loaded or default data.
75
+ * @param projectRoot The root directory of the project where the tsconfig file is located.
76
+ * @param filename The name of the tsconfig file to load (default is 'tsconfig.json').
77
+ * @param options Additional options for loading, such as a logger for logging messages during the load process.
78
+ * @returns A promise that resolves to an instance of the Tsconfig class containing the loaded data, or rejects if there is an error during the load process.
79
+ * @throws Will throw an error if there is an issue during the load process, which
80
+ */
81
+ static async load(projectRoot, filename, options) {
82
+ const logger = options.logger || new Logger({ name: 'TS-CFG' });
83
+ const tsconfigPath = PATH.resolve(projectRoot, filename);
84
+ let data;
85
+ if (!await File.exists(tsconfigPath)) {
86
+ logger.warn(`&C3${filename} not found. Creating defaults...`);
87
+ data = schemas.basicTsconfig.processData({});
88
+ this.save(projectRoot, filename, data, { logger }).catch(err => logger.error(`Failed to create default tsconfig:`, err.message));
89
+ }
90
+ else {
91
+ const content = await File.read(tsconfigPath, 'utf-8');
92
+ const json = JSON.parse(content);
93
+ data = schemas.basicTsconfig.processData(json);
94
+ }
95
+ return new Tsconfig(data, projectRoot, filename, { logger });
96
+ }
97
+ }
98
+ export default Tsconfig;
99
+ //# sourceMappingURL=Tsconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tsconfig.js","sourceRoot":"","sources":["../../src/config/Tsconfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,592 @@
1
+ import { Schema } from '@netfeez/common';
2
+ export declare const basicTsconfig: Schema<{
3
+ readonly compilerOptions: {
4
+ readonly type: "object";
5
+ readonly properties: {
6
+ readonly baseUrl: {
7
+ readonly type: "string";
8
+ };
9
+ readonly rootDir: {
10
+ readonly type: "string";
11
+ };
12
+ readonly outDir: {
13
+ readonly type: "string";
14
+ };
15
+ readonly paths: {
16
+ readonly type: "object";
17
+ };
18
+ };
19
+ };
20
+ }>;
21
+ export declare const builder: Schema<{
22
+ readonly run: {
23
+ readonly union: [{
24
+ readonly type: "string";
25
+ }, {
26
+ readonly type: "array";
27
+ readonly items: {
28
+ readonly type: "string";
29
+ };
30
+ }];
31
+ };
32
+ readonly move: {
33
+ readonly union: [{
34
+ readonly type: "string";
35
+ }, {
36
+ readonly type: "object";
37
+ }];
38
+ };
39
+ }>;
40
+ export declare const pathResolverEntry: Schema<{
41
+ readonly alias: {
42
+ readonly type: "string";
43
+ readonly required: true;
44
+ };
45
+ readonly target: {
46
+ readonly union: [{
47
+ readonly type: "string";
48
+ }, {
49
+ readonly type: "object";
50
+ readonly properties: {
51
+ readonly local: {
52
+ readonly type: "string";
53
+ readonly required: true;
54
+ };
55
+ readonly cdn: {
56
+ readonly type: "string";
57
+ };
58
+ };
59
+ }];
60
+ readonly required: true;
61
+ };
62
+ }>;
63
+ export declare const dependency: Schema<{
64
+ readonly name: {
65
+ readonly type: "string";
66
+ readonly required: true;
67
+ };
68
+ readonly repo: {
69
+ readonly type: "string";
70
+ readonly required: true;
71
+ };
72
+ readonly branch: {
73
+ readonly type: "string";
74
+ };
75
+ readonly builder: {
76
+ readonly type: "array";
77
+ readonly default: [];
78
+ readonly items: {
79
+ readonly type: "object";
80
+ readonly properties: {
81
+ readonly run: {
82
+ readonly union: [{
83
+ readonly type: "string";
84
+ }, {
85
+ readonly type: "array";
86
+ readonly items: {
87
+ readonly type: "string";
88
+ };
89
+ }];
90
+ };
91
+ readonly move: {
92
+ readonly union: [{
93
+ readonly type: "string";
94
+ }, {
95
+ readonly type: "object";
96
+ }];
97
+ };
98
+ };
99
+ };
100
+ };
101
+ readonly resolver: {
102
+ readonly type: "array";
103
+ readonly nullable: true;
104
+ readonly default: [];
105
+ readonly items: {
106
+ readonly type: "object";
107
+ readonly properties: {
108
+ readonly alias: {
109
+ readonly type: "string";
110
+ readonly required: true;
111
+ };
112
+ readonly target: {
113
+ readonly union: [{
114
+ readonly type: "string";
115
+ }, {
116
+ readonly type: "object";
117
+ readonly properties: {
118
+ readonly local: {
119
+ readonly type: "string";
120
+ readonly required: true;
121
+ };
122
+ readonly cdn: {
123
+ readonly type: "string";
124
+ };
125
+ };
126
+ }];
127
+ readonly required: true;
128
+ };
129
+ };
130
+ };
131
+ };
132
+ }>;
133
+ export declare const npmDependencySchema: Schema<{
134
+ readonly name: {
135
+ readonly type: "string";
136
+ readonly required: true;
137
+ };
138
+ readonly resolver: {
139
+ readonly type: "array";
140
+ readonly nullable: true;
141
+ readonly default: [];
142
+ readonly items: {
143
+ readonly type: "object";
144
+ readonly properties: {
145
+ readonly alias: {
146
+ readonly type: "string";
147
+ readonly required: true;
148
+ };
149
+ readonly target: {
150
+ readonly union: [{
151
+ readonly type: "string";
152
+ }, {
153
+ readonly type: "object";
154
+ readonly properties: {
155
+ readonly local: {
156
+ readonly type: "string";
157
+ readonly required: true;
158
+ };
159
+ readonly cdn: {
160
+ readonly type: "string";
161
+ };
162
+ };
163
+ }];
164
+ readonly required: true;
165
+ };
166
+ };
167
+ };
168
+ };
169
+ }>;
170
+ export declare const config: Schema<{
171
+ readonly flowFolder: {
172
+ readonly type: "string";
173
+ readonly default: ".depflow";
174
+ };
175
+ readonly outDir: {
176
+ readonly type: "string";
177
+ readonly default: ".";
178
+ };
179
+ readonly tsconfig: {
180
+ readonly type: "string";
181
+ readonly nullable: true;
182
+ readonly default: null;
183
+ };
184
+ readonly importmap: {
185
+ readonly type: "string";
186
+ readonly nullable: true;
187
+ readonly default: null;
188
+ };
189
+ readonly dependencies: {
190
+ readonly type: "array";
191
+ readonly default: [];
192
+ readonly items: {
193
+ readonly type: "object";
194
+ readonly properties: {
195
+ readonly name: {
196
+ readonly type: "string";
197
+ readonly required: true;
198
+ };
199
+ readonly repo: {
200
+ readonly type: "string";
201
+ readonly required: true;
202
+ };
203
+ readonly branch: {
204
+ readonly type: "string";
205
+ };
206
+ readonly builder: {
207
+ readonly type: "array";
208
+ readonly default: [];
209
+ readonly items: {
210
+ readonly type: "object";
211
+ readonly properties: {
212
+ readonly run: {
213
+ readonly union: [{
214
+ readonly type: "string";
215
+ }, {
216
+ readonly type: "array";
217
+ readonly items: {
218
+ readonly type: "string";
219
+ };
220
+ }];
221
+ };
222
+ readonly move: {
223
+ readonly union: [{
224
+ readonly type: "string";
225
+ }, {
226
+ readonly type: "object";
227
+ }];
228
+ };
229
+ };
230
+ };
231
+ };
232
+ readonly resolver: {
233
+ readonly type: "array";
234
+ readonly nullable: true;
235
+ readonly default: [];
236
+ readonly items: {
237
+ readonly type: "object";
238
+ readonly properties: {
239
+ readonly alias: {
240
+ readonly type: "string";
241
+ readonly required: true;
242
+ };
243
+ readonly target: {
244
+ readonly union: [{
245
+ readonly type: "string";
246
+ }, {
247
+ readonly type: "object";
248
+ readonly properties: {
249
+ readonly local: {
250
+ readonly type: "string";
251
+ readonly required: true;
252
+ };
253
+ readonly cdn: {
254
+ readonly type: "string";
255
+ };
256
+ };
257
+ }];
258
+ readonly required: true;
259
+ };
260
+ };
261
+ };
262
+ };
263
+ };
264
+ };
265
+ };
266
+ readonly npmDependencies: {
267
+ readonly type: "array";
268
+ readonly default: [];
269
+ readonly items: {
270
+ readonly type: "object";
271
+ readonly properties: {
272
+ readonly name: {
273
+ readonly type: "string";
274
+ readonly required: true;
275
+ };
276
+ readonly resolver: {
277
+ readonly type: "array";
278
+ readonly nullable: true;
279
+ readonly default: [];
280
+ readonly items: {
281
+ readonly type: "object";
282
+ readonly properties: {
283
+ readonly alias: {
284
+ readonly type: "string";
285
+ readonly required: true;
286
+ };
287
+ readonly target: {
288
+ readonly union: [{
289
+ readonly type: "string";
290
+ }, {
291
+ readonly type: "object";
292
+ readonly properties: {
293
+ readonly local: {
294
+ readonly type: "string";
295
+ readonly required: true;
296
+ };
297
+ readonly cdn: {
298
+ readonly type: "string";
299
+ };
300
+ };
301
+ }];
302
+ readonly required: true;
303
+ };
304
+ };
305
+ };
306
+ };
307
+ };
308
+ };
309
+ };
310
+ }>;
311
+ export declare const schemas: {
312
+ basicTsconfig: Schema<{
313
+ readonly compilerOptions: {
314
+ readonly type: "object";
315
+ readonly properties: {
316
+ readonly baseUrl: {
317
+ readonly type: "string";
318
+ };
319
+ readonly rootDir: {
320
+ readonly type: "string";
321
+ };
322
+ readonly outDir: {
323
+ readonly type: "string";
324
+ };
325
+ readonly paths: {
326
+ readonly type: "object";
327
+ };
328
+ };
329
+ };
330
+ }>;
331
+ config: Schema<{
332
+ readonly flowFolder: {
333
+ readonly type: "string";
334
+ readonly default: ".depflow";
335
+ };
336
+ readonly outDir: {
337
+ readonly type: "string";
338
+ readonly default: ".";
339
+ };
340
+ readonly tsconfig: {
341
+ readonly type: "string";
342
+ readonly nullable: true;
343
+ readonly default: null;
344
+ };
345
+ readonly importmap: {
346
+ readonly type: "string";
347
+ readonly nullable: true;
348
+ readonly default: null;
349
+ };
350
+ readonly dependencies: {
351
+ readonly type: "array";
352
+ readonly default: [];
353
+ readonly items: {
354
+ readonly type: "object";
355
+ readonly properties: {
356
+ readonly name: {
357
+ readonly type: "string";
358
+ readonly required: true;
359
+ };
360
+ readonly repo: {
361
+ readonly type: "string";
362
+ readonly required: true;
363
+ };
364
+ readonly branch: {
365
+ readonly type: "string";
366
+ };
367
+ readonly builder: {
368
+ readonly type: "array";
369
+ readonly default: [];
370
+ readonly items: {
371
+ readonly type: "object";
372
+ readonly properties: {
373
+ readonly run: {
374
+ readonly union: [{
375
+ readonly type: "string";
376
+ }, {
377
+ readonly type: "array";
378
+ readonly items: {
379
+ readonly type: "string";
380
+ };
381
+ }];
382
+ };
383
+ readonly move: {
384
+ readonly union: [{
385
+ readonly type: "string";
386
+ }, {
387
+ readonly type: "object";
388
+ }];
389
+ };
390
+ };
391
+ };
392
+ };
393
+ readonly resolver: {
394
+ readonly type: "array";
395
+ readonly nullable: true;
396
+ readonly default: [];
397
+ readonly items: {
398
+ readonly type: "object";
399
+ readonly properties: {
400
+ readonly alias: {
401
+ readonly type: "string";
402
+ readonly required: true;
403
+ };
404
+ readonly target: {
405
+ readonly union: [{
406
+ readonly type: "string";
407
+ }, {
408
+ readonly type: "object";
409
+ readonly properties: {
410
+ readonly local: {
411
+ readonly type: "string";
412
+ readonly required: true;
413
+ };
414
+ readonly cdn: {
415
+ readonly type: "string";
416
+ };
417
+ };
418
+ }];
419
+ readonly required: true;
420
+ };
421
+ };
422
+ };
423
+ };
424
+ };
425
+ };
426
+ };
427
+ readonly npmDependencies: {
428
+ readonly type: "array";
429
+ readonly default: [];
430
+ readonly items: {
431
+ readonly type: "object";
432
+ readonly properties: {
433
+ readonly name: {
434
+ readonly type: "string";
435
+ readonly required: true;
436
+ };
437
+ readonly resolver: {
438
+ readonly type: "array";
439
+ readonly nullable: true;
440
+ readonly default: [];
441
+ readonly items: {
442
+ readonly type: "object";
443
+ readonly properties: {
444
+ readonly alias: {
445
+ readonly type: "string";
446
+ readonly required: true;
447
+ };
448
+ readonly target: {
449
+ readonly union: [{
450
+ readonly type: "string";
451
+ }, {
452
+ readonly type: "object";
453
+ readonly properties: {
454
+ readonly local: {
455
+ readonly type: "string";
456
+ readonly required: true;
457
+ };
458
+ readonly cdn: {
459
+ readonly type: "string";
460
+ };
461
+ };
462
+ }];
463
+ readonly required: true;
464
+ };
465
+ };
466
+ };
467
+ };
468
+ };
469
+ };
470
+ };
471
+ }>;
472
+ builder: Schema<{
473
+ readonly run: {
474
+ readonly union: [{
475
+ readonly type: "string";
476
+ }, {
477
+ readonly type: "array";
478
+ readonly items: {
479
+ readonly type: "string";
480
+ };
481
+ }];
482
+ };
483
+ readonly move: {
484
+ readonly union: [{
485
+ readonly type: "string";
486
+ }, {
487
+ readonly type: "object";
488
+ }];
489
+ };
490
+ }>;
491
+ pathResolver: Schema<{
492
+ readonly alias: {
493
+ readonly type: "string";
494
+ readonly required: true;
495
+ };
496
+ readonly target: {
497
+ readonly union: [{
498
+ readonly type: "string";
499
+ }, {
500
+ readonly type: "object";
501
+ readonly properties: {
502
+ readonly local: {
503
+ readonly type: "string";
504
+ readonly required: true;
505
+ };
506
+ readonly cdn: {
507
+ readonly type: "string";
508
+ };
509
+ };
510
+ }];
511
+ readonly required: true;
512
+ };
513
+ }>;
514
+ dependency: Schema<{
515
+ readonly name: {
516
+ readonly type: "string";
517
+ readonly required: true;
518
+ };
519
+ readonly repo: {
520
+ readonly type: "string";
521
+ readonly required: true;
522
+ };
523
+ readonly branch: {
524
+ readonly type: "string";
525
+ };
526
+ readonly builder: {
527
+ readonly type: "array";
528
+ readonly default: [];
529
+ readonly items: {
530
+ readonly type: "object";
531
+ readonly properties: {
532
+ readonly run: {
533
+ readonly union: [{
534
+ readonly type: "string";
535
+ }, {
536
+ readonly type: "array";
537
+ readonly items: {
538
+ readonly type: "string";
539
+ };
540
+ }];
541
+ };
542
+ readonly move: {
543
+ readonly union: [{
544
+ readonly type: "string";
545
+ }, {
546
+ readonly type: "object";
547
+ }];
548
+ };
549
+ };
550
+ };
551
+ };
552
+ readonly resolver: {
553
+ readonly type: "array";
554
+ readonly nullable: true;
555
+ readonly default: [];
556
+ readonly items: {
557
+ readonly type: "object";
558
+ readonly properties: {
559
+ readonly alias: {
560
+ readonly type: "string";
561
+ readonly required: true;
562
+ };
563
+ readonly target: {
564
+ readonly union: [{
565
+ readonly type: "string";
566
+ }, {
567
+ readonly type: "object";
568
+ readonly properties: {
569
+ readonly local: {
570
+ readonly type: "string";
571
+ readonly required: true;
572
+ };
573
+ readonly cdn: {
574
+ readonly type: "string";
575
+ };
576
+ };
577
+ }];
578
+ readonly required: true;
579
+ };
580
+ };
581
+ };
582
+ };
583
+ }>;
584
+ };
585
+ export declare namespace schemas {
586
+ type config = typeof config;
587
+ type builder = typeof builder;
588
+ type pathResolverEntry = typeof pathResolverEntry;
589
+ type dependency = typeof dependency;
590
+ type basicTsconfig = typeof basicTsconfig;
591
+ }
592
+ export default schemas;