UNPKG

915 BTypeScriptView Raw
1import { NodeInstance, SelectableNode } from '../graph/nodes';
2import { GraphTask, ITaskHandler, ITaskHandlerApi } from './types';
3declare type ITaskHandlerWithNoId<T extends GraphTask = GraphTask, N extends NodeInstance = NodeInstance> = Omit<ITaskHandler<T, N>, 'id' | 'selector'> & {
4 selector(node: SelectableNode): boolean;
5};
6export 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}
13export declare const createTaskHandler: <T extends GraphTask = GraphTask, N extends NodeInstance = NodeInstance>(decoratee: ITaskHandlerWithNoId<T, N>, id: string) => TaskHandler<T, N>;
14export {};