import { type VariantProps } from 'class-variance-authority';
import * as React from 'react';
import { type ChartDataPoint, type ChartSeries, type LegendPosition } from '@/components/molecules/charts/LineChart';
declare const barChartVariants: (props?: ({
    size?: "default" | "sm" | "lg" | "xl" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface BarChartProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof barChartVariants> {
    /** Data points for the chart */
    data: ChartDataPoint[];
    /** Series configuration */
    series: ChartSeries[];
    /** Show Y-axis labels and grid lines */
    showYAxis?: boolean;
    /** Show X-axis labels */
    showXAxis?: boolean;
    /** Y-axis label (title) */
    yAxisLabel?: string;
    /** X-axis label (title) */
    xAxisLabel?: string;
    /** Legend position */
    legendPosition?: LegendPosition;
    /** Custom Y-axis tick values */
    yAxisTicks?: number[];
    /** Format function for Y-axis values */
    yAxisFormat?: (value: number) => string;
    /** Bar display mode */
    barMode?: 'stacked' | 'grouped';
    /** Border radius for bars */
    barRadius?: number;
    /** Gap between bar groups (0-1) */
    barGap?: number;
    /** Gap between bars in a group (0-1) - only for grouped mode */
    barGroupGap?: number;
    /** Show tooltip on hover */
    showTooltip?: boolean;
    /** Accessible label for screen readers */
    'aria-label'?: string;
}
declare function BarChart({ data, series, showYAxis, showXAxis, yAxisLabel, xAxisLabel, legendPosition, yAxisTicks, yAxisFormat, barMode, barRadius, showTooltip, size, className, 'aria-label': ariaLabel, ...props }: BarChartProps): import("react/jsx-runtime").JSX.Element;
declare namespace BarChart {
    var displayName: string;
}
export { BarChart, barChartVariants };
