UNPKG

@jems/di

Version:

An implementation of IoC pattern based on dependency injection that allows you to granulate and decouple your libraries or applications. Wrote using SOLID principles and a variety OOP patterns implementations.

40 lines (39 loc) 1.29 kB
import { Kernel } from './kernel'; import { ResolutionOption } from './resolutionOption'; /** * Represents a context that contain a resolution relevant information. */ export declare class ResolutionContext { /** * Represenst the kernel that is performing the resolution. */ kernel: Kernel; /** * Represents the container used by the kernel to resolve the reference. */ originContainerAlias: string; /** * Represernt the container that is currently resolving the reference as original or support. */ currentContainerAlias: string; /** * Represents the stack of containers that are supporting the original container in the resolution. */ containerSupportingStack: string[]; /** * Represents the stack of alias that are scheduled to be resolve in order to perform the resolution. */ aliasResolutionStack: string[]; /** * Represents the stack of argumentable targets that are scheduled to be resolve in order to perform the resolution. */ targetResolutionStack: Function[]; /** * Represents the step already taken to perform the resolution. */ steps: string[]; /** * Represents the options of the resolution. */ resolutionOption: ResolutionOption; }