import type { InputHTMLAttributes, ReactNode } from 'react';
import type { InputCustomProps } from '../common-type';
export type RangeInputSize = 'sm' | 'md' | 'lg';
export interface RangeInputProps extends Omit, 'type' | 'size'>, InputCustomProps {
/**
* Size scale of the slider (`"sm"` | `"md"` | `"lg"`). Defaults to `"md"`.
*/
size?: RangeInputSize;
/** Extra class for outer wrapper */
wrapperClass?: string;
/** Input container class */
containerClass?: string;
/** Label class */
labelClass?: string;
/** Error message */
error?: string | ReactNode;
/** Helper guidance message rendered below the slider */
helperText?: ReactNode;
/** Whether to display current value on the right side of the slider. Defaults to `true`. */
showValue?: boolean;
/** String suffix appended to value display (e.g. `"%"`, `"px"`, `"₹"`) */
valueSuffix?: string;
/** Floating value tooltip popup badge displayed above the thumb on hover or drag */
showTooltip?: boolean;
/** Step tick marks displayed along slider track (boolean or map of values to labels) */
marks?: boolean | Record;
}