/** * Props for the useOnClickOutside hook */ type UseOnClickOutsideProps = { /** * Callback fired when a click begins outside target elements (on pointerdown) */ onClickOutsideBegin?: (e: PointerEvent) => void; /** * Callback fired when a click completes outside target elements (on pointerup), * but only if the click also began outside the targets */ onClickOutside?: (e: PointerEvent) => void; /** * Array of target elements to monitor */ targets: (HTMLElement | undefined)[]; /** * Whether to disable the useOnClickOutside hook */ disable?: boolean; /** * Optional layer ID for stacking management. When provided, callbacks will only * fire if this layer is the topmost layer in the stack. */ layerId?: string; }; /** * Custom hook for detecting clicks outside of specified target elements. * * Features: * - Detects clicks outside of multiple target elements * - Supports both pointerdown and pointerup event handling (works for mouse and touch) * - Provides separate callbacks for click begin and complete actions * - Handles SSR environments gracefully * - Automatically cleans up event listeners * - Uses composedPath for accurate event target detection * - Supports optional callbacks for flexible usage * * @param props - Configuration object containing targets and optional callbacks * @returns void */ export declare const useOnClickOutside: ({ onClickOutsideBegin, targets, onClickOutside, disable, layerId, }: UseOnClickOutsideProps) => void; export {};