import { RangeBarAccessibilityProps, RangeBarAppearanceProps, RangeBarEventsProps, RangeBarRangeProps } from '../../types';
export interface RangeBarProps {
    /** Dominio y valor del intervalo. */
    range: RangeBarRangeProps;
    /** Emisión de cambios de valor. */
    events: RangeBarEventsProps;
    /** Variante cromática del relleno y punto interior. */
    appearance?: RangeBarAppearanceProps;
    /** Etiquetas de grupo y por thumb. */
    accessibility?: RangeBarAccessibilityProps;
    /** Deshabilita interacción y atenua la pista. */
    disabled?: boolean;
    /**
     * Sangrado horizontal (`RANGE_BAR_TRACK_BLEED_X`, 10px) para que los thumbs de 20px no se recorten
     * en 0% / 100%. En layouts muy estrechos (p. ej. `RangeSelector` compacto) se puede desactivar.
     * @default true
     */
    trackBleed?: boolean;
    /** Clases en el contenedor externo (ref). */
    className?: string;
}
/**
 * **RangeBar** — pista con dos thumbs para elegir un intervalo `[start, end]` dentro de `[min, max]`.
 *
 * Basado en Figma *Range Bar* (`1:983`): pista 8px, radios pill, thumbs 20px con borde y punto interior.
 * Flujos: arrastre de extremos, click en pista (mueve el thumb más cercano), teclado en thumbs (flechas/Home/End).
 * Cuando los dos thumbs coinciden, no se cruzan (sin intercambio). Si arrastras encimados: hacia la
 * **izquierda** actúa el extremo **start** (y recibe foco); hacia la **derecha** el **end**. Un clic
 * en la pista sin arrastre sigue acercando el valor al punto pulsado.
 *
 * @example
 * ```tsx
 * const [v, setV] = useState({ start: 2.5, end: 4 });
 * <RangeBar
 *   range={{ min: 0, max: 5, step: 0.5, value: v }}
 *   events={{ onChange: setV }}
 *   appearance={{ color: 'brand' }}
 * />
 * ```
 */
export declare const RangeBar: import('react').ForwardRefExoticComponent<RangeBarProps & import('react').RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=RangeBar.d.ts.map