import { ViewItem, SeguesDevConf, SegueDevView } from "../shared/interfaces"; export interface NodeGraphConfig { width: number; height: number; } export interface RouteGraphNode { originalData?: ViewItem; nodeConfig?: NodeGraphConfig; linkX?: number; linkY?: number; node?: HTMLDivElement; x?: number; y?: number; } export interface Edge { source: RouteGraphNode; target: RouteGraphNode; controls?: ControlPointPair; } export declare type LinkVertex = SnappedLinkVertex | FreeLinkVertex; export interface SnappedLinkVertex extends BaseVertex, Partial { node: RouteGraphNode; control?: ControlPoint; } export interface FreeLinkVertex { x: number; y: number; } export interface BaseVertex { top: number; left: number; width: number; height: number; } export declare type ControlPoint = "top" | "right" | "bottom" | "left"; export declare type ControlPointPair = [source: ControlPoint, target: ControlPoint]; export declare type ControlRect = Record; export interface LinkOptions { linkOffsetStart?: number; linkOffsetEnd?: number; cornerRadius?: number; sameAxis?: boolean; } export interface SegueLinkData { source: { instanceId: string; segues: SeguesDevConf; }; target: { alias: string; }; segueId: string; _view: SegueDevView; } export interface SegueLinkError { message: string; }