UNPKG

d3-graph-controller

Version:

A TypeScript library for visualizing and simulating directed, interactive graphs.

16 lines (15 loc) 912 B
import { Selection } from 'd3-selection'; import { D3ZoomEvent } from 'd3-zoom'; import { GraphConfig } from '../config/config.mjs'; import { Zoom } from './types.mjs'; import { NodeTypeToken } from '../model/graph.mjs'; import { GraphLink } from '../model/link.mjs'; import { GraphNode } from '../model/node.mjs'; export interface DefineZoomParams<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>> { readonly canvasContainer: () => Selection<SVGSVGElement, unknown, null, undefined>; readonly config: GraphConfig<T, Node, Link>; readonly min: number; readonly max: number; readonly onZoom: (event: D3ZoomEvent<SVGSVGElement, undefined>) => void; } export declare function defineZoom<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ canvasContainer, config, min, max, onZoom, }: DefineZoomParams<T, Node, Link>): Zoom;