/**
 * @author linhd
 * @date 2021/8/23 14:20
 * @description 多值框
 */
import React, { FunctionComponent, ReactNode } from 'react';
import { TextFieldProps } from '../TextField';
import { LabelTooltipProps } from "../Label";
import { HelperTextDetailProps } from "../HelperText";
import './index.scss';
interface ReplaceFieldsProps {
    /** key索引 */
    key?: string;
    /** value索引 */
    value?: string;
}
export interface MultiBoxProps extends HelperTextDetailProps {
    /** 样式class */
    className?: string;
    /** style */
    style?: React.CSSProperties;
    /** 大小 */
    size?: 'small' | 'medium' | 'large';
    /** 中间符号 */
    separator?: ReactNode;
    /** 标题 */
    label?: ReactNode;
    /** 帮组提示信息 */
    labelTooltip?: LabelTooltipProps;
    /** 标题提示 */
    labelSign?: ReactNode;
    /** 提示语key */
    placeholderKey?: ReactNode;
    /** 提示语value */
    placeholderValue?: ReactNode;
    /** 是否禁用 */
    disabled?: boolean | {
        [name: string]: boolean;
    }[];
    /** 是否必填 */
    required?: boolean;
    /** 默认值 不受控 */
    defaultValue?: any[];
    /** 选中值 多选时为数组 单选单值 */
    value?: any[];
    /** 替换字段 */
    replaceFields?: ReplaceFieldsProps;
    /** 没有错误的时候,不渲染 */
    hideErrorDom?: boolean;
    /** 错误提示 */
    helperText?: ReactNode | Record<string, ReactNode>[];
    /** 改变值 */
    onChange?: (val: any[]) => void;
    /** 键值索引匹配 */
    fetchSuggestionsKey?: (val: string, cb: (data: any[]) => void) => void;
    /** 值索引匹配 */
    fetchSuggestionsValue?: (val: string, cb: (data: any[]) => void) => void;
    /** 自定义键值Props */
    keyOtherProps?: (index: number, val: string) => TextFieldProps;
    /** 自定义值Props */
    valueOtherProps?: (index: number, val: string) => TextFieldProps;
    [name: string]: any;
}
export declare const MultiBox: FunctionComponent<MultiBoxProps>;
export default MultiBox;
