import { SafeHtml } from '@angular/platform-browser';
import { Subject } from 'rxjs';
import { Style } from 'ol/style';
import { Coordinate } from 'ol/coordinate';
import { Map, Feature } from 'ol';
import { FeatureLike } from 'ol/Feature';
import { Point, Geometry } from 'ol/geom';
import { Select } from 'ol/interaction';
import { Vector } from 'ol/layer';
import { HsFeatureDescriptor } from 'hslayers-ng/types';
import * as i0 from '@angular/core';
import Style$1, { StyleLike } from 'ol/style/Style';
import { Vector as Vector$1 } from 'ol/source';
type HsProjectedCoordinatesDescription = {
/**
* EPSG code name of the projection
*/
name: string;
/**
* Stringified coordinate values in the named projection
*/
value: string;
};
type HsCoordinateDescription = {
/**
* Translated title "coordinates"
*/
name: string;
mapProjCoordinate: Coordinate;
epsg4326Coordinate: Coordinate;
projections: HsProjectedCoordinatesDescription[];
};
declare class HsQueryBaseService {
private hsMapService;
private hsConfig;
private hsLayoutService;
private hsLanguageService;
private hsEventBusService;
private hsSaveMapService;
private domSanitizer;
private zone;
private platformId;
attributes: any[];
features: HsFeatureDescriptor[];
featureInfoHtmls: SafeHtml[];
customFeatures: any[];
coordinates: HsCoordinateDescription[];
selectedProj: HsProjectedCoordinatesDescription;
queryLayer: Vector;
featureLayersUnderMouse: any[];
dataCleared: boolean;
invisiblePopup: HTMLIFrameElement;
queryPoint: Point;
selector: Select;
last_coordinate_clicked: any;
queryActive: boolean;
currentQuery: string;
popupClassname: string;
private defaultNonQueryablePanels;
get nonQueryablePanels(): string[];
getFeatureInfoStarted: Subject;
getFeatureInfoCollected: Subject;
queryStatusChanges: Subject;
vectorSelectorCreated: Subject