///
import type { CustomEasing } from 'smooth-scroll-into-view-if-needed';
import type { CustomScrollBehaviorCallback } from 'scroll-into-view-if-needed/typings/types';
export declare type visibleElements = string[];
export interface IOItem {
index: string;
key: string;
entry: IntersectionObserverEntry;
visible: boolean;
}
export declare type Item = [string, IOItem];
export interface Refs {
[key: string]: React.MutableRefObject;
}
export declare type ItemType = React.ReactElement<{
/**
Required. id for every item, should be unique
*/
itemId: string;
}>;
export declare type CustomScrollBehavior = ScrollBehavior | CustomScrollBehaviorCallback;
export interface scrollToItemOptions {
boundary?: HTMLElement | null;
duration?: number;
ease?: CustomEasing;
}
export declare type ItemOrElement = IOItem | Element | undefined;