import React from 'react';
import { ComplexAction } from '../types';
import { IEmptyStateAction } from '../EmptyStateAction';
import { SelectedButtonIcon } from './SelectedAction';
import { ReadonlyURLSearchParams } from 'next/navigation';
export interface MainTableProps {
    paginationData: any;
    isUnaccentSearchValue?: boolean;
    sortData: any;
    slectedTitle?: string | any;
    selectedBtn?: Array<ComplexAction & {
        icon?: SelectedButtonIcon;
    }>;
    pathname?: any;
    list: {
        keyResult: string;
        query: string;
    } | any;
    thHeader: Array<any>;
    thBody: Array<any>;
    thBodyComponent?: object | any;
    thBodyFilter?(): any;
    editActionLink?: string;
    search: {
        enable: boolean;
        keyResult: string;
        query: string;
    } | any;
    selectedAllPeople?: {
        enable: boolean;
        title: string;
        maxSelectedPeople?: number;
        hideSelectedAction?: boolean;
    } | any;
    actionName?: any;
    sort?: {
        enable?: boolean;
        defaultActive?: string;
        sortList?: Array<any>;
    } | any;
    clickRow?: boolean;
    clickType?: 'edit' | 'custom';
    router?: Record<string, any>;
    setAggregate?: any;
    sortSelectData?: any;
    selectArray?: any;
    pagination?: any;
    routerCondition?: {
        link: string;
        conditionName: string;
        conditionArray: Array<any>;
    } | any;
    onClick?(rowData: any): any;
    thHeaderComponent?: any;
    hidePagination?: boolean;
    rowNumber?: number;
    onChange?: any;
    typeLoading?: {
        type: 'page-with-table' | 'page-table-with-report' | 'table' | 'page-table-report-filter' | 'page-table-filter';
        filterQty?: number;
        reportQty?: number;
    };
    setHeaderLoading?: any;
    directDetail?: {
        enable: boolean;
        onClick?(): any;
    } | any;
    filterLoading?: boolean;
    fixedTableLayout?: boolean;
    numericalOrder?: {
        enable: boolean;
        title: string | any;
        disableSpacing?: boolean;
        sticky?: boolean;
    };
    isQueryDataCenter?: boolean;
    isQueryDevPortal?: boolean;
    isSortEmpty?: boolean;
    emptyStateAction?: IEmptyStateAction & {
        enable: boolean;
    };
    isCustomHeaderSelected?: boolean;
    disableSpacing?: {
        disable: boolean;
        indexStart: number;
    };
    border?: boolean;
    isCenterText?: boolean;
    searchValueData?(val: string): void;
    stickyColumnNumber?: number;
    getDataTable?(val: any): void;
    stickyColumnNumberRight?: number;
    isBackgroundReload?: boolean;
    loaded?: (val: boolean) => void;
    isResetPagination?: boolean;
    tableKey?: string;
    searchParams?: ReadonlyURLSearchParams;
    completeState?: boolean;
    completeStateTitle?: string;
    completeStateDescription?: string;
    type?: 'default' | 'in-card';
    title?: string;
    replaceUrl?: boolean;
}
export declare function PHXTableV3({ actionName, clickRow, clickType, directDetail, editActionLink, filterLoading, fixedTableLayout, hidePagination, isQueryDataCenter, isQueryDevPortal, list, numericalOrder, onChange, onClick, pagination, paginationData, router: routerDefault, routerCondition, rowNumber, search, selectArray, selectedAllPeople, selectedBtn, setAggregate, setHeaderLoading, slectedTitle, sort, sortData, sortSelectData, thBody, thBodyComponent, thBodyFilter, thHeader, thHeaderComponent, typeLoading, isSortEmpty, emptyStateAction, isCustomHeaderSelected, isUnaccentSearchValue, disableSpacing, border, isCenterText, searchValueData, stickyColumnNumber, getDataTable, stickyColumnNumberRight, isBackgroundReload, loaded, isResetPagination, tableKey, searchParams, completeState, completeStateTitle, completeStateDescription, type, title, replaceUrl, }: Readonly<MainTableProps>): React.JSX.Element;
