import { ChatHubSendMessageRequest, ChatHubManualSendMessageRequest, ChatModelsResponse, ChatHubConversationsResponse, ChatHubConversationResponse, ChatHubEditMessageRequest, ChatHubManualEditMessageRequest, ChatHubRegenerateMessageRequest, ChatHubManualRegenerateMessageRequest, ChatHubUpdateConversationRequest, ChatSessionId, ChatMessageId, ChatHubCreateAgentRequest, ChatHubUpdateAgentRequest, ChatHubCreateToolRequest, ChatHubUpdateToolRequest, ChatHubConversationsRequest, type ChatSendMessageResponse, type ChatReconnectResponse, ChatReconnectRequest } from '@n8n/api-types'; import { AuthenticatedRequest } from '@n8n/db'; import type { Response } from 'express'; import { ChatHubAgentService } from './chat-hub-agent.service'; import { ChatHubToolService } from './chat-hub-tool.service'; import { ChatHubAttachmentService } from './chat-hub.attachment.service'; import { ChatHubModelsService } from './chat-hub.models.service'; import { ChatHubService } from './chat-hub.service'; import { ChatModelsRequestDto } from './dto/chat-models-request.dto'; export declare class ChatHubController { private readonly chatService; private readonly chatModelsService; private readonly chatAgentService; private readonly chatToolService; private readonly chatAttachmentService; constructor(chatService: ChatHubService, chatModelsService: ChatHubModelsService, chatAgentService: ChatHubAgentService, chatToolService: ChatHubToolService, chatAttachmentService: ChatHubAttachmentService); getModels(req: AuthenticatedRequest, _res: Response, payload: ChatModelsRequestDto): Promise; getConversations(req: AuthenticatedRequest, _res: Response, query: ChatHubConversationsRequest): Promise; getConversationMessages(req: AuthenticatedRequest, _res: Response, sessionId: ChatSessionId): Promise; getMessageAttachment(req: AuthenticatedRequest, res: Response, sessionId: ChatSessionId, messageId: ChatMessageId, index: string): Promise; sendMessage(req: AuthenticatedRequest, _res: Response, payload: ChatHubSendMessageRequest): Promise; sendMessageManual(req: AuthenticatedRequest, _res: Response, workflowId: string, payload: ChatHubManualSendMessageRequest): Promise; editMessage(req: AuthenticatedRequest, _res: Response, sessionId: ChatSessionId, editId: ChatMessageId, payload: ChatHubEditMessageRequest): Promise; editMessageManual(req: AuthenticatedRequest, _res: Response, workflowId: string, sessionId: ChatSessionId, editId: ChatMessageId, payload: ChatHubManualEditMessageRequest): Promise; regenerateMessage(req: AuthenticatedRequest, _res: Response, sessionId: ChatSessionId, retryId: ChatMessageId, payload: ChatHubRegenerateMessageRequest): Promise; regenerateMessageManual(req: AuthenticatedRequest, _res: Response, workflowId: string, sessionId: ChatSessionId, retryId: ChatMessageId, payload: ChatHubManualRegenerateMessageRequest): Promise; stopGeneration(req: AuthenticatedRequest, res: Response, sessionId: ChatSessionId, messageId: ChatMessageId): Promise; reconnectToStream(req: AuthenticatedRequest, _res: Response, sessionId: ChatSessionId, query: ChatReconnectRequest): Promise; updateConversation(req: AuthenticatedRequest, _res: Response, sessionId: ChatSessionId, payload: ChatHubUpdateConversationRequest): Promise; deleteConversation(req: AuthenticatedRequest, res: Response, sessionId: ChatSessionId): Promise; getTools(req: AuthenticatedRequest): Promise; createTool(req: AuthenticatedRequest, _res: Response, payload: ChatHubCreateToolRequest): Promise; updateTool(req: AuthenticatedRequest, _res: Response, toolId: string, payload: ChatHubUpdateToolRequest): Promise; deleteTool(req: AuthenticatedRequest, res: Response, toolId: string): Promise; getAgent(req: AuthenticatedRequest, _res: Response, agentId: string): Promise; createAgent(req: AuthenticatedRequest, _res: Response, payload: ChatHubCreateAgentRequest): Promise; updateAgent(req: AuthenticatedRequest, _res: Response, agentId: string, payload: ChatHubUpdateAgentRequest): Promise; deleteAgent(req: AuthenticatedRequest, res: Response, agentId: string): Promise; uploadAgentFiles(req: AuthenticatedRequest & { files?: Express.Multer.File[]; fileUploadError?: Error; }, _res: Response, agentId: string): Promise; deleteAgentFile(req: AuthenticatedRequest, res: Response, agentId: string, fileKnowledgeId: string): Promise; private assertToolTypeAllowed; }