import * as React from 'react'; import { Placement } from './usePlacement'; declare const TriggerTypes: ["hover", "click"]; declare type TriggerType = typeof TriggerTypes[number]; declare const ThemeTypes: ["dark", "light"]; declare type ThemeType = typeof ThemeTypes[number]; export interface TipProps { trigger?: TriggerType | TriggerType[]; content: string | React.ReactNode; defaultVisible?: boolean; visible?: boolean; delay?: number; placement?: Placement; style?: React.CSSProperties; onVisibleChange?: (visible: boolean) => void; destroyOnHide?: boolean; children?: React.ReactElement | string; wrapperClassName?: string; tipClassName?: string; theme?: ThemeType; } interface TipState { visible: boolean; prevVisible: boolean; } declare class Tip extends React.Component { static rootDom: HTMLElement; static defaultProps: { trigger: string; delay: number; placement: string; destroyOnHide: boolean; wrapperClassName: string; }; triggerRef: React.RefObject; tipRef: React.RefObject; clickOutsideHandler: boolean; constructor(props: TipProps); componentDidMount(): void; onDocumentClick: (event: MouseEvent) => void; componentDidUpdate(prevProps: TipProps): void; componentWillUnmount(): void; setVisible: (visible: boolean) => void; delaySetPopupVisible: (this: unknown, visible: boolean) => void; handleClick: () => void; onMouseEnter: () => void; onMouseLeave: () => void; getContainer(): HTMLDivElement; renderInner(): JSX.Element | null; render(): JSX.Element; } export default Tip;