import type { UploadFile } from 'ant-design-vue'

export interface Props {
  modelValue: string

  
  width?: string

  
  isView?: boolean

  
  type?: 'input' | 'image'

  
  imageWidth?: string

  
  imageHeight?: string

  
  maxSize?: number | string

  
  baseUrl?: string

  
  serviceName?: string

  
  pathPrefix?: string

  
  bucketName?: string

  
  minioTokenApi?: string

  
  autoContentType?: boolean

  
  inputProps?: Record<any, any>

  
  imageProps?: Record<any, any>
}

export interface Emits {
  (e: 'update:modelValue', val: string): void

  
  (e: 'upload-success', file: UploadFile, url: string): void

  
  (e: 'upload-fail', file: UploadFile): void
}
