lole-ui
Version:
React UI Component which like a love letter
30 lines (29 loc) • 1.12 kB
TypeScript
import React, { ReactElement } from "react";
import { BaseInputProps } from "../Input/input";
import { ThemeProps } from "../Icon/icon";
import { SizeProp } from "@fortawesome/fontawesome-svg-core";
interface DataSourceObject {
value: string;
}
export declare type DataSourceType<T = {}> = T & DataSourceObject;
export declare type AutoCompleteType = 'text' | 'textarea';
export interface AutoCompleteProps extends Omit<BaseInputProps, 'onSelect' | 'size' | 'type'> {
/** 搜索列表 */
fetchSuggestions: (str: string) => DataSourceType[] | Promise<DataSourceType[]>;
/** 选择子项 */
onSelect?: (item: DataSourceType) => void;
/** 自定义渲染模板 */
renderOption?: (item: DataSourceType) => ReactElement;
/** 异步更新延时(ms) */
delay?: number;
/** 显示列表长度 */
items?: number;
/** icon主题 */
theme?: ThemeProps;
/** icon大小 */
size?: SizeProp;
/** 输入域类型(限制) */
type?: AutoCompleteType;
}
declare const AutoComplete: React.FC<AutoCompleteProps>;
export default AutoComplete;