import type { PropType } from 'vue'
import type { TransitionName } from '../wd-transition/types'
export type PopupType = 'center' | 'top' | 'right' | 'bottom' | 'left'
export declare const popupProps: {
  /**
   * 动画类型，参见 wd-transition 组件的name
   * 类型：string
   * 可选值：fade / fade-up / fade-down / fade-left / fade-right / slide-up / slide-down / slide-left / slide-right / zoom-in
   */
  transition: PropType<TransitionName>
  /**
   * 关闭按钮
   * 类型：boolean
   * 默认值：false
   */
  closable: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 弹出框的位置
   * 类型：string
   * 默认值：center
   * 可选值：center / top / right / bottom / left
   */
  position: {
    type: PropType<PopupType>
    default: PopupType
  }
  /**
   * 点击遮罩是否关闭
   * 类型：boolean
   * 默认值：true
   */
  closeOnClickModal: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 动画持续时间
   * 类型：number | boolean
   * 默认值：300
   */
  duration: {
    type: (NumberConstructor | BooleanConstructor)[]
    default: number
  }
  /**
   * 是否显示遮罩
   * 类型：boolean
   * 默认值：true
   */
  modal: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 设置层级
   * 类型：number
   * 默认值：10
   */
  zIndex: {
    type: NumberConstructor
    default: number
  }
  /**
   * 是否当关闭时将弹出层隐藏（display: none)
   * 类型：boolean
   * 默认值：true
   */
  hideWhenClose: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 遮罩样式
   * 类型：string
   * 默认值：''
   */
  modalStyle: {
    type: PropType<string>
    default: string
  }
  /**
   * 弹出面板是否设置底部安全距离（iphone X 类型的机型）
   * 类型：boolean
   * 默认值：false
   */
  safeAreaInsetBottom: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 弹出层是否显示
   */
  modelValue: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 弹层内容懒渲染，触发展示时才渲染内容
   * 类型：boolean
   * 默认值：true
   */
  lazyRender: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 是否锁定滚动
   * 类型：boolean
   * 默认值：true
   */
  lockScroll: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 是否从页面中脱离出来，用于解决各种 fixed 失效问题 (H5: teleport, APP: renderjs, 小程序: root-portal)
   * 类型：boolean
   * 默认值：false
   */
  rootPortal: {
    type: BooleanConstructor
    default: boolean
  }
  customStyle: {
    type: PropType<string>
    default: string
  }
  customClass: {
    type: PropType<string>
    default: string
  }
}
