import * as React from 'react';
import { DraggerProps, UploadProps as RcUploadProps } from 'antd/es/upload';
import { ImageProps } from '../image';
declare module 'antd/es/upload/interface' {
    interface UploadFile {
        delete?: boolean;
    }
}
export declare type UploadListType = 'text' | 'picture' | 'picture-list';
interface UploadProps extends Omit<RcUploadProps, 'type' | 'listType' | 'transformFile' | 'onChange'> {
    /**
     * 上传列表的内建样式，支持三种基本样式 `text`, `picture` 和 `picture-list`
     */
    listType?: UploadListType;
    children?: React.ReactNode;
    placeholder?: React.ReactNode;
    placeholderProps?: UploadPlaceholderProps;
    accessTokenKey?: string;
    /** 可上传文件最大大小，单位为M */
    maxSize?: number;
    /** 可上传文件最小大小，单位为KB */
    minSize?: number;
    /** 业务ID， 默认为 企业ID ?? 用户ID */
    businessId?: string;
    /** 文件来源 */
    fileSource?: number;
    /** 服务名称 */
    serviceName?: string;
    /** 模块名称 */
    moduleName?: string;
    /**
     * @description 文件ID列表
     */
    value?: string[];
    /**
     * @description 图片URL列表 或 文件名称列表，不通过外部新增文件只需第一次传递即可
     */
    defaultValue?: string[];
    /**
     * @description 文件列表变化时的回调
     */
    onChange?: (value: string[], urls: string[]) => void;
    imageProps?: ImageProps;
    onImageProps?: (imageProps?: ImageProps) => void;
    loading?: boolean;
    onLoading?: (loading?: boolean) => void;
}
export declare const Dragger: React.FC<import("antd/lib/upload").DraggerProps>;
export declare const imgAccept: string[];
export declare function getBase64(img: File, callback: (imageUrl: string) => void): void;
interface UploadPlaceholderProps {
    prefixCls?: string;
    className?: string;
    disabled?: boolean;
    style?: React.CSSProperties;
    width?: number | string;
    height?: number | string;
    text?: string;
}
declare const Upload: React.ForwardRefExoticComponent<UploadProps & React.RefAttributes<unknown>>;
export type { DraggerProps, UploadProps };
export default Upload;
