import { Observable } from 'rxjs';
import { IElementDto, ServiceSpecificationDto } from '../model';
import * as i0 from "@angular/core";
export declare class FlatElementsService {
    private _flatElementsDto;
    private flatElementsDtoSource;
    flatElementsDto: Observable<IElementDto[]>;
    private objectElementsDto;
    listFilterFunc: import("../model/config-tree.model").FilterFunction[];
    constructor();
    setElementsDto(elementsDto: ServiceSpecificationDto): void;
    static getFlatElements(container: {
        elements?: IElementDto[] | null;
    }): IElementDto[];
    static getObjectElements(elements: IElementDto[]): {
        [id: string]: IElementDto;
    };
    getOneElementById(id: string | null): Observable<IElementDto | null>;
    checkFilterValue(element: IElementDto, filterValue: string): boolean;
    jumpNextNode(delta: number, currentElement: IElementDto | null, conditionFunc?: (e: IElementDto) => boolean): IElementDto | null;
    private getNextIndex;
    getObjectElementsDto(): {
        [id: string]: IElementDto;
    };
    static ɵfac: i0.ɵɵFactoryDeclaration<FlatElementsService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FlatElementsService>;
}
