UNPKG

ajsfw

Version:
22 lines (21 loc) 1.55 kB
import { CtorTyped } from "ajsfw/types"; import { Notifier } from "ajsfw/events"; import { IRegisteredViewComponentsCollection } from "./IRegisteredViewComponentsCollection"; import { IViewComponent } from "./IViewComponent"; import { IViewComponentState } from "./IViewComponentState"; export declare const IIViewComponentManager: IViewComponentManager; export interface IViewComponentManager { readonly components: IRegisteredViewComponentsCollection; registerComponents(...componentConstructor: CtorTyped<IViewComponent>[]): void; addComponentDependencies<ConfigParams>(component: CtorTyped<IViewComponent>, ...dependencies: any[]): IViewComponentManager; navigationNotifier: Notifier<IViewComponentManager>; createViewComponent(name: string, id: string, parentComponent: IViewComponent, 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: CtorTyped<IViewComponent>, id?: string, userKey?: string): IViewComponent[]; getFirstComponentInstance<T extends IViewComponent>(component: CtorTyped<IViewComponent>, id?: string, userKey?: string): T; setRootViewComponent(name: string): Promise<void>; onNavigate(): void; }