import * as React from 'react'; import { OnScrollParams } from 'react-virtualized'; import { ObjectInterface } from '../_utils/interfaces'; import { ScrollbarType } from '../scrollbar/createScrollbar'; import './style/virtualized-list.css'; export interface ItemViewProps extends ObjectInterface { index: number; item: ObjectInterface; style: React.CSSProperties; className: string; } export interface VirtualizedListProps { /** 类型 */ type?: ScrollbarType; /** 数据源 */ data: ObjectInterface[]; /** 行高 */ rowHeight?: number; /** 行宽度 */ rowWidth?: number; /** 单元内容 */ ItemView: React.ElementType; /** 单元属性 */ itemViewProps?: ObjectInterface; onScroll?: (params: OnScrollParams) => void; noRowsRenderer?: () => JSX.Element; scrollToAlignment?: 'auto' | 'end' | 'start' | 'center'; scrollToIndex?: number; scrollTop?: number; style?: React.CSSProperties; tabIndex?: number | null; maxHeight?: number; width?: number; height?: number; className?: string; noBorder?: boolean; /** 动态高度 */ dynamicRowHeight?: boolean; /** 最小行高 */ minRowHeight?: number; /** 默认行高 */ defaultRowHeight?: number; /** 使用滚动条 */ useScrollbar?: boolean; } declare const VirtualizedList: React.FC; export default VirtualizedList; declare const VirtualizedListMemo: React.NamedExoticComponent; export { VirtualizedListMemo };