import * as React from 'react'; import { ReactElement } from 'react'; import { Series } from 'victory-vendor/d3-shape'; import { Props as SectorProps } from '../shape/Sector'; import { ImplicitLabelListType } from '../component/LabelList'; import { BarPositionPosition } from '../util/ChartUtils'; import { ActiveShape, AnimationDuration, AnimationTiming, DataKey, LayoutType, LegendType, PolarViewBoxRequired, PresentationAttributesAdaptChildEvent, TickItem, TooltipType } from '../util/types'; import { BaseAxisWithScale } from '../state/selectors/axisSelectors'; import { ChartData } from '../state/chartDataSlice'; import { AxisId } from '../state/cartesianAxisSlice'; import { ZIndexable } from '../zIndex/ZIndexLayer'; export type RadialBarDataItem = SectorProps & PolarViewBoxRequired & { value?: any; payload?: any; background?: SectorProps; }; type RadialBarBackground = boolean | (ActiveShape & ZIndexable); interface InternalRadialBarProps extends ZIndexable { activeShape?: ActiveShape; /** * @defaultValue 0 */ angleAxisId?: AxisId; /** * @defaultValue 0 */ animationBegin?: number; /** * @defaultValue 1500 */ animationDuration?: AnimationDuration; /** * @defaultValue ease */ animationEasing?: AnimationTiming; /** * @defaultValue false */ background?: RadialBarBackground; /** * So in Bar, this can be a percent value - but that won't work in RadialBar. RadialBar: only numbers. */ barSize?: number; className?: string; /** * @defaultValue false */ cornerIsExternal?: boolean; /** * @defaultValue 0 */ cornerRadius?: string | number; /** * @defaultValue [] */ data?: ReadonlyArray; dataKey: string | number | ((obj: any) => any); /** * @defaultValue false */ forceCornerRadius?: boolean; /** * @defaultValue false */ hide?: boolean; /** * @defaultValue auto */ isAnimationActive?: boolean | 'auto'; /** * @defaultValue false */ label?: ImplicitLabelListType; /** * @defaultValue rect */ legendType?: LegendType; maxBarSize?: number; /** * @defaultValue 0 */ minPointSize?: number; onAnimationEnd?: () => void; onAnimationStart?: () => void; /** * @defaultValue 0 */ radiusAxisId?: AxisId; shape?: ActiveShape; stackId?: string | number; tooltipType?: TooltipType; } export type RadialBarProps = Omit, 'ref'> & InternalRadialBarProps; export declare const defaultRadialBarProps: { readonly angleAxisId: 0; readonly animationBegin: 0; readonly animationDuration: 1500; readonly animationEasing: "ease"; readonly background: false; readonly cornerIsExternal: false; readonly cornerRadius: 0; readonly data: ReadonlyArray; readonly forceCornerRadius: false; readonly hide: false; readonly isAnimationActive: "auto"; readonly label: false; readonly legendType: "rect"; readonly minPointSize: 0; readonly radiusAxisId: 0; readonly zIndex: 300; }; export declare function computeRadialBarDataItems({ displayedData, stackedData, dataStartIndex, stackedDomain, dataKey, baseValue, layout, radiusAxis, radiusAxisTicks, bandSize, pos, angleAxis, minPointSize, cx, cy, angleAxisTicks, cells, startAngle: rootStartAngle, endAngle: rootEndAngle, }: { displayedData: ChartData; stackedData: Series, DataKey> | undefined; dataStartIndex: number; stackedDomain: ReadonlyArray | null; dataKey: DataKey | undefined; baseValue: number | unknown; layout: LayoutType; radiusAxis: BaseAxisWithScale; radiusAxisTicks: ReadonlyArray | undefined; bandSize: number; pos: BarPositionPosition; angleAxis: BaseAxisWithScale; minPointSize: number; cx: number; cy: number; angleAxisTicks: ReadonlyArray | undefined; cells: ReadonlyArray | undefined; startAngle: number; endAngle: number; }): ReadonlyArray; export declare function RadialBar(outsideProps: RadialBarProps): React.JSX.Element; export declare namespace RadialBar { var displayName: string; } export {};