import type { IElementRef } from '@melodicdev/core';
import type { Size } from '../../../types/index.js';
/**
 * ml-slider - Range slider input
 *
 * @example
 * ```html
 * <ml-slider label="Volume" value="50"></ml-slider>
 * <ml-slider label="Price" min="0" max="1000" step="10" show-value></ml-slider>
 * ```
 *
 * @fires ml:input - Emitted on each input change
 * @fires ml:change - Emitted on final change (mouseup/touchend)
 */
export declare class SliderComponent implements IElementRef {
    elementRef: HTMLElement;
    /** Label text */
    label: string;
    /** Current value */
    value: number;
    /** Minimum value */
    min: number;
    /** Maximum value */
    max: number;
    /** Step increment */
    step: number;
    /** Slider size */
    size: Size;
    /** Disable the slider */
    disabled: boolean;
    /** Show current value */
    showValue: boolean;
    /** Hint text */
    hint: string;
    /** Error message */
    error: string;
    /** Ratio 0–1 for fill track */
    get ratio(): number;
    /** CSS width for fill that matches native thumb position */
    get fillWidth(): string;
    handleInput: (event: Event) => void;
    handleChange: (event: Event) => void;
}
//# sourceMappingURL=slider.component.d.ts.map