import { TopologyDeviceRow } from "./TopologyDeviceCard.js";
import { CSSProperties, ReactNode } from "react";
import { FloorMapViewConfig, PutShopFloorPlanBody } from "@pisell/materials";

//#region src/plus/pisellTopology/types.d.ts
interface PisellTopologyProps {
  className?: string;
  style?: CSSProperties;
  floorMapConfig?: FloorMapViewConfig;
  devices?: TopologyDeviceRow[];
  mode?: 'read' | 'edit';
  floorPlanId?: number | null;
  floorPlanCode?: string;
  floorPlanCanvasWidth?: number;
  floorPlanCanvasHeight?: number;
  floorPlanName?: Record<string, string>;
  floorPlanSort?: number;
  floorPlanStatus?: number;
  putFloorPlan?: (id: number, body: PutShopFloorPlanBody) => Promise<unknown>;
  onFloorPlanPersisted?: () => void;
  onSave?: (config: FloorMapViewConfig) => void;
  overviewHud?: ReactNode | false;
}
//#endregion
export { PisellTopologyProps };