import * as React from 'react';
import {CommonList, CommonListProps} from "./common/CommonList";

export type PureListProps<R> = {
    rows: R[];
} & CommonListProps;

export abstract class PureList<P, R> extends CommonList<PureListProps<R> & P> {
    static propTypes: object;

    hasItems(): boolean;

    abstract renderItem(item: R, index: number, array: R[]): any;

    renderItems(): React.ReactNode;
}