import { TasksRunner } from './tasks-runner';
import { Reporter, ReporterArgs } from './reporter';
import * as yargs from 'yargs';
import type { ProjectGraph, ProjectGraphNode, TargetDependencyConfig, NxJsonConfiguration, Task } from '@nrwl/devkit';
import { Environment } from '../core/shared-interfaces';
import { NxArgs } from '../command-line/utils';
declare type RunArgs = yargs.Arguments & ReporterArgs;
export declare function runCommand<T extends RunArgs>(projectsToRun: ProjectGraphNode[], projectGraph: ProjectGraph, { nxJson, workspaceResults }: Environment, nxArgs: NxArgs, overrides: any, reporter: Reporter, initiatingProject: string | null): Promise<void>;
interface TaskParams {
    project: ProjectGraphNode;
    target: string;
    configuration: string;
    overrides: Object;
    errorIfCannotFindConfiguration: boolean;
}
export declare function createTasksForProjectToRun(projectsToRun: ProjectGraphNode[], params: Omit<TaskParams, 'project' | 'errorIfCannotFindConfiguration'>, projectGraph: ProjectGraph, initiatingProject: string | null, defaultDependencyConfigs?: Record<string, TargetDependencyConfig[]>): Task[];
export declare function createTask({ project, target, configuration, overrides, errorIfCannotFindConfiguration, }: TaskParams): Task;
export declare function getRunner(nxArgs: NxArgs, nxJson: NxJsonConfiguration): {
    tasksRunner: TasksRunner;
    runnerOptions: unknown;
};
export {};
