import { ReactElement } from 'react';
import DataSetComponent, { DataSetComponentProps } from '../data-set/DataSetComponent';
import ScreeningItem, { ScreeningItemProps } from './ScreeningItem';
import DataSet from '../data-set';
import Record from '../data-set/Record';
export interface TagProps {
    text: string;
    label: string;
    handleClose: (key: any) => void;
    key: string;
}
export interface ScreeningProps extends DataSetComponentProps {
    dataSet: DataSet;
    children: ReactElement<ScreeningItemProps>[];
    tagRender?: ({ labelTitle, tagsProps }: {
        labelTitle: string;
        tagsProps: TagProps[];
    }) => ReactElement<any>;
    onChange?: (value: any, oldValue: any) => void;
}
export default class Screening extends DataSetComponent<ScreeningProps> {
    static displayName: string;
    static ScreeningItem: typeof ScreeningItem;
    mergeValue: any;
    emptyValue?: any;
    child?: any;
    static defaultProps: {
        suffixCls: string;
    };
    constructor(props: any, context: any);
    onRef: (ref: any, name: any) => void;
    /**
     * return the record: dataIndex record, current, undefined
     */
    get record(): Record | undefined;
    get dataSet(): DataSet | undefined;
    handleChange: (value: any, oldValue: any) => void;
    handleConfirm: ({ value, fieldName }: {
        value: any;
        fieldName: any;
    }) => void;
    handleCloseItem: (filedName: any) => void;
    findByValue: (value: any, name: any) => any;
    renderTag: (mergeValue: any) => JSX.Element | null;
    render(): JSX.Element;
}
