import { StyleValue } from 'vue'
export type LcbActionViewProps = {
  /** 跳转路径 */
  jumpUrl?: string
  urlParams?: string
  customClass?: string
  customStyle?: StyleValue
  renderMode?: 'view' | 'button'
  autoJumpSecond?: number
} & (
  | {
      /**
       * 跳转类型 1: 网页 2: 小程序内页 10: 跳转小程序 11: 跳转半屏小程序 12: 小程序客服
       * 13: 退出登录 14: 小程序弹框 16: 小程序锚点  17 网络请求 21: 新窗口跳到页面 22: 切换TAB页 23: 重启进入某页面
       * 24: 回到上一层 25: 关闭当前页面 26: 关闭当前窗口 30: 拨打电话
       * 88: 授权手机号 101 用户头像 102 分享 103 意见反馈  104 	打开授权设置页
       * 105 查看地图 106 查看地图 141 二维码 241 返回并刷新上个页面  142 模板消息
       * 107 图片预览
       * 143 下载图片
       */
      jumpType?:
        | 1
        | 2
        | 10
        | 11
        | 12
        | 13
        | 14
        | 16
        | 21
        | 22
        | 23
        | 24
        | 25
        | 26
        | 88
        | 101
        | 102
        | 103
        | 104
        | 241
        | 143
      /** 小程序appid */
      jumpAppid?: string
      /** 弹窗文案 */
      content?: string
      /** 弹窗标题 */
      title?: string
      /** 弹窗位置 */
      position?: string
    }
  | {
      jumpType: 30
      phoneNumber?: string
    }
  | {
      jumpType: 17
      requestInfo?: {
        requestUrl: string
        requestParams: Record<string, any>
        /** 请求之后刷新schemapage */
        refreshSchemaPage?: boolean
      }
    }
  | {
      jumpType: 105
      addressInfo?: {
        address: string
        latitude: number
        longitude: number
        name: string
      }
    }
  | {
      jumpType: 106
      requestParam?: Record<string, any>
    }
  | {
      jumpType: 141
    }
  | {
      jumpType: 107
      content: {
        imgUrl: string
        typeName: string
      }[]
    }
  | {
      jumpType: 142
      events: string
    }
)
