reblend-ui
Version:
Utilities for creating robust overlay components
20 lines (19 loc) • 887 B
TypeScript
import * as Reblend from 'reblendjs';
import { WaypointOptions, WaypointEvent, Position } from './useWaypoint';
export { Position };
export type { WaypointEvent };
export interface WaypointProps extends WaypointOptions {
renderComponent?: (ref: Reblend.RefCallback<any>) => Reblend.ReactElement;
/**
* The callback fired when a waypoint's position is updated. This generally
* fires as a waypoint enters or exits the viewport but will also be called
* on mount.
*/
onPositionChange: (details: WaypointEvent, entry: IntersectionObserverEntry) => void;
}
/**
* A component that tracks when it enters or leaves the viewport. Implemented
* using IntersectionObserver, polyfill may be required for older browsers.
*/
declare function Waypoint({ renderComponent, onPositionChange, ...options }: WaypointProps): Reblend.ReactElement;
export default Waypoint;