import { FC, HTMLAttributes, PropsWithChildren } from 'react';
import { RangeSliderOrientation, RangeSliderSize, RangeSliderStep } from './types';
export interface RangeSliderProps extends Omit, 'defaultValue' | 'onChange'> {
/**
* Controlled value for the slider, as a tuple [min, max].
*/
value?: [number, number];
/**
* Uncontrolled initial value for the slider.
*/
defaultValue?: [number, number];
/**
* Maximum allowed value.
* Defaults to 100.
*/
max?: number;
/**
* Minimum allowed value.
* Defaults to 0.
*/
min?: number;
/**
* Step between values.
* Use `'any'` for no snapping.
*/
step?: RangeSliderStep;
/**
* Layout direction: horizontal (default) or vertical.
*/
orientation?: RangeSliderOrientation;
/**
* Custom class name for the root element.
*/
className?: string;
/**
* Size of the slider visuals (thumb, track, etc).
*/
size?: RangeSliderSize;
/**
* Minimum distance allowed between thumbs.
*/
minRange?: number;
/**
* Prevents the thumbs from skipping over each other in a single gesture.
*/
preventSkip?: boolean;
/**
* Called when either thumb value changes.
*/
onChangeValue?(value: [number, number]): void;
/**
* Whether the entire slider is disabled.
*/
disabled?: boolean;
}
/** RangeSlider is a UI component that lets users select a numeric range using two draggable thumbs.
* It’s useful for filters, pricing sliders, or any case where a start and end value need to be chosen. */
export declare const RangeSlider: FC>;