import * as React from 'react'; import { PureComponent, ReactElement, MouseEvent, SVGProps } from 'react'; import { RechartsScale } from '../util/ChartUtils'; import { Props as DotProps } from '../shape/Dot'; import { LegendType, TooltipType, AnimationTiming, DataKey, AnimationDuration, ActiveDotType } from '../util/types'; interface RadarPoint { x: number; y: number; cx?: number; cy?: number; angle?: number; radius?: number; value?: number; payload?: any; name?: string; } type RadarDot = ReactElement | ((props: any) => ReactElement) | DotProps | boolean; interface RadarProps { className?: string; dataKey: DataKey; angleAxisId?: string | number; radiusAxisId?: string | number; points?: RadarPoint[]; baseLinePoints?: RadarPoint[]; isRange?: boolean; shape?: ReactElement | ((props: any) => ReactElement); activeDot?: ActiveDotType; dot?: RadarDot; legendType?: LegendType; tooltipType?: TooltipType; hide?: boolean; connectNulls?: boolean; label?: any; onAnimationStart?: () => void; onAnimationEnd?: () => void; animationBegin?: number; animationDuration?: AnimationDuration; isAnimationActive?: boolean; animationEasing?: AnimationTiming; onMouseEnter?: (props: any, e: MouseEvent) => void; onMouseLeave?: (props: any, e: MouseEvent) => void; } export type RadiusAxisForRadar = { scale: RechartsScale; }; export type AngleAxisForRadar = { scale: RechartsScale; type: 'number' | 'category'; dataKey: DataKey | undefined; cx: number; cy: number; }; export type Props = Omit, 'onMouseEnter' | 'onMouseLeave' | 'points' | 'ref'> & RadarProps; export type RadarComposedData = { points: RadarPoint[]; baseLinePoints: RadarPoint[]; isRange: boolean; }; export declare function computeRadarPoints({ radiusAxis, angleAxis, displayedData, dataKey, bandSize, }: { radiusAxis: RadiusAxisForRadar; angleAxis: AngleAxisForRadar; displayedData: any[]; dataKey: RadarProps['dataKey']; bandSize: number; }): RadarComposedData; export declare class Radar extends PureComponent { static displayName: string; static defaultProps: Partial; render(): React.JSX.Element; } export {};