@ykdz/template 0.0.3 → 0.0.4

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 (84) hide show
  1. package/README.md +1 -1
  2. package/dist/src/cli.d.ts +0 -1
  3. package/dist/src/cli.js +14 -2
  4. package/dist/src/declarations.d.ts +2 -3
  5. package/dist/src/declarations.js +46 -36
  6. package/dist/src/dependency-catalog.d.ts +9 -1
  7. package/dist/src/dependency-catalog.js +69 -0
  8. package/dist/src/devcontainer.d.ts +49 -9
  9. package/dist/src/devcontainer.js +192 -14
  10. package/dist/src/editor-customization.d.ts +0 -1
  11. package/dist/src/editor-customization.js +54 -47
  12. package/dist/src/generation-context.d.ts +0 -1
  13. package/dist/src/generation-context.js +4 -1
  14. package/dist/src/module-graph.d.ts +8 -5
  15. package/dist/src/module-graph.js +10 -0
  16. package/dist/src/next-step-instructions.d.ts +0 -1
  17. package/dist/src/next-step-instructions.js +35 -0
  18. package/dist/src/package-addition.d.ts +1 -1
  19. package/dist/src/package-addition.js +170 -15
  20. package/dist/src/preset-projection.d.ts +1 -1
  21. package/dist/src/project-github.d.ts +3 -2
  22. package/dist/src/project-github.js +24 -6
  23. package/dist/src/renderer.d.ts +16 -2
  24. package/dist/src/renderer.js +95 -12
  25. package/dist/src/runtime-paths.d.ts +0 -1
  26. package/dist/src/template-boundary-check.d.ts +34 -0
  27. package/dist/src/template-boundary-check.js +448 -0
  28. package/dist/src/toolchain-resolution.d.ts +0 -1
  29. package/dist/templates/hono-api/projection.d.ts +2 -3
  30. package/dist/templates/hono-api/projection.js +230 -69
  31. package/dist/templates/projection-plans.d.ts +0 -1
  32. package/dist/templates/registry.d.ts +0 -1
  33. package/dist/templates/registry.js +2 -2
  34. package/dist/templates/rust-bin/projection.d.ts +2 -3
  35. package/dist/templates/rust-bin/projection.js +161 -53
  36. package/dist/templates/ts-lib/projection.d.ts +2 -3
  37. package/dist/templates/ts-lib/projection.js +215 -64
  38. package/dist/templates/vue-app/projection.d.ts +2 -3
  39. package/dist/templates/vue-app/projection.js +246 -83
  40. package/dist/templates/vue-hono-app/projection.d.ts +0 -1
  41. package/dist/templates/vue-hono-app/projection.js +191 -87
  42. package/package.json +10 -5
  43. package/pnpm-workspace.yaml +1 -0
  44. package/templates/hono-api/.github/dependabot.yml +13 -0
  45. package/templates/rust-bin/.github/dependabot.yml +18 -1
  46. package/templates/rust-bin/rust-toolchain.toml +3 -0
  47. package/templates/rust-bin/rustfmt.toml +2 -0
  48. package/templates/shared/devcontainer/browser-test.Dockerfile +2 -0
  49. package/templates/shared/devcontainer/node-pnpm.Dockerfile +6 -0
  50. package/templates/shared/devcontainer/rust.Dockerfile +16 -0
  51. package/templates/shared/editor-customization/capabilities.json +56 -0
  52. package/templates/ts-lib/.github/dependabot.yml +13 -0
  53. package/templates/ts-lib/src/index.ts +5 -1
  54. package/templates/vue-app/.github/dependabot.yml +13 -0
  55. package/templates/vue-app/.github/workflows/check.yml +1 -1
  56. package/templates/vue-hono-app/.github/dependabot.yml +13 -0
  57. package/dist/src/cli.d.ts.map +0 -1
  58. package/dist/src/declarations.d.ts.map +0 -1
  59. package/dist/src/dependency-catalog.d.ts.map +0 -1
  60. package/dist/src/devcontainer.d.ts.map +0 -1
  61. package/dist/src/editor-customization.d.ts.map +0 -1
  62. package/dist/src/generation-context.d.ts.map +0 -1
  63. package/dist/src/module-graph.d.ts.map +0 -1
  64. package/dist/src/next-step-instructions.d.ts.map +0 -1
  65. package/dist/src/package-addition.d.ts.map +0 -1
  66. package/dist/src/preset-projection.d.ts.map +0 -1
  67. package/dist/src/project-github.d.ts.map +0 -1
  68. package/dist/src/renderer.d.ts.map +0 -1
  69. package/dist/src/runtime-paths.d.ts.map +0 -1
  70. package/dist/src/toolchain-resolution.d.ts.map +0 -1
  71. package/dist/templates/hono-api/projection.d.ts.map +0 -1
  72. package/dist/templates/projection-plans.d.ts.map +0 -1
  73. package/dist/templates/registry.d.ts.map +0 -1
  74. package/dist/templates/rust-bin/projection.d.ts.map +0 -1
  75. package/dist/templates/ts-lib/projection.d.ts.map +0 -1
  76. package/dist/templates/vue-app/projection.d.ts.map +0 -1
  77. package/dist/templates/vue-hono-app/projection.d.ts.map +0 -1
  78. package/templates/hono-api/projection.ts +0 -453
  79. package/templates/projection-plans.ts +0 -135
  80. package/templates/registry.ts +0 -59
  81. package/templates/rust-bin/projection.ts +0 -346
  82. package/templates/ts-lib/projection.ts +0 -454
  83. package/templates/vue-app/projection.ts +0 -687
  84. package/templates/vue-hono-app/projection.ts +0 -669
@@ -1,11 +1,10 @@
1
1
  import { existsSync } from "node:fs";
2
2
  import path from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
- import { renderGeneratedPnpmWorkspaceYaml } from "../../src/dependency-catalog.js";
5
- import { nodePnpmDevcontainer } from "../../src/devcontainer.js";
4
+ import { collectGeneratedManifestCatalogDependencies, renderGeneratedPnpmWorkspaceYaml, } from "../../src/dependency-catalog.js";
5
+ import { checkedDockerfileFirstNodePnpmDevcontainer, nodePnpmToolLayer, } from "../../src/devcontainer.js";
6
6
  import { editorCustomizationForCapabilities } from "../../src/editor-customization.js";
7
7
  import { renderFixCommand, renderRootCheckCommand, } from "../../src/module-graph.js";
8
- import { projectCheckWorkflow, projectDependabotConfig, } from "../../src/project-github.js";
9
8
  import { renderNewProject } from "../../src/renderer.js";
10
9
  const generatedBy = {
11
10
  packageName: "@ykdz/template",
@@ -18,7 +17,7 @@ export const tsLibPresetMetadata = {
18
17
  description: "Strict TypeScript package with pnpm catalog tooling.",
19
18
  generation: "supported",
20
19
  supportedPackageManagers: ["pnpm"],
21
- supportedProjectKinds: ["single-package"],
20
+ supportedProjectKinds: ["multi-package"],
22
21
  features: [
23
22
  "pnpm-catalog",
24
23
  "oxc-format-lint",
@@ -31,24 +30,44 @@ export const tsLibPresetMetadata = {
31
30
  ],
32
31
  };
33
32
  const dependencyMaintenancePolicy = {
34
- ecosystems: ["npm", "github-actions"],
33
+ ecosystems: ["npm", "github-actions", "docker"],
35
34
  interval: "weekly",
36
35
  };
37
36
  const tsLibPackageBoundary = {
38
37
  kind: "package-boundary",
39
38
  path: ".",
40
39
  };
41
- function planTsLibChecks() {
40
+ const tsLibRootBoundary = {
41
+ kind: "workspace-orchestration",
42
+ path: ".",
43
+ };
44
+ const tsLibWorkspacePackageBoundary = {
45
+ kind: "package-boundary",
46
+ path: "packages/*",
47
+ };
48
+ function planTsLibPackageChecks() {
42
49
  return {
43
50
  components: [
44
51
  { kind: "typescript-typecheck", owner: tsLibPackageBoundary },
45
52
  { kind: "oxc-lint", owner: tsLibPackageBoundary },
46
53
  { kind: "oxc-format-check", owner: tsLibPackageBoundary },
54
+ { kind: "build", owner: tsLibPackageBoundary },
47
55
  ],
48
56
  environmentNeeds: [],
49
57
  };
50
58
  }
51
- function planTsLibFixes() {
59
+ function planTsLibRootChecks() {
60
+ return {
61
+ components: [
62
+ { kind: "oxc-format-check", owner: tsLibRootBoundary },
63
+ { kind: "oxc-lint", owner: tsLibRootBoundary },
64
+ { kind: "typescript-typecheck", owner: tsLibRootBoundary },
65
+ { kind: "turbo-package-check", owner: tsLibWorkspacePackageBoundary },
66
+ ],
67
+ environmentNeeds: [],
68
+ };
69
+ }
70
+ function planTsLibPackageFixes() {
52
71
  return {
53
72
  components: [
54
73
  { kind: "oxc-format-write", owner: tsLibPackageBoundary },
@@ -56,34 +75,98 @@ function planTsLibFixes() {
56
75
  ],
57
76
  };
58
77
  }
59
- export function tsLibBlueprint() {
78
+ function planTsLibRootFixes() {
79
+ return {
80
+ components: [
81
+ { kind: "oxc-format-write", owner: tsLibRootBoundary },
82
+ { kind: "oxc-lint-fix", owner: tsLibRootBoundary },
83
+ { kind: "turbo-package-fix", owner: tsLibWorkspacePackageBoundary },
84
+ ],
85
+ };
86
+ }
87
+ function projectNameFromDir(targetDir) {
88
+ return path.basename(path.resolve(targetDir));
89
+ }
90
+ function packageScopeFromOptions(options) {
91
+ return options.scope ?? projectNameFromDir(options.targetDir);
92
+ }
93
+ function packageName(packageScope, packageLeafName) {
94
+ return `@${packageScope}/${packageLeafName}`;
95
+ }
96
+ export function tsLibBlueprint(options = { targetDir: process.cwd() }) {
97
+ const packageScope = packageScopeFromOptions(options);
98
+ const packageLeafName = projectNameFromDir(options.targetDir);
60
99
  return {
61
100
  schemaVersion: 1,
62
101
  preset: "ts-lib",
63
102
  packageManager: "pnpm",
64
- projectKind: "single-package",
103
+ projectKind: "multi-package",
65
104
  features: [...tsLibPresetMetadata.features],
105
+ packages: [
106
+ {
107
+ name: packageName(packageScope, packageLeafName),
108
+ path: `packages/${packageLeafName}`,
109
+ },
110
+ ],
111
+ };
112
+ }
113
+ function workspacePackagePath(context) {
114
+ return `packages/${context.projectName.value}`;
115
+ }
116
+ function workspacePackageName(context) {
117
+ const packageDefinition = context.blueprint.packages?.find((pkg) => pkg.path === workspacePackagePath(context));
118
+ return (packageDefinition?.name ??
119
+ packageName(context.projectName.value, context.projectName.value));
120
+ }
121
+ function projectTsLibRootPackageScripts() {
122
+ return {
123
+ check: renderRootCheckCommand(planTsLibRootChecks()),
124
+ fix: renderFixCommand(planTsLibRootFixes()),
125
+ "format:check": "oxfmt --check --config oxfmt.config.ts oxlint.config.ts oxfmt.config.ts",
126
+ "format:write": "oxfmt --write --config oxfmt.config.ts oxlint.config.ts oxfmt.config.ts",
127
+ lint: "oxlint --config oxlint.config.ts oxlint.config.ts oxfmt.config.ts --deny-warnings",
128
+ "lint:fix": "oxlint --config oxlint.config.ts oxlint.config.ts oxfmt.config.ts --fix --deny-warnings",
129
+ typecheck: "tsc -p tsconfig.config.json --noEmit",
66
130
  };
67
131
  }
68
132
  export function projectTsLibPackageScripts() {
69
- const checkPlan = planTsLibChecks();
70
- const fixPlan = planTsLibFixes();
133
+ const checkPlan = planTsLibPackageChecks();
134
+ const fixPlan = planTsLibPackageFixes();
71
135
  return {
72
136
  build: "tsc -p tsconfig.json && tsc-alias -p tsconfig.json",
73
137
  check: renderRootCheckCommand(checkPlan),
74
138
  fix: renderFixCommand(fixPlan),
75
- "format:check": "oxfmt --check .",
76
- "format:write": "oxfmt --write .",
77
- lint: "oxlint . --deny-warnings",
78
- "lint:fix": "oxlint . --fix --deny-warnings",
139
+ "format:check": "oxfmt --check --config ../../oxfmt.config.ts .",
140
+ "format:write": "oxfmt --write --config ../../oxfmt.config.ts .",
141
+ lint: "oxlint --config ../../oxlint.config.ts . --deny-warnings",
142
+ "lint:fix": "oxlint --config ../../oxlint.config.ts . --fix --deny-warnings",
79
143
  typecheck: "tsc -p tsconfig.json --noEmit",
80
144
  };
81
145
  }
82
- function packageJson(context, packageScripts) {
146
+ function rootPackageJson(context, packageScripts) {
83
147
  return {
84
148
  name: context.projectName.value,
85
149
  version: "0.0.0",
86
150
  private: true,
151
+ type: "module",
152
+ scripts: packageScripts,
153
+ devDependencies: {
154
+ oxfmt: "catalog:",
155
+ oxlint: "catalog:",
156
+ turbo: "catalog:",
157
+ typescript: "catalog:",
158
+ },
159
+ engines: {
160
+ node: context.toolchain.nodeLtsMajor.value,
161
+ },
162
+ packageManager: context.toolchain.packageManagerPin.value,
163
+ };
164
+ }
165
+ function libraryPackageJson(context) {
166
+ return {
167
+ name: workspacePackageName(context),
168
+ version: "0.0.0",
169
+ private: true,
87
170
  files: ["dist"],
88
171
  type: "module",
89
172
  exports: {
@@ -92,7 +175,10 @@ function packageJson(context, packageScripts) {
92
175
  types: "./dist/index.d.ts",
93
176
  },
94
177
  },
95
- scripts: packageScripts,
178
+ dependencies: {
179
+ valibot: "catalog:",
180
+ },
181
+ scripts: projectTsLibPackageScripts(),
96
182
  devDependencies: {
97
183
  "@types/node": "catalog:",
98
184
  oxfmt: "catalog:",
@@ -103,7 +189,6 @@ function packageJson(context, packageScripts) {
103
189
  engines: {
104
190
  node: context.toolchain.nodeLtsMajor.value,
105
191
  },
106
- packageManager: context.toolchain.packageManagerPin.value,
107
192
  };
108
193
  }
109
194
  function generationRecord(context) {
@@ -120,31 +205,89 @@ function operationsForTsLib(context, packageScripts, checkPlan) {
120
205
  const editorCustomization = editorCustomizationForCapabilities([
121
206
  "oxc-format-lint",
122
207
  ]);
208
+ const developmentContainer = checkedDockerfileFirstNodePnpmDevcontainer({
209
+ name: context.projectName.value,
210
+ layer: nodePnpmToolLayer({
211
+ nodeVersion: context.toolchain.nodeLtsMajor.value,
212
+ packageManagerPin: context.toolchain.packageManagerPin.value,
213
+ }),
214
+ extensions: editorCustomization.extensions,
215
+ settings: editorCustomization.settings,
216
+ });
217
+ const rootManifest = rootPackageJson(context, packageScripts);
218
+ const packageManifest = libraryPackageJson(context);
123
219
  return [
124
220
  {
125
221
  kind: "writeJson",
126
222
  to: "package.json",
127
- value: packageJson(context, packageScripts),
128
- multilineArrays: ["files"],
223
+ value: rootManifest,
129
224
  },
130
225
  {
131
226
  kind: "writeText",
132
227
  to: "pnpm-workspace.yaml",
133
228
  text: renderGeneratedPnpmWorkspaceYaml({
134
- dependencies: [
135
- "@types/node",
136
- "oxfmt",
137
- "oxlint",
138
- "tsc-alias",
139
- "typescript",
140
- ],
229
+ packages: ["packages/*"],
230
+ dependencies: collectGeneratedManifestCatalogDependencies([
231
+ rootManifest,
232
+ packageManifest,
233
+ ]),
141
234
  }),
142
235
  },
236
+ {
237
+ kind: "writeJson",
238
+ to: "turbo.json",
239
+ value: {
240
+ tasks: {
241
+ build: {
242
+ dependsOn: ["^build"],
243
+ outputs: ["dist/**"],
244
+ },
245
+ check: {
246
+ dependsOn: ["^build"],
247
+ },
248
+ fix: {
249
+ cache: false,
250
+ },
251
+ },
252
+ },
253
+ },
143
254
  {
144
255
  kind: "writeJson",
145
256
  to: "tsconfig.json",
257
+ value: {
258
+ files: [],
259
+ references: [
260
+ { path: `./${workspacePackagePath(context)}/tsconfig.json` },
261
+ ],
262
+ },
263
+ },
264
+ {
265
+ kind: "writeJson",
266
+ to: "tsconfig.config.json",
267
+ value: {
268
+ compilerOptions: {
269
+ module: "NodeNext",
270
+ moduleResolution: "NodeNext",
271
+ noEmitOnError: true,
272
+ skipLibCheck: false,
273
+ strict: true,
274
+ target: "ES2022",
275
+ },
276
+ include: ["oxlint.config.ts", "oxfmt.config.ts"],
277
+ },
278
+ },
279
+ {
280
+ kind: "writeJson",
281
+ to: `${workspacePackagePath(context)}/package.json`,
282
+ value: packageManifest,
283
+ multilineArrays: ["files"],
284
+ },
285
+ {
286
+ kind: "writeJson",
287
+ to: `${workspacePackagePath(context)}/tsconfig.json`,
146
288
  value: {
147
289
  compilerOptions: {
290
+ composite: true,
148
291
  declaration: true,
149
292
  declarationMap: true,
150
293
  module: "NodeNext",
@@ -178,33 +321,40 @@ function operationsForTsLib(context, packageScripts, checkPlan) {
178
321
  {
179
322
  kind: "writeText",
180
323
  to: ".gitignore",
181
- text: ["node_modules", "dist", ".env", ""].join("\n"),
324
+ text: [
325
+ "node_modules",
326
+ "dist",
327
+ ".env",
328
+ ".template/",
329
+ ".pnpm-store/",
330
+ "",
331
+ ].join("\n"),
182
332
  },
183
333
  {
184
334
  kind: "copyFile",
185
335
  from: "src/index.ts",
186
- to: "src/index.ts",
336
+ to: `${workspacePackagePath(context)}/src/index.ts`,
187
337
  },
188
338
  {
189
339
  kind: "writeJson",
190
- to: ".project-kit/blueprint.json",
191
- value: tsLibBlueprint(),
340
+ to: ".template/blueprint.json",
341
+ value: context.blueprint,
192
342
  },
193
343
  {
194
344
  kind: "writeJson",
195
- to: ".project-kit/generated-by.json",
345
+ to: ".template/generated-by.json",
196
346
  value: generationRecord(context),
197
347
  },
198
348
  {
199
349
  kind: "writeJson",
200
350
  to: ".devcontainer/devcontainer.json",
201
- value: nodePnpmDevcontainer({
202
- name: `${context.projectName.value} development`,
203
- nodeVersion: context.toolchain.nodeLtsMajor.value,
204
- packageManagerPin: context.toolchain.packageManagerPin.value,
205
- extensions: editorCustomization.extensions,
206
- settings: editorCustomization.settings,
207
- }),
351
+ value: developmentContainer.devcontainer,
352
+ },
353
+ {
354
+ kind: "copyFile",
355
+ sourceRoot: "sharedDevcontainer",
356
+ from: "node-pnpm.Dockerfile",
357
+ to: ".devcontainer/Dockerfile",
208
358
  },
209
359
  {
210
360
  kind: "writeJson",
@@ -220,14 +370,14 @@ function operationsForTsLib(context, packageScripts, checkPlan) {
220
370
  value: editorCustomization.settings,
221
371
  },
222
372
  {
223
- kind: "writeText",
373
+ kind: "copyFile",
374
+ from: ".github/workflows/check.yml",
224
375
  to: ".github/workflows/check.yml",
225
- text: projectCheckWorkflow({ checkPlan }),
226
376
  },
227
377
  {
228
- kind: "writeText",
378
+ kind: "copyFile",
379
+ from: ".github/dependabot.yml",
229
380
  to: ".github/dependabot.yml",
230
- text: projectDependabotConfig(dependencyMaintenancePolicy),
231
381
  },
232
382
  ];
233
383
  }
@@ -248,6 +398,9 @@ function packageAdditionOperations(packagePath, packageName, nodeVersion) {
248
398
  types: "./dist/index.d.ts",
249
399
  },
250
400
  },
401
+ dependencies: {
402
+ valibot: "catalog:",
403
+ },
251
404
  scripts: projectTsLibPackageScripts(),
252
405
  devDependencies: {
253
406
  "@types/node": "catalog:",
@@ -286,18 +439,6 @@ function packageAdditionOperations(packagePath, packageName, nodeVersion) {
286
439
  include: ["src/**/*.ts"],
287
440
  },
288
441
  },
289
- {
290
- kind: "copyFile",
291
- sourceRoot: "sharedOxc",
292
- from: "node/oxlint.config.ts",
293
- to: `${packagePath}/oxlint.config.ts`,
294
- },
295
- {
296
- kind: "copyFile",
297
- sourceRoot: "sharedOxc",
298
- from: "oxfmt.config.ts",
299
- to: `${packagePath}/oxfmt.config.ts`,
300
- },
301
442
  {
302
443
  kind: "copyFile",
303
444
  from: "src/index.ts",
@@ -305,11 +446,11 @@ function packageAdditionOperations(packagePath, packageName, nodeVersion) {
305
446
  },
306
447
  ];
307
448
  }
308
- function packageAdditionPlan(packageLeafName, packageName, nodeVersion) {
309
- const packagePath = `packages/${packageLeafName}`;
449
+ function packageAdditionPlan(packageName, packagePath, nodeVersion) {
450
+ const [workspaceCollection] = packagePath.split("/");
310
451
  return {
311
452
  packagePath,
312
- workspacePackageGlob: "packages/*",
453
+ workspacePackageGlob: `${workspaceCollection}/*`,
313
454
  rootTsconfigReferences: [`./${packagePath}/tsconfig.json`],
314
455
  sourceRoot: templateSourceRoot(),
315
456
  sourceRoots: { sharedOxc: sharedOxcSourceRoot() },
@@ -330,23 +471,33 @@ function sharedOxcSourceRoot() {
330
471
  ? publishedSharedRoot
331
472
  : path.join(projectionDir, "..", "shared", "oxc");
332
473
  }
474
+ function sharedDevcontainerSourceRoot() {
475
+ const projectionDir = path.dirname(fileURLToPath(import.meta.url));
476
+ const publishedSharedRoot = path.join(projectionDir, "..", "..", "..", "templates", "shared", "devcontainer");
477
+ return existsSync(path.join(publishedSharedRoot, "node-pnpm.Dockerfile"))
478
+ ? publishedSharedRoot
479
+ : path.join(projectionDir, "..", "shared", "devcontainer");
480
+ }
333
481
  export const tsLibPresetProjection = {
334
482
  metadata: tsLibPresetMetadata,
335
483
  capabilities: {
336
484
  packageAddition: {
337
- planPackageAddition({ packageLeafName, packageName, nodeVersion, }) {
338
- return packageAdditionPlan(packageLeafName, packageName, nodeVersion);
485
+ planPackageAddition({ packageName, packagePath, nodeVersion, }) {
486
+ return packageAdditionPlan(packageName, packagePath, nodeVersion);
339
487
  },
340
488
  },
341
489
  },
342
490
  blueprint: tsLibBlueprint,
343
491
  project(context) {
344
- const checkPlan = planTsLibChecks();
345
- const fixPlan = planTsLibFixes();
346
- const packageScripts = projectTsLibPackageScripts();
492
+ const checkPlan = planTsLibRootChecks();
493
+ const fixPlan = planTsLibRootFixes();
494
+ const packageScripts = projectTsLibRootPackageScripts();
347
495
  return {
348
496
  sourceRoot: templateSourceRoot(),
349
- sourceRoots: { sharedOxc: sharedOxcSourceRoot() },
497
+ sourceRoots: {
498
+ sharedDevcontainer: sharedDevcontainerSourceRoot(),
499
+ sharedOxc: sharedOxcSourceRoot(),
500
+ },
350
501
  operations: operationsForTsLib(context, packageScripts, checkPlan),
351
502
  checkPlan,
352
503
  fixPlan,
@@ -1,7 +1,6 @@
1
1
  import type { BuiltInPreset, ProjectBlueprint } from "../../src/declarations.js";
2
- import type { PresetProjection } from "../../src/preset-projection.js";
2
+ import type { PresetBlueprintOptions, PresetProjection } from "../../src/preset-projection.js";
3
3
  export declare const vueAppPresetMetadata: BuiltInPreset;
4
- export declare function vueAppBlueprint(): ProjectBlueprint;
4
+ export declare function vueAppBlueprint(options?: PresetBlueprintOptions): ProjectBlueprint;
5
5
  export declare function projectVueAppPackageScripts(): Record<string, string>;
6
6
  export declare const vueAppPresetProjection: PresetProjection;
7
- //# sourceMappingURL=projection.d.ts.map