import BaseLayer from 'ol/layer/Base'; import { Source } from 'ol/source'; import { Feature } from 'ol'; import { Geometry } from 'ol/geom'; import { Layer } from 'ol/layer'; import { ObjectEvent } from 'ol/Object'; import { HsMapService } from 'hslayers-ng/services/map'; import * as i0 from '@angular/core'; type FeatureDomEventLink = { handles: EventListenerOrEventListenerObject[]; layer: Layer; domElements: Element[]; event: string; }; interface FeatureDomEventLinkDict { [key: string]: FeatureDomEventLink; } declare class HsExternalService { hsMapService: HsMapService; private hsLog; private hsQueryPopupService; private hsQueryBaseService; private hsQueryVectorService; private hsLayoutService; featureLinks: FeatureDomEventLinkDict; constructor(); layerRemoved(layer: BaseLayer): void; /** * Registers DOM--feature links for newly added layer and * also sets listener for 'propertychange' in case the domFeatureLinks are changed later on. * The linked feature cannot be a RenderFeature. * @param layer - OL BaseLayer (superclass of Layer) */ layerAdded(layer: BaseLayer): void; layerPropChanged(e: ObjectEvent): void; private processLinks; private removeFeatureLink; actOnFeature(action: 'zoomToExtent' | 'panToCenter' | 'showPopup' | 'hidePopup' | 'select' | ((feature: Feature, domElement: Element, event: any) => any), feature: Feature, domElement: Element, e: Event): void; private getFeature; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export { HsExternalService }; export type { FeatureDomEventLink, FeatureDomEventLinkDict };