import { RefObject } from 'react'; import type { ContextType } from 'react'; import { useUniformCenteredConfig } from '../shared/hooks'; import { StoreContext } from '../../../../services/store'; import { ISettings } from '../../../../types'; export { useUniformCenteredConfig }; export declare const useSpotlightLayout: ({ context: { widgetWidth, contentSize, isMobile, hideArrows }, config: { contentSize: carouselContentSize, itemCount, partialItemWidth: carouselPartialItemWidth, alwaysPartial, }, refs: { slideRef }, }: import("../shared/hooks").LayoutParams) => { constrainedWidgetWidth: number; isCompact: boolean; compactStyle: import("react").CSSProperties | undefined; carouselDimensions: import("../../../../hooks/useCarouselDimensions").CarouselDimensions; arrowSize: import("../../../../types").ArrowSize; }; export declare const useSpotlightHeight: ({ refs: { outerRef }, config: { thumbnailShape, contentSize, itemCount }, layout: { isCompact, constrainedWidgetWidth, widgetWidth }, }: import("../shared/hooks").HeightParams) => { enforcedMinHeight: number; }; type StoreStateUpdater = ContextType['setStoreState']; interface NavigationParams { config: { itemCount: number; contentSize: ISettings['content_size']; cloneCount: number; contentSizeNotReached: boolean; }; refs: { slideRef: RefObject; containerRef: RefObject; }; state: { itemWidth: number; currentPosition?: number; }; actions: { setStoreState: StoreStateUpdater; }; } export declare const useSpotlightNavigation: ({ config: { itemCount, contentSize, cloneCount, contentSizeNotReached }, refs: { slideRef, containerRef }, state: { itemWidth, currentPosition }, actions: { setStoreState }, }: NavigationParams) => { getTranslateX: (index?: number) => number; goToSlide: (index: number, shouldUpdateCurrentPosition?: boolean) => void; activeIndex: number; isTransitioning: boolean; skipTransition: boolean; handleSlide: (direction: "left" | "right") => void; };