export enum ContentType {
  EVENTS = 'events',
  TABLE = 'Table',
  LINECHART = 'Linechart',
  BARCHART = 'Barchart',
  LINECHART24 = 'Linechart24',
  BARCHART24 = 'Barchart24',
  THERMOMETER = 'Thermometer',
  TODOS = 'ToDos',
  BALKEN = 'Balken',
  CollectedEvents = 'CollectedEvents',
  INTERVALLAUFGABEN = 'Intervallaufgaben',
  INTERVALLAUFGABEN_ZUWEISEN = 'Intervallaufgaben_zuweisen',
  TORTENDIAGRAMM = 'Tortendiagramm_Ausstehende_Messungen',
  TORTENDIAGRAMMTOTAL = 'Tortendiagramm-Aufgaben',
  MAP = 'Map',
  INFO = 'Info',
}

export type DashType =
  | 'events'
  | 'Table'
  | 'Linechart'
  | 'Barchart'
  | 'Linechart24'
  | 'Barchart24'
  | 'Thermometer'
  | 'ToDos'
  | 'CollectedEvents'
  | 'Balken'
  | 'Intervallaufgaben'
  | 'Intervallaufgaben_zuweisen'
  | 'Tortendiagramm_Ausstehende_Messungen'
  | 'Tortendiagramm-Aufgaben'
  | 'Map'
  | 'Info';

export type DashConfig = {
  dashboard_id: number;
  id: number;
  content_id: number;
  name: string;
  dashboard_name: string;
  position: Position;
  refresh_time: number;
  content_count: number;
  content_type: ContentType;
};

export type IframeConfig = {
  dashboard_id: number;
  id: number;
  content_id: number;
  position: Position;
  name: string;
  url: string;
  refresh_time: number;
};

export type Position = {
  x: number;
  y: number;
  height: number;
  width: number;
  z_index?: number;
};

export type DashSetting = {
  id: number;
  content_id: number;
  name: string;
  position: Position;
  refresh_time: number;
  content_count: number;
  type: ContentType;
};

export type PointItem = {
  ticket_id: number;
  long_id: string;
  open_tickets?: number;
  name: string;
  current_name: string;
  created_at: Date;
  comment: string;
  color: string;
  group_id: number;
  report: string;
  group_name: string;
};

export type TicketItem = {
  ticket_id: number;
  long_id: string;
  open_tickets?: number;
  name: string;
  current_name: string;
  created_at: Date;
  comment: string;
  color: string;
  group_id: number;
  report: string;
  group_name: string;
  html_info: any;
};
