UNPKG

generator-begcode

Version:

Spring Boot + Angular/React/Vue in one handy generator

38 lines (31 loc) 1.67 kB
/* eslint-disable @typescript-eslint/consistent-type-imports */ import type { Merge, PackageJson, Simplify } from 'type-fest'; import type { ExportApplicationPropertiesFromCommand } from '../../lib/command/types.js'; import type JavascriptBootstrapCommand from './generators/bootstrap/command.js'; type JavascriptBootstrapProperties = ExportApplicationPropertiesFromCommand<typeof JavascriptBootstrapCommand>; type DependencyValue = string | undefined | null; export type JavaScriptSourceType = { mergePrettierConfig?: (config: Record<string, unknown>) => void; addPrettierIgnore?: (newContent: string) => void; addEslintIgnore?: (opts: { ignorePattern: string }) => void; addEslintConfig?: (opts: { import?: string | string[]; config?: string | string[] }) => void; /** Merge data to client's package.json */ mergeClientPackageJson?( args: Simplify< Merge<PackageJson, { dependencies?: Record<string, DependencyValue>; devDependencies?: Record<string, DependencyValue> }> >, ): void; }; export type JavaScriptApplication = JavascriptBootstrapProperties & ExportApplicationPropertiesFromCommand<typeof import('./generators/eslint/command.js').default> & ExportApplicationPropertiesFromCommand<typeof import('./generators/prettier/command.js').default> & { packageJsonNodeEngine?: boolean | string; eslintConfigFile?: string; cjsExtension?: string; mjsExtension?: string; /** Root package.json scripts */ packageJsonScripts: Record<string, string>; /** Root package.json scripts */ clientPackageJsonScripts: Record<string, string>; addPrettierExtensions?: (extensions: string[]) => void; };