import { Signal } from '@angular/core'; import { AddImage, AlignmentType, BoundingBox, FormatType, SelectionBox, ToolType, WhiteboardConfig, WhiteboardElement, BlendMode } from '../types'; import { CursorType } from '../types/cursors'; import * as i0 from "@angular/core"; export declare class ApiService { private elementsService; private canvasService; private selectionService; private toolsService; private ioService; private historyService; private zoomService; private panService; private layerService; private configService; private clipboardService; private eventBusService; readonly elements: Signal; readonly draftElements: Signal; readonly allElements: Signal; readonly selectedElements: Signal; readonly config: Signal; readonly elementsCount: Signal; readonly hasElements: Signal; readonly selectedTool: Signal; readonly availableTools: Signal; readonly layers: Signal; readonly activeLayerId: Signal; readonly activeLayer: Signal; setElements(elements: WhiteboardElement[]): void; getElements(): WhiteboardElement[]; addElements(elements: WhiteboardElement[]): void; updateElements(elements: Array & { id: string; }>): void; removeElements(elements: WhiteboardElement[]): void; clear(): void; clearAll(): void; addElement(element: WhiteboardElement): void; updateElement(element: WhiteboardElement): void; removeElementsByIds(elementIds: string[]): void; getElementById(id: string): WhiteboardElement | undefined; getElementsByIds(ids: string[]): WhiteboardElement[]; getNextZIndex(): number; getAllElements(): WhiteboardElement[]; getDraftElements(): WhiteboardElement[]; addDraftElements(elements: WhiteboardElement[]): void; updateDraftElements(elements: Partial[]): void; removeDraftElements(elementIds: string[]): void; commitDraftElements(): void; elementExists(elementId: string): boolean; selectElements(elementsOrIds: WhiteboardElement | WhiteboardElement[] | string | string[], append?: boolean): void; deselectElement(elementOrId: WhiteboardElement | string): void; toggleSelection(elementOrId: WhiteboardElement | string): void; clearSelection(): void; selectAll(): void; getSelectedElements(): WhiteboardElement[]; updateSelectedElements(partialElement: Partial): void; removeSelectedElements(): void; isSelected(elementOrId: WhiteboardElement | string): boolean; clearSelectionBox(): void; transformSelectedElements(transformFn: (elements: WhiteboardElement[]) => WhiteboardElement[]): void; setSelectionBox(selectionBox: SelectionBox): void; updateBoundingBox(): void; getBoundingBox(): BoundingBox | null; setBoundingBox(bbox: BoundingBox | null): void; getClipboardInfo(): import("../types").ClipboardInfo | null; copyElements(): void; cutElements(): void; pasteElements(): void; duplicateElements(): void; deleteSelectedElements(): void; bringToFront(): void; bringForward(): void; sendBackward(): void; sendToBack(): void; groupSelectedElements(): void; ungroupSelectedElements(): void; lockElements(): void; unlockElements(): void; alignElements(alignment: AlignmentType): void; distributeHorizontally(): void; distributeVertically(): void; flipHorizontal(): void; flipVertical(): void; moveSelectedElements(dx: number, dy: number): void; rotateSelectedElements(angle: number): void; scaleSelectedElements(factor: number): void; initializeWhiteboard(svgContainer: SVGSVGElement): void; getCanvas(): SVGSVGElement; setCanvasDimensions(width: number, height: number): void; centerCanvas(): void; fullScreen(): void; exitFullScreen(defaultWidth?: number, defaultHeight?: number): void; resetCanvas(): void; setZoom(zoom: number): void; zoomIn(): void; zoomOut(): void; resetZoom(): void; zoomToFit(): void; zoomToSelection(): void; pan(dx: number, dy: number): void; panTo(x: number, y: number): void; resetPan(): void; save(format?: FormatType, name?: string): Promise; addImage(imageInfo: AddImage): void; importImageFile(file: File, x?: number, y?: number): Promise; exportData(): string; importData(jsonData: string): void; exportAsPNG(name?: string): Promise; exportAsSVG(name?: string): Promise; exportAsJSON(name?: string): void; undo(): boolean; redo(): boolean; getCanUndoSignal(): Signal; getCanRedoSignal(): Signal; clearHistory(): void; recordElementCreation(before: WhiteboardElement[], after: WhiteboardElement[]): void; recordElementUpdate(before: WhiteboardElement[], after: WhiteboardElement[]): void; recordElementDeletion(before: WhiteboardElement[], after: WhiteboardElement[]): void; recordClear(before: WhiteboardElement[], after: WhiteboardElement[]): void; recordChange(before: WhiteboardElement[], after: WhiteboardElement[], description: string): void; getConfig(): WhiteboardConfig; updateConfig(config: Partial): void; updateConfigValue(key: K, value: WhiteboardConfig[K]): void; addLayer(name?: string): import("../types").WhiteboardLayer; removeLayer(id: string): boolean; duplicateLayer(id: string): void; setActiveLayer(id: string): boolean; getActiveLayerId(): string; toggleLayerVisibility(id: string): boolean; toggleLayerLock(id: string): boolean; renameLayer(id: string, name: string): boolean; setLayerOpacity(id: string, opacity: number): boolean; setLayerBlendMode(id: string, blendMode: BlendMode): boolean; moveLayerUp(id: string): boolean; moveLayerDown(id: string): boolean; reorderLayersByIndex(previousIndex: number, currentIndex: number): boolean; toggleGrid(): void; toggleSnapToGrid(): void; setGridSize(size: number): void; setActiveTool(tool: ToolType): void; getActiveTool(): ToolType; setToolEnabled(toolType: ToolType, enabled: boolean): boolean; setEnabledTools(toolTypes: ToolType[]): void; setCursor(cursor: CursorType): void; resetCursor(): void; screenToCanvas(screenX: number, screenY: number): { x: number; y: number; }; canvasToScreen(canvasX: number, canvasY: number): { x: number; y: number; }; getSelectionBoxSignal(): Signal; getBoundingBoxSignal(): Signal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }