import { OnDestroy, OnInit } from '@angular/core';
import { MatDialog, MatSnackBar } from '@angular/material';
import { Store } from '@ngrx/store';
import Feature from 'ol/Feature';
import VectorLayer from 'ol/layer/Vector';
import { Observable, Subscription } from 'rxjs';
import { MangolLayer } from '../../../../classes/Layer';
import { FeatureinfoDictionary } from './../../../../store/featureinfo/featureinfo.reducers';
import * as fromMangol from './../../../../store/mangol.reducers';
import { FeatureinfoService } from './../../featureinfo.service';
export declare class FeatureinfoResultsComponent implements OnInit, OnDestroy {
    private store;
    private featureinfoService;
    snackBar: MatSnackBar;
    dialog: MatDialog;
    dictionary: FeatureinfoDictionary;
    layer$: Observable<MangolLayer>;
    resultsLayer$: Observable<VectorLayer>;
    resultsFeatures$: Observable<Feature[]>;
    tab$: Observable<string>;
    combinedSubscription: Subscription;
    clickFunction: any;
    constructor(store: Store<fromMangol.MangolState>, featureinfoService: FeatureinfoService, snackBar: MatSnackBar, dialog: MatDialog);
    ngOnInit(): void;
    ngOnDestroy(): void;
    /**
     * Removes the click funciton if needed, plus resets the cursor style
     */
    private _removeClickFunction;
    /**
     * Creates the clickFunction for a given singleclick event
     * @param evt
     * @param layer
     * @param m
     */
    private _createClickFunction;
    /**
     * Opens a snackbar with the number of features found
     * @param hits
     */
    private _openSnackBar;
    /**
     * Retrieves the title for the individual feature
     * @param feature
     */
    getExpansionPanelTitle$(feature: Feature): Observable<string>;
    /**
     * Opens a full table dialog
     */
    openTableDialog(): void;
    /**
     * Shows the feature on the map with a hover style
     * @param feature
     */
    showFeatureOnMap(feature: Feature): void;
    /**
     * Hides the hovered feature on the map
     * @param feature
     */
    hideFeatureOnMap(feature: Feature): void;
    /**
     * Sets the view extent to a feature
     * @param feature
     */
    zoomToFeature(feature: Feature): void;
}
