import { AgentMessage } from '../agents/AgentMessage';
import { IAgent } from '../agents/IAgent';
export type MiddlewareFunction = (message: AgentMessage, agent: IAgent, next: () => Promise<void>) => Promise<void>;
export declare class MiddlewareChain {
    private middlewares;
    use(middleware: MiddlewareFunction): this;
    execute(message: AgentMessage, agent: IAgent): Promise<void>;
}
