Interface ContainerFull<T>

Container interface for full functionality.

Type Parameters

Hierarchy

Implemented by

Properties

addScoped: (<T>(factory, ref?) => RefSymbol<T>)

Type declaration

    • <T>(factory, ref?): RefSymbol<T>
    • Add scoped factory and create matching ref. If ref is given it is reused

      A scoped factory is only used once per scope.

      Type Parameters

      • T

      Parameters

      • factory: (() => T)
          • (): T
          • Returns T

      • Optional ref: RefSymbol<T>

        reference

      Returns RefSymbol<T>

      given or newly created reference

addSingleton: (<T>(factory, ref?) => RefSymbol<T>)

Type declaration

    • <T>(factory, ref?): RefSymbol<T>
    • Add singleton factory and create matching ref. If ref is given it is reused

      A singleton factory is only used once and the result cached until it is cleared.

      Type Parameters

      • T

      Parameters

      • factory: (() => T)
          • (): T
          • Returns T

      • Optional ref: RefSymbol<T>

        reference

      Returns RefSymbol<T>

      given or newly created reference

addTransient: (<T>(factory, ref?) => RefSymbol<T>)

Type declaration

    • <T>(factory, ref?): RefSymbol<T>
    • Add transient factory and create matching ref. If ref is given it is reused

      A transient factory is used for every access and the result is never cached.

      Type Parameters

      • T

      Parameters

      • factory: (() => T)
          • (): T
          • Returns T

      • Optional ref: RefSymbol<T>

        reference

      Returns RefSymbol<T>

      given or newly created reference

clear: (<T>(ref?) => boolean)

Type declaration

    • <T>(ref?): boolean
    • Remove all or specific ref from container but leaves factory intact. Only relevant for singleton or scoped services

      Type Parameters

      • T

      Parameters

      Returns boolean

      true if something was removed

clone: (() => T)

Type declaration

    • (): T
    • Create a fully independent clone of the current container

      Returns T

      container

get: (<T>(ref) => undefined | T)

Type declaration

    • <T>(ref): undefined | T
    • Retrieves the data from the container referenced by the given RefSymbol. If there is no data available it returns undefined but never throws an exception.

      Type Parameters

      • T

      Parameters

      Returns undefined | T

      The referenced data from the container or undefined.

getOrFail: (<T>(ref) => T)

Type declaration

    • <T>(ref): T
    • Retrieves the data from the container referenced by the given RefSymbol. If there is no data available it throws an exception defined by the container.

      Type Parameters

      • T

      Parameters

      Returns T

      The referenced data from the container.

merge: ((...args) => void)

Type declaration

    • (...args): void
    • Merge two or more containers. Conflicting factories, service lifetimes and singletons are overwritten by priority, see args.

      Parameters

      • Rest ...args: T[]

        container, ordered descending by priority

      Returns void

remove: (<T>(ref?) => boolean)

Type declaration

    • <T>(ref?): boolean
    • Removes all or specific ref from container which includes the factory.

      Type Parameters

      • T

      Parameters

      Returns boolean

      true if something was removed

scopeCreate: (() => T)

Type declaration

    • (): T
    • Creates separate scope from the current container. Data except scope is shared between copy and original object.

      Returns T

      container

scopeRenew: (() => void)

Type declaration

    • (): void
    • Renews scope of current container.

      Returns void

Generated using TypeDoc