@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
34 lines (33 loc) • 1.5 kB
TypeScript
/**
* Web Popover Component
*/
import type { ComponentProps, HTMLAttributes, ReactNode, RefObject } from 'react';
import PopoverContainer from './PopoverContainer';
import type { PopoverAutoAlignMode, PopoverResolvedTargetElement } from './types';
type PopoverPortalProps = {
baseClassNames?: string[];
targetElement?: PopoverResolvedTargetElement;
active: boolean;
showDelay: number;
hideDelay: number;
keepInDOM?: boolean;
noAnimation?: boolean;
portalRootClass?: string;
children?: ReactNode;
attributes?: HTMLAttributes<HTMLElement>;
arrowPosition?: ComponentProps<typeof PopoverContainer>['arrowPosition'];
placement?: ComponentProps<typeof PopoverContainer>['placement'];
alignOnTarget?: ComponentProps<typeof PopoverContainer>['alignOnTarget'];
horizontalOffset?: ComponentProps<typeof PopoverContainer>['horizontalOffset'];
arrowPositionSelector?: ComponentProps<typeof PopoverContainer>['arrowPositionSelector'];
fixedPosition?: boolean;
contentRef?: RefObject<HTMLSpanElement>;
triggerOffset?: number;
autoAlignMode?: PopoverAutoAlignMode;
autoAlignViewportThreshold?: ComponentProps<typeof PopoverContainer>['autoAlignViewportThreshold'];
hideArrow?: boolean;
arrowEdgeOffset?: ComponentProps<typeof PopoverContainer>['arrowEdgeOffset'];
targetRefreshKey?: unknown;
};
declare function PopoverPortal(props: PopoverPortalProps): import("react/jsx-runtime").JSX.Element;
export default PopoverPortal;