import * as VTable from '@visactor/vtable'; import type { DetailTableOptions } from './types'; export declare class SubTableManager { private table; private enableCheckboxCascade; private timers; constructor(table: VTable.ListTable, enableCheckboxCascade?: boolean); private saveSubTableCheckboxState; private restoreSubTableCheckboxState; private safeSetTimeout; private cleanupAllTimers; private updateSubTableCheckboxVisualState; renderSubTable(bodyRowIndex: number, childrenData: unknown[], getDetailConfig: (record: unknown, bodyRowIndex: number) => DetailTableOptions | null): void; private handleAutoHeightAfterRender; private calculateSubTableContentHeight; private onAutoHeightCalculated?; setAutoHeightCallback(callback: (bodyRowIndex: number, newTotalHeight: number) => void): void; private columnRangeCache; private getColumnRange; private calculateSubTableViewBox; removeSubTable(bodyRowIndex: number): void; private cleanupSubTableEventHandlers; private setupScrollEventIsolation; private setupUnifiedSelectionManagement; private calculateGroupLevelOffset; private isAncestorGroup; private setupSubTableCanvasClipping; private setupAntiFlickerMechanism; updateSubTablePositionsForRowResize(): void; recalculateAllSubTablePositions(start?: number, end?: number, getDetailConfig?: (record: unknown, bodyRowIndex: number) => DetailTableOptions | null): void; cleanup(): void; getAllSubTableInstances(): Map | undefined; getSubTableInstance(bodyRowIndex: number): VTable.ListTable | null; private getDetailConfigForRecord?; setCallbacks(callbacks: { getDetailConfigForRecord?: (record: unknown, bodyRowIndex: number) => DetailTableOptions | null; }): void; private setupSubTableEventForwarding; private forwardSubTableEvent; private clearMainTableSelectionInternal; private clearAllSelectionsExcept; private cleanupSubTableEventForwarding; }