import { ReactNode, MouseEvent, SyntheticEvent } from 'react'; import { PopperTrigger, PopperTriggerProps, PopperProps } from '@befe/brick-comp-popper'; import { ConfiguredComponent } from '@befe/brick-core'; import { PropsFromPopper } from './common'; export interface MenuPopperProps extends PopperTriggerProps, PropsFromPopper { /** * 自定义 class */ className?: string; /** * 尺寸 */ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'; /** * 触发方式 */ type?: 'click' | 'hover'; /** * 是否禁用 */ disabled?: boolean; /** * popper 位置 * 详见 [popper#placement](/components/popper#placement) */ placement?: PopperProps['placement']; /** * popper 的 target ReactNode * 注意,与 popper props.target 区别 */ targetNode?: ReactNode; /** * 是否处于 loading 状态 */ loading?: boolean; /** * 无内容提示 */ emptyHint?: ReactNode; } export declare class MenuPopper extends ConfiguredComponent { static displayName: string; static defaultProps: { className: string; disabled: boolean; type: string; placement: string; matchMinWidthToTarget: boolean; }; refTrigger: import("react").RefObject; get className(): string; get triggerProps(): { ref: import("react").RefObject; modifiers?: Partial>[] | undefined; disablePortal?: boolean | undefined; portalContainer?: HTMLElement | (() => HTMLElement | null) | null | undefined; onChange?: ((visible: boolean, e?: Event | SyntheticEvent | undefined) => void) | undefined; children?: ReactNode; visible?: boolean | undefined; size?: "xs" | "sm" | "md" | "lg" | "xl" | undefined; type?: "click" | "hover" | undefined; disabled?: boolean | undefined; loading?: boolean | undefined; emptyHint?: ReactNode; target?: (HTMLElement | (() => void | HTMLElement | null) | null) | undefined; defaultVisible?: boolean | undefined; beforeChange?: ((visible: boolean) => boolean | void | Promise) | undefined; mouseEnterDelay?: number | undefined; mouseLeaveDelay?: number | undefined; focusDelay?: number | undefined; blurDelay?: number | undefined; shouldHideParent?: boolean | undefined; shouldHideOnMousedownDocument?: boolean | ((e: Event) => boolean) | undefined; }; get popperProps(): { placement?: import("@popperjs/core").Placement | undefined; matchMinWidthToTarget?: boolean | undefined; matchWidthToTarget?: boolean | undefined; refPopperWrap?: import("react").Ref | undefined; withArrow?: boolean | undefined; modifiers?: Partial>[] | undefined; disablePortal?: boolean | undefined; portalContainer?: HTMLElement | (() => HTMLElement | null) | null | undefined; shouldHideParent?: boolean | undefined; className: string; }; get size(): "xs" | "sm" | "md" | "lg" | "xl"; handleClickNonMenu: (e: MouseEvent) => void; hidePopperOnSelect: () => void; setPopperVisible(visible: boolean, e?: SyntheticEvent): void; renderPopperContent(): ReactNode; render(): import("react/jsx-runtime").JSX.Element; }