import type { ChatHubCreateToolRequest, ChatHubUpdateToolRequest, ChatHubToolDto } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import { EntityManager, type User } from '@n8n/db'; import type { INode } from 'n8n-workflow'; import { NodeTypes } from '../../node-types'; import type { ChatHubTool } from './chat-hub-tool.entity'; import { ChatHubToolRepository } from './chat-hub-tool.repository'; export declare class ChatHubToolService { private readonly logger; private readonly chatToolRepository; private readonly nodeTypes; constructor(logger: Logger, chatToolRepository: ChatHubToolRepository, nodeTypes: NodeTypes); getToolsByUserId(userId: string): Promise; getEnabledTools(userId: string, trx?: EntityManager): Promise; getToolDefinitionsForSession(sessionId: string, trx?: EntityManager): Promise; getToolDefinitionsForAgent(agentId: string, trx?: EntityManager): Promise; getToolIdsForSession(sessionId: string, trx?: EntityManager): Promise; getToolIdsForAgent(agentId: string, trx?: EntityManager): Promise; setSessionTools(sessionId: string, toolIds: string[], trx?: EntityManager): Promise; setAgentTools(agentId: string, toolIds: string[], trx?: EntityManager): Promise; private validateToolExpressions; createTool(user: User, data: ChatHubCreateToolRequest): Promise; updateTool(id: string, user: User, updates: ChatHubUpdateToolRequest, trx?: EntityManager): Promise; deleteTool(id: string, userId: string, trx?: EntityManager): Promise; static toDto(tool: ChatHubTool): ChatHubToolDto; }