UNPKG

d3-graph-controller

Version:

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

37 lines (36 loc) 2.18 kB
import { Vector } from 'vecti'; import { GraphConfig } from '../config/config.mjs'; import { NodeTypeToken } from '../model/graph.mjs'; import { GraphLink } from '../model/link.mjs'; import { GraphNode } from '../model/node.mjs'; export interface PathParams<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>> { readonly config: GraphConfig<T, Node, Link>; readonly source: Node; readonly target: Node; } export interface ReflexivePathParams<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>> { readonly config: GraphConfig<T, Node, Link>; readonly node: Node; readonly center: Vector; } declare function paddedLinePath<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>(params: PathParams<T, Node, Link>): string; declare function lineLinkTextTransform<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>(params: PathParams<T, Node, Link>): string; declare function paddedArcPath<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ config, source, target }: PathParams<T, Node, Link>): string; declare function paddedReflexivePath<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ center, config, node }: ReflexivePathParams<T, Node, Link>): string; declare function bidirectionalLinkTextTransform<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ config, source, target }: PathParams<T, Node, Link>): string; declare function reflexiveLinkTextTransform<T extends NodeTypeToken, Node extends GraphNode<T>, Link extends GraphLink<T, Node>>({ center, config, node }: ReflexivePathParams<T, Node, Link>): string; declare const _default: { line: { labelTransform: typeof lineLinkTextTransform; path: typeof paddedLinePath; }; arc: { labelTransform: typeof bidirectionalLinkTextTransform; path: typeof paddedArcPath; }; reflexive: { labelTransform: typeof reflexiveLinkTextTransform; path: typeof paddedReflexivePath; }; }; export default _default;