import type { HTMLAttributes, ReactNode } from 'react'; type DefaultProps = { /** * Slider name */ name?: string; label?: string; helper?: ReactNode; /** * Minimum possible value */ min?: number; /** * Maximum possible value */ max?: number; /** * Direction of the slider decorators (label, inputs, helper, error). Does not impact the direction of the slider itself (horizontal) */ direction?: 'column' | 'row'; /** * Step of the slider */ step?: number; required?: boolean; labelDescription?: ReactNode; /** * Where to position the tooltip */ tooltipPosition?: 'bottom' | 'top'; /** * Whether user can change the value with an input */ input?: boolean; /** * Prefix of the value - only visible when prop `input = false` */ prefix?: ReactNode; /** * Unit of the value */ unit?: string; /** * Whether the slider is disabled */ disabled?: boolean; /** * Whether an error occured */ error?: string | boolean; /** * Display this content instead of the slider value. * For a single slider (`double="false"`), if a prefix or a suffix is defined, this prop overrides them */ customValueDisplay?: ReactNode; /** * Options for a non-linear scale, overrides `min`, `max`. This is usefull if step is not enough to get the desired granularity. */ options?: { value: number; label?: string; }[]; /** * Set this prop to true to display the options without having a non-linear scale */ defaultScale?: boolean; 'data-testid'?: string; } & Pick, 'id' | 'onBlur' | 'onFocus' | 'aria-label' | 'className' | 'style' | 'aria-describedby'>; type SingleProps = { /** * Slider value */ value: number; onChange?: (value: number) => void; tooltip?: boolean | string; /** * Suffix of the value - only visible when prop `input = false` and overrides prop `unit` when visible */ suffix?: ReactNode; }; type DoubleProps = { /** * Slider values */ value: number[]; onChange?: (value: number[]) => void; tooltip?: boolean | string[] | string; /** * Suffix of the value - only visible when prop `input = false` and overrides prop `unit` when visible */ suffix?: string | ReactNode[]; }; export type SliderProps = DefaultProps & (SingleProps | DoubleProps) & { /** * Whether the slider has 2 handles (range) */ double?: boolean; }; export type SingleSliderProps = DefaultProps & SingleProps; export type DoubleSliderProps = DefaultProps & DoubleProps; export type LabelProps = { direction?: 'row' | 'column'; input?: boolean; required?: boolean; label?: string; finalId: string; }; export {}; //# sourceMappingURL=types.d.ts.map