import { ElementRef, EventEmitter, OnInit } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { RangeSliderModel, RangeSliderOptionModel } from './range-slider.model';
import { SupportedEventsModel } from '../common/models/supported-events.model';
export declare class RangeSliderComponent implements ControlValueAccessor, OnInit {
    static readonly defaultProps: RangeSliderModel;
    rangeSlider: ElementRef;
    sliderIndicatorContainer: ElementRef;
    sliderTrack: ElementRef;
    sliderTrackBackground: ElementRef;
    sliderTrackFill: ElementRef;
    sliderTrackInterval: ElementRef;
    onChangeEmitter: EventEmitter<number>;
    classNameInput: string;
    disabledInput: boolean;
    idInput: string | null;
    maxValueInput: number;
    minValueInput: number;
    nameInput: string;
    optionsInput: Array<RangeSliderOptionModel>;
    requiredInput: boolean;
    showTicksInput: boolean;
    stepInput: number;
    valueInput: number;
    className: string;
    disabled: boolean;
    id: string | null;
    isFocused: boolean;
    maxValue: number;
    minValue: number;
    name: string;
    options: Array<RangeSliderOptionModel>;
    required: boolean;
    showTicks: boolean;
    step: number;
    supportTouchEvents: boolean;
    supportedEvents: SupportedEventsModel;
    value: number;
    constructor();
    ngOnInit(): void;
    initValues(): void;
    fillOptions(minValue: number, maxValue: number): Array<RangeSliderOptionModel>;
    actionDown(event: any): void;
    actionMove(event: any): void;
    actionUp(): void;
    updateTrackByEvent(): void;
    updateTrack(): void;
    getValueFromXCoordinate(x: number): number;
    getXCoordinateByEvent(event: any): number;
    getPixelInterval(): number;
    renderTrackInterval(): void;
    animateTrack(x: number, hasAnimation: boolean): void;
    onFocus(event: any): void;
    onBlur(event: any): void;
    setDisabledState(isDisabled: boolean): void;
    writeValue(value: number): void;
    registerOnChange(fn: (value: number) => void): void;
    registerOnTouched(fn: () => void): void;
    onChange(value: number): void;
    onTouched(): void;
}
