import { SPen, SPainter, SColor } from "@sybotan-web/draw";
import SGraphyPolygonItem from './newItems/SGraphyPolygonItem'
/**
 * 接口类型
 * @param
 * 传入绘制地图参数的数据类型
 */
//path 和paths 的接口类型
interface dataItemPath {
    X: number,
    Y: number,
    Z: number
}
// 一个空间item中的数据类型 
//包括ColumnList EquipmentList，VirtualWallList，WallList
interface dataItem {
    Id: string,
    Path?: dataItemPath[],
    PointList: dataItemPath[],
    BimId?: string,
    LocationPoint?: dataItemPath,
    Name?: string,
    Paths?: dataItemPath[][],
}
// 一个空间item中的接口类型 
// 包括SpaceList
interface dataSpaceItem {
    Id: string,
    // PointList: dataItemPath[],
    BimId: string,
    LocationPoint: dataItemPath,
    Name: string,
    Paths: dataItemPath[][],
    id: string,
    type: number,                  //item类型
    businessId?: string | null,  //绑定的业务id
    isBusiness?: number,        //业务类型
    fillColor?: SColor,         //填充颜色
    color?: SColor,             //边框颜色
    businessName?: string | null,  //业务名称
    width?: number
}
// 传入的data 的接口类型 
interface dataInterface {
    ColumnList: dataItem[],  //柱体
    EquipmentList: dataItem[], //设备
    SpaceList: dataSpaceItem[], //空间
    VirtualWallList: dataItem[], //虚拟墙
    WallList: dataItem[],    //墙
    images: ImgItemInterface[],  //图片
}
//获取绑定空间的接口
interface businessDataInterface {
    id: string,
    name: string,
    children: string[],
    isAdjacent: boolean,
    isAbut: boolean
}
// 多边形传入的参数接口
interface PolygonItemInterface {
    parent: SGraphyPolygonItem | null //父类
    space: dataSpaceItem,       //传入的item 参数
    businessType?: string
}
// 图片传入的参数接口
interface ImgItemInterface {
    parent: SGraphyPolygonItem | null //父类
    X: number;
    Y: number;
    width: number;
    height: number;
    img: string;
    id?: string;
    name: string;
}

export { dataItemPath, dataItem, dataSpaceItem, dataInterface, businessDataInterface, PolygonItemInterface, ImgItemInterface }