@robotlegsjs/core
Version:
An architecture-based IoC framework for JavaScript/TypeScript
179 lines (178 loc) • 3.98 kB
TypeScript
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;
}