import { TuiControl } from '@taiga-ui/cdk/classes';
import * as i0 from "@angular/core";
import * as i1 from "./range-change.directive";
export declare class TuiRange extends TuiControl<[number, number]> {
    private readonly el;
    private readonly sliders;
    protected lastActiveThumb: 'end' | 'start';
    readonly min: import("@angular/core").InputSignal<number>;
    readonly max: import("@angular/core").InputSignal<number>;
    readonly step: import("@angular/core").InputSignal<number>;
    readonly segments: import("@angular/core").InputSignal<number>;
    readonly keySteps: import("@angular/core").InputSignal<[[0, number], ...[number, number][], [100, number]] | undefined>;
    readonly focusable: import("@angular/core").InputSignal<boolean>;
    readonly margin: import("@angular/core").InputSignal<number>;
    readonly limit: import("@angular/core").InputSignal<number>;
    readonly start: import("@angular/core").Signal<number>;
    readonly end: import("@angular/core").Signal<number>;
    readonly thumbs: import("@angular/core").Signal<readonly [HTMLInputElement, HTMLInputElement]>;
    protected readonly segmentWidthRatio: import("@angular/core").Signal<number>;
    protected readonly fractionStep: import("@angular/core").Signal<number>;
    protected readonly computedKeySteps: import("@angular/core").Signal<[[0, number], ...[number, number][], [100, number]]>;
    processValue(value: number, end: boolean): void;
    takeStep(coefficients: readonly [number, number]): readonly [number, number];
    toValue(fraction: number): number;
    protected get rtl(): boolean;
    protected changeByStep(coefficient: number, target: HTMLElement): void;
    protected toPercent(value: number): number;
    private updateStart;
    private updateEnd;
    private checkDistance;
    static ɵfac: i0.ɵɵFactoryDeclaration<TuiRange, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TuiRange, "tui-range", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "segments": { "alias": "segments"; "required": false; "isSignal": true; }; "keySteps": { "alias": "keySteps"; "required": false; "isSignal": true; }; "focusable": { "alias": "focusable"; "required": false; "isSignal": true; }; "margin": { "alias": "margin"; "required": false; "isSignal": true; }; "limit": { "alias": "limit"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiRangeChange; inputs: {}; outputs: { "activeThumbChange": "activeThumbChange"; }; }]>;
}
