import { Logger } from '@n8n/backend-common'; import { AgentsConfig } from '@n8n/config'; import { BinaryDataService, InstanceSettings } from 'n8n-core'; import { AiService } from '../../services/ai.service'; import { type GlobKnowledgeFilesRequest, type GlobKnowledgeFilesResult, type ReadKnowledgeRequest, type ReadKnowledgeResult, type SearchKnowledgeRequest, type SearchKnowledgeResult } from './agent-knowledge-retrieval'; import { AgentFileRepository } from './repositories/agent-file.repository'; import { AgentRepository } from './repositories/agent.repository'; export declare const AGENT_KNOWLEDGE_SANDBOX_NAME_PREFIX = "agent-"; export declare class AgentKnowledgeSandboxService { private readonly agentsConfig; private readonly logger; private readonly aiService; private readonly instanceSettings; private readonly agentFileRepository; private readonly agentRepository; private readonly binaryDataService; private readonly pendingSandboxAcquisitions; private readonly mirrorManifestHashes; private readonly pendingMirrorSyncs; constructor(agentsConfig: AgentsConfig, logger: Logger, aiService: AiService, instanceSettings: InstanceSettings, agentFileRepository: AgentFileRepository, agentRepository: AgentRepository, binaryDataService: BinaryDataService); warmSandbox(projectId: string, agentId: string): Promise; destroySandbox(projectId: string, agentId: string): Promise; searchKnowledge(projectId: string, agentId: string, request: SearchKnowledgeRequest): Promise; globKnowledgeFiles(projectId: string, agentId: string, request: GlobKnowledgeFilesRequest): Promise; readKnowledge(projectId: string, agentId: string, request: ReadKnowledgeRequest): Promise; private executeKnowledgeOperation; private ensureMirrorSynced; private syncMirror; private uploadMirrorFiles; prewarmMirrorInBackground(projectId: string, agentId: string): void; invalidateMirror(projectId: string, agentId: string): void; private loadKnowledgeReferenceLookup; private loadKnowledgeFileReferences; private resolveRequiredFile; private resolveOptionalFile; private acquireSandbox; private acquireSandboxFresh; private resolveDaytonaConnection; private resolveSandboxByName; private resolveReusableSandbox; private assertKnowledgeAccess; private assertKnowledgeConfiguration; private assertValidPathSegments; private isKnowledgeBaseEnabled; private assertKnowledgeBaseEnabled; }