proxydi
Version:
A typed hierarchical DI container that resolves circular dependencies via Proxy
11 lines (10 loc) • 889 B
TypeScript
import { ContainerizedDependency, DependencyClass, DependencyId, ResolveScope } from './types';
/**
* Resolves all dependencies from container hierarchy either by its dependency ID or through a class constructor for auto-injectable classes.
* @param instance The instance registered in a container (used to find its container reference).
* @param dependencyId The dependency ID or class constructor.
* @param scope Bitwise enum to control where to search (Parent | Current | Children). Defaults to Children.
* @returns Array with all found dependency instances, could be empty
*/
export declare function resolveAll<T>(instance: any, dependencyId: DependencyId, scope?: ResolveScope): (T & ContainerizedDependency)[];
export declare function resolveAll<T extends DependencyClass<any>>(instance: any, SomeClass: T, scope?: ResolveScope): (InstanceType<T> & ContainerizedDependency)[];