import { IEditorPlugin, IEditorState, EventMap } from '../types'; import { ICommand } from '../commands/i-command'; export declare class EditorHost { private plugins; private events; private commandStack; private currentCommandIndex; contentLayer: any; contentGroup: any; stage: any; private _status; stageState: { viewportWidth: number; viewportHeight: number; wrapperEl: HTMLElement | null; currentCursorMode: import('../types').CursorMode; mouseStageX: number; mouseStageY: number; spacePressed: boolean; isPanning: boolean; offsetX: number; offsetY: number; autoFitPending: boolean; }; emit(event: K, payload: Parameters[0]): void; on(event: K, handler: EventMap[K]): void; off(event: K, handler: EventMap[K]): void; installPlugin(name: string, pluginClass: new (...args: any[]) => T): EditorHost; uninstallPlugin(pluginName: string): EditorHost; getPlugin(pluginName: string): T; executeCommand(command: ICommand): void; undo(): void; redo(): void; private _emitHistoryChanged; get status(): IEditorState; setStatus(newStatus: Partial): void; toJSON(): string; loadJSON(jsonStr: string): void; }