// 设备类型定义
export type DeviceType = 'server' | 'router' | 'switch' | 'desktop' | 'cloud' | 'text' | 'region';

// 设备状态类型
export type DeviceStatus = 'normal' | 'warning' | 'error';

// 节点数据接口
export interface NodeData {
  label: string;           // 节点标签/名称
  type: DeviceType;        // 节点类型
  ip?: string;             // 节点IP地址
  status?: DeviceStatus;   // 节点状态
  alerts?: number;         // 告警数量
  traffic?: string;        // 流量信息（如"100Mbps"）
  description?: string;    // 节点描述
  // 节点层级关系
  parentId?: string | null; // 父节点ID,null表示根节点
  level?: number;           // 层级（0为一级节点）
  position?: { x: number; y: number }; // 节点位置坐标
}

// 拓扑分组类型(从节点自动生成)
export interface TopoGroup {
  id: string; // 对应节点ID
  name: string; // 对应节点名称
  nodeId: string; // 关联的节点ID
  children?: TopoGroup[]; // 子分组(对应子节点)
  parentId?: string; // 父分组ID
  level: number; // 层级
}

// 链路数据接口
export interface LinkData {
  type?: 'physical' | 'virtual';
  bandwidth?: string;
  traffic?: string;
}

// 链路类型（用于边样式）
export type EdgeType = 'default' | 'straight' | 'step' | 'smoothstep' | 'simplebezier';
