import { ElementRef, EventEmitter, OnInit, OnDestroy, TemplateRef } from '@angular/core';
import { SliderHandle } from '../slider.common';
import { Subject } from 'rxjs';
import { IgxDirectionality } from '../../services/direction/directionality';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class IgxSliderThumbComponent implements OnInit, OnDestroy {
    private _elementRef;
    private _dir;
    value: any;
    continuous: boolean;
    thumbLabelVisibilityDuration: number;
    disabled: boolean;
    onPan: Subject<number>;
    stepDistance: number;
    step: number;
    templateRef: TemplateRef<any>;
    context: any;
    type: SliderHandle;
    deactiveState: boolean;
    min: number;
    max: number;
    labels: any[];
    thumbValueChange: EventEmitter<number>;
    thumbChange: EventEmitter<any>;
    thumbBlur: EventEmitter<void>;
    hoverChange: EventEmitter<boolean>;
    tabindex: number;
    role: string;
    get ariaValueNow(): any;
    get ariaValueMin(): number;
    get ariaValueMax(): number;
    get ariaValueText(): any;
    get ariaLabelAttr(): string;
    ariaOrientation: string;
    get ariaDisabled(): boolean;
    zIndex: number;
    focused: boolean;
    get thumbFromClass(): boolean;
    get thumbToClass(): boolean;
    get thumbFromActiveClass(): boolean;
    get thumbToActiveClass(): boolean;
    get thumbFromDisabledClass(): boolean;
    get thumbToDisabledClass(): boolean;
    get thumbFromPressedClass(): boolean;
    get thumbToPressedClass(): boolean;
    get getDotClass(): {
        'igx-slider-thumb-from__dot': boolean;
        'igx-slider-thumb-to__dot': boolean;
    };
    isActive: boolean;
    get nativeElement(): any;
    get destroy(): Subject<boolean>;
    private _isActive;
    private _isPressed;
    private _destroy$;
    private get thumbPositionX();
    constructor(_elementRef: ElementRef, _dir: IgxDirectionality);
    onPointerEnter(): void;
    onPointerLeave(): void;
    onKeyUp(event: KeyboardEvent): void;
    onKeyDown(event: KeyboardEvent): void;
    onBlur(): void;
    onFocusListener(): void;
    /**
     * @hidden
     */
    ngOnInit(): void;
    /**
     * @hidden
     */
    ngOnDestroy(): void;
    /**
     * Show thumb label and ripple.
     */
    showThumbIndicators(): void;
    /**
     * Hide thumb label and ripple.
     */
    hideThumbIndicators(): void;
    private updateThumbValue;
    private calculateTrackUpdate;
    private stepToProceed;
    private toggleThumbIndicators;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxSliderThumbComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxSliderThumbComponent, "igx-thumb", never, { "value": { "alias": "value"; "required": false; }; "continuous": { "alias": "continuous"; "required": false; }; "thumbLabelVisibilityDuration": { "alias": "thumbLabelVisibilityDuration"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "onPan": { "alias": "onPan"; "required": false; }; "stepDistance": { "alias": "stepDistance"; "required": false; }; "step": { "alias": "step"; "required": false; }; "templateRef": { "alias": "templateRef"; "required": false; }; "context": { "alias": "context"; "required": false; }; "type": { "alias": "type"; "required": false; }; "deactiveState": { "alias": "deactiveState"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; }, { "thumbValueChange": "thumbValueChange"; "thumbChange": "thumbChange"; "thumbBlur": "thumbBlur"; "hoverChange": "hoverChange"; }, never, never, true, never>;
    static ngAcceptInputType_continuous: unknown;
    static ngAcceptInputType_disabled: unknown;
    static ngAcceptInputType_deactiveState: unknown;
}
