import { type DelegateSubAgentToolOutput, type InlineSubAgentProviderToolsResolver, type ModelConfig, type SubAgentTaskDifficulty } from '@n8n/agents';
import type { SubAgentRunPolicy, SubAgentSource } from '@n8n/api-types';
import type { SubAgentForegroundRunContext, SubAgentForegroundResult, SubAgentForegroundRunner } from './sub-agent-foreground-runner';
export interface CreateN8nDelegateSubAgentToolOptions extends SubAgentForegroundRunContext {
    runner: SubAgentForegroundRunner;
    sourcesById: Record<string, SubAgentSource>;
    availableSubAgents?: Array<{
        id: string;
        name: string;
        useWhen?: string;
    }>;
    policy?: SubAgentRunPolicy;
    inlineSubAgentModelsByDifficulty?: Partial<Record<SubAgentTaskDifficulty, ModelConfig>>;
    resolveInlineSubAgentProviderTools?: InlineSubAgentProviderToolsResolver;
}
export declare function createN8nDelegateSubAgentTool(options: CreateN8nDelegateSubAgentToolOptions): import("@n8n/agents").BuiltTool;
export declare function formatSubAgentToolOutput(result: SubAgentForegroundResult): DelegateSubAgentToolOutput;
