import { Color } from 'vanilla-picker'; import DrawingFeature, { ArrowPosition, ArrowStyle, DrawingShape, DrawingState } from './drawingFeature.js'; import OlDrawing from './olDrawing.js'; import CesiumDrawing from './cesiumDrawing.js'; import GirafeHTMLElement from '../../base/GirafeHTMLElement.js'; import GirafeColorPicker from '../../tools/utils/girafecolorpicker.js'; import LayerDrawing from '../../models/layers/layerdrawing.js'; import IGirafePanel from '../../tools/state/igirafepanel.js'; export default class DrawingComponent extends GirafeHTMLElement implements IGirafePanel { templateUrl: null; styleUrls: null; template: () => import("uhtml").Hole; isPanelVisible: boolean; panelTitle: string; panelTogglePath: string; checkedIcon: string; noCheckedIcon: string; trashIcon: string; locateIcon: string; visibleIcon: string; notVisibleIcon: string; renderedOnce: boolean; drawingState: DrawingState; colorPickers: [GirafeColorPicker, () => string][]; buttons: { id: string; tool: DrawingShape | null; }[]; toolSelected: Element | null; arrowStyles: Record; arrowPositions: Record; lineStyles: Record; activeDrawingLayer?: LayerDrawing; defaultLayerName: string; olDrawing: OlDrawing; cesiumDrawing: CesiumDrawing; fixedLengthEnabled: boolean; batchCreateMode: boolean; constructor(name?: string); render(): void; private renderComponent; refreshRender(): void; registerEvents(): void; unregisterEvents(): void; addColorPicker(id: string, set: (c: Color) => unknown, get: () => string): void; setTool(tool?: DrawingShape | null): void; showToolParameters(tool?: DrawingShape | null): void; protected fixedDimensionValueChangedHandler(e: CustomEvent): void; protected connectedCallback(): void; togglePanel(visible: boolean): void; get selectedFeatures(): DrawingFeature[]; deselectAllFeatures(): void; onFeaturesChanged(oldFeatures: DrawingFeature[], newFeatures: DrawingFeature[]): void; onProjectionChanged(oldProj: string, newProj: string): void; protected onToggleBatchMode(): void; onToggleFeatureSelection(feature: DrawingFeature): void; activateLayerInTreeAndMap(layerName?: string): void; deactivateLayerInTreeAnMap(): void; protected getOptionsTitle(): string; protected isDisplayNameEnabled(): boolean; protected isDisplayMeasureEnabled(): boolean; protected isLineStyleEnabled(): boolean; protected isFillColorEnabled(): boolean; deleteFeature(feature: DrawingFeature): Promise; deleteAllFeatures(): Promise; onOptionsChange(): void; onArrowsChange(): void; toggleNameVisibility(): void; toggleMeasureVisibility(): void; private warnWhenInWebMercator; exportSelectedFeatures(format: 'geojson' | 'kml' | 'gpx'): void; }