import { ChartOptions, ChartTypeRegistry } from 'chart.js'; // Models import { IBaseDataset, IChartCenterLabel, IChartData } from '../models'; import { IChartAnnotation } from './chart-annotation.model'; export interface IChartConfiguration { chartType: keyof ChartTypeRegistry; chartData: IChartData; chartOptions: ChartOptions; height: number; width: number; noDataImage: string; isMultiYAxis?: boolean; isStacked?: boolean; showTooltipBackground?: boolean; showXAxisLabels?: boolean; verticalyAlignBarChartWithLineCart?: boolean; showHighlightPointOnHover?: boolean; isDatasetHoverEnabled?: boolean; isTooltipItemInSelectedItems?: boolean; showBottomLineOnLineChart?: boolean; annotations?: IChartAnnotation[]; // TODO Maybe adjust later or generalize if new use cases appear hasVerticalDashedAnnotation?: boolean; isDashboardChart?: boolean; centerLabels?: IChartCenterLabel[]; selectedIndex?: number | null; }