/// <reference types="react" />
import * as React from 'react';
import Item from './Item';
export { ListItemProps, ListItemMetaProps } from './Item';
export declare type ColumnType = 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
export interface ListGridType {
    gutter?: number;
    column?: ColumnType;
    xs?: ColumnType;
    sm?: ColumnType;
    md?: ColumnType;
    lg?: ColumnType;
    xl?: ColumnType;
}
export declare type ListSize = 'small' | 'default' | 'large';
export interface ListProps {
    bordered?: boolean;
    className?: string;
    children?: React.ReactNode;
    dataSource: any;
    extra?: React.ReactNode;
    grid?: ListGridType;
    id?: string;
    itemLayout?: string;
    loading?: boolean;
    loadMore?: React.ReactNode;
    pagination?: any;
    prefixCls?: string;
    rowKey?: any;
    renderItem: any;
    size?: ListSize;
    split?: boolean;
    header?: React.ReactNode;
    footer?: React.ReactNode;
}
export default class List extends React.Component<ListProps> {
    static Item: typeof Item;
    static childContextTypes: {
        grid: any;
    };
    private keys;
    getChildContext(): {
        grid: ListGridType | undefined;
    };
    renderItem: (item: any, index: any) => any;
    isSomethingAfterLastTtem(): boolean;
    render(): JSX.Element;
}
