@rushstack/heft
Version:
Build all your JavaScript projects the same way: A way that works.
61 lines • 1.95 kB
TypeScript
import { HeftTask, type IHeftTask } from './HeftTask';
import type { InternalHeftSession } from './InternalHeftSession';
import type { IHeftConfigurationJsonPhaseSpecifier } from '../utilities/CoreConfigFiles';
import type { IDeleteOperation } from '../plugins/DeleteFilesPlugin';
/**
* @public
*/
export interface IHeftPhase {
readonly phaseName: string;
readonly phaseDescription: string | undefined;
cleanFiles: ReadonlySet<IDeleteOperation>;
consumingPhases: ReadonlySet<IHeftPhase>;
dependencyPhases: ReadonlySet<IHeftPhase>;
tasks: ReadonlySet<IHeftTask>;
tasksByName: ReadonlyMap<string, IHeftTask>;
}
/**
* @internal
*/
export declare class HeftPhase implements IHeftPhase {
private _internalHeftSession;
private _phaseName;
private _phaseSpecifier;
private _consumingPhases;
private _dependencyPhases;
private _cleanFiles;
private _tasks;
private _tasksByName;
constructor(internalHeftSession: InternalHeftSession, phaseName: string, phaseSpecifier: IHeftConfigurationJsonPhaseSpecifier);
/**
* The name of the phase.
*/
get phaseName(): string;
/**
* The description of the phase.
*/
get phaseDescription(): string | undefined;
/**
* Returns delete operations that are specified on the phase.
*/
get cleanFiles(): ReadonlySet<IDeleteOperation>;
/**
* Returns the set of phases that depend on this phase.
*/
get consumingPhases(): ReadonlySet<HeftPhase>;
/**
* Returns the set of phases that this phase depends on.
*/
get dependencyPhases(): ReadonlySet<HeftPhase>;
/**
* Returns the set of tasks contained by this phase.
*/
get tasks(): ReadonlySet<HeftTask>;
/**
* Returns a map of tasks by name.
*/
get tasksByName(): ReadonlyMap<string, HeftTask>;
private _ensureTasks;
private _validate;
}
//# sourceMappingURL=HeftPhase.d.ts.map