import { AtlasMapComponent } from '@acaisoft/angular-azure-maps'; export declare class GeofenceDrawingTool { /** * The layer the geofence will be above, not required */ protected beforeLayer: atlas.layer.Layer; /** * Geofence datasource */ protected datasource: atlas.source.DataSource; /** * Bubble layer to hold the geofence shape */ protected dragHandleLayer: any; /** * Callback function from parent class */ protected drawingEndedCallback: Function; /** * Radius of geofence point */ protected handleRadius: number; /** * Map component */ protected map: atlas.Map; /** * A tool for drawing geofences on the map using a mouse. * * @param map An Azure Map's map instance to attach the drawing tool too. * * @param beforeLayer The layer or name of a layer to render the drawing layer before. * * @param drawingEndedCallback Function that is called when a drawing has been completed. * */ constructor(mapComp: AtlasMapComponent, beforeLayer: atlas.layer.Layer, drawingEndedCallback: Function); /** * Start setting up the geofence layer */ protected setupGeofence(): void; /** * Mouse up event handler * * @param mapEvent object containing map, originalEvent, pixel, position, preventDefault, shapes, & types */ protected mouseUp(mapEvent: any): void; /** * Mouse up event handler * * @param mapEvent object containing map, originalEvent, pixel, position, preventDefault, shapes, & types */ protected mouseMove(mapEvent: any): void; /** * Mouse up event handler * * @param mapEvent object containing map, originalEvent, pixel, position, preventDefault, shapes, & types */ protected dragHandleSelected(mapEvent: any): void; /** * Starts a new drawing session. Clears all data in the drawing layer */ StartDrawing(): void; /** * Stops any current drawing in progresse */ protected endDrawing(): void; /** * Clears all data in the drawing layer */ Clear(): void; /** * Check if the last point is close to the first point * * @param firstPos first geofence position * * @param last last geofence position */ protected pixelDistance(firstPos: number, lastPos: number): number; }