/**
 *@desc 应用上下文
 *@author liudejian
 *@date 2020-03-05 21:40
 **/
import { Container } from "./Container";
/**
 * 应用上下文
 */
export declare class IocContext {
    private static DEFAULT_KEY;
    /**
     * 获取默认容器
     */
    static get(): Container;
    /**
     * 根据名称获取容器
     * @param name
     */
    static getContainer(name: string): Container | undefined;
    /**
     * 创建一个容器
     * @param name
     */
    static createContainer(name: string): void;
    /**
     * 获取bean实例
     * @param classType bean类型
     * @param qualifier 候选标识
     */
    static getBean<T>(classType: any, qualifier?: string): T;
    /**
     * 根据bean名称获取bean 实例
     * @param className bean名称
     * @param qualifier  候选标识
     */
    static getBeanByName<T>(className: string, qualifier?: string): T;
    /**
     * 根据类型获取所有 bean
     * @param classType
     */
    static getBeansByType<T>(classType: any): Array<T>;
    /**
     * 根据名称获取所有bean
     * @param className
     */
    static getBeansByName<T>(className: string): Array<T>;
}
