import { IContainer } from '@ts-ioc/core'; import { Joinpoint, JoinpointState } from '../joinpoints'; import { Advicer, Advices } from '../advices'; import { IAdvisorChainFactory } from './IAdvisorChainFactory'; import { IAdvisor } from '../IAdvisor'; /** * advisor chain factory. * * @export * @class AdvisorChainFactory * @implements {IAdvisorChainFactory} */ export declare class AdvisorChainFactory implements IAdvisorChainFactory { private container; private advisor; private advices; constructor(container: IContainer, advisor: IAdvisor, advices: Advices); getAdvicers(adviceType: string): Advicer[]; invoaction(joinPoint: Joinpoint, state: JoinpointState, valueOrthrowing?: any): void; before(joinPoint: Joinpoint): void; pointcut(joinPoint: Joinpoint): void; after(joinPoint: Joinpoint): void; afterThrowing(joinPoint: Joinpoint): void; afterReturning(joinPoint: Joinpoint): void; invokeAdvice(joinPoint: Joinpoint, advicer: Advicer): {}; static getClassAnnations(): any; }