import { Observable } from 'rxjs';
import { Entity } from '../../shared/model/entity';
import { HttpClient } from '@angular/common/http';
import { Store } from '@ngrx/store';
import { Logger } from '../../infrastructure/logger';
import { EntityTypeInstance } from '../model/entity-type-instance';
import { SortOption } from '../model/sort-option';
import { FilterCategory } from '../model/filter-category';
import { FilterRangeParameter } from '../model/filter-range-parameter';
import { HousingUnitsChartHeader } from '../model/housing-units-chart-header';
import { HousingUnitsChart } from '../model/housing-units-chart';
import { TargetChart } from '../model/target-chart';
import { FilterState } from '../store/filter.reducer';
import * as i0 from "@angular/core";
export declare class EntityService {
    private httpClient;
    private store;
    private logger;
    protected env: any;
    innerEntitiesProcessHeight: number[];
    cardProcessHeight: number[];
    constructor(httpClient: HttpClient, store: Store<FilterState>, logger: Logger, env: any);
    getEntities(filterCategories: FilterCategory[], filtersParametersRange: FilterRangeParameter[], filterTerm: string, skip: number, take: number, presentationTypeId: number, administrativeCode: number, entrepreneurCode: number, sortId: number): Observable<Entity[]>;
    downloadResultFile(filterCategories: FilterCategory[], filterParametersRange: FilterRangeParameter[], filterTerm: string): Observable<{}>;
    getEntity(fixedId: string, entityType: EntityTypeInstance, presentationTypeId: number): Observable<Entity>;
    getEntityByBlockParcel(block: number, parcel: number, entityType: EntityTypeInstance, presentationTypeId: number): Observable<Entity>;
    getEntityBySpecificPresentation(presentationId: number, relatedEntityId: number): Observable<Entity>;
    private getBaseUrl;
    getSearchCategories(filterCategories: FilterCategory[], filterRangeParameters: FilterRangeParameter[], filterTerm: string, sortId: number): Observable<FilterCategory[]>;
    getHousingUnitsCharts(filterCategories: FilterCategory[], filtersCategoryRange: FilterRangeParameter[], filterTerm: string): Observable<HousingUnitsChart[]>;
    getHousingUnitsChartsHeaders(filterCategories: FilterCategory[], filtersCategoryRange: FilterRangeParameter[], filterTerm: string): Observable<HousingUnitsChartHeader[]>;
    getTargetCharts(): Observable<TargetChart[]>;
    getStatusEntities(processId: number): Observable<Entity[]>;
    getEntityTemplate(entityTypeId: number, presentationTypeId: number, parentRangeId?: string): Observable<Entity>;
    markSuperRange(entityId: string, isSuperRange: boolean): Observable<{}>;
    deleteEntity(entityId: number): Observable<Entity>;
    getSortOptions(entityMetadataId: number): Observable<SortOption[]>;
    static ɵfac: i0.ɵɵFactoryDeclaration<EntityService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<EntityService>;
}
