import { BoxProps, ElementProps, Factory, StylesApiProps } from '@mantine/core'; import { ChartSeries } from '../types'; export declare function getFilteredChartLegendPayload(payload: readonly Record[]): Record[]; export type ChartLegendStylesNames = 'legendItem' | 'legendItemColor' | 'legendItemName' | 'legend'; export interface ChartLegendProps extends BoxProps, StylesApiProps, ElementProps<'div'> { /** Chart data provided by recharts */ payload: readonly Record[] | undefined; /** Function called when mouse enters/leaves one of the legend items */ onHighlight: (area: string | null) => void; /** Position of the legend relative to the chart, used to apply margin on the corresponding side */ legendPosition: 'top' | 'bottom' | 'middle'; /** Data used for labels, only applicable for area charts: AreaChart, LineChart, BarChart */ series?: ChartSeries[]; /** Determines whether color swatch should be shown next to the label @default `true` */ showColor?: boolean; /** Determines whether the legend should be centered @default `false` */ centered?: boolean; } export type ChartLegendFactory = Factory<{ props: ChartLegendProps; ref: HTMLDivElement; stylesNames: ChartLegendStylesNames; }>; export declare const ChartLegend: import("@mantine/core").MantineComponent<{ props: ChartLegendProps; ref: HTMLDivElement; stylesNames: ChartLegendStylesNames; }>;