import type { Promisable, ReadonlyDeep, WritableDeep } from 'type-fest'; import type { PipelineJson } from '../../pipeline/PipelineJson/PipelineJson'; import type { TaskJson } from '../../pipeline/PipelineJson/TaskJson'; import type { TaskProgress } from '../../types/TaskProgress'; import type { Parameters } from '../../types/typeAliases'; import type { ExecutionReportJson } from '../execution-report/ExecutionReportJson'; import type { CreatePipelineExecutorOptions } from './00-CreatePipelineExecutorOptions'; /** * @@@ * * @private internal type of `executeTask` */ type executeSingleTaskOptions = CreatePipelineExecutorOptions & { /** * @@@ */ readonly currentTask: ReadonlyDeep; /** * @@@ */ readonly preparedPipeline: ReadonlyDeep; /** * @@@ */ readonly parametersToPass: Readonly; /** * @@@ */ readonly onProgress: (taskProgress: TaskProgress) => Promisable; /** * @@@ */ readonly $executionReport: WritableDeep; /** * @@@ */ readonly pipelineIdentification: string; }; /** * @@@ * * @private internal utility of `createPipelineExecutor` */ export declare function executeTask(options: executeSingleTaskOptions): Promise>; export {}; /** * TODO: [๐Ÿคนโ€โ™‚๏ธ] */ /** * TODO: [๐Ÿš] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited */