import { default as React, ReactElement, FC } from 'react';
import { MotionStyle } from 'motion/react';
import { ArcData } from '..';
import { ChartTooltip, ChartTooltipProps } from '../../common/Tooltip';
import { Gradient, GradientProps } from '../../common/Gradient';
export interface PieArcMouseEvent {
    value: ArcData['data'];
    nativeEvent: React.MouseEvent<SVGPathElement>;
}
export interface PieArcProps {
    /**
     * Unique id for arc
     */
    id?: string;
    /**
     * The arc generator function returning an arc path
     * @param data
     */
    arc?: (data: ArcData) => string | null;
    /**
     * Data is the datum passed to the arc generator function
     */
    data?: ArcData;
    /**
     * Color
     */
    color?: string;
    /**
     * Animate
     */
    animated?: boolean;
    /**
     * Tooltip component
     */
    tooltip?: ReactElement<ChartTooltipProps, typeof ChartTooltip> | null;
    /**
     * The cursor type used when hovering
     */
    cursor?: string;
    /**
     * Disable the arc
     */
    disabled?: boolean;
    /**
     * Gradient shades for the bar.
     */
    gradient?: ReactElement<GradientProps, typeof Gradient> | null;
    /**
     * Style for the arc
     */
    style?: MotionStyle;
    /**
     * OnClick event handler
     * @param e Click event
     */
    onClick?: (e: PieArcMouseEvent) => void;
    /**
     * MouseEnter event handler
     * @param e MouseEnter event
     */
    onMouseEnter?: (e: PieArcMouseEvent) => void;
    /**
     * MouseLeave event handler
     * @param e MouseLeave event
     */
    onMouseLeave?: (e: PieArcMouseEvent) => void;
}
export declare const PieArc: FC<PieArcProps>;
