///
import ItemsMap from './ItemsMap';
import type { CustomScrollBehavior, IntersectionObserverItem, ItemOrElement, scrollToItemOptions, visibleElements } from './Carousel.types';
export declare const autoScrollApi: (items: ItemsMap, visibleElementsWithSeparators?: visibleElements, boundaryElement?: React.MutableRefObject, transitionOptions?: {
duration?: number;
ease?: (t: number) => number;
behavior: string | Function;
}, rtl?: boolean, noPolyfill?: boolean) => {
getItemById: (id: string) => IntersectionObserverItem;
getItemElementById: (id: string | number) => Element;
getItemByIndex: (index: number | string) => IntersectionObserverItem;
getItemElementByIndex: (id: string | number) => Element;
getNextItem: () => IntersectionObserverItem;
getNextItemGroup: () => IntersectionObserverItem;
getNextElement: () => IntersectionObserverItem;
getNextElementGroup: () => IntersectionObserverItem;
getPrevItem: () => IntersectionObserverItem;
getPrevItemGroup: () => IntersectionObserverItem;
getPrevElement: () => IntersectionObserverItem;
getPrevElementGroup: () => IntersectionObserverItem;
isFirstItemVisible: boolean;
isItemVisible: (id: string) => boolean;
isLastItem: (id: string) => boolean;
isLastItemVisible: boolean;
scrollBySingleItem: (target?: ItemOrElement, behavior?: CustomScrollBehavior, direction?: string, gap?: number, offset?: number) => void | T | Promise;
scrollNext: (behavior?: CustomScrollBehavior, inline?: ScrollLogicalPosition, block?: ScrollLogicalPosition, { duration, ease, boundary, }?: scrollToItemOptions) => unknown;
scrollNextGroup: (behavior?: CustomScrollBehavior, inline?: ScrollLogicalPosition, block?: ScrollLogicalPosition, { duration, ease, boundary, }?: scrollToItemOptions) => unknown;
scrollPrev: (behavior?: CustomScrollBehavior, inline?: ScrollLogicalPosition, block?: ScrollLogicalPosition, { duration, ease, boundary, }?: scrollToItemOptions) => unknown;
scrollPrevGroup: (behavior?: CustomScrollBehavior, inline?: ScrollLogicalPosition, block?: ScrollLogicalPosition, { duration, ease, boundary, }?: scrollToItemOptions) => unknown;
scrollToItem: (target?: ItemOrElement, behavior?: CustomScrollBehavior, inline?: ScrollLogicalPosition, block?: ScrollLogicalPosition, options?: scrollToItemOptions) => void | T_5 | Promise;
visibleElements: visibleElements;
visibleElementsWithSeparators: visibleElements;
visibleItems: visibleElements;
visibleItemsWithoutSeparators: visibleElements;
};
export interface autoScrollApiType extends ReturnType {
initComplete: boolean;
items: ItemsMap;
scrollContainer: React.RefObject;
visibleElements: visibleElements;
visibleElementsWithSeparators: visibleElements;
}