import type { PropType } from 'vue'
export type SegmentedType = 'large' | 'middle' | 'small'
export interface SegmentedOption {
  value: string | number
  disabled?: boolean
  payload?: any
}
export declare const segmentedProps: {
  /**
   * 当前选中的值
   * 类型: string | number
   * 最低版本: 0.1.23
   */
  value: {
    type: (NumberConstructor | StringConstructor)[]
    required: true
  }
  /**
   * 是否禁用分段器
   * 类型: boolean
   * 默认值: false
   * 最低版本: 0.1.23
   */
  disabled: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 控件尺寸
   * 类型: string
   * 可选值: 'large' | 'middle' | 'small'
   * 默认值: 'middle'
   * 最低版本: 0.1.23
   */
  size: {
    type: PropType<SegmentedType>
    default: SegmentedType
  }
  /**
   * 数据集合
   * 类型: string[] | number[] | SegmentedOption[]
   * 必需: 是
   * 默认值: []
   * 最低版本: 0.1.23
   */
  options: {
    type: PropType<string[] | number[] | SegmentedOption[]>
    required: boolean
    default: () => never[]
  }
  /**
   * 切换选项时是否振动
   * 类型: boolean
   * 默认值: false
   * 最低版本: 0.1.23
   */
  vibrateShort: {
    type: BooleanConstructor
    default: boolean
  }
  customStyle: {
    type: PropType<string>
    default: string
  }
  customClass: {
    type: PropType<string>
    default: string
  }
}
