import * as React from 'react';
import { SliderItem, GetHandleProps, GetTrackProps } from 'react-compound-slider';
import { RangeValues } from './Range';
/**************** RANGE SLIDER SUBCOMPONENTS *********************/
/***  handles ***/
interface IHandleProps {
    domain: number[];
    handle: SliderItem;
    getHandleProps: GetHandleProps;
}
export declare const Handle: React.FunctionComponent<IHandleProps>;
/***   track  ***/
interface ITrackProps {
    source: SliderItem;
    target: SliderItem;
    getTrackProps: GetTrackProps;
}
export declare const Track: React.FunctionComponent<ITrackProps>;
/***   tick  ***/
interface ITickProps {
    key: string;
    tick: SliderItem;
    count: number;
    mode?: 'SHOWALL' | 'SHOWNONE' | 'SHOWMINMAX';
}
export declare const Tick: React.FunctionComponent<ITickProps>;
/*************  RANGE SLIDER COMPONENT ****************/
export declare type RangeSliderProps = {
    domain: string[];
    initialValues: RangeValues;
    step: number;
    doUpdateOnApply?: boolean;
    maxTickCount?: number;
    onChange: Function;
};
export declare type RangeSliderState = {
    values: readonly number[];
};
export declare const RangeSlider: React.FunctionComponent<RangeSliderProps>;
export {};
