UNPKG

@vert/core

Version:

Library to build OOP applications which are based on Vue.

34 lines (33 loc) 954 B
import { TConstructor } from '../types'; /** * Singleton injector holds all singleton instance. */ declare abstract class GlobalInjector { private static readonly injector; /** * Get target instance from injector by providing provider. * * @param {{new(...args): T}} Provider * @return {T} */ static get<T>(Provider: new (...args: any[]) => T): T; /** * Register target as singleton provider into global injector. * * @param Providers */ static addSingleton(...Providers: TConstructor[]): void; /** * Register target as transient provider into global injector. * * @param Providers */ static addTransient(...Providers: TConstructor[]): void; /** * Check whether injector has registered this provider. * * @param Provider */ static has(Provider: TConstructor): boolean; } export { GlobalInjector };