UNPKG

inversify

Version:

A powerful and lightweight inversion of control container for JavaScript and Node.js apps powered by TypeScript.

30 lines (29 loc) 2.09 kB
import { interfaces } from '../interfaces/interfaces'; declare class BindingInWhenOnSyntax<T> implements interfaces.BindingInSyntax<T>, interfaces.BindingWhenSyntax<T>, interfaces.BindingOnSyntax<T> { private _bindingInSyntax; private _bindingWhenSyntax; private _bindingOnSyntax; private _binding; constructor(binding: interfaces.Binding<T>); inRequestScope(): interfaces.BindingWhenOnSyntax<T>; inSingletonScope(): interfaces.BindingWhenOnSyntax<T>; inTransientScope(): interfaces.BindingWhenOnSyntax<T>; when(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T>; whenTargetNamed(name: string): interfaces.BindingOnSyntax<T>; whenTargetIsDefault(): interfaces.BindingOnSyntax<T>; whenTargetTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T>; whenInjectedInto(parent: (NewableFunction | string)): interfaces.BindingOnSyntax<T>; whenParentNamed(name: string): interfaces.BindingOnSyntax<T>; whenParentTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T>; whenAnyAncestorIs(ancestor: (NewableFunction | string)): interfaces.BindingOnSyntax<T>; whenNoAncestorIs(ancestor: (NewableFunction | string)): interfaces.BindingOnSyntax<T>; whenAnyAncestorNamed(name: string): interfaces.BindingOnSyntax<T>; whenAnyAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T>; whenNoAncestorNamed(name: string): interfaces.BindingOnSyntax<T>; whenNoAncestorTagged(tag: string, value: unknown): interfaces.BindingOnSyntax<T>; whenAnyAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T>; whenNoAncestorMatches(constraint: (request: interfaces.Request) => boolean): interfaces.BindingOnSyntax<T>; onActivation(handler: (context: interfaces.Context, injectable: T) => T | Promise<T>): interfaces.BindingWhenSyntax<T>; onDeactivation(handler: (injectable: T) => void | Promise<void>): interfaces.BindingWhenSyntax<T>; } export { BindingInWhenOnSyntax };