/// <reference types="react" />
import { BarControllerChartOptions, ChartData, CoreChartOptions, DatasetChartOptions, DoughnutControllerChartOptions, ElementChartOptions, LineControllerChartOptions, Plugin, PluginChartOptions, Point, PolarAreaControllerChartOptions, ScaleChartOptions } from 'chart.js';
import 'chart.js/auto';
import { AnyObject } from 'chart.js/dist/types/basic';
import { _DeepPartialObject } from 'chart.js/dist/types/utils';
export type TCLineDataType = ChartData<'line', (number | Point | null)[], unknown>;
export type TCLineOptionType = _DeepPartialObject<CoreChartOptions<'line'> & ElementChartOptions<'line'> & PluginChartOptions<'line'> & DatasetChartOptions<'line'> & ScaleChartOptions<'line'> & LineControllerChartOptions>;
interface ICChartLineProps {
    data: TCLineDataType;
    options?: TCLineOptionType;
    width?: string | number;
    height?: string | number;
}
export declare const CChartLine: React.FC<ICChartLineProps>;
export type TCBarDataType = ChartData<'bar', (number | Point | null)[], unknown>;
export type TCBarOptionType = _DeepPartialObject<CoreChartOptions<'bar'> & ElementChartOptions<'bar'> & PluginChartOptions<'bar'> & DatasetChartOptions<'bar'> & ScaleChartOptions<'bar'> & BarControllerChartOptions>;
interface ICChartBarProps {
    data: TCBarDataType;
    options?: TCBarOptionType;
    width?: string | number;
    height?: string | number;
    plugin?: Plugin<'bar', AnyObject>[];
}
export declare const CChartBar: React.FC<ICChartBarProps>;
export type TCDoughnutDataType = ChartData<'doughnut', (number | Point | null)[], unknown>;
export type TCDoughnutOptionType = _DeepPartialObject<CoreChartOptions<'doughnut'> & ElementChartOptions<'doughnut'> & PluginChartOptions<'doughnut'> & DatasetChartOptions<'doughnut'> & ScaleChartOptions<'doughnut'> & DoughnutControllerChartOptions>;
interface ICChartDoughnutProps {
    data: TCDoughnutDataType;
    options?: TCDoughnutOptionType;
    width?: string | number;
    height?: string | number;
}
export declare const CChartDoughnut: React.FC<ICChartDoughnutProps>;
export type TCPolarAreaDataType = ChartData<'polarArea', (number | Point | null)[], unknown>;
export type TCPolarAreaOptionType = _DeepPartialObject<CoreChartOptions<'polarArea'> & ElementChartOptions<'polarArea'> & PluginChartOptions<'polarArea'> & DatasetChartOptions<'polarArea'> & ScaleChartOptions<'polarArea'> & PolarAreaControllerChartOptions>;
interface ICChartPolarAreaProps {
    data: TCPolarAreaDataType;
    options?: TCPolarAreaOptionType;
    width?: string | number;
    height?: string | number;
}
export declare const CChartPolarArea: React.FC<ICChartPolarAreaProps>;
export {};
