import type { TguPlanStatus } from "../../../model/tguTypes";

export type Tgu2DMapSelection =
  | {
      type: "polygon";
      id: string;
      name: string;
      layer: "planWorks" | "swath" | "tracks" | "requests" | "complexPlan" | "heatmap";
      planId?: string;
      spacecraftId?: string;
      requestId?: string;
      surveyType?: string;
      status?: TguPlanStatus;
      /** id режима плана (включения) для polygon-ов слоя planWorks — связь с работой таймлайна. */
      modeId?: number;
      /** Номер витка (layer "swath") — для карточки полосы обзора. */
      revolution?: number;
      /** Важность ячейки тепловой карты (layer "heatmap"). */
      importance?: number;
      /** Номер ячейки сетки заданий (layer "heatmap"). */
      cellNum?: number;
    }
  | {
      type: "line";
      id: string;
      name: string;
      layer: "tracks";
      /** Вид линии: трасса КА или сеанс сброса. */
      kind?: "track" | "drop";
      /** id режима плана (drop) — связь с работой таймлайна. */
      modeId?: number;
    }
  | {
      type: "marker";
      id: string;
      name: string;
      layer: "stations" | "spacecraftMarkers";
      spacecraftId?: string;
      stationNumber?: number;
      lat?: number;
      lon?: number;
      altitude?: number;
      elevationMin?: number;
      elevationMax?: number;
    };

