UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

64 lines (63 loc) 2.55 kB
import { Component, CSSProperties, ReactElement, ReactNode } from 'react'; import { AdjustOverflow, PlacementsConfig } from './placements'; import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext'; export { AdjustOverflow, PlacementsConfig }; export declare type TooltipPlacement = 'top' | 'left' | 'right' | 'bottom' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom'; export declare type TooltipTheme = 'light' | 'dark'; export declare type TooltipTrigger = 'hover' | 'focus' | 'click' | 'contextMenu'; export interface AbstractTooltipProps { prefixCls?: string; overlayClassName?: string; style?: CSSProperties; overlayStyle?: CSSProperties; placement?: TooltipPlacement; builtinPlacements?: Record<string, any>; defaultVisible?: boolean; visible?: boolean; onVisibleBeforeChange?: (visible: boolean) => boolean; onVisibleChange?: (visible: boolean) => void; mouseEnterDelay?: number; mouseLeaveDelay?: number; transitionName?: string; trigger?: TooltipTrigger; openClassName?: string; arrowPointAtCenter?: boolean; autoAdjustOverflow?: boolean | AdjustOverflow; getTooltipContainer?: (triggerNode: Element) => HTMLElement; getPopupContainer?: (triggerNode: Element) => HTMLElement; children?: ReactNode; } export declare type RenderFunction = () => ReactNode; export interface TooltipProps extends AbstractTooltipProps { title?: ReactNode | RenderFunction; overlay?: ReactNode | RenderFunction; theme?: TooltipTheme; } export default class Tooltip extends Component<TooltipProps, any> { static displayName: string; static get contextType(): typeof ConfigContext; static defaultProps: { placement: string; transitionName: string; mouseEnterDelay: number; mouseLeaveDelay: number; arrowPointAtCenter: boolean; autoAdjustOverflow: boolean; }; private tooltip; context: ConfigContextValue; state: { visible: boolean; }; constructor(props: TooltipProps); componentWillReceiveProps(nextProps: TooltipProps): void; onVisibleChange: (visible: boolean) => void; getPopupDomNode(): any; getPlacements(): any; isHoverTrigger(): boolean; getDisabledCompatibleChildren(element: ReactElement<any>): JSX.Element; isNoTitle(): boolean; onPopupAlign: (domNode: HTMLElement, align: any) => void; saveTooltip: (node: any) => void; render(): JSX.Element; }