UNPKG

nx

Version:

The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.

51 lines (50 loc) 1.75 kB
import { TaskStatus } from './tasks-runner'; import { Task } from '../config/task-graph'; /** * The result of a completed {@link Task} */ export interface TaskResult { task: Task; status: TaskStatus; code: number; terminalOutput?: string; } /** * A map of {@link TaskResult} keyed by the ID of the completed {@link Task}s */ export type TaskResults = Record<string, TaskResult>; export interface TaskMetadata { groupId: number; } export interface LifeCycle { startCommand?(): void | Promise<void>; endCommand?(): void | Promise<void>; scheduleTask?(task: Task): void | Promise<void>; /** * @deprecated use startTasks * * startTask won't be supported after Nx 14 is released. */ startTask?(task: Task): void; /** * @deprecated use endTasks * * endTask won't be supported after Nx 14 is released. */ endTask?(task: Task, code: number): void; startTasks?(task: Task[], metadata: TaskMetadata): void | Promise<void>; endTasks?(taskResults: TaskResult[], metadata: TaskMetadata): void | Promise<void>; printTaskTerminalOutput?(task: Task, status: TaskStatus, output: string): void; } export declare class CompositeLifeCycle implements LifeCycle { private readonly lifeCycles; constructor(lifeCycles: LifeCycle[]); startCommand(): Promise<void>; endCommand(): Promise<void>; scheduleTask(task: Task): Promise<void>; startTask(task: Task): void; endTask(task: Task, code: number): void; startTasks(tasks: Task[], metadata: TaskMetadata): Promise<void>; endTasks(taskResults: TaskResult[], metadata: TaskMetadata): Promise<void>; printTaskTerminalOutput(task: Task, status: TaskStatus, output: string): void; }