// {"id":425049,"status":true,"name":"Machine Shop","description":"","tags":[],"keywords":[],"extensors":{},"locations":[{"mapId":7216,"waypointIds":[43102987]}],"uris":{"items":[]},"displayMode":1,"_mappedPoints":{"7216":true}}
type JIBESTREAM_DESTINATION_TYPE = {
  id: number;
  status: boolean;
  name: string;
  description: string;
  tags: string[];
  keywords: string[];
  extensors: Object;
  locations: JIBESTREAM_LOCATION_TYPE[];
  uris: Object;
  displayMode: number;
  waypoints: JIBESTREAM_WAYPOINT_TYPE[];
};

type JIBESTREAM_WAYPOINT_TYPE = {
  _: {
    id: number;
    status: boolean;
    mapId: number;
    coordinates: number[];
    associations: {
      destinations: number[];
    };
    xyz: {
      x: number;
      y: number;
      z: number;
    };
  };
};

type JIBESTREAM_PATH_TYPE = {
  _: {
    seq: number;
    mapId: number;
    mover: {
      moverId: number;
      speed: number;
      accessiblity: number;
      typeName: string;
      svg: null;
    };
    points: {
      _: {
        id: number;
        status: boolean;
        mapId: number;
        coordinates: number[];
        associations?: {
          destinations: number[];
        };
        xyz: {
          x: number;
          y: number;
          z: number;
        };
      };
    }[];
    cost: number;
    pixelDistance: number;
    mmDistance: number;
  };
};

type JIBESTREAM_LOCATION_TYPE = {
  mapId: number;
  waypointIds: number[];
};

type JIBESTREAM_STYLE_TYPE = {
  fill?: string;
  stroke?: string;
  strokeWidth?: number;
  strokeOpacity?: number;
  opacity?: number;
};

type INSTRUCTION_TYPE = {
  text: string;
  wp?: number;
  dest?: number;
  startPoint?: number[];
  endPoint?: number[];
};
