import { Ref } from 'vue';
import type { ITableProps, IColumn, IRowKey, IRecord, getRowKeyType, IFetchParams, ISorter, IFilter, IPagination, ISuperFilter, IMergedCell, IMergeCellItem } from '../table/types';
import type { ITableRef } from './useTableVar';
type IExtra = {
    getRowKey: getRowKeyType;
    tableVar: ITableRef;
    tableData: Ref<IRecord[]>;
    sorter: Ref<ISorter>;
    filters: Ref<IFilter>;
    selectionKeys: Ref<IRowKey[]>;
    superFilters: Ref<ISuperFilter[]>;
    pagination: Ref<IPagination>;
    mergedTdCells: Ref<IMergedCell[]>;
};
declare const useTableMemo: <T extends ITableProps>(props: T, extra: IExtra) => {
    $size: import("vue").ComputedRef<"large" | "default" | "small">;
    isFetch: import("vue").ComputedRef<boolean>;
    isWebPagination: import("vue").ComputedRef<boolean>;
    isScrollPagination: import("vue").ComputedRef<boolean>;
    showPagination: import("vue").ComputedRef<boolean>;
    shouldUpdateHeight: import("vue").ComputedRef<boolean>;
    tableColumns: import("vue").ComputedRef<IColumn[]>;
    flattenColumns: import("vue").ComputedRef<IColumn[]>;
    editableColumns: import("vue").ComputedRef<IColumn[]>;
    summationColumns: import("vue").ComputedRef<IColumn[]>;
    leftFixedColumns: import("vue").ComputedRef<IColumn[]>;
    rightFixedColumns: import("vue").ComputedRef<IColumn[]>;
    derivedMergeCells: import("vue").ComputedRef<IMergeCellItem[]>;
    treeExpandIndex: import("vue").ComputedRef<string>;
    showSummary: import("vue").ComputedRef<boolean>;
    showFooter: import("vue").ComputedRef<boolean>;
    isHeadGroup: import("vue").ComputedRef<boolean>;
    bordered: import("vue").ComputedRef<boolean>;
    isHeadSorter: import("vue").ComputedRef<boolean>;
    isHeadFilter: import("vue").ComputedRef<boolean>;
    isServiceSummation: import("vue").ComputedRef<boolean>;
    isSelectCollection: import("vue").ComputedRef<boolean>;
    isTableImport: import("vue").ComputedRef<boolean>;
    isTableClipboard: import("vue").ComputedRef<boolean>;
    isSuperSearch: import("vue").ComputedRef<boolean>;
    isFastSearch: import("vue").ComputedRef<boolean>;
    isGroupSummary: import("vue").ComputedRef<boolean>;
    isGroupSubtotal: import("vue").ComputedRef<boolean>;
    isTreeTable: import("vue").ComputedRef<boolean>;
    isTableEmpty: import("vue").ComputedRef<boolean>;
    summationRows: import("vue").ComputedRef<Record<string, string | number>[]>;
    fetchParams: import("vue").ComputedRef<IFetchParams>;
};
export default useTableMemo;
