sipp
Version:
An Opinionated, High-Productivity MVC Web Framework in TypeScript
17 lines (16 loc) • 752 B
TypeScript
import { IServiceProviderFactoryFn } from 'src/interfaces';
import { ServiceProvider } from './ServiceProvider';
export declare type RegisteredProvider = [any, IServiceProviderFactoryFn];
export declare class ServiceRegistry {
private readonly serviceMap;
private readonly resolutionCache;
private readonly globalProviders;
resolve(obj: any, Type: any): Promise<any>;
private filterProvidersForType;
registerProviders(providers: ServiceProvider[]): void;
getProvidersFor(ObjectClass: any): RegisteredProvider[];
registerFor(ProvidedClasses: '*' | any | any[], Type: any, fn: IServiceProviderFactoryFn): void;
private getIndirectProviders;
private addToRegistry;
}
export declare const registry: ServiceRegistry;