@watergis/maplibre-gl-terradraw
Version:
This plugin is to add controls to your Maplibre for drawing powered by Terra Draw library.
60 lines • 2.61 kB
TypeScript
import type { ControlPosition, IControl, Map, StyleSpecification } from 'maplibre-gl';
import { TerraDraw, TerraDrawExtend } from 'terra-draw';
import type { TerradrawControlOptions, EventType, TerradrawMode, EventArgs } from '../interfaces';
export declare class MaplibreTerradrawControl implements IControl {
protected controlContainer?: HTMLElement;
protected map?: Map;
protected modeButtons: {
[key: string]: HTMLButtonElement;
};
protected _isExpanded: boolean;
protected _cssPrefix: string;
get isExpanded(): boolean;
protected get cssPrefix(): string;
set isExpanded(value: boolean);
get showDeleteConfirmation(): boolean;
set showDeleteConfirmation(value: boolean);
protected terradraw?: TerraDraw;
protected options: TerradrawControlOptions;
protected events: {
[key: string]: [(event: EventArgs) => void];
};
protected defaultMode: string;
constructor(options?: TerradrawControlOptions);
getDefaultPosition(): ControlPosition;
onAdd(map: Map): HTMLElement;
onRemove(): void;
on(event: EventType, callback: (event: EventArgs) => void): void;
off(event: EventType, callback: (event: EventArgs) => void): void;
protected dispatchEvent(event: EventType, args?: {
[key: string]: unknown;
}): void;
activate(): void;
deactivate(): void;
protected handleModeChange(mode: string, target: TerraDraw): void;
protected syncButtonStates(mode: string): void;
getTerraDrawInstance(): TerraDraw | undefined;
protected handleHistoryChange(event: {
undoSize: number;
redoSize: number;
}): void;
protected toggleEditor(): void;
resetActiveMode(): void;
protected addTerradrawButton(mode: TerradrawMode): void;
getFeatures(onlySelected?: boolean): {
type: string;
features: import("terra-draw").GeoJSONStoreFeatures<import("terra-draw").GeoJSONStoreGeometries>[];
} | undefined;
cleanStyle(style: StyleSpecification, options?: {
excludeTerraDrawLayers?: boolean;
onlyTerraDrawLayers?: boolean;
}): StyleSpecification;
protected showDeleteConfirmationDialog(onConfirm: () => void): void;
protected handleDeleteAllFeatures(): void;
protected handleDeleteSelectedFeatures(): void;
protected handleDownload(): void;
protected toggleButtonsWhenNoFeature(): void;
protected toggleDeleteSelectionButton(): void;
protected clearExtendedFeatures(sourceIds: string[], ids?: TerraDrawExtend.FeatureId[] | undefined): void;
}
//# sourceMappingURL=MaplibreTerradrawControl.d.ts.map