import { SylApi } from '@syllepsis/adapter'; import { IToolbarOption, TMoreContent } from '@syllepsis/editor'; import React from 'react'; import { IPopperProps } from '../../../component'; import { ToolDisplay } from '../utils'; import { IProp } from '.'; interface ISelectBase extends Partial { editor: SylApi; display: ToolDisplay; trigger: TMoreContent['trigger']; popperProps?: Partial; menuDistance?: IToolbarOption['menuDistance']; menuDirection?: IToolbarOption['menuDirection']; groupKey?: string; } /** * Basic class of selectButton * there is no tooltip and showName in select button, provided by renderIcon * - @type {() => JSX.Element} renderIcon * - @type {() => JSX.Element} renderMenu * - @type {() => boolean} checkActive check if the button needs highlight */ declare class SelectBase extends React.Component { wrap?: HTMLElement | null; menuRef: React.RefObject; shouldClose: boolean; state: { open: boolean; tooltipShow: boolean; }; get eventType(): "click" | "mousemove"; tendToCloseMenu: (level?: number) => void; getTriggerHandler: () => any; checkClose: (e: MouseEvent) => void; openMenu: () => void; closeCallBack: () => void; closeMenu: () => void; updatePosition: () => number; showTooltip: () => void; hideTooltip: () => void; checkActive: () => boolean; renderIcon: () => JSX.Element; renderMenu: () => void; renderMenuList: () => JSX.Element; render(): JSX.Element; } export { SelectBase };