import React, { type ReactNode, type RefObject } from "react"; import { FlatList, SectionList, type LayoutRectangle, ScrollView } from "react-native"; import { type SharedValue } from "react-native-reanimated"; import { type TabLayoutMetrics } from "./utils"; type ScrollableChild = ScrollView | FlatList | SectionList; type SharedRefs = { resetPreviousScrollingY: boolean; minTabContentHeight: RefObject; vParentScroller: RefObject; hParentScroller: RefObject; currentTab: RefObject; currentTabIndex: SharedValue; tabContentSize: RefObject>; currentScrollingYValue: SharedValue; topSectionLayout: RefObject; topSectionHeight: SharedValue; tabViewContainerHeight: SharedValue; activeTabScrollYOffsetValue: SharedValue; pendingTabSwitchIndexValue: SharedValue; pendingTabSwitchOffsetValue: SharedValue; topTabScrollerRef: RefObject; topSectionListProgress: SharedValue; hActiveScrollingX: SharedValue; indicatorWidth: RefObject; indicatorWidthValue: SharedValue; topTabItemsLayout: RefObject>; topTabItemsLayoutValue: SharedValue; tabScrollingDetails: RefObject>; headerOffsetScrollValue: SharedValue; goToTabIndex: RefObject; setActiveTabScrollYOffset: (offset: number) => void; setActiveTabScrollYOffsetShared: (offset: number) => void; setGoToTabIndex: (index: number) => void; setCurrentTab: (index: number) => void; setHorizontalScrollXShared: (offset: number) => void; setTopSectionListProgress: (value: number) => void; setTopSectionListProgressShared: (value: number) => void; setTopTabLayout: (layout: LayoutRectangle) => void; setHeaderOffsetScrollShared: (offset: number) => void; setIndicatorWidth: (width: number) => void; setTopTabItemLayout: (index: number, layout: LayoutRectangle) => void; setVChildScrollRef: (index: number, ref: ScrollableChild | null) => void; setTabContentHeight: (index: number, height: number) => void; setCurrentScrollingYShared: (offset: number) => void; setScrollerContainerHeight: (height: number) => void; setTabViewContainerHeight: (height: number) => void; setPendingTabSwitchOffset: (index: number, offset: number) => void; clearPendingTabSwitch: () => void; deleteTabScrollOffset: (index: number) => void; setTabScrollOffset: (index: number, offset: number) => void; setTopSectionLayout: (layout: LayoutRectangle) => void; adjustTabScrollOffsets: (delta: number) => void; onTabChange: (index: number, isScrolling?: boolean) => void; vChildScrollToOffset: (offsetY: number, index: number, force?: boolean) => void; }; export interface TabsProviderProps { children: ReactNode; /** * Scroll-reset mode shared by ScrollerContainer and HBScroller. */ resetPreviousScrollingY?: boolean; } export declare const TabsProvider: React.FC; export declare const useSharedRefs: () => SharedRefs; export {}; //# sourceMappingURL=RefsContext.d.ts.map