import { MutableRefObject, ReactNode } from 'react'; import { LayerProps } from '../../layout'; export interface LayoutRectangle { x: number; y: number; width: number; height: number; } export interface PlacementOffsetStyle { left?: number; right?: number; top?: number; bottom?: number; transform?: string; } export interface NativePlacementOffsetStyle extends Omit { transform?: ({ translateX: number; } | { translateY: number; })[]; } export declare type PlacementType = 'top' | 'right' | 'bottom' | 'left'; export interface PopoverProps extends Omit { active: boolean; onRequestClose: () => void; placement?: PlacementType; usePortal?: boolean; popoverChildren: (anchorWidth?: number) => ReactNode; popoverContainerProps?: Omit; modalBackgroundColor?: string; children: (anchorRef: any) => ReactNode | ReactNode[]; } export interface PopoverPortalContentProps extends Omit { anchorRef: MutableRefObject; popoverRef: MutableRefObject; placementOffsetStyle?: PlacementOffsetStyle; anchorWidth?: number; }