import ApplicationConfig from '../config/ApplicationConfig'; import Singleton from "../patterns/Singleton"; import { BEAN_MAP, BEAN_OPTION, COMPONENT_TYPE, CTX_OPTIONS, SCAN_TYPE } from "../@types/types"; import BeansTarget from "../patterns/BeansTarget"; export default class ApplicationContext extends Singleton { applicationConfig?: ApplicationConfig; beans: BEAN_MAP; processer: BEAN_MAP; components: SCAN_TYPE[]; scanBase: string[]; private serviceBase; constructor(); init(options?: CTX_OPTIONS): void; addScanBase(scanBase: string[]): void; setComponents(components: SCAN_TYPE[]): void; addScanBean(module: any, componentType: COMPONENT_TYPE, option?: BEAN_OPTION | any): SCAN_TYPE | undefined; private mixedIndSingleton; prototypeScan(obj: any): any; getTransactionProcessors(): SCAN_TYPE[]; getTransactionProcessor(req: any): SCAN_TYPE; getViewProcessor(url: string): SCAN_TYPE; getResolvers(): SCAN_TYPE[]; getSubtypeBeans(subtype: string): SCAN_TYPE[]; getBeanWithClass(cls: abstract new () => T, scope?: BEAN_OPTION): SCAN_TYPE[]; findBean(className: string): SCAN_TYPE | undefined; getBean(className: string, scope?: BEAN_OPTION): any; } export declare const applicationContext: ApplicationContext; //# sourceMappingURL=ApplicationContext.d.ts.map