import { FC, ReactElement } from 'react';
import { ChartInternalShallowDataShape } from '../../common/data';
import { ColorSchemeType } from '../../common/color';
import { RadialAreaProps, RadialArea } from './RadialArea';
import { RadialLine, RadialLineProps } from './RadialLine';
import { RadialInterpolationTypes } from '../../common/utils/interpolation';
import { RadialPointSeries, RadialPointSeriesProps } from './RadialPointSeries';
import { TooltipAreaProps, TooltipArea } from '../../common/Tooltip';
import { RadialValueMarker, RadialValueMarkerProps } from '../../common';

export type RadialPointSeriesType = 'standard' | 'grouped';
export interface RadialAreaSeriesProps {
    /**
     * Parsed data shape. Set internally by `RadialAreaChart`.
     */
    data: ChartInternalShallowDataShape[];
    /**
     * The type of the chart.
     */
    type?: RadialPointSeriesType;
    /**
     * Color scheme for the series.
     */
    colorScheme: ColorSchemeType;
    /**
     * The outer radius for the chart center.
     */
    outerRadius: number;
    /**
     * The inner radius for the chart center.
     */
    innerRadius: number;
    /**
     * D3 scale for X Axis. Set internally by `RadialAreaChart`.
     */
    xScale: any;
    /**
     * D3 scale for Y Axis. Set internally by `RadialAreaChart`.
     */
    yScale: any;
    /**
     * Id set internally by `RadialAreaChart`.
     */
    id: string;
    /**
     * interpolation set internally by `RadialAreaChart`.
     */
    interpolation: RadialInterpolationTypes;
    /**
     * Whether to animate the enter/update/exit.
     */
    animated: boolean;
    /**
     * Height of the chart. Set internally by `RadialAreaChart`.
     */
    height: number;
    /**
     * Width of the chart. Set internally by `RadialAreaChart`.
     */
    width: number;
    /**
     * Area that is rendered.
     */
    area: ReactElement<RadialAreaProps, typeof RadialArea> | null;
    /**
     * Line that is rendered.
     */
    line: ReactElement<RadialLineProps, typeof RadialLine> | null;
    /**
     * Symbols used to show points.
     */
    symbols: ReactElement<RadialPointSeriesProps, typeof RadialPointSeries> | null;
    /**
     * Tooltip for the chart area.
     */
    tooltip: ReactElement<TooltipAreaProps, typeof TooltipArea>;
    /**
     * Start angle for the first value.
     */
    startAngle?: number;
    /**
     * End angle for the last value.
     */
    endAngle?: number;
    /**
     * Whether the curve should be closed. Set to true by deafult
     */
    isClosedCurve: boolean;
    /**
     * Value markers line for the chart.
     */
    valueMarkers: ReactElement<RadialValueMarkerProps, typeof RadialValueMarker>[] | null;
}
export declare const RadialAreaSeries: FC<Partial<RadialAreaSeriesProps>>;
export declare const RADIAL_AREA_SERIES_DEFAULT_PROPS: Partial<RadialAreaSeriesProps>;
