export interface LinkAccessor { getSourceIndex(l: Link): number; getTargetIndex(l: Link): number; } export interface LinkLengthAccessor extends LinkAccessor { setLength(l: Link, value: number): void; } export declare function symmetricDiffLinkLengths(links: Link[], la: LinkLengthAccessor, w?: number): void; export declare function jaccardLinkLengths(links: Link[], la: LinkLengthAccessor, w?: number): void; export interface IConstraint { left: number; right: number; gap: number; } export interface DirectedEdgeConstraints { axis: string; gap: number; } export interface LinkSepAccessor extends LinkAccessor { getMinSeparation(l: Link): number; } export declare function generateDirectedEdgeConstraints(n: number, links: Link[], axis: string, la: LinkSepAccessor): IConstraint[]; export declare function stronglyConnectedComponents(numVertices: number, edges: Link[], la: LinkAccessor): number[][];