import { type PositionResult, type PositioningOptions } from '../utils/positioning-enhanced'; export interface UsePopoverPositioningOptions extends PositioningOptions { /** Whether to automatically reposition on window resize */ autoUpdate?: boolean; /** Debounce delay for resize/scroll updates in ms */ updateDelay?: number; /** Adjust viewport height when on-screen keyboard is visible (default: true) */ keyboardAvoidance?: boolean; } export interface UsePopoverPositioningReturn { /** Current position result */ position: PositionResult | null; /** Update position manually. Pass `{ silent: true }` to skip the isPositioning flag. */ updatePosition: (options?: { silent?: boolean; }) => Promise; /** Whether positioning is currently being calculated */ isPositioning: boolean; /** Ref to attach to the anchor element */ anchorRef: React.RefObject; /** Ref to attach to the popover element for size measurement */ popoverRef: React.RefObject; } /** * Hook for managing popover positioning with automatic viewport constraint handling */ export declare function usePopoverPositioning(isOpen: boolean, options?: UsePopoverPositioningOptions): UsePopoverPositioningReturn; /** * Hook for managing tooltip positioning specifically * (simplified version with tooltip-specific defaults) */ export declare function useTooltipPositioning(isOpen: boolean, placement?: PositioningOptions['placement']): UsePopoverPositioningReturn;