UNPKG

gen-jhipster

Version:

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

195 lines (194 loc) 8.54 kB
import type { ExportGeneratorOptionsFromCommand, ExportStoragePropertiesFromCommand, ParsableCommand } from '../../lib/command/types.ts'; import CoreGenerator from '../base-core/index.ts'; import type { GenericTask } from '../base-core/types.ts'; import type { TaskTypes as BaseTasks } from './tasks.ts'; import type { Config as BaseConfig, Control, Features as BaseFeatures, Options as BaseOptions, Source as BaseSource } from './types.ts'; /** * Base class that contains blueprints support. * Provides built-in state support with control object. */ export default class BaseGenerator<Config extends BaseConfig = BaseConfig, Options extends BaseOptions = BaseOptions, Source extends BaseSource = BaseSource, Features extends BaseFeatures = BaseFeatures, Tasks extends BaseTasks<Source> = BaseTasks<Source>> extends CoreGenerator<Config, Options, Features> { #private; fromBlueprint: boolean; sbsBlueprint?: boolean; delegateToBlueprint: boolean; blueprintConfig?: Record<string, any>; jhipsterContext?: BaseGenerator; constructor(args?: string[], options?: Options, features?: Features); /** * Filter generator's tasks in case the blueprint should be responsible on queueing those tasks. */ delegateTasksToBlueprint<TaskGroupType>(tasksGetter: () => TaskGroupType): TaskGroupType; /** * Generate a timestamp to be used by Liquibase changelogs. */ nextTimestamp(): string; /** * Get arguments for the priority */ getArgsForPriority(priorityName: string): { control: Control; configChanges: { [k: string]: { newValue: any; oldValue: any; }; }; }[] | { control: Control; }[]; /** * Check if the generator should ask for prompts. */ shouldAskForPrompts({ control }: { control: Control; }): boolean; /** * Priority API stub for blueprints. * * Initializing priority is used to show logo and tasks related to preparing for prompts, like loading constants. */ get initializing(): {}; /** * Utility method to get typed objects for autocomplete. */ asInitializingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['InitializingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['InitializingTaskParam']>>; /** * Priority API stub for blueprints. * * Prompting priority is used to prompt users for configuration values. */ get prompting(): {}; /** * Utility method to get typed objects for autocomplete. */ asPromptingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['PromptingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['PromptingTaskParam']>>; /** * Priority API stub for blueprints. * * Configuring priority is used to customize and validate the configuration. */ get configuring(): {}; /** * Utility method to get typed objects for autocomplete. */ asConfiguringTaskGroup<const T extends Record<string, GenericTask<this, Tasks['ConfiguringTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['ConfiguringTaskParam']>>; /** * Priority API stub for blueprints. * * Composing should be used to compose with others generators. */ get composing(): {}; /** * Utility method to get typed objects for autocomplete. */ asComposingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['ComposingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['ComposingTaskParam']>>; /** * Priority API stub for blueprints. * * ComposingComponent priority should be used to handle component configuration order. */ get composingComponent(): {}; /** * Utility method to get typed objects for autocomplete. */ asComposingComponentTaskGroup<const T extends Record<string, GenericTask<this, Tasks['ComposingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['ComposingTaskParam']>>; /** * Priority API stub for blueprints. * * Loading should be used to load application configuration from jhipster configuration. * Before this priority the configuration should be considered dirty, while each generator configures itself at configuring priority, another generator composed at composing priority can still change it. */ get loading(): {}; /** * Utility method to get typed objects for autocomplete. */ asLoadingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['LoadingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['LoadingTaskParam']>>; /** * Priority API stub for blueprints. * * Preparing should be used to generate derived properties. */ get preparing(): {}; /** * Utility method to get typed objects for autocomplete. */ asPreparingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['PreparingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['PreparingTaskParam']>>; /** * Priority API stub for blueprints. * * Preparing should be used to generate derived properties. */ get postPreparing(): {}; /** * Utility method to get typed objects for autocomplete. */ asPostPreparingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['PostPreparingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['PostPreparingTaskParam']>>; /** * Priority API stub for blueprints. * * Default priority should used as misc customizations. */ get default(): {}; /** * Utility method to get typed objects for autocomplete. */ asDefaultTaskGroup<const T extends Record<string, GenericTask<this, Tasks['DefaultTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['DefaultTaskParam']>>; /** * Priority API stub for blueprints. * * Writing priority should used to write files. */ get writing(): {}; /** * Utility method to get typed objects for autocomplete. */ asWritingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['WritingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['WritingTaskParam']>>; /** * Priority API stub for blueprints. * * PostWriting priority should used to customize files. */ get postWriting(): {}; /** * Utility method to get typed objects for autocomplete. */ asPostWritingTaskGroup<const T extends Record<string, GenericTask<this, Tasks['PostWritingTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['PostWritingTaskParam']>>; /** * Priority API stub for blueprints. * * Install priority should used to prepare the project. */ get install(): {}; /** * Utility method to get typed objects for autocomplete. */ asInstallTaskGroup<const T extends Record<string, GenericTask<this, Tasks['InstallTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['InstallTaskParam']>>; /** * Priority API stub for blueprints. * * PostWriting priority should used to customize files. */ get postInstall(): {}; /** * Utility method to get typed objects for autocomplete. */ asPostInstallTaskGroup<const T extends Record<string, GenericTask<this, Tasks['PostInstallTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['PostInstallTaskParam']>>; /** * Priority API stub for blueprints. * * End priority should used to say good bye and print instructions. */ get end(): {}; /** * Utility method to get typed objects for autocomplete. */ asEndTaskGroup<const T extends Record<string, GenericTask<this, Tasks['EndTaskParam']>>>(taskGroup: T): Record<keyof T, GenericTask<any, Tasks['EndTaskParam']>>; /** * @protected * Composes with blueprint generators, if any. */ protected composeWithBlueprints(): Promise<any[]>; } export declare class CommandBaseGenerator<Command extends ParsableCommand, AdditionalOptions = unknown, AdditionalFeatures = unknown> extends BaseGenerator<BaseConfig & ExportStoragePropertiesFromCommand<Command>, BaseOptions & ExportGeneratorOptionsFromCommand<Command> & AdditionalOptions, BaseSource, BaseFeatures & AdditionalFeatures, BaseTasks> { }