import type { ComponentPublicInstance, ExtractPropTypes } from 'vue'
export declare const imgCropperProps: {
  /**
   * 打开图片裁剪组件
   */
  modelValue: {
    type: BooleanConstructor
    default: boolean
  }
  /**
   * 取消按钮文案
   */
  cancelButtonText: StringConstructor
  /**
   * 确认按钮文案
   */
  confirmButtonText: StringConstructor
  /**
   * 是否禁用旋转
   */
  disabledRotate: {
    type: BooleanConstructor
    default: boolean
  }
  /** canvas绘图参数 start **/
  /**
   * 目标文件的类型，wx.canvasToTempFilePath属性介绍
   */
  fileType: {
    type: import('vue').PropType<string>
    default: string
  }
  /**
   * 生成的图片质量 wx.canvasToTempFilePath属性介绍
   */
  quality: {
    type: NumberConstructor
    default: number
  }
  /**
   * 设置导出图片尺寸
   */
  exportScale: {
    type: NumberConstructor
    default: number
  }
  /** canvas绘图参数 end **/
  /**
   * 图片源路径
   */
  imgSrc: {
    type: import('vue').PropType<string>
    default: string
  }
  /**
   * 图片宽
   */
  imgWidth: {
    type: (NumberConstructor | StringConstructor)[]
    default: string
  }
  /**
   * 图片高
   */
  imgHeight: {
    type: (NumberConstructor | StringConstructor)[]
    default: string
  }
  /**
   * 最大缩放
   */
  maxScale: {
    type: NumberConstructor
    default: number
  }
  customStyle: {
    type: import('vue').PropType<string>
    default: string
  }
  customClass: {
    type: import('vue').PropType<string>
    default: string
  }
}
export type ImgCropperProps = ExtractPropTypes<typeof imgCropperProps>
export type ImgCropperExpose = {
  /**
   * 逆转是否使用动画
   */
  revertIsAnimation: (animation: boolean) => void
  /**
   * 初始化图片的大小和角度以及距离
   */
  resetImg: () => void
  /**
   * 控制旋转角度
   * @param angle 角度
   */
  setRoate: (angle: number) => void
}
export type ImgCropperInstance = ComponentPublicInstance<ImgCropperProps, ImgCropperExpose>
