diff --git a/types/recharts/index.d.ts b/types/recharts/index.d.ts index 460a1813ff..311330b06d 100644 --- a/types/recharts/index.d.ts +++ b/types/recharts/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Recharts 0.22 +// Type definitions for Recharts 1.0 // Project: http://recharts.org/ // Definitions by: Maarten Mulders // Raphael Mueller @@ -10,6 +10,11 @@ import * as React from 'react'; export type Percentage = string; export type RechartsFunction = () => void; +export type LabelFormatter = (label: string | number) => React.ReactNode; +export type TooltipFormatter = (value: string | number | Array, name: string, + entry: TooltipPayload, index: number) => React.ReactNode; +export type ItemSorter = (a: T, b: T) => number; +export type ContentRenderer

= (props: P) => React.ReactNode; export type LegendType = 'line' | 'square' | 'rect' | 'circle' | 'cross' | 'diamond' | 'square' | 'star' | 'triangle' | 'wye' | 'none'; export type LayoutType = 'horizontal' | 'vertical'; @@ -153,7 +158,7 @@ export interface CartesianAxisProps { tickSize?: number; interval?: "preserveStart" | "preserveEnd" | "preserveStartEnd" | number; tick?: boolean | any | React.ReactElement | RechartsFunction; - label?: string | number | React.ReactElement | RechartsFunction; + label?: string | number | React.ReactElement | ContentRenderer; mirror?: boolean; } @@ -261,7 +266,7 @@ export interface LegendProps { chartWidth?: number; chartHeight?: number; margin?: Margin; - content?: React.ReactElement | RechartsFunction; + content?: React.ReactElement | ContentRenderer; wrapperStyle?: any; onClick?: RechartsFunction; onMouseDown?: RechartsFunction; @@ -540,7 +545,7 @@ export interface ReferenceAreaProps { viewBox?: ViewBox; xAxis?: any; yAxis?: any; - label?: string | number | React.ReactElement | RechartsFunction; + label?: string | number | React.ReactElement | ContentRenderer; isFront?: boolean; } @@ -551,10 +556,11 @@ export interface ReferenceDotProps { yAxisId?: string | number; x: number | string; y: number | string; + r: number; alwaysShow?: boolean; xAxis: any; yAxis: any; - label?: string | number | React.ReactElement | RechartsFunction; + label?: string | number | React.ReactElement | ContentRenderer; isFront?: boolean; onClick?: RechartsFunction; onMouseDown?: RechartsFunction; @@ -577,7 +583,7 @@ export interface ReferenceLineProps { viewBox?: ViewBox; xAxis?: any; yAxis?: any; - label?: string | number | React.ReactElement | RechartsFunction; + label?: string | number | React.ReactElement | ContentRenderer; isFront?: boolean; } @@ -589,6 +595,7 @@ export interface ResponsiveContainerProps { height?: Percentage | number; minWidth?: number; minHeight?: number; + maxHeight?: Percentage | number; debounce?: number; } @@ -683,7 +690,7 @@ export interface Coordinate { } export interface TooltipPayload { name: string; - value: number; + value: string | number | Array; unit: string; } export interface TooltipProps { @@ -698,13 +705,14 @@ export interface TooltipProps { coordinate?: Coordinate; payload?: TooltipPayload[]; label?: string | number; - content?: React.ReactElement | React.StatelessComponent | RechartsFunction; - formatter?: RechartsFunction; - labelFormatter?: RechartsFunction; - itemSorter?: RechartsFunction; + content?: React.ReactElement | React.StatelessComponent | ContentRenderer; + formatter?: TooltipFormatter; + labelFormatter?: LabelFormatter; + itemSorter?: ItemSorter; isAnimationActive?: boolean; animationBegin?: number; animationEasing?: AnimationEasingType; + filterNull?: boolean; } export class Tooltip extends React.Component { } @@ -722,11 +730,11 @@ export interface TreemapProps { export interface Label { viewBox?: ViewBox | PolarViewBox; - formatter?: RechartsFunction; + formatter?: LabelFormatter; value: string | number; position?: PositionType; offset?: number; - content?: React.ReactElement | RechartsFunction; + content?: React.ReactElement | ContentRenderer