import { ActionType, TaskArguments, TaskDefinition, TasksMap } from "../../../types"; /** * This class defines the DSL used in Builder config files * for creating and overriding tasks. */ export declare class TasksDSL { private readonly _tasks; /** * Creates a task, overrdining any previous task with the same name. * * @remarks The action must await every async call made within it. * * @param name The task's name. * @param description The task's description. * @param action The task's action. * @returns A task definition. */ task(name: string, description?: string, action?: ActionType): TaskDefinition; /** * Creates a task without description, overrdining any previous task * with the same name. * * @remarks The action must await every async call made within it. * * @param name The task's name. * @param action The task's action. * * @returns A task definition. */ task(name: string, action: ActionType): TaskDefinition; /** * Creates an internal task, overrdining any previous task with the same name. * * @remarks The internal tasks won't be displayed in the CLI help messages. * @remarks The action must await every async call made within it. * * @param name The task's name. * @param description The task's description. * @param action The task's action. * @returns A task definition. */ internalTask(name: string, description?: string, action?: ActionType): TaskDefinition; /** * Creates an internal task without description, overrdining any previous * task with the same name. * * @remarks The internal tasks won't be displayed in the CLI help messages. * @remarks The action must await every async call made within it. * * @param name The task's name. * @param action The task's action. * @returns A task definition. */ internalTask(name: string, action: ActionType): TaskDefinition; /** * Retrieves the task definitions. * * @returns The tasks container. */ getTaskDefinitions(): TasksMap; private _addTask; }