ajsfw
Version:
Ajs Framework
42 lines (41 loc) • 1.83 kB
TypeScript
import { IRouter } from "ajsfw/routing";
import { INavigator } from "ajsfw/navigation";
import { IDocumentManager } from "ajsfw/doc";
import { ITemplateManager } from "ajsfw/templating";
import { IVisualComponent } from "ajsfw/templating";
import { IViewManager } from "../View/IViewManager";
import { IViewComponentManager } from "./IViewComponentManager";
import { IViewComponentState } from "./IVIewComponentState";
import { IParentViewComponent } from "./IParentViewComponent";
import { IStateChangeInfo } from "./IStateChangeInfo";
import { ITransitionBeginHandler } from "./ITransitionBeginHandler";
import { IAttributeProcessorCollection } from "./IAttributeProcessorCollection";
import { IViewComponent } from "./IViewComponent";
export interface IViewComponentProperties<State extends IViewComponentState, ParentViewComponent extends IParentViewComponent> {
router: IRouter;
navigator: INavigator;
documentManager: IDocumentManager;
templateManager: ITemplateManager;
viewManager: IViewManager;
viewComponentManager: IViewComponentManager;
id: string;
stylesheetsApplied: boolean;
initialized: boolean;
parentComponent: ParentViewComponent;
visualComponent: IVisualComponent;
templateElement: HTMLElement;
stateChangePrevented: boolean;
stateKeys: string[];
stateQueue: IStateChangeInfo[];
processingStateQueue: boolean;
stateChanged: boolean;
hasVisualStateTransition: boolean;
visualStateTransitionRunning: boolean;
transitionOldElement: Element;
transitionNewElement: Element;
visualStateTransitionBeginHandler: ITransitionBeginHandler;
attributeProcessors: IAttributeProcessorCollection;
key: string;
stateToApply: any;
parentComponentInitStateNotify: IViewComponent;
}