d3-graph-controller
Version:
A TypeScript library for visualizing and simulating directed, interactive graphs.
12 lines (11 loc) • 777 B
text/typescript
import { GraphConfig } from '../config/config.mjs';
import { Drag, NodeDragEvent } from './types.mjs';
import { NodeTypeToken } from '../model/graph.mjs';
import { GraphLink } from '../model/link.mjs';
import { GraphNode } from '../model/node.mjs';
export interface DefineDragParams<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>> {
readonly config: GraphConfig<T, Node, Link>;
readonly onDragStart: (event: NodeDragEvent<T, Node>, d: Node) => void;
readonly onDragEnd: (event: NodeDragEvent<T, Node>, d: Node) => void;
}
export declare function defineDrag<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ config, onDragStart, onDragEnd, }: DefineDragParams<T, Node, Link>): Drag<T, Node>;