UNPKG

virmator

Version:

Handle common package configs, commands, and dependencies.

815 lines (814 loc) 101 kB
/** Default list of plugins that the virmator npm package's CLI uses. */ export declare const defaultVirmatorPlugins: (Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly compile: { readonly doc: { readonly sections: readonly ["\n Type checks TypeScript files and compiles them into JS outputs using the\n TypeScript compiler. Any extra args are passed directly to tsc.\n ", "\n Automatically compiles a mono-repo's sub packages in the correct order\n if called from a mono-repo root.\n "]; readonly examples: readonly [{ readonly content: "virmator compile"; }, { readonly title: "With tsc flags"; readonly content: "virmator compile --noEmit"; }]; }; readonly configFiles: { readonly tsconfigPackage: { readonly copyFromPath: string; readonly copyToPath: "tsconfig.json"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage]; readonly required: true; }; readonly tsconfigMonoPackage: { readonly copyFromPath: string; readonly copyToPath: "tsconfig.json"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoPackage]; readonly required: true; }; readonly tsconfigMono: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly typescript: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage]; }; readonly "mono-vir": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot]; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly compile: { readonly doc: { readonly sections: readonly ["\n Type checks TypeScript files and compiles them into JS outputs using the\n TypeScript compiler. Any extra args are passed directly to tsc.\n ", "\n Automatically compiles a mono-repo's sub packages in the correct order\n if called from a mono-repo root.\n "]; readonly examples: readonly [{ readonly content: "virmator compile"; }, { readonly title: "With tsc flags"; readonly content: "virmator compile --noEmit"; }]; }; readonly configFiles: { readonly tsconfigPackage: { readonly copyFromPath: string; readonly copyToPath: "tsconfig.json"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage]; readonly required: true; }; readonly tsconfigMonoPackage: { readonly copyFromPath: string; readonly copyToPath: "tsconfig.json"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoPackage]; readonly required: true; }; readonly tsconfigMono: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly typescript: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage]; }; readonly "mono-vir": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot]; }; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly deps: { readonly doc: { readonly sections: readonly ["\n Various dependency commands. A sub-command must be provided.\n "]; readonly examples: readonly [{ readonly title: "check import dependencies"; readonly content: "virmator deps check"; }, { readonly title: "upgrade npm dependencies"; readonly content: "virmator deps upgrade"; }, { readonly title: "regenerate npm dependencies"; readonly content: "virmator deps regen"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that import dependencies pass your dependency cruiser config.\n The base configuration blocks typical import errors such as\n circular dependencies and importing test files.\n "]; readonly examples: readonly [{ readonly content: "virmator deps check"; }]; }; readonly configFiles: { readonly depCruiser: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly "dependency-cruiser": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; readonly esbuild: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; }; }; readonly upgrade: { readonly doc: { readonly sections: readonly ["\n Upgrades dependencies using npm-check-update.\n Does not automatically run 'npm i'.\n It is recommended to run 'virmator deps regen' instead.\n "]; readonly examples: readonly [{ readonly content: "virmator deps upgrade"; }]; }; readonly configFiles: { readonly ncu: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; readonly required: true; readonly configFlags: ["--config"]; }; }; readonly npmDeps: { readonly "npm-check-updates": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; }; }; readonly regen: { readonly doc: { readonly sections: readonly ["\n Force regeneration of all all dependencies by deleting all\n node_modules directories and package-lock.json and then\n running 'npm i'.\n "]; readonly examples: readonly [{ readonly content: "virmator deps regen"; }]; }; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly deps: { readonly doc: { readonly sections: readonly ["\n Various dependency commands. A sub-command must be provided.\n "]; readonly examples: readonly [{ readonly title: "check import dependencies"; readonly content: "virmator deps check"; }, { readonly title: "upgrade npm dependencies"; readonly content: "virmator deps upgrade"; }, { readonly title: "regenerate npm dependencies"; readonly content: "virmator deps regen"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that import dependencies pass your dependency cruiser config.\n The base configuration blocks typical import errors such as\n circular dependencies and importing test files.\n "]; readonly examples: readonly [{ readonly content: "virmator deps check"; }]; }; readonly configFiles: { readonly depCruiser: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly "dependency-cruiser": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; readonly esbuild: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; }; }; readonly upgrade: { readonly doc: { readonly sections: readonly ["\n Upgrades dependencies using npm-check-update.\n Does not automatically run 'npm i'.\n It is recommended to run 'virmator deps regen' instead.\n "]; readonly examples: readonly [{ readonly content: "virmator deps upgrade"; }]; }; readonly configFiles: { readonly ncu: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; readonly required: true; readonly configFlags: ["--config"]; }; }; readonly npmDeps: { readonly "npm-check-updates": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; }; }; }; readonly regen: { readonly doc: { readonly sections: readonly ["\n Force regeneration of all all dependencies by deleting all\n node_modules directories and package-lock.json and then\n running 'npm i'.\n "]; readonly examples: readonly [{ readonly content: "virmator deps regen"; }]; }; }; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly docs: { readonly doc: { readonly sections: readonly ["\n Generates documentation using the typedoc package and inserts code examples\n into README files using the markdown-code-example-inserter package.\n "]; readonly examples: readonly [{ readonly content: "virmator docs"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that documentation is valid and passes all checks without\n generating documentation outputs.\n "]; readonly examples: readonly [{ readonly content: "virmator docs check"; }]; }; }; }; readonly configFiles: { readonly typedoc: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: true; }; }; readonly npmDeps: { readonly "markdown-code-example-inserter": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.MonoRoot]; }; readonly typedoc: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly docs: { readonly doc: { readonly sections: readonly ["\n Generates documentation using the typedoc package and inserts code examples\n into README files using the markdown-code-example-inserter package.\n "]; readonly examples: readonly [{ readonly content: "virmator docs"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that documentation is valid and passes all checks without\n generating documentation outputs.\n "]; readonly examples: readonly [{ readonly content: "virmator docs check"; }]; }; }; }; readonly configFiles: { readonly typedoc: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: true; }; }; readonly npmDeps: { readonly "markdown-code-example-inserter": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.MonoRoot]; }; readonly typedoc: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; }; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly format: { readonly doc: { readonly sections: readonly ["\n Formats with prettier.\n "]; readonly examples: readonly [{ readonly content: "virmator format"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that formatting is all valid.\n "]; readonly examples: readonly [{ readonly content: "virmator format check"; }]; }; }; }; readonly configFiles: { readonly prettier: { readonly copyFromPath: string; readonly copyToPath: "prettier.config.mjs"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; readonly prettierIgnore: { readonly copyFromPath: string; readonly copyToPath: ".prettierignore"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly prettier: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-jsdoc": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-multiline-arrays": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-organize-imports": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-packagejson": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-sort-json": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-toml": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-interpolated-html-tags": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly format: { readonly doc: { readonly sections: readonly ["\n Formats with prettier.\n "]; readonly examples: readonly [{ readonly content: "virmator format"; }]; }; readonly subCommands: { readonly check: { readonly doc: { readonly sections: readonly ["\n Checks that formatting is all valid.\n "]; readonly examples: readonly [{ readonly content: "virmator format check"; }]; }; }; }; readonly configFiles: { readonly prettier: { readonly copyFromPath: string; readonly copyToPath: "prettier.config.mjs"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; readonly prettierIgnore: { readonly copyFromPath: string; readonly copyToPath: ".prettierignore"; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: true; }; }; readonly npmDeps: { readonly prettier: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-jsdoc": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-multiline-arrays": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-organize-imports": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-packagejson": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-sort-json": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-toml": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; readonly "prettier-plugin-interpolated-html-tags": { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.TopPackage]; }; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly frontend: { readonly doc: { readonly sections: readonly ["\n Runs a frontend dev server with Vite.\n "]; readonly examples: readonly [{ readonly content: "virmator frontend"; }]; }; readonly subCommands: { readonly build: { readonly doc: { readonly sections: readonly ["\n Builds a frontend for deployment using Vite (and Rollup).\n "]; readonly examples: readonly [{ readonly content: "virmator frontend build"; }]; }; }; readonly preview: { readonly doc: { readonly sections: readonly ["\n Builds a frontend and previews that build in a local dev server.\n "]; readonly examples: readonly [{ readonly content: "virmator frontend preview"; }]; }; }; }; readonly configFiles: { readonly vite: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: true; readonly configFlags: ["--config"]; }; }; readonly npmDeps: { readonly typescript: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.TopPackage]; }; readonly vite: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.TopPackage]; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly frontend: { readonly doc: { readonly sections: readonly ["\n Runs a frontend dev server with Vite.\n "]; readonly examples: readonly [{ readonly content: "virmator frontend"; }]; }; readonly subCommands: { readonly build: { readonly doc: { readonly sections: readonly ["\n Builds a frontend for deployment using Vite (and Rollup).\n "]; readonly examples: readonly [{ readonly content: "virmator frontend build"; }]; }; }; readonly preview: { readonly doc: { readonly sections: readonly ["\n Builds a frontend and previews that build in a local dev server.\n "]; readonly examples: readonly [{ readonly content: "virmator frontend preview"; }]; }; }; }; readonly configFiles: { readonly vite: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: true; readonly configFlags: ["--config"]; }; }; readonly npmDeps: { readonly typescript: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.TopPackage]; }; readonly vite: { readonly type: import("@virmator/core").NpmDepType.Dev; readonly env: readonly [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: readonly [import("@virmator/core").PackageType.MonoPackage, import("@virmator/core").PackageType.TopPackage]; }; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly help: { readonly doc: { readonly examples: readonly [{ readonly content: "virmator help"; }]; readonly sections: readonly ["Prints help messages for all supported plugins/commands."]; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly help: { readonly doc: { readonly examples: readonly [{ readonly content: "virmator help"; }]; readonly sections: readonly ["Prints help messages for all supported plugins/commands."]; }; }; }>>; }> | Readonly<Readonly<{ name: string; cliCommands: NoInfer<{ readonly init: { readonly doc: { readonly sections: readonly ["\n Init all default configs. Needs env and package type args.\n "]; readonly examples: readonly [{ readonly content: "virmator init web mono-repo"; }, { readonly content: "virmator init node package"; }]; }; readonly configFiles: { readonly ghPages: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly ghTaggedRelease: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly ghTestsNode: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly ghTestsWeb: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly vscodeSettings: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly appElement: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly indexHtml: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly indexCss: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly redirects: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly gitAttributes: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly nvmrc: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly gitignore: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly licenseMit: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly licenseCc0: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoRoot, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly npmIgnore: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage, import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly monoPackageNodePackageJson: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly monoPackageWebPackageJson: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.MonoPackage]; readonly required: false; }; readonly monoRootPackageJson: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web, import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.MonoRoot]; readonly required: false; }; readonly topPackageNodePackageJson: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node]; readonly packageType: [import("@virmator/core").PackageType.TopPackage]; readonly required: false; }; readonly topPackageWebPackageJson: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Web]; readonly packageType: [import("@virmator/core").PackageType.TopPackage]; readonly required: false; }; }; }; }>; }> & { pluginPackageRootPath: string; executor: import("@virmator/core").VirmatorPluginExecutor<NoInfer<{ readonly init: { readonly doc: { readonly sections: readonly ["\n Init all default configs. Needs env and package type args.\n "]; readonly examples: readonly [{ readonly content: "virmator init web mono-repo"; }, { readonly content: "virmator init node package"; }]; }; readonly configFiles: { readonly ghPages: { readonly copyFromPath: string; readonly copyToPath: string; readonly env: [import("@augment-vir/core").RuntimeEnv.Node, import("@augment-vir/core").RuntimeEnv.Web];