/**
 * @author linhd
 * @date 2021/8/5 15:05
 * @description 输入框
 */
import React, { FunctionComponent, ReactNode } from 'react';
import { LabelTooltipProps } from '../Label';
import { HelperTextDetailProps } from "../HelperText";
import './index.scss';
export interface TextFieldProps extends HelperTextDetailProps {
    /** 样式class */
    className?: string;
    /** style */
    style?: React.CSSProperties;
    /** 大小 */
    size?: 'small' | 'medium' | 'large';
    /** 标题在外,还是在内 */
    labelMode?: 'outside' | 'inside';
    /** 标题 */
    label?: ReactNode;
    /** 标题提示 */
    labelSign?: ReactNode;
    /** 是否必填 */
    required?: boolean;
    /** 帮组提示信息 */
    labelTooltip?: LabelTooltipProps;
    /** 提示语 */
    placeholder?: ReactNode;
    /** 是否禁用 */
    disabled?: boolean;
    /** 多行 */
    multiline?: boolean;
    /** 前缀 */
    addonBefore?: ReactNode;
    /** 后缀 */
    addonAfter?: ReactNode;
    /** 默认值 不受控 */
    defaultValue?: string | number;
    /** 默认值 受控 */
    value?: string | number;
    /** 文本类型 */
    type?: 'text' | 'number' | 'password';
    /** 多行文本行 */
    rows?: number;
    /** 多行文本是否可拖动 */
    resize?: boolean;
    /** 右侧图标 */
    rightIcon?: ReactNode;
    /** 是否显示右边图标 */
    showRightIcon?: boolean;
    /** 是否显示清空按钮 */
    allowClear?: boolean;
    /** 长度限制 */
    limitLength?: number;
    /** 下拉框class */
    selectPopoverClass?: string;
    /** 下拉框显示字段 */
    showSelectName?: string;
    /** 返回输入建议的方法，仅当你的输入建议数据 resolve 时，通过调用 callback(data:[]) 来返回它 */
    fetchSuggestions?: (val: string, cb: (data: any[]) => void) => void;
    /** 下拉搜索空状态 */
    searchEmpty?: ReactNode;
    /** 渲染下拉子节点 */
    renderSelectItem?: (item: any) => ReactNode;
    /** 失去焦点 */
    onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
    /** 得到焦点 */
    onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
    /** 改变输入框 */
    onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
    /** 点击图标 */
    onClickIcon?: (event: React.PointerEvent<HTMLSpanElement>) => void;
    /** 键盘按下 */
    onKeydown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
    /** 键盘抬起 */
    onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
    /** 回车事件 */
    onEnter?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
    /** 点击前缀 */
    onClickAddonBefore?: (event: React.MouseEvent<HTMLDivElement>) => void;
    /** 点击后缀 */
    onClickAddonAfter?: (event: React.MouseEvent<HTMLDivElement>) => void;
    /** 点击清空内容回调 */
    onClear?: () => void;
    /** 选着下拉框 */
    onSelect?: (item: any) => void;
    [name: string]: any;
}
export declare const TextField: FunctionComponent<TextFieldProps>;
export default TextField;
