import { FoundationAnalytics } from '@genesislcap/foundation-comms'; import { User } from '@genesislcap/foundation-user'; import { Constructable } from '@microsoft/fast-element'; import { Container } from '@microsoft/fast-foundation'; import { RouterConfiguration, NavigationPhase } from '@microsoft/fast-router'; import type { NavigateToConfig } from './events'; import { FoundationRouteNavItem, NavItemPredicate } from './navItems'; import { Router } from './router'; import { FoundationRouteCollection } from './routes'; import type { FoundationRouteSettings } from './types'; /** * @beta */ export declare abstract class FoundationRouterConfiguration extends RouterConfiguration { protected container: Container; protected analytics: FoundationAnalytics; user: User; private _session; logger: import("@genesislcap/foundation-logger").Logger; loginPath: string; notFoundPath: string; notPermittedPath: string; basename: string; relativeTo: Router; readonly routes: FoundationRouteCollection; protected constructor(); /** * @remarks * Get navigation items from the route definitions. */ getNavItems(predicate?: NavItemPredicate): FoundationRouteNavItem[]; /** * @remarks * Applies the analytics service to the navigate phase. */ configureAnalytics(): void; /** * @remarks * Adds route permitted checks to the navigate phase. */ configureRoutePermittedChecks(): void; /** * @remarks * Adds a fallback route. */ configureFallbackRouteDefinition(): void; /** * @remarks * Navigate to the login page during a NavigationPhase. */ navigationPhaseLoginRedirect(phase: NavigationPhase): void; /** * @privateRemarks * Note that this method is called on the router closest to the caller. It will apply the basename at this level to * the path that is generated based the local name provided. Navigating with the Route.name APIs instead of * the Route.path APIs is preferred, as it removes path complexity from callers in sub path deployment contexts. */ generateRouteFromName(name: string, params: object): Promise; navigateTo(config: NavigateToConfig): Promise; /** * @privateRemarks * See notes on generateRouteFromName above. */ generateNavigationPath(path: string, params?: object): string; getNavigationPathBasename(): string; construct(Type: Constructable): T; } //# sourceMappingURL=configuration.d.ts.map