acud
Version:
acg react 组件库
49 lines (48 loc) • 2.02 kB
TypeScript
import * as React from 'react';
import { OptionsType as SelectOptionsType, RenderNode, OnActiveValue } from './interface';
import { RawValueType, FlattenOptionsType, ExpandKey, DefaultExpandKey } from './interface/generator';
import { OptionProps } from './Option';
export interface OptionListProps<OptionsType extends object[]> {
prefixCls: string;
id: string;
options: OptionsType;
flattenOptions: FlattenOptionsType<OptionsType>;
height: number;
itemHeight: number;
values: Set<RawValueType>;
multiple: boolean;
open: boolean;
defaultActiveFirstOption?: boolean;
notFoundContent?: React.ReactNode;
mode?: string;
menuItemSelectedIcon?: RenderNode;
childrenAsData?: boolean;
searchValue?: string;
virtual?: boolean;
keepExpand?: boolean;
defaultExpandGroupKey?: DefaultExpandKey;
showTitle?: boolean;
showSelectAll?: boolean;
optionRender?: (label: React.ReactNode, option?: OptionProps) => React.ReactNode;
renderEmpty?: (componentName?: string, des?: string | undefined) => React.ReactNode;
onSelect: (value: RawValueType, option: {
selected: boolean;
}) => void;
triggerChange: (newRawValues: RawValueType[]) => void;
onToggleOpen: (open?: boolean) => void;
/** Tell Select that some value is now active to make accessibility work */
onActiveValue: OnActiveValue;
onScroll: React.UIEventHandler<HTMLDivElement>;
/** Tell Select that mouse enter the popup to force re-render */
onMouseEnter?: React.MouseEventHandler;
onExpandChange?: (key: ExpandKey) => void;
setInnerOpen?: (value: boolean) => void;
cleanSearchValue?: () => void;
}
export interface RefOptionListProps {
onKeyDown: React.KeyboardEventHandler;
onKeyUp: React.KeyboardEventHandler;
scrollTo?: (index: number) => void;
}
declare const RefOptionList: React.ForwardRefExoticComponent<OptionListProps<SelectOptionsType> & React.RefAttributes<RefOptionListProps>>;
export default RefOptionList;