/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { ICustomElementFoundation } from '@tylertech/forge-core';
import { ISliderAdapter } from './slider-adapter';
import { SliderLabelBuilder } from './slider-constants';
export interface ISliderFoundation extends ICustomElementFoundation {
    ariaLabel: string | null;
    ariaLabelStart: string | null;
    ariaLabelEnd: string | null;
    value: number;
    valueStart: number;
    valueEnd: number;
    label: string;
    labelStart: string;
    labelEnd: string;
    labelBuilder: SliderLabelBuilder;
    min: number;
    max: number;
    step: number;
    tickmarks: boolean;
    labeled: boolean;
    range: boolean;
    disabled: boolean;
    readonly: boolean;
}
export declare class SliderFoundation implements ISliderFoundation {
    private readonly _adapter;
    private _value;
    private _valueStart;
    private _valueEnd;
    private _labelStart;
    private _labelEnd;
    private _labelBuilder;
    private _min;
    private _max;
    private _step;
    private _tickmarks;
    private _labeled;
    private _range;
    private _disabled;
    private _readonly;
    private readonly _pointerEnterListener;
    private readonly _pointerMoveListener;
    private readonly _pointerLeaveListener;
    private readonly _changeUpdateListener;
    private readonly _focusListener;
    constructor(_adapter: ISliderAdapter);
    initialize(): void;
    private _update;
    private _clampMinMax;
    private _applyInputListeners;
    private _handlePointerEnter;
    private _handlePointerMove;
    private _handlePointerLeave;
    private _handleInputUpdate;
    private _handleFocus;
    private _canClamp;
    get value(): number;
    set value(value: number);
    get valueStart(): number;
    set valueStart(value: number);
    get valueEnd(): number;
    set valueEnd(value: number);
    get label(): string;
    set label(value: string);
    get labelStart(): string;
    set labelStart(value: string);
    get labelEnd(): string;
    set labelEnd(value: string);
    get labelBuilder(): SliderLabelBuilder;
    set labelBuilder(cb: SliderLabelBuilder);
    get min(): number;
    set min(value: number);
    get max(): number;
    set max(value: number);
    get step(): number;
    set step(value: number);
    get tickmarks(): boolean;
    set tickmarks(value: boolean);
    get labeled(): boolean;
    set labeled(value: boolean);
    get range(): boolean;
    set range(value: boolean);
    get disabled(): boolean;
    set disabled(value: boolean);
    get readonly(): boolean;
    set readonly(value: boolean);
    set ariaLabel(value: string | null);
    set ariaLabelStart(value: string | null);
    set ariaLabelEnd(value: string | null);
}
