import type { Message, Logger, AgentOptions, ILspManager } from "../types/index.js"; import type { SkillManager } from "../managers/skillManager.js"; import type { SubagentManager } from "../managers/subagentManager.js"; import type { Container } from "../utils/container.js"; import type { ToolManager } from "../managers/toolManager.js"; import type { PluginManager } from "../managers/pluginManager.js"; import type { SlashCommandManager } from "../managers/slashCommandManager.js"; import type { McpManager } from "../managers/mcpManager.js"; import type { ConfigurationService } from "./configurationService.js"; import type { HookManager } from "../managers/hookManager.js"; import type { MessageManager } from "../managers/messageManager.js"; import type { MemoryRuleManager } from "../managers/MemoryRuleManager.js"; import type { LiveConfigManager } from "../managers/liveConfigManager.js"; import type { TaskManager } from "./taskManager.js"; export interface InitializationContext { skillManager: SkillManager; subagentManager: SubagentManager; container: Container; toolManager: ToolManager; pluginManager: PluginManager; options: AgentOptions; slashCommandManager: SlashCommandManager; logger?: Logger; mcpManager: McpManager; workdir: string; lspManager: ILspManager; configurationService: ConfigurationService; hookManager: HookManager; messageManager: MessageManager; memoryRuleManager: MemoryRuleManager; liveConfigManager: LiveConfigManager; taskManager: TaskManager; resolveAndValidateConfig: () => void; } export declare class InitializationService { static initialize(context: InitializationContext, options?: { restoreSessionId?: string; continueLastSession?: boolean; messages?: Message[]; }): Promise; }