import { Route } from "./route"; import { RenderAbstract } from "../render/render-abstract"; import { ElementListenersCollector } from "../providers/listeners-collector"; import { HeaderRender } from "../render/header-render"; export declare class RouteRender extends RenderAbstract { private headerRender; protected listenersCollector: ElementListenersCollector; constructor(headerRender: HeaderRender, listenersCollector: ElementListenersCollector); /** * Prepare a specific route to be compiled and rendered * @param route */ prepareRouteToCompileAndRender(route: Route): Promise; /** * Compile and render a specific route and your children * @param route */ compileAndRenderRoute(route: Route): void; /** * Render again a specific route and your children * @param route */ rerenderRoute(route: Route): void; /** * Notifies the "onDestroy()" methods of pages unrendereds and "onInit()" methods of pages already rendered * @param route */ notifyRoutesAfterRouteChanged(route: Route): Promise<{ isRendered: boolean; }>; /** * Notifies the "onInit()" methods of pages already rendered * @param route */ notifyRoutesAfterRerender(route: Route): Promise<{ isRendered: boolean; }>; private notifyOldRoutesElementDestroyed; /** * Notifies the "onInit()" methods of pages already rendered * @param commonParentRoute * @param highestParentRoute * @param route * @param inRerender */ private notifyNewRoutesElementRendered; private getRouterElement; }