miter
Version:
A typescript web framework based on ExpressJs based loosely on SailsJs
27 lines (26 loc) • 947 B
TypeScript
import 'reflect-metadata';
import { CtorT } from './ctor';
import { ProvideMetadata } from '../metadata/server/provide';
import { LoggerCore } from '../services/logger-core';
export declare class Injector {
private _loggerCore;
constructor(_loggerCore: LoggerCore);
private logger;
private temporaryValue;
private cache;
private metaStack;
private metaDefaults;
resolveInjectable<T>(ctorFn: CtorT<T>): T | undefined;
private construct<T>(ctorFn);
private constructCallback<T>(provideMeta);
private resolveDependencies(deps, ctor);
private getSimpleDependency(dep);
private stringifyDependency(type);
private resolveDependency(type);
private resolveMetadata(name);
provide<T>(provideMeta: ProvideMetadata<any>): this;
provideMetadata(name: string, value: any): void;
private isClassSource<T>(meta);
private isValueSource<T>(meta);
private isCallbackSource<T>(meta);
}