UNPKG

@robotlegsjs/core

Version:

An architecture-based IoC framework for JavaScript/TypeScript

179 lines (178 loc) 3.98 kB
import { EventDispatcher } from "../../events/impl/EventDispatcher"; import { IClass } from "../../extensions/matching/IClass"; import { IBundle } from "../api/IBundle"; import { IConfig } from "../api/IConfig"; import { IContext } from "../api/IContext"; import { IExtension } from "../api/IExtension"; import { IInjector } from "../api/IInjector"; import { ILogger } from "../api/ILogger"; import { ILogTarget } from "../api/ILogTarget"; import { IMatcher } from "../api/IMatcher"; /** * The core Robotlegs Context implementation */ export declare class Context extends EventDispatcher implements IContext { /** * @inheritDoc */ get injector(): IInjector; /** * @inheritDoc */ get logLevel(): number; /** * @inheritDoc */ set logLevel(value: number); /** * @inheritDoc */ get state(): string; /** * @inheritDoc */ get uninitialized(): boolean; /** * @inheritDoc */ get initialized(): boolean; /** * @inheritDoc */ get active(): boolean; /** * @inheritDoc */ get suspended(): boolean; /** * @inheritDoc */ get destroyed(): boolean; private _uid; private _injector; private _logManager; private _children; private _pin; private _lifecycle; private _configManager; private _extensionInstaller; private _logger; /** * Creates a new Context */ constructor(); /** * @inheritDoc */ initialize(callback?: Function): void; /** * @inheritDoc */ suspend(callback?: Function): void; /** * @inheritDoc */ resume(callback?: Function): void; /** * @inheritDoc */ destroy(callback?: Function): void; /** * @inheritDoc */ beforeInitializing(handler: Function): IContext; /** * @inheritDoc */ whenInitializing(handler: Function): IContext; /** * @inheritDoc */ afterInitializing(handler: Function): IContext; /** * @inheritDoc */ beforeSuspending(handler: Function): IContext; /** * @inheritDoc */ whenSuspending(handler: Function): IContext; /** * @inheritDoc */ afterSuspending(handler: Function): IContext; /** * @inheritDoc */ beforeResuming(handler: Function): IContext; /** * @inheritDoc */ whenResuming(handler: Function): IContext; /** * @inheritDoc */ afterResuming(handler: Function): IContext; /** * @inheritDoc */ beforeDestroying(handler: Function): IContext; /** * @inheritDoc */ whenDestroying(handler: Function): IContext; /** * @inheritDoc */ afterDestroying(handler: Function): IContext; /** * @inheritDoc */ install(...extensions: IBundle[] | IClass<IBundle>[] | IExtension[] | IClass<IExtension>[]): IContext; /** * @inheritDoc */ configure(...configs: IConfig[] | IClass<IConfig>[]): IContext; /** * @inheritDoc */ addChild(child: IContext): IContext; /** * @inheritDoc */ removeChild(child: IContext): IContext; /** * @inheritDoc */ addConfigHandler(matcher: IMatcher, handler: Function): IContext; /** * @inheritDoc */ getLogger(source: any): ILogger; /** * @inheritDoc */ addLogTarget(target: ILogTarget): IContext; /** * @inheritDoc */ detain(...instances: any[]): IContext; /** * @inheritDoc */ release(...instances: any[]): IContext; /** * @inheritDoc */ toString(): string; /** * Configures mandatory context dependencies */ private _setup; private _beforeInitializingCallback; private _afterInitializingCallback; private _beforeDestroyingCallback; private _afterDestroyingCallback; private _onChildDestroy; private _removeChildren; }