import { EventEmitter } from '../../stencil-public-runtime';
export declare class SpwInputSlider {
    el: HTMLElement;
    /** Valeur minimale du slider */
    min: number;
    /** Valeur maximale du slider */
    max: number;
    /** Pas d'incrémentation */
    step: number;
    /** Valeur actuelle (simple) ou valeurs [min, max] (range) */
    value?: number | [number, number];
    /** Active le mode range (deux poignées) */
    range: boolean;
    /** Désactive le slider */
    disabled: boolean;
    /** Nom du champ pour les formulaires */
    name: string;
    /** Orientation du slider */
    orientation: 'horizontal' | 'vertical';
    /** Affiche un tooltip avec la valeur au-dessus de la poignée */
    hasTooltip: boolean;
    /** Label du champ */
    label: string;
    /** Texte d'assistance affiché sous le label */
    assistiveText?: string;
    /** Message d'erreur */
    error?: string;
    /** Message d'information */
    hint?: string;
    /** Message de succès */
    success?: string;
    /** Message d'avertissement */
    warning?: string;
    /** Afficher l'icône d'erreur */
    showErrorIcon?: boolean;
    /** Afficher l'icône d'information */
    showHintIcon?: boolean;
    /** Afficher l'icône de succès */
    showSuccessIcon?: boolean;
    /** Afficher l'icône d'avertissement */
    showWarningIcon?: boolean;
    /** Champ requis */
    required?: boolean;
    /** Aria label pour l'accessibilité */
    accAriaLabel?: string;
    /** Titre du tooltip */
    tooltipTitle?: string;
    /** Texte du tooltip */
    tooltipText?: string;
    /** Largeur maximale du tooltip */
    tooltipMaxWidth?: string;
    /** Positionnement du tooltip */
    tooltipDirection?: 'top' | 'bottom' | 'left' | 'right';
    /** Curseur du tooltip */
    tooltipCursor?: 'pointer' | 'default' | 'help' | 'disabled';
    internalValue: number | [number, number];
    isDragging: boolean;
    activeHandle: 'min' | 'max' | null;
    internals: ElementInternals;
    /** Événement émis lorsque la valeur change */
    valueChange: EventEmitter<{
        value: number | [number, number];
    }>;
    handleValueChange(newValue: number | [number, number]): void;
    private sliderRef;
    private defaultValue;
    componentWillLoad(): void;
    private initializeValue;
    /** Méthode publique pour définir la valeur */
    setValue(newValue: number | [number, number]): Promise<void>;
    /** Méthode publique pour obtenir la valeur */
    getValue(): Promise<number | [number, number]>;
    /** Callback appelé lors du reset du formulaire */
    formResetCallback(): void;
    private updateFormValue;
    private clampValue;
    private handleMouseDown;
    private handleMouseMove;
    private handleMouseUp;
    private updateValueFromPosition;
    private getHandlePosition;
    private getRangeStyle;
    private renderErrorMessage;
    private renderHintMessage;
    private renderSuccessMessage;
    private renderWarningMessage;
    private get elementClass();
    render(): any;
}
