import { type AgentCapabilitySummary, type ListAgentsQueryDto } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import { ProjectRelationRepository } from '@n8n/db'; import { AgentKnowledgeService } from './agent-knowledge.service'; import { AgentExecutionService } from './agent-execution.service'; import { AgentRuntimeCacheService } from './agent-runtime-cache.service'; import { AgentTestChatService } from './agent-test-chat.service'; import { Agent } from './entities/agent.entity'; import { AgentTaskRepository } from './repositories/agent-task.repository'; import { AgentRepository } from './repositories/agent.repository'; import { SubAgentCleanupService } from './sub-agents/sub-agent-cleanup.service'; import { EventService } from '../../events/event.service'; export declare class AgentsService { private readonly logger; private readonly agentRepository; private readonly projectRelationRepository; private readonly agentKnowledgeService; private readonly runtimeCacheService; private readonly testChatService; private readonly agentTaskRepository; private readonly subAgentCleanupService; private readonly eventService; private readonly agentExecutionService; constructor(logger: Logger, agentRepository: AgentRepository, projectRelationRepository: ProjectRelationRepository, agentKnowledgeService: AgentKnowledgeService, runtimeCacheService: AgentRuntimeCacheService, testChatService: AgentTestChatService, agentTaskRepository: AgentTaskRepository, subAgentCleanupService: SubAgentCleanupService, eventService: EventService, agentExecutionService: AgentExecutionService); create(projectId: string, name: string): Promise; findByProjectId(projectId: string): Promise; findByProjectIdPaginated(projectId: string, options: ListAgentsQueryDto): Promise<{ count: number; data: Agent[]; }>; findById(agentId: string, projectId: string): Promise; getCapabilitySummary(agentId: string, projectId: string): Promise; findByUser(userId: string): Promise; findByUserPaginated(userId: string, options: ListAgentsQueryDto): Promise<{ count: number; data: Agent[]; }>; findPublishedByUser(userId: string): Promise; delete(agentId: string, projectId: string): Promise; }