import { BoxProps, ElementProps, Factory, StylesApiProps } from '@mantine/core';
import { ChartSeries } from '../types';
export declare function getFilteredChartTooltipPayload(payload: Record<string, any>[], segmentId?: string): Record<string, any>[];
export type ChartTooltipStylesNames = 'tooltip' | 'tooltipItem' | 'tooltipItemBody' | 'tooltipItemColor' | 'tooltipItemName' | 'tooltipItemData' | 'tooltipLabel' | 'tooltipBody';
export interface ChartTooltipProps extends BoxProps, StylesApiProps<ChartTooltipFactory>, ElementProps<'div'> {
    /** Main tooltip label */
    label?: React.ReactNode;
    /** Chart data provided by recharts */
    payload: Record<string, any>[] | undefined;
    /** Data units, provided by parent component */
    unit?: string;
    /** Tooltip type that determines the content and styles, `area` for LineChart, AreaChart and BarChart, `radial` for DonutChart and PieChart @default `'area'` */
    type?: 'area' | 'radial' | 'scatter';
    /** Id of the segment to display data for. Only applicable when `type="radial"`. If not set, all data is rendered. */
    segmentId?: string;
    /** Chart series data, applicable only for `area` type */
    series?: ChartSeries[];
    /** A function to format values */
    valueFormatter?: (value: number) => React.ReactNode;
    /** Determines whether the color swatch should be visible @default `true` */
    showColor?: boolean;
}
export type ChartTooltipFactory = Factory<{
    props: ChartTooltipProps;
    ref: HTMLDivElement;
    stylesNames: ChartTooltipStylesNames;
}>;
export declare const ChartTooltip: import("@mantine/core").MantineComponent<{
    props: ChartTooltipProps;
    ref: HTMLDivElement;
    stylesNames: ChartTooltipStylesNames;
}>;
