/** * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC * */ import { TNode } from '../common'; import { TouchEvent } from 'react'; export interface TdSliderProps { /** * 是否禁用组件 */ disabled?: boolean; /** * 滑块当前值文本。
值为 true 显示默认文案;值为 false 不显示滑块当前值文本;
值为 `${value}%` 则表示组件会根据占位符渲染文案;
值类型为函数时,参数 `value` 标识滑块值,参数 `position=start` 表示范围滑块的起始值,参数 `position=end` 表示范围滑块的终点值 * @default false */ label?: string | boolean | TNode<{ value: SliderValue; position?: 'start' | 'end'; }>; /** * 刻度标记,示例:[0, 10, 40, 200] 或者 `{ 10: (val) => val + '%', 50: (h) => }` */ marks?: Array | SliderMarks; /** * 滑块范围最大值 * @default 100 */ max?: number; /** * 滑块范围最小值 * @default 0 */ min?: number; /** * 双游标滑块 * @default false */ range?: boolean; /** * 是否边界值 * @default false */ showExtremeValue?: boolean; /** * 步长 * @default 1 */ step?: number; /** * 滑块风格 * @default default */ theme?: 'default' | 'capsule'; /** * 滑块值 * @default 0 */ value?: SliderValue; /** * 滑块值,非受控属性 * @default 0 */ defaultValue?: SliderValue; /** * 滑块值变化时触发 */ onChange?: (value: SliderValue) => void; /** * 结束拖动时触发 */ onDragend?: (value: SliderValue, e: TouchEvent) => void; /** * 开始拖动时触发 */ onDragstart?: (e: TouchEvent) => void; } export interface SliderMarks { [mark: number]: string | TNode<{ value: number; }>; } export type SliderValue = number | Array;