import * as React from 'react'; export type VisibilityContextType = { observer?: IntersectionObserver; callbacks?: WeakMap void>; }; export declare function useVisibilityObserver( { onVisibilityChange, }: { onVisibilityChange?: (isVisible: boolean) => void } ): { ref: React.Ref; }; export declare function VisibilityRoot( { children, disable, }: { children: (props: { ref: React.Ref; }) => React.ReactElement disable?: boolean } ): React.ReactElement;