import { ChartConfiguration, ChartOptions } from 'chart.js';

export interface BarConfig {
    barChartData: ChartConfiguration<'bar'>['data'],
    barChartOptions: ChartConfiguration<'bar'>['options'],
    barChartPlugins: ChartConfiguration<'bar'>['plugins'],
    barChartLegend: boolean
}

export interface CircleConfig {
    circleChartLabels: string[],
    circleChartDatasets: ChartConfiguration<'doughnut'>['data']['datasets'],
    circleChartOptions: ChartConfiguration<'doughnut'>['options'],
    circleChartPlugins: ChartConfiguration<'doughnut'>['plugins'],
    circleChartLegend: boolean
}

export interface DoughnutConfig {
    doughnutChartLabels: string[],
    doughnutChartDatasets: ChartConfiguration<'doughnut'>['data']['datasets'],
    doughnutChartOptions: ChartConfiguration<'doughnut'>['options'],
    doughnutChartLegend: boolean
}

export interface LineConfig {
    lineChartData: ChartConfiguration<'line'>['data'],
    lineChartOptions: ChartOptions<'line'>,
    lineChartLegend: boolean
}
