import React, { Component } from 'react'; import PropTypes from 'prop-types'; import type { AlignType, TooltipProps, TooltipV1Props, TooltipV2Props, TooltipState } from './types'; /** Balloon.Tooltip */ export default class Tooltip extends Component { static displayName: string; static propTypes: { prefix: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; children: PropTypes.Requireable; align: PropTypes.Requireable; trigger: PropTypes.Requireable; triggerType: PropTypes.Requireable>; popupStyle: PropTypes.Requireable; popupClassName: PropTypes.Requireable; popupProps: PropTypes.Requireable; pure: PropTypes.Requireable; popupContainer: PropTypes.Requireable; followTrigger: PropTypes.Requireable; id: PropTypes.Requireable; delay: PropTypes.Requireable; mouseEnterDelay: PropTypes.Requireable; mouseLeaveDelay: PropTypes.Requireable; v2: PropTypes.Requireable; arrowPointToCenter: PropTypes.Requireable; }; static defaultProps: { triggerType: string; prefix: string; align: string; delay: number; trigger: React.JSX.Element; arrowPointToCenter: boolean; }; readonly props: TooltipV1Props & TooltipV2Props; constructor(props: TooltipProps); static getDerivedStateFromProps(nextProps: TooltipProps, prevState: TooltipState): { align: AlignType | undefined; innerAlign: boolean; } | null; beforePosition: (result: { config: { placement: AlignType; }; style: { left: number; top: number; }; }, obj: { target: { width: number; height: number; }; }) => { config: { placement: AlignType; }; style: { left: number; top: number; }; }; render(): React.JSX.Element; }