/// <reference types="react" />
import React, { Component } from 'react';
import Item from './Item';
export interface ListGridType {
    gutter?: number;
    column?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
    xs?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
    sm?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
    md?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
    lg?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
    xl?: 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24;
}
export interface InfinitePropType {
    onLoad?: any;
    loading?: boolean;
    offset?: number;
}
export interface ListProps {
    bordered?: boolean;
    className?: string;
    children?: React.ReactNode;
    extra?: React.ReactNode;
    id?: string;
    itemLayout: string;
    loading?: boolean;
    showLoadMore?: boolean;
    loadingMore?: boolean;
    onLoadMore?: React.FormEventHandler<any>;
    pagination?: any;
    prefixCls?: string;
    grid?: ListGridType;
    infinite?: InfinitePropType;
}
export default class List extends Component<ListProps> {
    static Item: typeof Item;
    static childContextTypes: {
        grid: any;
    };
    scrollEvent: any;
    resizeEvent: any;
    timeout: any;
    node: any;
    events: string[];
    infiniteLoaded: boolean;
    eventHandlers: {};
    getChildContext(): {
        grid: ListGridType | undefined;
    };
    componentDidMount(): void;
    componentWillUnmount(): void;
    getNode: (n: any) => void;
    isInfinite(): boolean | undefined;
    setTargetEventListeners(getTarget: any): void;
    clearEventListeners(): void;
    infiniteLoad(): void;
    render(): JSX.Element;
}
