UNPKG

@liyown/flow-engine

Version:

一个基于JavaScript的无状态工作流引擎框架,支持可视化拖拽、DSL定义、断点继续、自动重试等高级功能

40 lines (39 loc) 1.05 kB
import { ExecutionContextRuntime, SchemaDefinition } from "../types/index.js"; /** * 节点处理器接口 */ export type NodeHandler = (input: Record<string, any>, context: ExecutionContextRuntime) => Promise<any>; /** * 节点元数据接口 */ export interface NodeMetadata { name: string; description?: string; inputSchema: SchemaDefinition; outputSchema: SchemaDefinition; category?: string; icon?: string; displayName?: string; examples?: Array<{ name: string; input: Record<string, any>; output?: Record<string, any>; }>; } /** * 基础节点类 * 所有具体的节点类都应该继承这个类 */ export declare abstract class BaseNode { abstract readonly name: string; abstract readonly handler: NodeHandler; abstract readonly metadata: NodeMetadata; /** * 执行节点处理器 */ execute(input: Record<string, any>, context: ExecutionContextRuntime): Promise<any>; /** * 获取节点元数据 */ getMetadata(): NodeMetadata; }