@legendapp/list
Version:
Legend List is a drop-in replacement for FlatList with much better performance and supporting dynamically sized items.
18 lines (15 loc) • 1.12 kB
TypeScript
import { LegendListPropsBase, LegendListRef } from '@legendapp/list';
import React__default, { ComponentProps } from 'react';
import Animated from 'react-native-reanimated';
type KeysToOmit = "getEstimatedItemSize" | "keyExtractor" | "animatedProps" | "renderItem" | "onItemSizeChanged" | "ItemSeparatorComponent";
type PropsBase<ItemT> = LegendListPropsBase<ItemT, ComponentProps<typeof Animated.ScrollView>>;
interface AnimatedLegendListPropsBase<ItemT> extends Omit<PropsBase<ItemT>, KeysToOmit> {
refScrollView?: React__default.Ref<Animated.ScrollView>;
}
type OtherAnimatedLegendListProps<ItemT> = Pick<PropsBase<ItemT>, KeysToOmit>;
type AnimatedLegendListProps<ItemT> = Omit<AnimatedLegendListPropsBase<ItemT>, "refLegendList" | "ref"> & OtherAnimatedLegendListProps<ItemT>;
type AnimatedLegendListDefinition = <ItemT>(props: AnimatedLegendListProps<ItemT> & {
ref?: React__default.Ref<LegendListRef>;
}) => React__default.ReactElement | null;
declare const AnimatedLegendList: AnimatedLegendListDefinition;
export { AnimatedLegendList, type AnimatedLegendListProps, type AnimatedLegendListPropsBase };