import { ReactNode } from 'react'; export type AnimationDirection = 'left' | 'right' | 'down' | 'up' | 'center'; export interface ScrollVisibilityProps { /** * Content to hide/show */ children: ReactNode; /** * Additional class name which applies to first child element */ className?: string; /** * Conditionally enable the functionality * @default true */ enabled?: boolean; /** * Determines wheter to hide or show when scrolled past scrollDistance * @default hide */ visibility?: 'hide' | 'show'; /** * Determines if the component's visibility toggles when scrolling opposite direction after crossing scrollDistance * @default false */ toggleVisibility?: boolean; /** * Distance in px user has to scroll for the component to show/hide * @default 100 */ scrollDistance?: number; /** * Direction used to calculate `scrollDistance`: * - down: Measured from the top of the page. * - up: Measured from the bottom of the page. * @default down */ scrollDirection?: 'up' | 'down'; /** * Detect scroll based on this element * @default document.documentElement */ scrollContainer?: HTMLElement; /** * Direction the component animates to * @default center */ animationDirection?: AnimationDirection; } export declare const ScrollVisibility: (props: ScrollVisibilityProps) => import("react/jsx-runtime").JSX.Element; export default ScrollVisibility;