import React from 'react'; import { SizeType } from '../config-provider/SizeContext'; import { ListRef } from '../virtual-list'; import type { CascaderOption, CascaderFieldNames, CascaderValueType, CascaderMultiValueType, CascaderMultiModeType } from './Cascader'; import { TooltipPlacement } from '../tooltip'; import { CascaderLocaleOmit } from './index'; interface MenusProps { value?: CascaderMultiValueType; mode?: CascaderMultiModeType; size?: SizeType; keyword?: string; activeValue?: (string | number)[]; hoveredValue?: (string | number)[]; enableValues?: CascaderMultiValueType; totalValues?: CascaderMultiValueType; options?: CascaderOption[]; prefixCls?: string; transitionName?: string; popupPlacement?: string; expandTrigger?: string; visible?: boolean; virtual?: boolean; dropdownMenuColumnStyle?: React.CSSProperties; defaultFieldNames?: CascaderFieldNames; fieldNames?: CascaderFieldNames; expandIcon?: React.ReactNode; loadingIcon?: React.ReactNode; menusEdgeBuffer?: number; withCheckAll?: boolean; locale?: CascaderLocaleOmit; titlePlacement?: TooltipPlacement; dropdownMenuRender?: (menu: React.ReactElement, menuIndex: number, hoveredValue: CascaderValueType) => React.ReactNode; getEnableValues?: (options?: CascaderOption[]) => void; getTotalValues?: (options?: CascaderOption[]) => void; onItemDoubleClick?: (targetOption: string[], index: number, e: React.MouseEvent) => void; onActiveValueSet?: (activeValue: (string | number)[]) => void; onSelect?: (targetOption: string[], index: number, e: React.KeyboardEvent) => void; onMultiSelect?: (targetOption: CascaderOption, index: number, optionKey: CascaderValueType, e: React.KeyboardEvent) => void; onMultiSelectAll?: any; onDropdownMenuScroll?: (e: React.UIEvent, menuIndex: number) => void; } interface MenusState { menuScrollOpen: boolean; activeValue?: (string | number)[]; } type MenusType = Record; type MenuItemsType = Record; type VMenusType = Record; declare class Menus extends React.Component { menuWrap: HTMLLIElement; menus: MenusType; vMenus: VMenusType; menuItems: MenuItemsType; delayTimer: number; static defaultProps: MenusProps; constructor(props: any); componentDidUpdate(prevProps: MenusProps): void; isStatusOption(statusValue: any[], option: any, menuIndex: any): boolean; isActiveOption(value: any, optionValue: any): boolean; getFieldName(name: any): any; getOption(option: CascaderOption, menuIndex: number): React.JSX.Element; getCheckAllOption(menuIndex: number): React.JSX.Element; getActiveOptions(values?: CascaderOption[]): CascaderOption[]; getShowOptions(): CascaderOption[][]; delayOnEvent(onEvent: any, ...args: any[]): void; saveMenuWrap: (menuWrap: any) => void; saveMenus: (menuIndex: any) => (menus: any) => void; saveVMenus: (menuIndex: any) => (menus: any) => void; saveMenuItems: (index: any) => (node: any) => void; scrollActiveItemToView(): void; setMenuPosition(callback?: () => void): void; handleMenuScrollChange(menuScrollOpen: any): void; handleMenuScroll: (menuIndex: any) => (e: any) => void; onShowActive: () => void; onShowEnd: () => void; render(): React.JSX.Element; } export default Menus;