import type { AgentConfig as SDKAgentConfig } from '@opencode-ai/sdk/v2'; import { type PluginConfig, SUBAGENT_NAMES } from '../config'; import { type AgentDefinition } from './orchestrator'; export type { AgentDefinition } from './orchestrator'; export type SubagentName = (typeof SUBAGENT_NAMES)[number]; export declare function isSubagent(name: string): name is SubagentName; /** * Create all agent definitions with optional configuration overrides. * Instantiates the orchestrator and all subagents, applying user config and defaults. * * @param config - Optional plugin configuration with agent overrides * @returns Array of agent definitions (orchestrator first, then subagents) */ export declare function createAgents(config?: PluginConfig): AgentDefinition[]; /** * Get agent configurations formatted for the OpenCode SDK. * Converts agent definitions to SDK config format and applies classification metadata. * * @param config - Optional plugin configuration with agent overrides * @returns Record mapping agent names to their SDK configurations */ export declare function getAgentConfigs(config?: PluginConfig): Record; /** * Get the set of disabled agent names from config, applying protection rules. */ export declare function getDisabledAgents(config?: PluginConfig): Set; /** * Get the list of enabled (non-disabled) agent names. */ export declare function getEnabledAgentNames(config?: PluginConfig): string[];