import type { WingmanAgent } from "@/types/agents.js"; import type { WingmanConfigType } from "../../cli/config/schema.js"; import { type WingmanAgentConfig } from "./agentConfig.js"; import { type ToolOptions } from "./toolRegistry.js"; /** * Load and validate agent configurations from multiple sources */ export declare class AgentLoader { private configDir; private workspace; private wingmanConfig?; private executionWorkspace; private runtimeToolOptions; constructor(configDir?: string, workspace?: string, wingmanConfig?: WingmanConfigType | undefined, executionWorkspace?: string, runtimeToolOptions?: Partial); private resolveConfigPath; loadAllAgentConfigs(): WingmanAgentConfig[]; /** * Parse frontmatter from markdown content */ private parseFrontmatter; /** * Normalize legacy config fields */ private normalizeAgentConfig; /** * Load agent configuration from JSON file */ private loadFromJson; /** * Load agent configuration from markdown file */ private loadFromMarkdown; /** * Load a specific agent configuration by name */ loadAgent(agentName: string): Promise; /** * Load agents from markdown files in a directory */ private loadFromDirectory; /** * Create a WingmanAgent instance from a user config */ private createAgent; }