import * as React from 'react';
import { IgRect } from "igniteui-react-core";
import { IgrMultiSliderThumbCollection } from "./igr-multi-slider-thumb-collection";
import { MultiSliderOrientation } from "./MultiSliderOrientation";
import { IgrMultiSliderResolvingToolTipValueEventArgs } from "./igr-multi-slider-resolving-tool-tip-value-event-args";
import { IgrMultiSliderThumbValueChangingEventArgs } from "./igr-multi-slider-thumb-value-changing-event-args";
import { IgrMultiSliderYValueChangingEventArgs } from "./igr-multi-slider-y-value-changing-event-args";
import { MultiSlider } from "./MultiSlider";
import { ContentChildrenManager } from "igniteui-react-core";
export declare class IgrMultiSlider<P extends IIgrMultiSliderProps = IIgrMultiSliderProps> extends React.Component<P, {}> {
    protected createImplementation(): MultiSlider;
    protected _implementation: any;
    protected mounted: boolean;
    get nativeElement(): HTMLElement;
    /**
     * @hidden
     */
    get i(): MultiSlider; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgrMultiSlider;
    protected onImplementationCreated(): void;
    protected _contentChildrenManager: ContentChildrenManager;
    constructor(props: P);
    componentDidMount(): void;
    shouldComponentUpdate(nextProps: any, nextState: any): boolean;
    render(): any;
    private _thumbs;
    /**
     * Gets the column definitions that are assigned to the grid. This collection can be modified to add or remove columns in the grid.
    */
    get thumbs(): IgrMultiSliderThumbCollection;
    set thumbs(v: IgrMultiSliderThumbCollection);
    get min(): number;
    set min(v: number);
    get max(): number;
    set max(v: number);
    get step(): number;
    set step(v: number);
    get yMax(): number;
    set yMax(v: number);
    get yMin(): number;
    set yMin(v: number);
    get yStep(): number;
    set yStep(v: number);
    /**
     * Gets or sets the scaling value used to affect the pixel density of the control.
     * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
     * to appear blurry.
    */
    get pixelScalingRatio(): number;
    set pixelScalingRatio(v: number);
    get actualPixelScalingRatio(): number;
    set actualPixelScalingRatio(v: number);
    get windowRect(): IgRect;
    set windowRect(v: IgRect);
    get yValue(): number;
    set yValue(v: number);
    get startInset(): number;
    set startInset(v: number);
    get endInset(): number;
    set endInset(v: number);
    get trackStartInset(): number;
    set trackStartInset(v: number);
    get trackEndInset(): number;
    set trackEndInset(v: number);
    get yTrackStartInset(): number;
    set yTrackStartInset(v: number);
    get yTrackEndInset(): number;
    set yTrackEndInset(v: number);
    get barExtent(): number;
    set barExtent(v: number);
    get orientation(): MultiSliderOrientation;
    set orientation(v: MultiSliderOrientation);
    get thumbBrush(): string;
    set thumbBrush(v: string);
    get thumbStrokeThickness(): number;
    set thumbStrokeThickness(v: number);
    get thumbOutline(): string;
    set thumbOutline(v: string);
    get thumbWidth(): number;
    set thumbWidth(v: number);
    get thumbHeight(): number;
    set thumbHeight(v: number);
    get barBrush(): string;
    set barBrush(v: string);
    get barOutline(): string;
    set barOutline(v: string);
    get barStrokeThickness(): number;
    set barStrokeThickness(v: number);
    get rangeThumbBrush(): string;
    set rangeThumbBrush(v: string);
    get rangeThumbOutline(): string;
    set rangeThumbOutline(v: string);
    get rangeThumbStrokeThickness(): number;
    set rangeThumbStrokeThickness(v: number);
    get rangeThumbRidgesBrush(): string;
    set rangeThumbRidgesBrush(v: string);
    get thumbRidgesBrush(): string;
    set thumbRidgesBrush(v: string);
    get calloutBrush(): string;
    set calloutBrush(v: string);
    get calloutTextColor(): string;
    set calloutTextColor(v: string);
    get calloutOutline(): string;
    set calloutOutline(v: string);
    get calloutStrokeThickness(): number;
    set calloutStrokeThickness(v: number);
    get isCustomThumbProvided(): boolean;
    get isCustomRangeThumbProvided(): boolean;
    get isCustomBarProvided(): boolean;
    get isCustomShadeProvided(): boolean;
    get areThumbCalloutsEnabled(): boolean;
    set areThumbCalloutsEnabled(v: boolean);
    get thumbCalloutTextStyle(): string;
    set thumbCalloutTextStyle(v: string);
    findByName(name: string): any;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected get hasUserValues(): Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    /**
     * Called by the UI framework to provide a UI container for rendering this control.
    
    * @param container  * The UI container element.
    */
    provideContainer(container: any): void;
    flush(): void;
    trackDirty(): void;
    /**
     * Shows the ZoomSlider.
    
    */
    show(): void;
    /**
     * Hides the ZoomSlider.
    
    */
    hide(): void;
    private _resolvingToolTipValue;
    private _resolvingToolTipValue_wrapped;
    get resolvingToolTipValue(): (s: IgrMultiSlider, e: IgrMultiSliderResolvingToolTipValueEventArgs) => void;
    set resolvingToolTipValue(ev: (s: IgrMultiSlider, e: IgrMultiSliderResolvingToolTipValueEventArgs) => void);
    private _thumbValueChanging;
    private _thumbValueChanging_wrapped;
    get thumbValueChanging(): (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void;
    set thumbValueChanging(ev: (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void);
    private _thumbValueChanged;
    private _thumbValueChanged_wrapped;
    get thumbValueChanged(): (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void;
    set thumbValueChanged(ev: (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void);
    private _yValueChanging;
    private _yValueChanging_wrapped;
    get yValueChanging(): (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void;
    set yValueChanging(ev: (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void);
    private _yValueChanged;
    private _yValueChanged_wrapped;
    get yValueChanged(): (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void;
    set yValueChanged(ev: (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void);
}
export interface IIgrMultiSliderProps {
    children?: React.ReactNode;
    min?: number | string;
    max?: number | string;
    step?: number | string;
    yMax?: number | string;
    yMin?: number | string;
    yStep?: number | string;
    /**
     * Gets or sets the scaling value used to affect the pixel density of the control.
     * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
     * to appear blurry.
    */
    pixelScalingRatio?: number | string;
    actualPixelScalingRatio?: number | string;
    windowRect?: IgRect | string;
    yValue?: number | string;
    startInset?: number | string;
    endInset?: number | string;
    trackStartInset?: number | string;
    trackEndInset?: number | string;
    yTrackStartInset?: number | string;
    yTrackEndInset?: number | string;
    barExtent?: number | string;
    orientation?: MultiSliderOrientation | string;
    thumbBrush?: string;
    thumbStrokeThickness?: number | string;
    thumbOutline?: string;
    thumbWidth?: number | string;
    thumbHeight?: number | string;
    barBrush?: string;
    barOutline?: string;
    barStrokeThickness?: number | string;
    rangeThumbBrush?: string;
    rangeThumbOutline?: string;
    rangeThumbStrokeThickness?: number | string;
    rangeThumbRidgesBrush?: string;
    thumbRidgesBrush?: string;
    calloutBrush?: string;
    calloutTextColor?: string;
    calloutOutline?: string;
    calloutStrokeThickness?: number | string;
    areThumbCalloutsEnabled?: boolean | string;
    thumbCalloutTextStyle?: string;
    resolvingToolTipValue?: (s: IgrMultiSlider, e: IgrMultiSliderResolvingToolTipValueEventArgs) => void;
    thumbValueChanging?: (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void;
    thumbValueChanged?: (s: IgrMultiSlider, e: IgrMultiSliderThumbValueChangingEventArgs) => void;
    yValueChanging?: (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void;
    yValueChanged?: (s: IgrMultiSlider, e: IgrMultiSliderYValueChangingEventArgs) => void;
}
