UNPKG

dagre-compound

Version:

A multi-level compound graph layout library based on dagre

89 lines (88 loc) 2.15 kB
import { SafeAny } from './any'; import { Align, RankDir } from './common'; import { AttrDef, BaseEdge } from './graph'; export declare enum HierarchyNodeType { META = 0, OP = 1, SERIES = 2 } export interface HierarchyGraphOption { rankDirection?: RankDir; expanded?: string[]; } export interface HierarchyParams { rankDirection: RankDir; align?: Align; } export interface HierarchyGraphNodeDef { id: SafeAny; width?: number; height?: number; [key: string]: SafeAny; } export interface HierarchyGraphEdgeDef { v: SafeAny; w: SafeAny; weight?: number; [key: string]: SafeAny; } export interface HierarchyGraphCompoundDef { [parent: string]: SafeAny[]; } export interface HierarchyGraphDef { nodes: HierarchyGraphNodeDef[]; edges: HierarchyGraphEdgeDef[]; compound?: HierarchyGraphCompoundDef; } export interface HierarchyBaseNodeInfo { id: SafeAny; name: string; type: HierarchyNodeType | number; cardinality: number; attr: AttrDef; parentNodeName: string | null; coreBox: { width: number; height: number; }; x: number; y: number; width: number; height: number; radius: number; labelHeight: number; labelOffset: number; outboxWidth: number; paddingTop: number; paddingLeft: number; paddingRight: number; paddingBottom: number; path?: SafeAny[]; [key: string]: SafeAny; } export interface HierarchyBaseEdgeInfo { v: string; w: string; weight: number; inbound?: boolean; points: Array<{ x: number; y: number; }>; adjoiningEdge: { w: string; v: string; } | null; baseEdgeList: BaseEdge[]; parentNodeName?: string | null; [key: string]: SafeAny; } export interface HierarchyGraphNodeInfo extends HierarchyBaseNodeInfo { expanded: boolean; nodes: Array<HierarchyBaseNodeInfo | HierarchyGraphNodeInfo>; edges: HierarchyBaseEdgeInfo[]; } export interface HierarchyFlattenedGraphInfo { nodes: Array<HierarchyBaseNodeInfo | HierarchyGraphNodeInfo>; edges: HierarchyBaseEdgeInfo[]; }