import { type SpreadSheetEventMap } from '../ts-types/spreadsheet-events';
import { BaseEventManager } from './base-event-manager';
import type { ISpreadsheetEventSource } from './event-interfaces';
export declare class SpreadSheetEventManager extends BaseEventManager<SpreadSheetEventMap> {
    private spreadsheet;
    constructor(spreadsheet: ISpreadsheetEventSource);
    protected getEventTypes(): string[];
    emitReady(): void;
    emitDestroyed(): void;
    emitResized(width: number, height: number): void;
    emitSheetAdded(sheetKey: string, sheetTitle: string, index: number): void;
    emitSheetRemoved(sheetKey: string, sheetTitle: string, index: number): void;
    emitSheetRenamed(sheetKey: string, oldTitle: string, newTitle: string): void;
    emitSheetActivated(sheetKey: string, sheetTitle: string, previousSheetKey?: string, previousSheetTitle?: string): void;
    emitSheetDeactivated(sheetKey: string, sheetTitle: string): void;
    emitSheetMoved(sheetKey: string, fromIndex: number, toIndex: number): void;
    emitSheetVisibilityChanged(sheetKey: string, visible: boolean): void;
    emitImportStart(fileType: 'xlsx' | 'xls' | 'csv'): void;
    emitImportCompleted(fileType: 'xlsx' | 'xls' | 'csv', sheetCount?: number): void;
    emitImportError(fileType: 'xlsx' | 'xls' | 'csv', error: string | Error): void;
    emitExportStart(fileType: 'xlsx' | 'csv', allSheets: boolean): void;
    emitExportCompleted(fileType: 'xlsx' | 'csv', allSheets: boolean, sheetCount?: number): void;
    emitExportError(fileType: 'xlsx' | 'csv', allSheets: boolean, error: string | Error): void;
    emitCrossSheetReferenceUpdated(sourceSheetKey: string, targetSheetKeys: string[], affectedFormulaCount: number): void;
    emitCrossSheetFormulaCalculateStart(): void;
    emitCrossSheetFormulaCalculateEnd(): void;
}
