UNPKG

choerodon-ui

Version:

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

71 lines (70 loc) 2.65 kB
import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Action } from '../trigger/enum'; import { AdjustOverflow } from './placements'; 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 RenderFunction = () => React.ReactNode; export interface TooltipProps { prefixCls?: string; suffixCls?: string; popupClassName?: string; style?: React.CSSProperties; popupStyle?: React.CSSProperties; placement?: TooltipPlacement; builtinPlacements?: Object; hidden?: boolean; defaultHidden?: boolean; onHiddenChange?: (hidden: boolean) => void; mouseEnterDelay?: number; mouseLeaveDelay?: number; transitionName?: string; trigger?: Action[]; openClassName?: string; arrowPointAtCenter?: boolean; autoAdjustOverflow?: boolean | AdjustOverflow; title?: React.ReactNode | RenderFunction; overlay?: React.ReactNode | RenderFunction; theme?: TooltipTheme; } export default class Tooltip extends Component<TooltipProps, any> { static displayName: string; static propTypes: { title: PropTypes.Requireable<any>; arrowPointAtCenter: PropTypes.Requireable<boolean>; autoAdjustOverflow: PropTypes.Requireable<boolean>; defaultHidden: PropTypes.Requireable<boolean>; mouseEnterDelay: PropTypes.Requireable<number>; mouseLeaveDelay: PropTypes.Requireable<number>; placement: PropTypes.Requireable<string>; trigger: PropTypes.Requireable<(Action | null | undefined)[]>; hidden: PropTypes.Requireable<boolean>; onHiddenChange: PropTypes.Requireable<(...args: any[]) => any>; suffixCls: PropTypes.Requireable<string>; transitionName: PropTypes.Requireable<string>; theme: PropTypes.Requireable<string>; }; static defaultProps: { suffixCls: string; placement: string; transitionName: string; mouseEnterDelay: number; mouseLeaveDelay: number; arrowPointAtCenter: boolean; autoAdjustOverflow: boolean; theme: string; defaultHidden: boolean; trigger: Action[]; }; state: { translate: { x: number; y: number; }; }; get prefixCls(): string; get placements(): any; getContent(): any; handlePopupAlign(_source: any, _align: any, _target: any, translate: any): void; render(): JSX.Element | null; }