import { Component } from "react";
import PropTypes from 'prop-types';
interface ILayoutProps {
    id?: string;
    label?: string;
    type?: string;
    data?: object[];
    bindctrl?: string;
    rules?: object[];
    ctrlProps?: object;
    format?: string;
    addRegistry?: object;
}
interface IFormProps {
    hideRequiredMark?: boolean;
    labelAlign?: ['left' | 'right'];
    layout?: ['horizontal' | 'vertical' | 'inline'];
    formItemLayout?: object;
    colLayout?: object;
    onSubmit?: ((form: any) => void);
}
interface IInitValuesProps {
    attrId?: string;
    attrValue?: string;
}
interface RegProps {
    type: string;
    getComp: () => {};
}
interface DAProps {
    form?: any;
    layout?: ILayoutProps[];
    initValues?: IInitValuesProps[];
    formProps?: IFormProps;
    onChange?: ((id: string, value: string) => void);
    additionRegistry: RegProps[];
}
interface DAState {
    emailSearchResult: string[];
    popEditModalVisible: boolean;
    registry: object;
}
declare class DynamicAttribute extends Component<DAProps, DAState> {
    constructor(props: any);
    static propTypes: {
        formProps: PropTypes.Requireable<object>;
        layout: PropTypes.Requireable<any[]>;
        initValues: PropTypes.Requireable<any[]>;
    };
    static defaultProps: {
        formProps: {
            colLayout: {
                xs: number;
                sm: number;
                md: number;
                xl: number;
            };
            formItemLayout: {
                labelCol: {
                    span: number;
                };
                wrapperCol: {
                    span: number;
                };
            };
        };
        layout: never[];
        initValues: never[];
        additionRegistry: never[];
    };
    appendAddition: () => {};
    getFieldsValue: (e: any) => {} | undefined;
    resetFields: () => void;
    judgeIfContain: (item: any, currentValue: any, type: any) => boolean;
    handleMultiValues: (type: any, value: any) => any;
    handleInit: (item: any) => any;
    generateSelectBefore: (data: any, restProps: any, id: any) => any;
    generateSelectAfter: (data: any, restProps: any, id: any) => any;
    renderOptions: (item: any) => any;
    renderItem: (item: any, index: any) => JSX.Element;
    renderCommonAttrs: (item: any) => any;
    renderSubmit: (item: any) => JSX.Element;
    filterRules: (rules?: never[]) => never[];
    renderInput: (item: any) => any;
    renderOther: (item: any) => any;
    renderNumber: (item: any) => any;
    getUploadBtn: (item: any, restProps: any, locale: any) => JSX.Element;
    renderFile: (item: any) => any;
    renderSlider: (item: any) => any;
    renderRate: (item: any) => any;
    renderCombination: (item: any) => any;
    filterEmail: (value: any, data?: never[]) => void;
    renderEmailOption: (item: any) => void;
    renderEmail: (item: any) => any;
    renderRadioGroup: (item: any) => any;
    renderGroup: (type: any, data: never[] | undefined, props: any) => JSX.Element;
    renderCheckbox: (item: any) => any;
    renderDateItem: (props: any, type: any) => JSX.Element | undefined;
    renderDatePicker: (item: any) => any;
    formatRangeTime: (value: any, format: any) => any;
    renderTimePicker: (item: any) => any;
    renderSelect: (item: any) => any;
    renderTreeSelect: (item: any) => any;
    renderCascader: (item: any) => any;
    renderPopEdit: (item: any) => any;
    handleProps: (formProps: any) => any;
    render(): JSX.Element;
}
declare const _default: import("../compatible-form/interface").ConnectedComponentClass<typeof DynamicAttribute, import("../compatible-form/_util/types").Omit<import("../compatible-form").FormComponentProps<any>, "form">>;
export default _default;
