UNPKG

angular-traversal

Version:
64 lines (63 loc) 2.78 kB
import { ComponentFactoryResolver, ComponentFactory, InjectionToken, Type, Compiler, Injector } from '@angular/core'; import { Location } from '@angular/common'; import { BehaviorSubject, Observable, Subject } from 'rxjs'; import { Resolver } from './resolver'; import { Marker } from './marker'; import { Normalizer } from './normalizer'; import { Target } from './interfaces'; export declare type LazyView = () => Promise<Type<any>>; export declare const NAVIGATION_PREFIX: InjectionToken<BehaviorSubject<string>>; export declare class Traverser { private location; private resolver; private marker; private normalizer; private ngResolver; private compiler; private injector; private prefix; target: BehaviorSubject<Target>; beforeTraverse: Subject<[Subject<boolean>, string]>; traverseTo: Subject<{ path: string; navigate: boolean; }>; echo: Subject<boolean>; canTraverse: Subject<boolean>; tilesContexts: { [name: string]: BehaviorSubject<Target>; }; tileUpdates: Subject<{ tile: string; target: Target; }>; private views; private lazy; private lazyModules; private tiles; constructor(location: Location, resolver: Resolver, marker: Marker, normalizer: Normalizer, ngResolver: ComponentFactoryResolver, compiler: Compiler, injector: Injector, prefix: BehaviorSubject<string>); traverse(path: string, navigate?: boolean): void; _traverse(path: string, navigate: boolean): void; traverseHere(includeHash?: boolean): void; addView(name: string, target: string, component: any): void; addLazyView(name: string, target: string, loader: LazyView): void; loadLazyView(moduleId: string, viewName: string, isTile?: boolean): Promise<Type<any>>; addTile(name: string, target: string, component: any): void; loadTile(name: string, path: string): void; emptyTile(name: string): void; addLazyTile(name: string, target: string, loader: LazyView): void; emitTarget(path: string, contextPath: string, queryString: string, viewOrTile: string, targetObs: BehaviorSubject<Target>, components: { [target: string]: any; }, isTile?: boolean, currentContext?: any): void; _emit(targetObs: BehaviorSubject<Target>, target: Target, viewOrTile: string, isTile: boolean): void; _resolve(path: string, view?: any, queryString?: string): Observable<any>; resolve(path: string, view?: any, queryString?: string): Observable<any>; getFullPath(path: string): string; getComponent(component: any): ComponentFactory<unknown>; getEmptyTarget(): Target; getQueryParams<T = string>(): Observable<{ [key: string]: T; }>; getPrefix(): string; setPrefix(prefix: string): void; }