/**
 * Created by pedrosousabarreto@gmail.com on 15/Jan/2019.
 */
import { IDiFactory, ILogger } from "./interfaces";
export declare class DiContainer {
    protected _dependencies: Map<string, any>;
    protected _factories: Map<string, IDiFactory>;
    private _di_logger;
    constructor(logger?: ILogger);
    register_factory(name: string, factory: any): void;
    register_dependency(name: string, dep: any): void;
    has(name: string): boolean;
    get(name: string): any;
    private _check_duplicate_name;
    private _inject;
}
