import { BotonicContext } from '@botonic/core';
import { InferenceResponse } from '@botonic/shared';
import { FlowAiAgent } from './flow-ai-agent';
import { FlowAiAgentBase } from './flow-ai-agent-base';
import { HtAiAgentRouterNode } from './hubtype-fields/ai-agent-router';
import { FlowContent } from './index';
interface AvailableSpecialistEntry {
    agent: FlowAiAgent;
    description: string;
    name: string;
}
export declare class FlowAiAgentRouter extends FlowAiAgentBase {
    availableSpecialists: AvailableSpecialistEntry[];
    static fromHubtypeCMS(component: HtAiAgentRouterNode, botonicContext: BotonicContext): FlowAiAgentRouter;
    private static getAvailableSpecialistsFromHubtypeCMS;
    private static specialistAgentBaseName;
    getAIAgentResponse(botonicContext: BotonicContext, previousContents?: FlowContent[]): Promise<InferenceResponse | undefined>;
    trackAiAgentResponse(botonicContext: BotonicContext): Promise<void>;
    private trackAIAgentRouterEvent;
    private trackAIAgentSpecialistEvent;
}
export {};
