import type { ListTable } from '@visactor/vtable'; import type { TableEventHandlersEventArgumentMap } from '@visactor/vtable/es/ts-types/events'; import type { ISpreadsheetEventSource } from './event-interfaces'; type EventCallback = (...args: any[]) => void; export interface EnhancedTableEvent { sheetKey: string; [key: string]: any; } export declare class TableEventRelay { private _tableEventMap; private vtableSheet; private boundSheets; private cleanupCallbacks; constructor(vtableSheet: ISpreadsheetEventSource); onTableEvent(type: K, callback: (event: TableEventHandlersEventArgumentMap[K] & { sheetKey: string; }) => void): void; offTableEvent(type: string, callback?: EventCallback): void; private cleanupWrappedCallbacks; bindSheetEvents(sheetKey: string, tableInstance: ListTable): void; private bindSheetEvent; private bindToAllSheets; unbindSheetEvents(sheetKey: string, tableInstance: ListTable): void; private unbindFromAllSheets; getRegisteredEventTypes(): string[]; getListenerCount(type: string): number; clearAllListeners(): void; destroy(): void; } export {};