// Type definitions for react-chartjs-2 2.0 // Project: https://github.com/jerairrest/react-chartjs-2 // Definitions by: Alexandre Paré // Fabien Lavocat // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 import * as React from "react"; import * as chartjs from "chart.js"; export type ChartDataFunction = ( element: HTMLElement ) => T; export type ChartData = ChartDataFunction | T; export interface ChartComponentProps { data: ChartData; type?: chartjs.ChartType; getDatasetAtEvent?(e: any): void; getElementAtEvent?(e: any): void; getElementsAtEvent?(e: any): void; height?: number; legend?: chartjs.ChartLegendOptions; onElementsClick?(e: any): void; // alias for getElementsAtEvent (backward compatibility) options?: chartjs.ChartOptions; plugins?: object[]; redraw?: boolean; width?: number; datasetKeyProvider?: (any: any) => any; } export interface LinearComponentProps extends ChartComponentProps { data: ChartData; } export default class ChartComponent< P extends ChartComponentProps > extends React.Component { chartInstance: chartjs; } export class Doughnut extends ChartComponent {} export class Pie extends ChartComponent {} export class Line extends ChartComponent {} export class Scatter extends ChartComponent {} export class Bar extends ChartComponent {} export class HorizontalBar extends ChartComponent {} export class Radar extends ChartComponent {} export class Polar extends ChartComponent {} export class Bubble extends ChartComponent {} export var defaults: { global: chartjs.ChartOptions & chartjs.ChartFontOptions; [key: string]: any; };