///
import * as React from 'react';
import { BasicConfig, BasicContainer, BasicContainerPropsInterface } from '../../render/core/Container/types';
import { UploadChangeParam } from '@native-ads/antd/lib/upload';
import { SET_FORM_ITEM_PAYLOAD } from '../../render/core/Form/actions';
export declare class UploadConfig extends BasicConfig {
/**
* Upload的数据模型Key
*/
name: string;
/**
* 上传的地址
*/
action: string;
/**
* 上传所需参数
*/
data?: object;
/**
* 上传数据格式的限制
*/
uploadType?: string[];
/**
* 上传大小的限制
*/
uploadSize?: number;
/**
* 上传数量的限制
*/
uploadNum?: number;
/**
* 上传图片的宽度限制
*/
uploadWidth?: number;
/**
* 上传图片的高度限制
*/
uploadHeight?: number;
/**
* 上传列表的内建样式
*/
listType?: 'text' | 'picture' | 'picture-card';
/**
* 自定义类
*/
className?: string;
/**
* 自定义样式
*/
style?: React.CSSProperties;
}
export declare class UploadPropsInterface extends BasicContainerPropsInterface {
info: UploadConfig;
/**
* 更新表单元素的属性
*/
$setFormItem: (payload: Partial) => void;
}
export declare class UploadStateInterface {
previewVisible: boolean;
previewImage: string;
}
export declare class AbstractUpload extends BasicContainer {
constructor(props: UploadPropsInterface);
handleCancel: () => void;
handlePreview: (file: any) => void;
getBase64(img: any, callback: Function): void;
validateType(content: UploadChangeParam, uploadType: string[]): boolean;
validateSize(content: UploadChangeParam, uploadSize: number): boolean;
handleChange: (content: UploadChangeParam, uploadType: string[], uploadSize: number, uploadWidth?: number | undefined, uploadHeight?: number | undefined) => void;
private mapUploadOptions(info);
render(): JSX.Element;
}