import { Component } from 'react'; import Popover, { IPositionFunction, IPopoverClickTriggerChildProps, IPopoverClickTriggerProps, IPopoverTriggerProps, IPopoverHoverTriggerChildProps, IPopoverHoverTriggerProps, IPopoverFocusTriggerChildProps, IPopoverFocusTriggerProps, IPopoverBeforeHook } from '../popover'; import { IPopActionCallback } from './Action'; export interface IPopNoneTriggerProps extends IPopoverTriggerProps, IPopCommonProps { trigger: 'none'; } export interface IPopClickTriggerProps extends IPopoverClickTriggerProps, IPopCommonProps { trigger: 'click'; } export interface IPopHoverTriggerProps extends IPopoverHoverTriggerProps, IPopCommonProps { trigger: 'hover'; mouseEnterDelay?: number; mouseLeaveDelay?: number; fixMouseEventsOnDisabledChildren?: boolean; } export interface IPopFocusTriggerProps extends IPopoverFocusTriggerProps, IPopCommonProps { trigger: 'focus'; } export declare type PopPositions = 'left-top' | 'left-center' | 'left-bottom' | 'right-top' | 'right-center' | 'right-bottom' | 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'auto-bottom-center' | 'auto-bottom-left' | 'auto-bottom-right' | 'auto-top-center' | 'auto-top-left' | 'auto-top-right'; export interface IPopCommonProps { content: React.ReactNode; position?: PopPositions | IPositionFunction; cushion?: number; centerArrow?: boolean; header?: React.ReactNode; onShow?: () => void; onClose?: () => void; onBeforeShow?: IPopoverBeforeHook; onBeforeClose?: IPopoverBeforeHook; type?: 'primary' | 'default' | 'danger' | 'success'; visible?: boolean; onVisibleChange?: (visible: boolean) => void; onPositionUpdated?: () => void; onPositionReady?: () => void; className?: string; style?: React.CSSProperties; containerSelector?: string; onConfirm?: IPopActionCallback; onCancel?: IPopActionCallback; confirmText?: string; cancelText?: string; } export declare type IPopProps = IPopNoneTriggerProps | IPopClickTriggerProps | IPopHoverTriggerProps | IPopFocusTriggerProps; export interface IPopState { confirmPending: boolean; cancelPending: boolean; } export declare class Pop extends Component { static defaultProps: { trigger: string; position: string; cushion: number; type: string; mouseLeaveDelay: number; mouseEnterDelay: number; containerSelector: string; }; static withPop: = Record<"pop", Popover>>(Base: import("react").ComponentType) => import("react").ForwardRefExoticComponent> & import("react").RefAttributes>; private popoverRef; private isUnmounted; state: { confirmPending: boolean; cancelPending: boolean; }; changePending: (key: keyof IPopState, pending: boolean, callback?: () => void) => void; adjustPosition(): void; getWrappedPopover(): Popover; renderTrigger(): JSX.Element; componentWillUnmount(): void; render(): JSX.Element; } export default Pop;