import { RefObject } from 'react';
import { default as Color } from 'color';
import { AccountReport, COABalance, FetchState, NestedClassID } from '@zeniai/client-epic-state';
import { CompareMode } from '../common/compareMode';
import { ReportTreeInternalType, ReportTreeScrollPosition, RootNodes } from './ReportTree';
import { AccountBalanceClickMeta, ReportTreeKind } from './reportTreeTypes';
export interface Props {
    compareMode: Exclude<CompareMode, "off">;
    isSticky: {
        isStickyHeader: boolean;
        isStickyName: boolean;
    };
    nodeOpenStatus: Record<string, boolean>;
    rootNodes: RootNodes;
    type: ReportTreeKind;
    backgroundColor?: Color;
    infiniteLoadingProps?: {
        itemCount: number;
        isItemLoaded: (index: number) => boolean;
        loadMoreItems: () => void;
    };
    scrollPosition?: ReportTreeScrollPosition;
    treeNodePadding?: {
        left: number;
        right: number;
    };
    treeRef?: RefObject<ReportTreeInternalType>;
    variableNodeHeightTree?: {
        fetchState: FetchState;
        isSortApplied: boolean;
        prevFetchState: FetchState;
        prevRefreshFetchState: FetchState;
        refreshFetchState: FetchState;
        reducedFetchState?: FetchState;
        setIsSortApplied: (sortingChanged: boolean) => void;
    };
    onAccountClick?: (account: AccountReport, balance: COABalance, balanceClickMeta?: AccountBalanceClickMeta) => void;
    onCompareModeChanged?: (newCompareMode: Exclude<CompareMode, "off">) => void;
    onNodeCollapseToggled?: (nodeId: string, isOpen: boolean) => void;
    onReportTableHeightChanged?: (reportTableHeight: number) => void;
    onScroll?: (props: ReportTreeScrollPosition) => void;
    onToggleCheck?: (nodeId: NestedClassID, isChecked: boolean) => void;
}
export declare function CollapsableReportTable({ rootNodes, type, compareMode, isSticky, backgroundColor, treeNodePadding, onAccountClick, infiniteLoadingProps, variableNodeHeightTree, onCompareModeChanged, scrollPosition, onScroll, nodeOpenStatus, onNodeCollapseToggled, onReportTableHeightChanged, onToggleCheck, treeRef, }: Readonly<Props>): import("react/jsx-runtime").JSX.Element;
