import type { ChartDataPoint, ChartConfig } from '../../types/chart.types';
import type { ChartScales } from '../../hooks/useChartScales';
import type { ChartDimensions, ChartMargins } from '../ChartContainer';
import type { MultiSeriesData } from '../ChartTooltip';
export interface BarRendererProps {
    /**
     * Chart data
     */
    data: ChartDataPoint[];
    /**
     * Chart configuration
     */
    config: ChartConfig;
    /**
     * Calculated scales (from useChartScales or ChartContainer)
     */
    scales: ChartScales;
    /**
     * Chart dimensions
     */
    dimensions: ChartDimensions;
    /**
     * Chart margins
     */
    margin: ChartMargins;
    /**
     * Whether bars are stacked
     */
    stacked?: boolean;
    /**
     * Bar radius (rounded corners)
     */
    radius?: number;
    /**
     * Gap between bars in a group
     */
    gap?: number;
    /**
     * Gap between categories
     */
    categoryGap?: number;
    /**
     * Whether to show animation
     */
    showAnimation?: boolean;
    /**
     * Hovered category index
     */
    hoveredCategory?: number | null;
    /**
     * Set hovered category
     */
    onHoverCategory?: (index: number | null) => void;
    /**
     * Mouse enter handler for tooltip
     */
    onMouseEnter?: (e: React.MouseEvent, content: MultiSeriesData, coordinates: {
        x: number;
        y: number;
        dimensions: ChartDimensions;
    }) => void;
    /**
     * Mouse move handler for tooltip
     */
    onMouseMove?: (e: React.MouseEvent, coordinates: {
        x: number;
        y: number;
        dimensions: ChartDimensions;
    }) => void;
    /**
     * Mouse leave handler for tooltip
     */
    onMouseLeave?: () => void;
    /**
     * Focused element index (keyboard navigation)
     */
    focusedElementIndex?: number;
    /**
     * Whether in keyboard navigation mode
     */
    isKeyboardMode?: boolean;
    /**
     * Additional CSS class name
     */
    className?: string;
}
/**
 * Animation timing constants
 */
export declare const BAR_ANIMATION_TIMING: {
    readonly STACKED_CATEGORY_DELAY: 0.25;
    readonly STACKED_SEGMENT_STAGGER: 0.12;
    readonly GROUPED_BAR_STAGGER: 0.05;
};
