index.d.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import type { CSSMotionProps } from 'rc-motion';
  2. import * as React from 'react';
  3. import type { TriggerProps } from '../';
  4. import type { AlignType, ArrowPos, ArrowTypeOuter } from '../interface';
  5. export interface PopupProps {
  6. prefixCls: string;
  7. className?: string;
  8. style?: React.CSSProperties;
  9. popup?: TriggerProps['popup'];
  10. target: HTMLElement;
  11. onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;
  12. onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;
  13. onPointerEnter?: React.MouseEventHandler<HTMLDivElement>;
  14. onPointerDownCapture?: React.MouseEventHandler<HTMLDivElement>;
  15. zIndex?: number;
  16. mask?: boolean;
  17. onVisibleChanged: (visible: boolean) => void;
  18. align?: AlignType;
  19. arrow?: ArrowTypeOuter;
  20. arrowPos: ArrowPos;
  21. open: boolean;
  22. /** Tell Portal that should keep in screen. e.g. should wait all motion end */
  23. keepDom: boolean;
  24. fresh?: boolean;
  25. onClick?: React.MouseEventHandler<HTMLDivElement>;
  26. motion?: CSSMotionProps;
  27. maskMotion?: CSSMotionProps;
  28. forceRender?: boolean;
  29. getPopupContainer?: TriggerProps['getPopupContainer'];
  30. autoDestroy?: boolean;
  31. portal: React.ComponentType<any>;
  32. ready: boolean;
  33. offsetX: number;
  34. offsetY: number;
  35. offsetR: number;
  36. offsetB: number;
  37. onAlign: VoidFunction;
  38. onPrepare: () => Promise<void>;
  39. stretch?: string;
  40. targetWidth?: number;
  41. targetHeight?: number;
  42. }
  43. declare const Popup: React.ForwardRefExoticComponent<PopupProps & React.RefAttributes<HTMLDivElement>>;
  44. export default Popup;