import type { GraphOptions } from '../spec'; import type { Animation } from './animation'; import type { BatchController } from './batch'; import type { BehaviorController } from './behavior'; import type { Canvas } from './canvas'; import type { DataController } from './data'; import type { ElementController } from './element'; import type { Graph } from './graph'; import type { LayoutController } from './layout'; import type { PluginController } from './plugin'; import type { TransformController } from './transform'; import type { ViewportController } from './viewport'; export interface RuntimeContext { /** * 图实例 * * Graph instance */ graph: Graph; /** * 画布实例 * * Canvas instance */ canvas: Canvas; /** * G6 配置项 * * G6 options */ options: GraphOptions; /** * 数据模型 * * Data model */ model: DataController; /** * 数据转换控制器 * * Data transform controller */ transform: TransformController; /** * 元素控制器 * * Element controller * @remarks * 仅在绘制开始后才可用 * * Only available after drawing starts */ element?: ElementController; /** * 元素动画执行器 * * Element animation executor */ animation?: Animation; /** * 视口控制器 * * Viewport controller */ viewport?: ViewportController; /** * 布局控制器 * * Layout controller */ layout?: LayoutController; /** * 行为控制器 * * Behavior controller */ behavior?: BehaviorController; /** * 插件控制器 * * Plugin controller */ plugin?: PluginController; /** * 批量操作控制器 * * Batch operation controller */ batch?: BatchController; }