import { InjectionToken } from '@angular/core'; import { ActivatedRouteSnapshot, IsActiveMatchOptions, NavigationEnd, Router } from '@angular/router'; import { ArrayBehaviorState } from '../rx'; import { Sitemap, SiteRef } from '../sitemap/sitemap'; export interface ActiveSiteRef extends SiteRef { activatedRoute: ActivatedRouteSnapshot; } export interface BreadcrumbSiteRef extends ActiveSiteRef { title?: string; } export declare type BreadcrumbTitleSelector = (site: ActiveSiteRef) => string; export declare const BREADCRUMB_TITLE_SELECTOR: InjectionToken; export declare class Breadcrumbs extends ArrayBehaviorState { readonly sitemap: Sitemap; protected router: Router; protected titleSelector?: BreadcrumbTitleSelector; constructor(sitemap: Sitemap, router: Router, titleSelector?: BreadcrumbTitleSelector); protected onNavigationEnd(e: NavigationEnd): void; isActiveSite(site: SiteRef, options?: Partial): boolean; findActiveSite(sites: SiteRef[], options?: Partial): SiteRef | null; resolveActiveSitePath(): BreadcrumbSiteRef[]; protected mapActiveSiteRef(site: SiteRef): BreadcrumbSiteRef; }