import { ChannelChartConfiguration } from "../components/system-admin/architecture-monitoring/architecture-monitoring.component";

export interface PRTGReportDetailsResponse{
  error: boolean;
  msg: string;
  response: PRTGReportDetails;
}

export interface PRTGLastReportsListResponse{
  error: boolean;
  msg: string;
  response: PRTGReportDetails[];
}

export interface PRTGReportDetails{
  ID_REPORTE: string;
  FECHA_REGISTRO: string;
  DATOS: string;
  REPORTE?: PRTGTreeItem[];
}

export interface PRTGTreeItem{
  channel: ChannelInformation,
  last_measurement: LastMeasurementInformation;
  lookup_definition: any;
  path: ChannelInformation[];
  unit: UnitInformation;
}

export interface ChannelInformation{
  href: string;
  id: string;
  name: string;
  type: string;
}

export interface LastMeasurementInformation{
  average: number;
  display_average: number;
  display_maximum: number;
  display_minimum: number;
  display_value: number;
  display_volume: any;
  lookup_text: any[];
  maximum: number;
  minimum: number;
  timestamp: string;
  value: number;
  volume: any;
}

export interface UnitInformation{
  custom: any;
  decimal_digits: any;
  decimal_mode: string;
  display_unit: string;
  display_volume_unit: any;
  percent: any,
  type: string;
}

export interface PRTGChannelConfig{
  channel: string;
  name: string;
  route: string;
  state: boolean;
  currentValue: string;
  minValue: string;
  maxValue: string;
  chartConfig: ChannelChartConfiguration;
}