UNPKG

@rushstack/heft

Version:

Build all your JavaScript projects the same way: A way that works.

50 lines 2.18 kB
import type { ITerminal } from '@rushstack/terminal'; import type { IRigConfig } from '@rushstack/rig-package'; import type { IDeleteOperation } from '../plugins/DeleteFilesPlugin'; import type { INodeServicePluginConfiguration } from '../plugins/NodeServicePlugin'; export interface IHeftConfigurationJsonActionReference { actionName: string; defaultParameters?: string[]; } export interface IHeftConfigurationJsonAliases { [aliasName: string]: IHeftConfigurationJsonActionReference; } export interface IHeftConfigurationJsonPluginSpecifier { pluginPackage: string; pluginPackageRoot: string; pluginName?: string; options?: object; } export interface IHeftConfigurationJsonTaskSpecifier { taskDependencies?: string[]; taskPlugin: IHeftConfigurationJsonPluginSpecifier; } export interface IHeftConfigurationJsonTasks { [taskName: string]: IHeftConfigurationJsonTaskSpecifier; } export interface IHeftConfigurationJsonPhaseSpecifier { phaseDescription?: string; phaseDependencies?: string[]; cleanFiles?: IDeleteOperation[]; tasksByName?: IHeftConfigurationJsonTasks; } export interface IHeftConfigurationJsonPhases { [phaseName: string]: IHeftConfigurationJsonPhaseSpecifier; } export interface IHeftConfigurationJson { heftPlugins?: IHeftConfigurationJsonPluginSpecifier[]; aliasesByName?: IHeftConfigurationJsonAliases; phasesByName?: IHeftConfigurationJsonPhases; } export declare class CoreConfigFiles { private static _heftConfigFileLoader; private static _nodeServiceConfigurationLoader; static heftConfigurationProjectRelativeFilePath: string; static nodeServiceConfigurationProjectRelativeFilePath: string; /** * Returns the loader for the `config/heft.json` config file. */ static loadHeftConfigurationFileForProjectAsync(terminal: ITerminal, projectPath: string, rigConfig?: IRigConfig | undefined): Promise<IHeftConfigurationJson>; static tryLoadNodeServiceConfigurationFileAsync(terminal: ITerminal, projectPath: string, rigConfig?: IRigConfig | undefined): Promise<INodeServicePluginConfiguration | undefined>; } //# sourceMappingURL=CoreConfigFiles.d.ts.map