ts-bakery
Version:
Baked dependency injection for Typescript.
14 lines (13 loc) • 560 B
TypeScript
import DependencyBinding from '../Configuration/DependencyBinding';
import ConstructorReference from './ConstructorReference';
export default interface IDependencyRegistration {
get constructorReference(): ConstructorReference<unknown>;
get name(): string;
get isSingle(): boolean;
get restrictions(): string[];
get hasRestrictions(): boolean;
get isLazy(): boolean;
canBeRequestedBy(config: IDependencyRegistration): boolean;
setBinding(binding: DependencyBinding): void;
matchesBinding(dependencyName: string): boolean;
}