import { IDesignItem } from '../../item/IDesignItem.js'; import { InstanceServiceContainer } from '../../services/InstanceServiceContainer.js'; import { ServiceContainer } from '../../services/ServiceContainer.js'; import { Snaplines } from './Snaplines.js'; import { IExtensionManager } from './extensions/IExtensionManger.js'; import { IUiCommandHandler } from '../../../commandHandling/IUiCommandHandler.js'; import { IPoint } from '../../../interfaces/IPoint.js'; import { OverlayLayerView } from './overlayLayerView.js'; import { IRect } from "../../../interfaces/IRect.js"; import { ISize } from "../../../interfaces/ISize.js"; import { ITool } from "./tools/ITool.js"; export interface IDesignerCanvas extends IUiCommandHandler, HTMLElement { readOnly: boolean; readonly serviceContainer: ServiceContainer; readonly instanceServiceContainer: InstanceServiceContainer; readonly containerBoundingRect: DOMRect; readonly outerRect: DOMRect; readonly rootDesignItem: IDesignItem; readonly overlayLayer: OverlayLayerView; readonly extensionManager: IExtensionManager; readonly clickOverlay: HTMLDivElement; readonly snapLines: Snaplines; readonly shadowRoot: ShadowRoot | null; readonly alignOnGrid: boolean; readonly alignOnSnap: boolean; readonly gridSize: number; raiseDesignItemsChanged: (designItems: IDesignItem[], action: 'resize' | 'place', operationFinished: boolean) => void; readonly iframes: HTMLIFrameElement[]; zoomFactor: number; designerOffsetWidth: number; designerOffsetHeight: number; readonly designerPixelSize: { width: number; height: number; }; readonly scaleFactor: number; canvasOffset: IPoint; readonly containerOffset: IPoint; canvas: HTMLElement; pauseAnimations: boolean; additionalStyles: CSSStyleSheet[]; ignoreEvent(event: Event): any; initialize(serviceContainer: ServiceContainer): any; getNormalizedEventCoordinates(event: MouseEvent): IPoint; getViewportCoordinates(event: MouseEvent): IPoint; getNormalizedElementCoordinates(element: Element): IRect; getNormalizedElementCoordinatesAndRealSizes(element: Element): IRect & { realWidth: number; realHeight: number; }; getNormalizedElementCoordinates(element: Element, ignoreScalefactor?: boolean): IRect; captureActiveTool(tool: ITool): any; releaseActiveTool(): any; readonly activeTool: ITool; getDesignSurfaceDimensions(): ISize; getNormalizedOffsetInElement(event: MouseEvent, element: Element): IPoint; getElementAtPoint(point: IPoint, ignoreElementCallback?: (element: HTMLElement) => boolean): any; elementsFromPoint(x: number, y: number): Element[]; showHoverExtension(element: Element, event: Event): any; setDesignItems(designItems: IDesignItem[]): any; _internalSetDesignItems(designItems: IDesignItem[]): any; getDesignItemById(id: string): IDesignItem; querySelectorDesignItem(selector: string): IDesignItem; querySelectorAllDesignItems(selector: string): IDesignItem[]; zoomTowardsPoint(point: IPoint, scalechange: number): void; zoomPoint(canvasPoint: IPoint, newZoom: number): void; zoomOntoRectangle(startPoint: IPoint, endPoint: IPoint): void; showDesignItemContextMenu(designItem: IDesignItem, event: MouseEvent): void; lazyTriggerReparseDocumentStylesheets(): any; }