import type { PropType } from 'vue'
export interface TourStep {
  /**
   * 需要高亮的元素选择器
   */
  element: string
  /**
   * 引导文字内容
   */
  content: string
}
export declare const tourProps: {
  /**
   * 是否显示引导组件，使用 v-model 绑定
   * 类型：boolean
   * 默认值：false
   */
  modelValue: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 引导步骤列表
   * 类型：array
   * 默认值：[]
   */
  steps: {
    type: PropType<TourStep[]>
    default: () => never[]
  }
  /**
   * 引导框的current
   * 类型：number
   * 默认值：0
   */
  current: {
    type: NumberConstructor
    default: number
  }
  /**
   * 蒙版是否显示
   * 类型：boolean
   * 默认值：true
   */
  mask: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 蒙版颜色（支持 rgba 格式）
   * 类型：string
   * 默认值：'rgba(0, 0, 0, 0.5)'
   */
  maskColor: {
    type: PropType<string>
    default: string
  }
  /**
   * 引导框与高亮元素之间的间距
   * 类型：number
   * 默认值：20
   */
  offset: {
    type: NumberConstructor
    default: number
  }
  /**
   * 动画持续时间（毫秒）
   * 类型：number
   * 默认值：300
   */
  duration: {
    type: NumberConstructor
    default: number
  }
  /**
   * 高亮区域的圆角大小
   * 类型：number
   * 默认值：8
   */
  borderRadius: {
    type: NumberConstructor
    default: number
  }
  /**
   * 高亮区域的内边距
   * 类型：number
   * 默认值：8
   */
  padding: {
    type: NumberConstructor
    default: number
  }
  /**
   * 上一步按钮文字
   */
  prevText: {
    type: PropType<string>
    default: string
  }
  /**
   * 下一步按钮文字
   */
  nextText: {
    type: PropType<string>
    default: string
  }
  /**
   * 跳过按钮文字
   */
  skipText: {
    type: PropType<string>
    default: string
  }
  /**
   * 完成按钮文字
   */
  finishText: {
    type: PropType<string>
    default: string
  }
  /**
   * 安全偏移量，用于滚动计算时确保元素周围有足够的空间
   * 类型：number
   * 默认值：100
   */
  bottomSafetyOffset: {
    type: NumberConstructor
    default: number
  }
  /**
   * 顶部安全偏移量，用于滚动计算时确保元素周围有足够的空间
   * 类型：number
   * 默认值：0
   */
  topSafetyOffset: {
    type: NumberConstructor
    default: number
  }
  /**
   * 是否自定义顶部导航栏
   * 类型：boolean
   * 默认值：false
   */
  customNav: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 点击蒙版是否可以下一步
   * 类型：boolean
   * 默认值：false
   */
  clickMaskNext: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 高亮区域样式
   * 类型：object
   * 默认值：{}
   */
  highlightStyle: {
    type: PropType<Record<string, any>>
    default: () => {}
  }
  /**
   * 引导框的层级
   * 类型：number
   * 默认值：999998
   */
  zIndex: {
    type: NumberConstructor
    default: number
  }
  /**
   * 是否显示引导按钮
   * 类型：boolean
   * 默认值：true
   */
  showTourButtons: {
    type: BooleanConstructor
    default: boolean
  }
  customStyle: {
    type: PropType<string>
    default: string
  }
  customClass: {
    type: PropType<string>
    default: string
  }
}
export type TourProps = typeof tourProps
