import { BeanFactory } from '../../ioc/factory/BeanFactory';
import BootConfiguration from '../BootConfiguration';
export default abstract class AbstractApplicationContext {
    abstract getBeanFactory(): BeanFactory;
    constructor();
    prepareBeanFactory(): void;
    abstract registerBeanPostProcessor(): void;
    abstract getBootConfig(): BootConfiguration;
    /**
     * 根据注解注册Bean定义
     * @param annotation Component注解
     */
    private registerWithAnnotation;
    /**
     * 扫描注册所有bean
     */
    registerAllComponentBeans(fallback?: boolean): void;
    createSingletonBeans(): void;
    onFinish(): void;
    refresh(): void;
}
