import * as i0 from '@angular/core'; import { PipeTransform, OnInit } from '@angular/core'; import { Feature } from 'ol'; import { Vector, Layer } from 'ol/layer'; import { Vector as Vector$1, Source } from 'ol/source'; import * as i6 from 'hslayers-ng/common/panels'; import { HsPanelBaseComponent } from 'hslayers-ng/common/panels'; import { Geometry } from 'ol/geom'; import { HsFeatureDescriptor } from 'hslayers-ng/types'; import { HsLanguageService } from 'hslayers-ng/services/language'; import { HsMapService } from 'hslayers-ng/services/map'; import * as i4 from '@angular/common'; import * as i5 from '@angular/forms'; import * as i7 from '@ngx-translate/core'; import * as i8 from '@ng-bootstrap/ng-bootstrap'; declare class HsFeatureFilterPipe implements PipeTransform { /** * Transform * * @returns Filtered features */ transform(features: any[], searchText: string): any[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class HsFeatureTableComponent extends HsPanelBaseComponent implements OnInit { private hsFeatureTableService; private hsConfig; private hsMapService; private hsSidebarService; layers: Vector>[]; name: string; ngOnInit(): void; /** * Add layer to feature description table * @param layer - Layer to add */ addLayerToTable(layer: Vector>): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class HsFeatureTableService { private hsQueryVectorService; /** * Trigger for reverse sorting */ sortReverse: boolean; /** * Last sorting value selected */ lastSortValue: string; /** * all feature attributes for HTML table */ features: HsFeatureDescriptor[]; /** * Checks if layer is vectorLayer and is visible in layer_manager, to exclude layers, such as, point Clicked * * @param layer - Layer from HsConfig.layersInFeatureTable * @returns Returns layer */ addLayer(layer: Layer): any; /** * Wrap layer object * * @param layer - Layer from HsConfig.layersInFeatureTable * @returns Returns wrapped layer object */ wrapLayer(layer: Layer): any; /** * Search all layers feature attributes and map them into new objects for html table * * @param layer - Layer from HsConfig.layersInFeatureTable */ fillFeatureList(layer: Layer): void; /** * Update feature description * * @param feature - Feature selected */ updateFeatureDescription(feature: Feature): void; /** * Add feature description * * @param feature - Feature selected */ addFeatureDescription(feature: Feature): void; /** * Remove feature description * * @param feature - Feature selected */ removeFeatureDescription(feature: Feature): void; /** * Describe feature * * @param feature - Feature selected */ describeFeature(feature: Feature): HsFeatureDescriptor; /** * Find feature name attribute and separate it from other attributes for html table purposes * * @param attributes - layers feature attributes * @returns feature name */ setFeatureName(attributes: any): string; /** * Remove feature name attribute from feature attributes array * * @param attributes - layers feature attributes * @returns feature attributes */ attributesWithoutFeatureName(attributes: any): any; /** * Sort features by requested value * * @param valueName - Requested value to sort the feature table list */ sortFeaturesBy(valueName: any): void; /** * Sorting algorithm * * @param a - First input feature * @param b - second input feature * @param valueName - Sorting value * @returns Returns each features relative position in the table */ sortFeatures(a: any, b: any, valueName: any): number; /** * Get requested features attribute value, which will be used in the sorting algorithm * * @param attributes - features attributes * @param valueName - Sorting value * @returns Returns attributes value */ getValue(attributes: any, valueName: string): string | number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } type Operation = { action: 'zoom to' | 'delete' | 'custom action'; feature: Feature; customActionName?: string; customAction?: any; }; declare class HsLayerFeaturesComponent implements OnInit { hsFeatureTableService: HsFeatureTableService; hsMapService: HsMapService; hsLanguageService: HsLanguageService; /** * Input layer from HsConfig.layersInFeatureTable property array */ layer: any; /** * Toggle for showing feature statistics */ showFeatureStats: boolean; searchedFeatures: string; /** * Activate listeners for any layer source changes to update the html table */ ngOnInit(): void; /** * Zoom to feature from HTML table after triggering zoom action * @param operation - Action for HTML table */ executeOperation(operation: Operation): void; /** * Translate provided text to selected locale language * @param text - Text to translate to locale * @returns Returns translation */ translate(text: string): string; /** * Sort features by value * @param name - Sort value */ sortFeaturesBy(name: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class HsFeatureTableModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { HsFeatureFilterPipe, HsFeatureTableComponent, HsFeatureTableModule, HsFeatureTableService, HsLayerFeaturesComponent };