diff --git a/classes/classes_TSinjex.TSinjex.html b/classes/classes_TSinjex.TSinjex.html index 9caaa14..b52b48d 100644 --- a/classes/classes_TSinjex.TSinjex.html +++ b/classes/classes_TSinjex.TSinjex.html @@ -9,7 +9,7 @@
  • register for registering a dependency (class or instance) as a function.
  • resolve for resolving a dependency as a function.
  • -

    Implements

    Constructors

    Implements

    Constructors

    Properties

    Methods

    register @@ -18,22 +18,22 @@ register resolve

    Constructors

    Properties

    _dependencies: Map<Identifier, IDependency> = ...

    The dependencies map.

    -
    _instance: TSinjex

    The singleton instance of the TSinjex class.

    -

    Methods

    Properties

    _dependencies: Map<Identifier, IDependency> = ...

    The dependencies map.

    +
    _instance: TSinjex

    The singleton instance of the TSinjex class.

    +

    Methods

    • Register a dependency.

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency.

      • dependency: T

        The dependency to register.

      • deprecated: boolean = false

        If true, the dependency is deprecated => a warning is logged when the dependency is resolved.

        -

      Returns void

    • Resolve a dependency

      +

    Returns void

    +
    diff --git a/classes/interfaces_Exceptions.DependencyResolutionError.html b/classes/interfaces_Exceptions.DependencyResolutionError.html index 5284009..e0e8b2e 100644 --- a/classes/interfaces_Exceptions.DependencyResolutionError.html +++ b/classes/interfaces_Exceptions.DependencyResolutionError.html @@ -1,6 +1,6 @@ DependencyResolutionError | ts-injex - v0.1.0

    Error class for dependency resolution errors in ITSinjex.

    Hierarchy (view full)

    Constructors

    Hierarchy (view full)

    Constructors

    Properties

    message name stack? @@ -9,7 +9,7 @@

    Methods

    Constructors

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    +

    Returns DependencyResolutionError

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    stackTraceLimit: number

    Methods

    • Create .stack property on a target object

      Parameters

      • targetObject: object
      • OptionalconstructorOpt: Function

      Returns void

    diff --git a/classes/interfaces_Exceptions.InitializationError.html b/classes/interfaces_Exceptions.InitializationError.html index 81bbc88..b33bb71 100644 --- a/classes/interfaces_Exceptions.InitializationError.html +++ b/classes/interfaces_Exceptions.InitializationError.html @@ -1,6 +1,6 @@ InitializationError | ts-injex - v0.1.0

    Error class for errors during the initialization of a dependency in ITSinjex.

    ITSinjex.inject

    -

    Hierarchy (view full)

    Constructors

    Hierarchy (view full)

    Constructors

    Properties

    message name stack? @@ -10,7 +10,7 @@

    Constructors

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    +

    Returns InitializationError

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    stackTraceLimit: number

    Methods

    • Create .stack property on a target object

      Parameters

      • targetObject: object
      • OptionalconstructorOpt: Function

      Returns void

    diff --git a/classes/interfaces_Exceptions.InjectorError.html b/classes/interfaces_Exceptions.InjectorError.html index e79b344..91447f9 100644 --- a/classes/interfaces_Exceptions.InjectorError.html +++ b/classes/interfaces_Exceptions.InjectorError.html @@ -1,6 +1,6 @@ InjectorError | ts-injex - v0.1.0

    Error class for Injector errors in ITSinjex.

    ITSinjex.inject

    -

    Hierarchy (view full)

    Constructors

    Hierarchy (view full)

    Constructors

    Properties

    message name stack? @@ -10,7 +10,7 @@

    Constructors

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    +

    Returns InjectorError

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    stackTraceLimit: number

    Methods

    • Create .stack property on a target object

      Parameters

      • targetObject: object
      • OptionalconstructorOpt: Function

      Returns void

    diff --git a/classes/interfaces_Exceptions.NoInstantiationMethodError.html b/classes/interfaces_Exceptions.NoInstantiationMethodError.html index 4dcd99a..2ae1aea 100644 --- a/classes/interfaces_Exceptions.NoInstantiationMethodError.html +++ b/classes/interfaces_Exceptions.NoInstantiationMethodError.html @@ -1,6 +1,6 @@ NoInstantiationMethodError | ts-injex - v0.1.0

    Error class for missing instantiation methods in ITSinjex.

    ITSinjex.inject

    -

    Hierarchy (view full)

    Constructors

    Hierarchy (view full)

    Constructors

    Properties

    message name stack? @@ -9,7 +9,7 @@

    Methods

    Constructors

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    +

    Returns NoInstantiationMethodError

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    stackTraceLimit: number

    Methods

    • Create .stack property on a target object

      Parameters

      • targetObject: object
      • OptionalconstructorOpt: Function

      Returns void

    diff --git a/classes/interfaces_Exceptions.TSinjexError.html b/classes/interfaces_Exceptions.TSinjexError.html index c7bcda7..e4e0084 100644 --- a/classes/interfaces_Exceptions.TSinjexError.html +++ b/classes/interfaces_Exceptions.TSinjexError.html @@ -1,5 +1,5 @@ TSinjexError | ts-injex - v0.1.0

    General error class for ITSinjex interface.

    -

    Hierarchy (view full)

    Constructors

    Hierarchy (view full)

    Constructors

    Properties

    message name stack? @@ -8,7 +8,7 @@

    Methods

    Constructors

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    +

    Returns TSinjexError

    Properties

    message: string
    name: string
    stack?: string
    prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)

    Optional override for formatting stack traces

    stackTraceLimit: number

    Methods

    • Create .stack property on a target object

      Parameters

      • targetObject: object
      • OptionalconstructorOpt: Function

      Returns void

    diff --git a/coverage/lcov-report/classes/TSinjex.ts.html b/coverage/lcov-report/classes/TSinjex.ts.html index 2142cce..0d2e68a 100644 --- a/coverage/lcov-report/classes/TSinjex.ts.html +++ b/coverage/lcov-report/classes/TSinjex.ts.html @@ -451,7 +451,7 @@ export class TSinjex implements ITSinjex {
    • Decorator to enforce static implementation of an interface. Warns on compile time if the interface is not implemented.

      Type Parameters

      • I

      Returns (<T>(constructor: T, ...args: unknown[]) => void)

      A decorator function

      -
        • <T>(constructor, ...args): void
        • Type Parameters

          • T

          Parameters

          • constructor: T
          • Rest...args: unknown[]

          Returns void

    +
    diff --git a/interfaces/interfaces_IDependency.IDependency.html b/interfaces/interfaces_IDependency.IDependency.html index ce9529d..28bc061 100644 --- a/interfaces/interfaces_IDependency.IDependency.html +++ b/interfaces/interfaces_IDependency.IDependency.html @@ -1,7 +1,7 @@ IDependency | ts-injex - v0.1.0

    Dependency Entry Interface

    -
    interface IDependency {
        dependency: unknown;
        deprecated?: boolean;
    }

    Properties

    interface IDependency {
        dependency: unknown;
        deprecated?: boolean;
    }

    Properties

    dependency: unknown

    The dependency itself

    -
    deprecated?: boolean

    If true, the dependency is deprecated => a warning +

    deprecated?: boolean

    If true, the dependency is deprecated => a warning is logged when the dependency is resolved

    -
    +
    diff --git a/interfaces/interfaces_ITSinjex.ITSinjex.html b/interfaces/interfaces_ITSinjex.ITSinjex.html index 47b1f70..8f19a60 100644 --- a/interfaces/interfaces_ITSinjex.ITSinjex.html +++ b/interfaces/interfaces_ITSinjex.ITSinjex.html @@ -1,31 +1,31 @@ ITSinjex | ts-injex - v0.1.0

    Instance TSinjex Interface

    -
    interface ITSinjex {
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Implemented by

    Methods

    interface ITSinjex {
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Implemented by

    Methods

    • Register a dependency.

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency.

      • dependency: T

        The dependency to register.

      • Optionaldeprecated: boolean

        If true, the dependency is deprecated => a warning is logged when the dependency is resolved.

        -

      Returns void

    • Register a deprecated dependency.

      +

    Returns void

  • Register a deprecated dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: true

      A warning is logged when the dependency is resolved.

      -

    Returns void

  • Register a dependency.

    +
  • Returns void

  • Register a dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: false

      No warning is logged when the dependency is resolved.

      -

    Returns void

  • Returns void

    +
    diff --git a/interfaces/interfaces_ITSinjex.ITSinjexRegister.html b/interfaces/interfaces_ITSinjex.ITSinjexRegister.html index ff0eeb6..ec707fd 100644 --- a/interfaces/interfaces_ITSinjex.ITSinjexRegister.html +++ b/interfaces/interfaces_ITSinjex.ITSinjexRegister.html @@ -1,16 +1,16 @@ ITSinjexRegister | ts-injex - v0.1.0

    Register method for static and instance Dependency Injection Container.

    -
    interface ITSinjexRegister {
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
    }

    Hierarchy (view full)

    Methods

    interface ITSinjexRegister {
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
    }

    Hierarchy (view full)

    Methods

    Methods

    • Register a dependency.

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency.

      • dependency: T

        The dependency to register.

      • Optionaldeprecated: boolean

        If true, the dependency is deprecated => a warning is logged when the dependency is resolved.

        -

      Returns void

    • Register a deprecated dependency.

      +

    Returns void

  • Register a deprecated dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: true

      A warning is logged when the dependency is resolved.

      -

    Returns void

  • Register a dependency.

    +
  • Returns void

  • Register a dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: false

      No warning is logged when the dependency is resolved.

      -

    Returns void

  • +

    Returns void

    diff --git a/interfaces/interfaces_ITSinjex.ITSinjexResolve.html b/interfaces/interfaces_ITSinjex.ITSinjexResolve.html index 6614dcc..d851939 100644 --- a/interfaces/interfaces_ITSinjex.ITSinjexResolve.html +++ b/interfaces/interfaces_ITSinjex.ITSinjexResolve.html @@ -1,17 +1,17 @@ ITSinjexResolve | ts-injex - v0.1.0

    Resolve method for static and instance Dependency Injection Container.

    -
    interface ITSinjexResolve {
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Methods

    interface ITSinjexResolve {
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Methods

    Methods

    • Resolve a dependency

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency

      • Optionalnecessary: boolean

        If true, throws an error if the dependency is not found

      Returns undefined | T

      The resolved dependency or undefined if the dependency is not found

      A DependencyResolutionError if the dependency is not found and necessary.

      -
    • Resolve a necessary dependency.

      +
    • Resolve a necessary dependency.

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency.

      • Optionalnecessary: true

        If true, throws an error if the dependency is not found.

      Returns T

      The resolved dependency.

      A DependencyResolutionError if the dependency is not found.

      -
    • Resolve a non necessary dependency

      +
    • Resolve a non necessary dependency

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency

      • Optionalnecessary: false

        Not necessary, does not throw an error if the dependency is not found.

      Returns undefined | T

      The resolved dependency or undefined if the dependency is not found

      -
    +
    diff --git a/interfaces/interfaces_ITSinjex.ITSinjex_.html b/interfaces/interfaces_ITSinjex.ITSinjex_.html index d3daa31..2168a30 100644 --- a/interfaces/interfaces_ITSinjex.ITSinjex_.html +++ b/interfaces/interfaces_ITSinjex.ITSinjex_.html @@ -1,34 +1,34 @@ ITSinjex_ | ts-injex - v0.1.0

    Static TSInjex Interface

    -
    interface ITSinjex_ {
        getInstance(): ITSinjex;
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Methods

    interface ITSinjex_ {
        getInstance(): ITSinjex;
        register<T>(identifier: Identifier, dependency: T, deprecated?: boolean): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: true): void;
        register<T>(identifier: Identifier, dependency: T, deprecated?: false): void;
        resolve<T>(identifier: Identifier, necessary?: boolean): undefined | T;
        resolve<T>(identifier: Identifier, necessary?: true): T;
        resolve<T>(identifier: Identifier, necessary?: false): undefined | T;
    }

    Hierarchy (view full)

    Methods

    • Register a dependency.

      Type Parameters

      • T

      Parameters

      • identifier: Identifier

        The identifier of the dependency.

      • dependency: T

        The dependency to register.

      • Optionaldeprecated: boolean

        If true, the dependency is deprecated => a warning is logged when the dependency is resolved.

        -

      Returns void

    • Register a deprecated dependency.

      +

    Returns void

  • Register a deprecated dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: true

      A warning is logged when the dependency is resolved.

      -

    Returns void

  • Register a dependency.

    +
  • Returns void

  • Register a dependency.

    Type Parameters

    • T

    Parameters

    • identifier: Identifier

      The identifier of the dependency.

    • dependency: T

      The dependency to register.

    • Optionaldeprecated: false

      No warning is logged when the dependency is resolved.

      -

    Returns void

  • Returns void

    +
    diff --git a/modules/classes_TSinjex.html b/modules/classes_TSinjex.html index f267013..89f29b2 100644 --- a/modules/classes_TSinjex.html +++ b/modules/classes_TSinjex.html @@ -1,2 +1,2 @@ -classes/TSinjex | ts-injex - v0.1.0

    Module classes/TSinjex

    Index

    Classes

    TSinjex +classes/TSinjex | ts-injex - v0.1.0

    Module classes/TSinjex

    Index

    Classes

    diff --git a/modules/decorators_Inject.html b/modules/decorators_Inject.html index d03f3f8..c25285e 100644 --- a/modules/decorators_Inject.html +++ b/modules/decorators_Inject.html @@ -1,2 +1,2 @@ -decorators/Inject | ts-injex - v0.1.0

    Module decorators/Inject

    Index

    Functions

    Inject +decorators/Inject | ts-injex - v0.1.0

    Module decorators/Inject

    Index

    Functions

    diff --git a/modules/decorators_Register.html b/modules/decorators_Register.html index 3e84f9e..59efe3f 100644 --- a/modules/decorators_Register.html +++ b/modules/decorators_Register.html @@ -1,2 +1,2 @@ -decorators/Register | ts-injex - v0.1.0

    Module decorators/Register

    Index

    Functions

    Register +decorators/Register | ts-injex - v0.1.0

    Module decorators/Register

    Index

    Functions

    diff --git a/modules/decorators_RegisterInstance.html b/modules/decorators_RegisterInstance.html index 61fca49..0ba7097 100644 --- a/modules/decorators_RegisterInstance.html +++ b/modules/decorators_RegisterInstance.html @@ -1,2 +1,2 @@ -decorators/RegisterInstance | ts-injex - v0.1.0

    Module decorators/RegisterInstance

    Index

    Functions

    RegisterInstance +decorators/RegisterInstance | ts-injex - v0.1.0

    Module decorators/RegisterInstance

    Index

    Functions

    diff --git a/modules/functions_register.html b/modules/functions_register.html index 9136375..fc3e7d6 100644 --- a/modules/functions_register.html +++ b/modules/functions_register.html @@ -1,2 +1,2 @@ -functions/register | ts-injex - v0.1.0

    Module functions/register

    Index

    Functions

    register +functions/register | ts-injex - v0.1.0

    Module functions/register

    Index

    Functions

    diff --git a/modules/functions_resolve.html b/modules/functions_resolve.html index 63428d8..d01bb39 100644 --- a/modules/functions_resolve.html +++ b/modules/functions_resolve.html @@ -1,2 +1,2 @@ -functions/resolve | ts-injex - v0.1.0

    Module functions/resolve

    Index

    Functions

    resolve +functions/resolve | ts-injex - v0.1.0

    Module functions/resolve

    Index

    Functions

    diff --git a/modules/helper_ImplementsStatic.html b/modules/helper_ImplementsStatic.html index 07e5eb1..f7f2a96 100644 --- a/modules/helper_ImplementsStatic.html +++ b/modules/helper_ImplementsStatic.html @@ -1,2 +1,2 @@ -helper/ImplementsStatic | ts-injex - v0.1.0

    Module helper/ImplementsStatic

    Index

    Functions

    ImplementsStatic +helper/ImplementsStatic | ts-injex - v0.1.0

    Module helper/ImplementsStatic

    Index

    Functions

    diff --git a/modules/index.html b/modules/index.html index 6f1e5c0..498b296 100644 --- a/modules/index.html +++ b/modules/index.html @@ -1,4 +1,4 @@ -index | ts-injex - v0.1.0

    Module index

    References

    ForceConstructor +index | ts-injex - v0.1.0

    Module index

    References

    ForceConstructor GenericConstructor ITSinjex ITSinjexRegister diff --git a/modules/interfaces_Exceptions.html b/modules/interfaces_Exceptions.html index 63cdb82..c79a1c9 100644 --- a/modules/interfaces_Exceptions.html +++ b/modules/interfaces_Exceptions.html @@ -1,4 +1,4 @@ -interfaces/Exceptions | ts-injex - v0.1.0

    Module interfaces/Exceptions

    Index

    Classes

    DependencyResolutionError +interfaces/Exceptions | ts-injex - v0.1.0

    Module interfaces/Exceptions

    Index

    Classes

    DependencyResolutionError InitializationError InjectorError NoInstantiationMethodError diff --git a/modules/interfaces_IDependency.html b/modules/interfaces_IDependency.html index 6255ee1..a08e6c9 100644 --- a/modules/interfaces_IDependency.html +++ b/modules/interfaces_IDependency.html @@ -1,2 +1,2 @@ -interfaces/IDependency | ts-injex - v0.1.0

    Module interfaces/IDependency

    Index

    Interfaces

    IDependency +interfaces/IDependency | ts-injex - v0.1.0

    Module interfaces/IDependency

    Index

    Interfaces

    diff --git a/modules/interfaces_ITSinjex.html b/modules/interfaces_ITSinjex.html index 2be1268..c7ec4bd 100644 --- a/modules/interfaces_ITSinjex.html +++ b/modules/interfaces_ITSinjex.html @@ -1,4 +1,4 @@ -interfaces/ITSinjex | ts-injex - v0.1.0

    Module interfaces/ITSinjex

    Index

    Interfaces

    ITSinjex +interfaces/ITSinjex | ts-injex - v0.1.0

    Module interfaces/ITSinjex

    Index

    Interfaces

    ITSinjex ITSinjexRegister ITSinjexResolve ITSinjex_ diff --git a/modules/types_GenericContructor.html b/modules/types_GenericContructor.html index ad44269..12c3357 100644 --- a/modules/types_GenericContructor.html +++ b/modules/types_GenericContructor.html @@ -1,3 +1,3 @@ -types/GenericContructor | ts-injex - v0.1.0

    Module types/GenericContructor

    Index

    Type Aliases

    ForceConstructor +types/GenericContructor | ts-injex - v0.1.0
    diff --git a/modules/types_Identifier.html b/modules/types_Identifier.html index ce981ef..6ab859c 100644 --- a/modules/types_Identifier.html +++ b/modules/types_Identifier.html @@ -1,2 +1,2 @@ -types/Identifier | ts-injex - v0.1.0

    Module types/Identifier

    Index

    Type Aliases

    Identifier +types/Identifier | ts-injex - v0.1.0

    Module types/Identifier

    Index

    Type Aliases

    diff --git a/modules/types_InitDelegate.html b/modules/types_InitDelegate.html index a40213d..190b323 100644 --- a/modules/types_InitDelegate.html +++ b/modules/types_InitDelegate.html @@ -1,2 +1,2 @@ -types/InitDelegate | ts-injex - v0.1.0

    Module types/InitDelegate

    Index

    Type Aliases

    InitDelegate +types/InitDelegate | ts-injex - v0.1.0

    Module types/InitDelegate

    Index

    Type Aliases

    diff --git a/types/types_GenericContructor.ForceConstructor.html b/types/types_GenericContructor.ForceConstructor.html index 2d5b1f5..54696d5 100644 --- a/types/types_GenericContructor.ForceConstructor.html +++ b/types/types_GenericContructor.ForceConstructor.html @@ -1,3 +1,3 @@ ForceConstructor | ts-injex - v0.1.0
    ForceConstructor<T>: (new (...args: unknown[]) => T)

    Force generic constructor type. This type is used to force a class to has a constructor.

    -

    Type Parameters

    • T
    +

    Type Parameters

    • T
    diff --git a/types/types_GenericContructor.GenericConstructor.html b/types/types_GenericContructor.GenericConstructor.html index 568ead1..07ace86 100644 --- a/types/types_GenericContructor.GenericConstructor.html +++ b/types/types_GenericContructor.GenericConstructor.html @@ -1,3 +1,3 @@ GenericConstructor | ts-injex - v0.1.0
    GenericConstructor<T>: (new (...args: ConstructorParameters<T>) => T)

    Generic constructor type. This type is used to define a constructor of a class.

    -

    Type Parameters

    • T extends (abstract new (...args: unknown[]) => InstanceType<T>)
    +

    Type Parameters

    • T extends (abstract new (...args: unknown[]) => InstanceType<T>)
    diff --git a/types/types_Identifier.Identifier.html b/types/types_Identifier.Identifier.html index 66c5b31..ee83747 100644 --- a/types/types_Identifier.Identifier.html +++ b/types/types_Identifier.Identifier.html @@ -1,9 +1,22 @@ -Identifier | ts-injex - v0.1.0
    Identifier: string | symbol

    The dependency identifier. -You can use any string as identifier. -To create order, it is also possible to -provide these with a separator: GroupA.ClassZ. -The convection for naming is as follows: -The name should generally correspond to the interface that is relevant. -I.e. a class ClassA that implements the interface IClassA and is -registered as a dependent class is registered under the interface name IClassA.

    -
    +Identifier | ts-injex - v0.1.0
    Identifier: string | symbol

    You can use any string or Symbol as identifier. The identifier is used to +register a class in the TSinjex DI (Dependency Injection) container. +See Hierarchical identifiers for more information on . in identifiers.

    +

    To create hierarchical identifiers, you can use a dot . as a separator. +E.g. Parent.Child or Parent.Child.Grandchild.

    +

    You can merge multiple dependencies into one by resolving them with +a identifier that is a prefix of the actual identifiers. +E.g. Parent resolves Parent.* and returns a mixin of all children. +Merging will only work, if the main identifier is not registered. +Grandchildren are not included in the mixin but you can use something like +Parent.Child.Grandchild to merge all direct children of Grandchild, +e.g. Parent.Child.Grandchild.*. +If you don't want to allow merging, you must register the dependencies +with the full identifier. E.g. Parent or Parent.Child.Grandchild.

    +

    The name of a dependency should generally correspond to the interface that is implemented. +E.g. a class ClassA that implements the interface IClassA and is registered +as a dependent class is registered under the interface name IClassA.

    +

    The mixin parts of the class are registered under the interface name IClassA.*. +E.g. IClassA.IClassZ, IClassA.IClassY, etc.

    +

    The identifier for a static or constructor dependency should be the same as the class name +postfixed with _. E.g. IClassA_ for the the static or constructor interface of class IClassA.

    +
    diff --git a/types/types_InitDelegate.InitDelegate.html b/types/types_InitDelegate.InitDelegate.html index 0988f4d..176e4b7 100644 --- a/types/types_InitDelegate.InitDelegate.html +++ b/types/types_InitDelegate.InitDelegate.html @@ -4,4 +4,4 @@ into an output of type U.

  • U

    The type of the output parameter.

  • Type declaration

      • (x): U
      • Parameters

        • x: T

          The input parameter of type T.

        Returns U

        The transformed output of type U.

        -
    +