# Class Container

Class
Module
import { Container } from "@tsed/di"
Source/packages/di/src/types/common/domain/Container.ts

# Overview

class Container extends Map<TokenProvider, Provider> {
<span class="token function">add</span><span class="token punctuation">(</span>token<span class="token punctuation">:</span> <a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">,</span> settings?<span class="token punctuation">:</span> <a href="/api/specs/schema/types/decorators/operations/Partial.html"><span class="token">Partial</span></a>&lt;<a href="/api/di/types/common/interfaces/ProviderOpts.html"><span class="token">ProviderOpts</span></a>&gt;<span class="token punctuation">)</span><span class="token punctuation">:</span> this<span class="token punctuation">;</span>

<span class="token function">addProvider</span><span class="token punctuation">(</span>token<span class="token punctuation">:</span> <a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">,</span> settings?<span class="token punctuation">:</span> <a href="/api/specs/schema/types/decorators/operations/Partial.html"><span class="token">Partial</span></a>&lt;<a href="/api/di/types/common/interfaces/ProviderOpts.html"><span class="token">ProviderOpts</span></a>&gt;<span class="token punctuation">)</span><span class="token punctuation">:</span> this<span class="token punctuation">;</span>

<span class="token function">hasProvider</span><span class="token punctuation">(</span>token<span class="token punctuation">:</span> <a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>

<span class="token function">setProvider</span><span class="token punctuation">(</span>token<span class="token punctuation">:</span> <a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">,</span> provider<span class="token punctuation">:</span> <a href="/api/di/types/common/domain/Provider.html"><span class="token">Provider</span></a><span class="token punctuation">)</span><span class="token punctuation">:</span> this<span class="token punctuation">;</span>

getProvider&lt;T <span class="token keyword">extends</span> <a href="/api/di/types/common/domain/Provider.html"><span class="token">Provider</span></a><span class="token punctuation"> = </span><a href="/api/di/types/common/domain/Provider.html"><span class="token">Provider</span></a>&gt;<span class="token punctuation">(</span>token<span class="token punctuation">:</span> <a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">)</span><span class="token punctuation">:</span> T | undefined<span class="token punctuation">;</span>

<span class="token function">getProviders</span><span class="token punctuation">(</span>type?<span class="token punctuation">:</span> <a href="/api/di/types/common/domain/ProviderType.html"><span class="token">ProviderType</span></a> | <span class="token keyword">string</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/di/types/common/domain/Provider.html"><span class="token">Provider</span></a><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
<span class="token function">addProviders</span><span class="token punctuation">(</span>container<span class="token punctuation">:</span> Map&lt;<a href="/api/di/types/common/interfaces/TokenProvider.html"><span class="token">TokenProvider</span></a><span class="token punctuation">,</span> <a href="/api/di/types/common/domain/Provider.html"><span class="token">Provider</span></a>&gt;<span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">void</span><span class="token punctuation">;</span>

}

# Members

add(token: TokenProvider, settings?: Partial<ProviderOpts>): this;

addProvider(token: TokenProvider, settings?: Partial<ProviderOpts>): this;

Add a provider to the


hasProvider(token: TokenProvider): boolean;

setProvider(token: TokenProvider, provider: Provider): this;

Add a provider to the


getProvider<T extends Provider = Provider>(token: TokenProvider): T | undefined;

The getProvider() method returns a specified element from a Map object.


getProviders(type?: ProviderType | string): Provider[];
Param Type Description
type ProviderType "|" string Optional. Filter the list by the given ProviderType.

Get all providers registered in the injector container.


addProviders(container: Map<TokenProvider, Provider>): void;