export interface CanvasNode { type: 'group' | 'text'; id: string; x: number; y: number; width: number; height: number; color?: string; label?: string; text?: any; }; export interface CanvasEdge { id: string; fromNode: string; fromSide: 'bottom' | 'top' | 'left' | 'right'; toNode: string; toSide: 'bottom' | 'top' | 'left' | 'right'; color?: string; label?: string; };