UNPKG

ajsfw

Version:
43 lines (42 loc) 2.66 kB
import { IDocumentManager } from "ajsfw/doc"; import { IContainer } from "ajsfw/di"; import { ITemplateManager } from "ajsfw/templating"; import { Notifier } from "ajsfw/events"; import { CtorTyped } from "ajsfw/types"; import { IViewManager } from "../View/IViewManager"; import { IViewComponentManager } from "./IViewComponentManager"; import { IRegisteredViewComponentsCollection } from "./IRegisteredViewComponentsCollection"; import { IViewComponent } from "./IViewComponent"; import { IParentViewComponent } from "./IParentViewComponent"; import { IViewComponentState } from "./IViewComponentState"; import { ViewComponent } from "./ViewComponent"; export declare class ViewComponentManager implements IViewComponentManager { private __container; private __documentManager; private __templateManager; private __viewManager; private __components; readonly components: IRegisteredViewComponentsCollection; private __componentDependencies; private __componentInstances; private __rootViewComponent; private __navigationNotifier; readonly navigationNotifier: Notifier<IViewComponentManager>; constructor(container: IContainer, documentManager: IDocumentManager, templateManager: ITemplateManager, viewManager: IViewManager); registerComponents(...componentConstructor: CtorTyped<IViewComponent>[]): void; addComponentDependencies<ConfigParams>(component: CtorTyped<IViewComponent>, ...dependencies: any[]): IViewComponentManager; createViewComponent(name: string, id: string, parentComponent: IParentViewComponent, state?: IViewComponentState, parentComponentInitStateNotify?: IViewComponent): Promise<IViewComponent>; removeComponentInstance(component: IViewComponent): void; getComponentConstructorByName(name: string): CtorTyped<IViewComponent>; getComponentInstanceByComponentId(componentId: number): IViewComponent; getChildrenComponentInstances(component: IViewComponent): IViewComponent[]; getComponentInstances(component: typeof ViewComponent, id?: string, userKey?: string): IViewComponent[]; getFirstComponentInstance<T extends IViewComponent>(component: typeof ViewComponent, id?: string, userKey?: string): T; setRootViewComponent(name: string): Promise<void>; onNavigate(): void; private __registerComponent(componentConstructor); private __isComponentConstructorRegistered(componentConstructor); private __addComponentDependencies<ConfigParams>(componentCtor, ...dependencies); private __getComponentDependencies(componentCtor); private __resolveComponentDependencies(viewComponent); }