import * as React from 'react';
import './index.scss';
export interface OadpEntityTableProps {
    name?: string;
    id?: string;
    entity?: string;
    filterRule?: any;
    orderByRule?: any;
    children?: any;
    label?: React.ReactNode;
    enableTableQueryBar?: any;
    tableQueryBar?: any;
    enableTableButtonBar?: any;
    tableButtonBar?: any;
    enableRowButtonBar?: boolean;
    rowButtonBar?: any;
    tableWidth?: number;
    rowSelectionMode?: 'multiple' | 'single' | 'disabled';
    enableSerialNumber?: boolean;
    preLockAttributeList?: string[];
    postLockAttributeList?: string[];
    __designMode?: string;
    pageType?: 'normal' | 'simple' | 'mini';
    pageButton?: 'normal' | 'arrow-only' | 'no-border';
    pageShowCount?: number;
    pageNum?: number;
    pageSize?: number;
    pageSizeSelector?: false | 'filter' | 'dropdown';
    pageSizeList?: Array<number> | Array<{
        label: string;
        value: number;
    }>;
}
export interface OadpEntityTableState {
    needInitDataSource: boolean;
    entityTableDataSource: any[];
    pageNum: number;
    pageSize: number;
    total: number;
    readFastCondition: any;
    visibleTableSetting: boolean;
    attributeDataSource: any[];
    attributeShowDataSource: any[];
    transferTargetValue: any[];
    transferTargetDataSource: any[];
    dynamicChildren: any[];
    tableMaxBodyHeight: number;
    tableMaxHeight: number;
}
export declare class OadpEntityTable extends React.Component<OadpEntityTableProps, any> {
    private topBoxRef;
    private paginationRef;
    constructor(props: OadpEntityTableProps);
    componentDidMount(): Promise<void>;
    componentDidUpdate(prevProps: OadpEntityTableProps): void;
    updateTableMaxBodyHeight: () => void;
    handleRowSelectionUpdate: () => void;
    handleRefreshTableDataSourceEvent: (payload: {
        tableComponentRefId: string;
        readFastCondition: any;
        pageNum: number;
        pageSize: number;
    }) => void;
    handleRefreshTableColumnEvent: (payload: {
        tableComponentRefId: string;
        showColumnList: any;
    }) => void;
    componentWillUnmount(): void;
    handleResize: () => void;
    handleFilterRuleToCondition: (filterCondition: any, field: any) => any;
    initDataSource: (payload?: {
        tableComponentRefId: string;
        readFastCondition: any;
        pageNum: number;
        pageSize: number;
    }) => Promise<void>;
    onPageNumChange: (pageNum: any, e: any) => void;
    onPageSizeChange: (pageSize: any) => void;
    renderChildren: () => any;
    renderRowButtonBar: (cellData: any, rowData: any, rowIndex: any) => React.JSX.Element;
    rowSelectionOnChange(ids: any, records: any): void;
    render(): React.JSX.Element;
}
export default OadpEntityTable;
