import { type ComponentProps, memo } from 'react'; import { VirtualizedList as RNVirtualizedList } from 'react-native'; import Animated from 'react-native-reanimated'; import { SCROLLABLE_TYPE } from '../../constants'; import { createBottomSheetScrollableComponent } from './createBottomSheetScrollableComponent'; import type { BottomSheetVirtualizedListMethods, BottomSheetVirtualizedListProps, } from './types'; const AnimatedVirtualizedList = Animated.createAnimatedComponent>( RNVirtualizedList ); const BottomSheetVirtualizedListComponent = createBottomSheetScrollableComponent< BottomSheetVirtualizedListMethods, BottomSheetVirtualizedListProps >(SCROLLABLE_TYPE.VIRTUALIZEDLIST, AnimatedVirtualizedList); const BottomSheetVirtualizedList = memo(BottomSheetVirtualizedListComponent); BottomSheetVirtualizedList.displayName = 'BottomSheetVirtualizedList'; export default BottomSheetVirtualizedList as ( props: BottomSheetVirtualizedListProps ) => ReturnType;