1 | import { NodeInstance, SelectableNode } from '../graph/nodes';
|
2 | import { GraphTask, ITaskHandler, ITaskHandlerApi } from './types';
|
3 | declare type ITaskHandlerWithNoId<T extends GraphTask = GraphTask, N extends NodeInstance = NodeInstance> = Omit<ITaskHandler<T, N>, 'id' | 'selector'> & {
|
4 | selector(node: SelectableNode): boolean;
|
5 | };
|
6 | export declare class TaskHandler<T extends GraphTask = GraphTask, N extends NodeInstance = NodeInstance> implements ITaskHandler<T, N> {
|
7 | private decoratee;
|
8 | id: string;
|
9 | constructor(decoratee: ITaskHandlerWithNoId<T, N>, id: string);
|
10 | selector(node: SelectableNode): node is N;
|
11 | run(node: N, api: ITaskHandlerApi<T>): Promise<import("./types").GraphTaskResult<T>>;
|
12 | }
|
13 | export declare const createTaskHandler: <T extends GraphTask = GraphTask, N extends NodeInstance = NodeInstance>(decoratee: ITaskHandlerWithNoId<T, N>, id: string) => TaskHandler<T, N>;
|
14 | export {};
|