import { type CSSProperties, type InputHTMLAttributes } from 'react';
import { type CssLength } from '../../../utils/css';
type CircularRangeLabel = {
value: number;
label: string;
};
type CircularRangeVariant = 'default' | 'speedometer' | 'full-circle' | 'oven' | 'left-arc' | 'top-arc' | 'bottom-arc';
type CircularRangeSliderProps = {
value?: number;
defaultValue?: number;
onChange?: (value: number) => void;
min?: number;
max?: number;
step?: number;
shiftStep?: number;
startAngle?: number;
endAngle?: number;
reverse?: boolean;
indices?: number;
labels?: readonly CircularRangeLabel[];
activeLabel?: number;
enableMin?: boolean;
suffix?: string;
variant?: CircularRangeVariant;
label?: string;
disabled?: boolean;
name?: string;
id?: string;
size?: CssLength;
trackWidth?: CssLength;
formatValue?: (value: number) => string;
className?: string;
style?: CSSProperties;
inputProps?: Omit, 'aria-label' | 'aria-valuetext' | 'className' | 'disabled' | 'id' | 'max' | 'min' | 'name' | 'onChange' | 'step' | 'style' | 'type' | 'value'>;
};
declare const CIRCULAR_RANGE_VARIANTS: {
readonly default: {
readonly min: 0;
readonly max: 100;
readonly step: 1;
readonly defaultValue: 50;
readonly startAngle: 220;
readonly endAngle: 500;
readonly suffix: "%";
readonly indices: 11;
readonly labels: {
value: number;
label: string;
}[];
};
readonly speedometer: {
readonly min: 0;
readonly max: 200;
readonly step: 1;
readonly defaultValue: 90;
readonly startAngle: 220;
readonly endAngle: 500;
readonly suffix: " km";
readonly indices: 50;
readonly labels: {
value: number;
label: string;
}[];
readonly enableMin: true;
};
readonly 'full-circle': {
readonly min: 0;
readonly max: 100;
readonly step: 5;
readonly defaultValue: 50;
readonly startAngle: 0;
readonly endAngle: 360;
readonly suffix: "%";
readonly indices: 21;
readonly labels: {
value: number;
label: string;
}[];
};
readonly oven: {
readonly min: 0;
readonly max: 330;
readonly step: 5;
readonly defaultValue: 110;
readonly startAngle: 20;
readonly endAngle: 340;
readonly suffix: "°C";
readonly indices: 67;
readonly labels: {
value: number;
label: string;
}[];
};
readonly 'left-arc': {
readonly min: 0;
readonly max: 100;
readonly step: 1;
readonly defaultValue: 50;
readonly startAngle: 180;
readonly endAngle: 360;
readonly suffix: "%";
readonly indices: 11;
readonly reverse: true;
};
readonly 'top-arc': {
readonly min: 0;
readonly max: 100;
readonly step: 1;
readonly defaultValue: 50;
readonly startAngle: 270;
readonly endAngle: 450;
readonly suffix: "$";
};
readonly 'bottom-arc': {
readonly min: 0;
readonly max: 100;
readonly step: 1;
readonly defaultValue: 50;
readonly startAngle: 90;
readonly endAngle: 270;
readonly suffix: "dB";
readonly reverse: true;
};
};
declare const CircularRangeSlider: ({ value, defaultValue, onChange, min, max, step, shiftStep, startAngle, endAngle, reverse, indices, labels, activeLabel, enableMin, suffix, variant, label, disabled, name, id, size, trackWidth, formatValue, className, style, inputProps, }: CircularRangeSliderProps) => import("react/jsx-runtime").JSX.Element;
export { CircularRangeSlider, CIRCULAR_RANGE_VARIANTS };
export type { CircularRangeLabel, CircularRangeSliderProps, CircularRangeVariant, };