import { default as React } from 'react'; export interface VirtualListRenderContext { item: any; index: number; } export interface VirtualListProps extends Omit, "children" | "className"> { /** * List data. * * @type|json */ items?: any[]; /** * Item renderer. * * @nodeFunction */ children?: React.ReactNode | ((context: VirtualListRenderContext) => React.ReactNode); /** * Height of one item in pixels. */ itemHeight?: number; /** * Visible list height. */ height?: number; /** * Additional items rendered above * and below the viewport. */ overscan?: number; /** * Gap between rows. */ gap?: number; /** * Index to scroll to. * * Updating this prop scrolls * the list to that item. */ scrollToIndex?: number; /** * @select|start|center|end */ scrollAlignment?: "start" | "center" | "end"; /** * Initial scroll index. */ initialScrollIndex?: number; /** * Trigger onEndReached when this many * items remain below the visible range. */ endReachedThreshold?: number; /** * Empty builder message. */ emptyText?: string; /** * @type|class */ className?: string; /** * @type|class */ itemClassName?: string; /** * @type|class */ contentClassName?: string; /** * @type|complex * @schema {"type":"object"} */ customAttributes?: Record; /** * @type|function */ onScrollChange?: (scrollTop: number) => void; /** * @type|function */ onVisibleRangeChange?: (startIndex: number, endIndex: number) => void; /** * @type|function */ onEndReached?: () => void; /** * @type|function */ onItemClick?: (item: any, index: number) => void; } export default function VirtualList({ items, children, itemHeight, height, overscan, gap, scrollToIndex, scrollAlignment, initialScrollIndex, endReachedThreshold, emptyText, className, itemClassName, contentClassName, customAttributes, onScrollChange, onVisibleRangeChange, onEndReached, onItemClick, style, ...props }: VirtualListProps): import("react/jsx-runtime").JSX.Element;