UNPKG

nestjs-custom-injector

Version:

Custom injecting logic for NestJS with support multi providing

28 lines (27 loc) 1.76 kB
import { DiscoveryService } from '@nestjs/core'; import { InstanceToken } from '@nestjs/core/injector/module'; import { CustomInjectorError, GetProviderOptions, GetProvidersOptions, InjectedProvidersStorageItem, InjectedProvidersStorageItemOptions } from './custom-injector.types'; export declare class CustomInjectorService { private readonly discoveryService; static _instance: CustomInjectorService; static getInstance(): CustomInjectorService; constructor(discoveryService: DiscoveryService); getProvider<T, E extends CustomInjectorError<T> = CustomInjectorError<T>>(token: InstanceToken, options?: GetProviderOptions<T, E>): T; getAsyncProvider<T, E extends CustomInjectorError<T> = CustomInjectorError<T>>(token: InstanceToken, options?: GetProviderOptions<T, E>): Promise<T>; getProviders<T, E extends CustomInjectorError<T> = CustomInjectorError<T>>(token: InstanceToken, options?: GetProvidersOptions<T, E>): T[]; getAsyncProviders<T, E extends CustomInjectorError<T> = CustomInjectorError<T>>(token: InstanceToken, options?: GetProvidersOptions<T, E>): Promise<T[]>; createInjectedProvidersStorageItem<T, E extends CustomInjectorError<T> = CustomInjectorError<T>>(token: InstanceToken, target: unknown, options: InjectedProvidersStorageItemOptions<T, E>): InjectedProvidersStorageItem<T, E>; initAllNeedProviders(): Promise<void>; private _getProvider; private _getAsyncProvider; private getOneProvider; private _getProviders; private getManyProviders; private _getAsyncProviders; private _getLastComponentByName; private _getLastComponentsByClass; private _getComponentsByName; private _getComponentsByClass; private errorFactory; private toDiscoveredClass; }