import '@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js'; import { Route } from './route/route'; import { StartConfig } from './start-config'; import { Directive } from './directives/abstracts/directive'; import { Type } from './inject/type.interface'; import { Provider, Token } from './inject/provider'; import { IterationDirective } from './directives/abstracts/iteration-directive'; import { ElementListener } from './render/listener'; export declare class NimbleApp { private config; static instance: NimbleApp; private containerInjector; private afterRenderFn; state: NimbleAppState; private firstRender; private changedRoute; private _rootElement; get rootElement(): HTMLElement; private _baseHref; get baseHref(): string; get hasBaseHref(): boolean; iterationElementsApplied: { virtual: { element: HTMLElement; directives: Type[]; anyChildrenApplied: boolean; }[]; real: { element: HTMLElement; directives: Type[]; anyChildrenApplied: boolean; }[]; }; private routeRender; directives: Type[]; private providers; get routes(): Route[]; constructor(config: StartConfig); static config(config: StartConfig): NimbleApp; private afterInstanciate; private defineRootElement; private registerDirectives; private registerProvidersInContainerInjector; start(): NimbleApp; private registerElements; private onRouteStartChange; private onRouteRendering; private onRouteFinishedChange; private onRouteChangeError; private onRouteStartedLoading; private onRouteFinishedLoading; private onRouteErrorLoading; private onRouteStartRerender; private onRouteFinishedRerender; private checkHashLinkAfterRouteChanged; static inject(type: Type, onInstaciate?: (instance: any) => void): T; static registerProvider(provider: Provider): void; static unregisterProvider(provide: Token): void; static get listener(): ElementListener; } export declare enum NimbleAppState { INITIALIZING = "INITIALIZING", INITIALIZED = "INITIALIZED", RERENDERING = "RERENDERING" }