/// import { Tasks } from './Tasks'; import { TaskRunnerRegistry } from './TaskRunnerRegistry'; import { TASK_RUNNER_SPEC } from './Constants'; import { ITaskExectorOptions } from './ITaskExectorOptions'; import { ILoggerApi } from '../../libs/logging/ILoggerApi'; import { TaskRequestFactory } from './worker/TaskRequestFactory'; import { EventEmitter } from 'events'; import { TaskFuture } from './worker/execute/TaskFuture'; import { ITaskRunnerResult } from './ITaskRunnerResult'; import { TaskEvent } from './event/TaskEvent'; export declare class TaskExecutor extends EventEmitter { private executeable; private options; private passedOptions; private params; private spec; private taskNames; private targetIds; tasks: Tasks; taskRunnerRegistry: TaskRunnerRegistry; requestFactory: TaskRequestFactory; constructor(); logger: ILoggerApi; setOptions(options: ITaskExectorOptions): void; /** * Executeable */ isExecuteable(): boolean; /** * Initialize the task executor * * @param taskSpec * @param _argv */ create(taskSpec: TASK_RUNNER_SPEC[], param: any, _argv: ITaskExectorOptions): this; /** * Tells if the task will be executed locally, can be used after "create" method */ isLocally(): boolean; /** * Return all options for this task execution */ getOptions(): ITaskExectorOptions; run(asFuture?: boolean): Promise; /** * Task will be executed locally */ executeLocally(): Promise; executeOnWorker(asFuture?: boolean): Promise; register(): Promise; unregister(): Promise; }