import { __name } from "../../_virtual/_rolldown/runtime.mjs"; import { BaseEdge, BaseEdgeData, BaseEdgeProps, BaseNode, BaseNodeData, BaseNodeProps, NonOptional } from "../../base/types.mjs"; import { FunctionComponent } from "react"; import { Color, DiagramNode, ExclusiveUnion, Fqn, IconUrl, MarkdownOrString, RelationId, RelationshipArrowType, RelationshipLineType, ViewId } from "@likec4/core/types"; import { Simplify } from "type-fest"; //#region src/overlays/relationship-details/_types.d.ts export declare namespace RelationshipDetailsTypes { type Column = 'sources' | 'targets'; /** * The node's incoming and outgoing ports */ type Ports = { in: string[]; out: string[]; }; type ElementNodeData = Simplify> & { column: Column; fqn: Fqn; icon: IconUrl; ports: Ports; }>; type CompoundNodeData = Simplify> & { column: Column; fqn: Fqn; depth: number; icon?: IconUrl; ports: Ports; }>; type ElementNode = BaseNode; type CompoundNode = BaseNode; type AnyNode = ElementNode | CompoundNode; type NodeType = AnyNode['type']; type Node = Extract; type NodeProps = BaseNodeProps>; type NodeData = ExclusiveUnion<{ ElementNodeData: ElementNodeData; CompoundNodeData: CompoundNodeData; }>; type NodeRenderer = FunctionComponent>; type NodeRenderers = { element: NodeRenderer<'element'>; compound: NodeRenderer<'compound'>; }; type EdgeData = Simplify; type Edge = BaseEdge; type EdgeProps = BaseEdgeProps; } //#endregion