import { OnDestroy } from '@angular/core'; import { Observable } from 'rxjs'; import { ActiveGroupService } from '../../groups/services/active-group.service'; import { LoggerService } from '../../logger/services/logger.service'; import { CaseResourceService } from '../../resources/engine-endpoint/case-resource.service'; import { Case } from '../../resources/interface/case'; import { Page } from '../../resources/interface/page'; import { LoadingEmitter } from '../../utility/loading-emitter'; import { UriNodeResource } from '../model/uri-resource'; import { UriResourceService } from './uri-resource.service'; import * as i0 from "@angular/core"; /** * Service for managing URIs * */ export declare class UriService implements OnDestroy { protected _logger: LoggerService; protected _resourceService: UriResourceService; protected _caseResourceService: CaseResourceService; protected _activeGroupService: ActiveGroupService; protected pageSize: string | number; static ROOT: string; private _rootNode; private readonly _rootLoading$; private readonly _parentLoading$; private readonly _activeNode$; constructor(_logger: LoggerService, _resourceService: UriResourceService, _caseResourceService: CaseResourceService, _activeGroupService: ActiveGroupService, pageSize: string | number); ngOnDestroy(): void; get root(): UriNodeResource; get rootLoaded$(): LoadingEmitter; isRoot(node: UriNodeResource): boolean; get activeNode(): UriNodeResource; set activeNode(node: UriNodeResource); get activeNode$(): Observable; get parentNodeLoading$(): Observable; /** * Loads root ID into variable. * When root node is loaded and active node is not set yet the root node is set as active node * */ private loadRoot; reset(): UriNodeResource; /** * Get uri node by uri path. * @param path */ getNodeByPath(path: string): Observable; /** * Get child nodes of provides node. * @param node parent node */ getChildNodes(node?: UriNodeResource): Observable>; /** * Get cases under uri node * @param node parent node of cases * @param processIdentifiers optional search filter for process identifier to get only cases from the process * @param pageNumber optional parameter for load page on the index. Default value is 0 (the first page). * @param pageSize optional parameter for loaded page size. Defaults to value of injection token URI_NODE_CASES_PAGE_SIZE or to value "20". */ getCasesOfNode(node?: UriNodeResource, processIdentifiers?: Array, pageNumber?: number, pageSize?: string | number): Observable>; /** * Get menu item case by nodePath field value * @param node a node, that is represented by the wanted case * @return page containing 1 case */ getItemCaseByNodePath(node?: UriNodeResource): Observable>; /** * Get siblings node of the provided node * @param node siblings node */ getSiblingsOfNode(node?: UriNodeResource): Observable>; /** * Get nodes on the same uri level starting from 0. Root node is no 0 level. * @param level * @param parent optional parameter to filter nodes with common parent */ getNodesOnLevel(level: number, parent?: UriNodeResource): Observable>; resolveParentPath(node?: UriNodeResource): string; splitNodePath(node: UriNodeResource): Array; private capitalizeNames; /** * /netgrif/nae_system/processes/... => Netgrif -> Nae Systems -> Processes * @param node * @private */ private capitalizeName; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }