import type { Node, NodeProps } from '../../../xyflow/react.ts';
import { type AgentNodeTranslations, type SuggestionTranslations, type SuggestionType } from '../../../types';
import type { BaseNodeData } from '../../BaseNode/BaseNode.types';
interface AgentNodeData extends BaseNodeData {
    name: string;
    description: string;
    definition: Record<string, unknown>;
    parentNodeId?: string;
    isConversational?: boolean;
    instructions?: {
        system?: string;
        user?: string;
    };
    isSuggestion?: boolean;
    suggestionId?: string;
    suggestionType?: SuggestionType;
}
interface AgentNodeProps {
    data: AgentNodeData;
    selected?: boolean;
    mode?: 'design' | 'view';
    hasMemory?: boolean;
    hasContext?: boolean;
    hasEscalation?: boolean;
    hasTool?: boolean;
    hasMcp?: boolean;
    hasA2a?: boolean;
    a2aEnabled?: boolean;
    mcpEnabled?: boolean;
    hasError?: boolean;
    hasSuccess?: boolean;
    hasRunning?: boolean;
    onAddResource?: (type: 'context' | 'escalation' | 'mcp' | 'tool' | 'memorySpace' | 'a2a') => void;
    onAddInstructions?: () => void;
    translations: AgentNodeTranslations;
    enableMemory?: boolean;
    enableInstructions?: boolean;
    healthScore?: number;
    onHealthScoreClick?: () => void;
    suggestionTranslations?: SuggestionTranslations;
    suggestionGroupVersion?: string;
}
export declare const AgentNodeElement: import("react").MemoExoticComponent<(props: NodeProps<Node<AgentNodeData>> & AgentNodeProps) => import("react/jsx-runtime").JSX.Element>;
export type { AgentNodeData, AgentNodeProps };
//# sourceMappingURL=AgentNode.d.ts.map