import React, { SyntheticEvent } from 'react';
import 'rheostat/initialize';
import { SliderHandleAriaContext } from './context';
import './range-slider.less';
import { ValueOf } from '../types';
export declare const RANGE_SLIDER_SIZES: {
    readonly MD: "md";
    readonly LG: "lg";
    readonly XL: "xl";
};
export type RangeSliderSizes = ValueOf<typeof RANGE_SLIDER_SIZES>;
export type AlgorithmProps = {
    getPosition(value: number, min: number, max: number): number;
    getValue(pos: number, min: number, max: number): number;
};
export type CustomOptionsProps = {
    className: string;
    onMouseDown: (event?: SyntheticEvent) => void;
};
export type DefaultProps = {
    disabled: boolean;
    style: string;
};
export type CustomizedDefaultProgressBarProps = {
    customOptions: CustomOptionsProps;
    defaultProps: DefaultProps;
};
export type DefaultPitComponentProps = {
    style: object;
    children: number;
    values: Array<number>;
};
export type RangeSliderProps = {
    values?: number[];
    max?: number;
    min?: number;
    onValuesUpdated?: ({ values }: {
        values: number[];
    }) => void;
    pitPoints?: number[];
    snapPoints?: number[];
    snap?: boolean;
    pitComponent?: React.ElementType;
    progressBar?: React.ElementType;
    handle?: React.ElementType;
    onChange?: ({ values }: {
        values: number[];
    }) => void;
    onSliderDragStart?: () => void;
    onSliderDragEnd?: () => void;
    isDisabled?: boolean;
    algorithm?: AlgorithmProps;
    size?: RangeSliderSizes;
    customizedDefaultProgressBar?: CustomOptionsProps;
    testId?: string;
    handleAriaLabel?: (context: SliderHandleAriaContext) => string;
    ariaLabelledBy?: string;
    /**
     * Use this to format value to human-readable representation (e.g. timestamp to string)
     * @param context
     */
    handleAriaValueText?: (context: SliderHandleAriaContext) => string;
};
/**
 * RangeSlider - A range slider component, built on https://github.com/airbnb/rheostat
 * @midnight-gray-supported
 * @alpine-light-supported
 */
export default function RangeSlider({ values, onValuesUpdated, min, max, pitPoints, snapPoints, snap, pitComponent, progressBar, handle, onChange, onSliderDragStart, onSliderDragEnd, isDisabled, algorithm, customizedDefaultProgressBar, size, testId, handleAriaLabel, handleAriaValueText, ariaLabelledBy, ...rest }: RangeSliderProps): import("react/jsx-runtime").JSX.Element;
