import { LegendProps, PolarAngleAxisProps, PolarGridProps, PolarRadiusAxisProps, RadarProps, RadarChart as ReChartsRadarChart, TooltipProps } from 'recharts';
import { BoxProps, ElementProps, Factory, MantineColor, StylesApiProps } from '@mantine/core';
import { ChartLegendStylesNames } from '../ChartLegend';
import { ChartTooltipStylesNames } from '../ChartTooltip';
import { MantineChartDotProps } from '../types';
export interface RadarChartSeries {
    name: string;
    color: MantineColor;
    strokeColor?: MantineColor;
    opacity?: number;
    label?: string;
}
export type RadarChartStylesNames = 'root' | 'container' | ChartTooltipStylesNames | ChartLegendStylesNames;
export type RadarChartCssVariables = {
    root: '--chart-grid-color' | '--chart-text-color';
};
export interface RadarChartProps extends BoxProps, StylesApiProps<RadarChartFactory>, ElementProps<'div'> {
    /** Data used in the chart */
    data: Record<string, any>[];
    /** Determines which data should be consumed from the `data` array. */
    series: RadarChartSeries[];
    /** Key of the `data` object for axis values */
    dataKey: string;
    /** Controls color of the grid lines. By default, color depends on the color scheme. */
    gridColor?: MantineColor;
    /** Controls color of all text elements. By default, color depends on the color scheme. */
    textColor?: MantineColor;
    /** Determines whether PolarGrid component should be displayed @default `true`. */
    withPolarGrid?: boolean;
    /** Determines whether PolarAngleAxis component should be displayed @default `true` */
    withPolarAngleAxis?: boolean;
    /** Determines whether PolarRadiusAxisProps component should be displayed @default `false` */
    withPolarRadiusAxis?: boolean;
    /** Determines whether Tooltip component should be displayed @default `false` */
    withTooltip?: boolean;
    /** Props passed down to recharts Radar component */
    radarProps?: ((series: RadarChartSeries) => Partial<Omit<RadarProps, 'ref'>>) | Partial<Omit<RadarProps, 'ref'>>;
    /** Props passed down to recharts RadarChart component */
    radarChartProps?: React.ComponentPropsWithoutRef<typeof ReChartsRadarChart>;
    /** Props passed down to recharts PolarGrid component */
    polarGridProps?: Omit<PolarGridProps, 'ref'>;
    /** Props passed down to recharts PolarAngleAxis component */
    polarAngleAxisProps?: Omit<PolarAngleAxisProps, 'ref'>;
    /** Props passed down to recharts PolarRadiusAxis component */
    polarRadiusAxisProps?: Omit<PolarRadiusAxisProps, 'ref'>;
    /** Props passed down to recharts Legend component */
    legendProps?: Omit<LegendProps, 'ref'>;
    /** Props passed down to recharts Tooltip component */
    tooltipProps?: Omit<TooltipProps<any, any>, 'ref'>;
    /** Tooltip position animation duration in ms @default `0` */
    tooltipAnimationDuration?: number;
    /** Determines whether the legend should be displayed @default `false` */
    withLegend?: boolean;
    /** Determines whether dots should be displayed @default `false` */
    withDots?: boolean;
    /** Props passed down to all dots. Ignored if `withDots={false}` is set. */
    dotProps?: MantineChartDotProps;
    /** Props passed down to all active dots. Ignored if `withDots={false}` is set. */
    activeDotProps?: MantineChartDotProps;
    /** Additional components that are rendered inside recharts `RadarChart` component */
    children?: React.ReactNode;
}
export type RadarChartFactory = Factory<{
    props: RadarChartProps;
    ref: HTMLDivElement;
    stylesNames: RadarChartStylesNames;
    vars: RadarChartCssVariables;
}>;
export declare const RadarChart: import("@mantine/core").MantineComponent<{
    props: RadarChartProps;
    ref: HTMLDivElement;
    stylesNames: RadarChartStylesNames;
    vars: RadarChartCssVariables;
}>;
