import { BoxProps, ElementProps, Factory, MantineSize, StylesApiProps } from '../../../core';
export type ColorSliderStylesNames = 'slider' | 'sliderOverlay' | 'thumb';
export interface __ColorSliderProps extends ElementProps<'div', 'onChange'> {
    /** Controlled component value */
    value: number;
    /** Called when value changes */
    onChange?: (value: number) => void;
    /** Called when user stops dragging the slider or uses keyboard to change value */
    onChangeEnd?: (value: number) => void;
    /** Called when user starts dragging the slider */
    onScrubStart?: () => void;
    /** Called when user stops dragging the slider */
    onScrubEnd?: () => void;
    /** Slider size @default 'md' */
    size?: MantineSize | (string & {});
    /** If set, slider thumb can be focused @default true */
    focusable?: boolean;
}
export interface ColorSliderProps extends BoxProps, StylesApiProps<ColorSliderFactory>, __ColorSliderProps, ElementProps<'div', 'onChange'> {
    __staticSelector?: string;
    maxValue: number;
    overlays: React.CSSProperties[];
    round: boolean;
    thumbColor?: string;
}
export type ColorSliderOptions = Omit<ColorSliderProps, 'maxValue' | 'overlays' | 'round' | 'thumbColor'>;
export type ColorSliderFactory = Factory<{
    props: ColorSliderProps;
    ref: HTMLDivElement;
    stylesNames: ColorSliderStylesNames;
}>;
export declare const ColorSlider: import("../../..").MantineComponent<{
    props: ColorSliderProps;
    ref: HTMLDivElement;
    stylesNames: ColorSliderStylesNames;
}>;
