/** * Command Resolver - Handles command loading and provider resolution */ import type { CommandLoader } from '../executor/command-loader.js'; import type { getProviderRegistry } from '../llm/registry.js'; import type { CommandDefinition } from '../types/command.types.js'; import type { MCPSamplingService } from '../types/mcp.types.js'; import type { CommandExecutionOptions } from './command-executor.js'; import type { CLIProviderResolver } from './provider-resolver.js'; import { ProviderFallbackService, type ProviderResolutionPath } from './provider-fallback-service.js'; export interface ResolvedCommand { command: CommandDefinition; mode?: string; model?: string; provider: ReturnType['createProvider']>; providerName: string; resolutionPath?: ProviderResolutionPath; } export declare class CommandResolver { private commandLoader; private providerResolver; private mcpSampling?; private fallbackService; constructor(commandLoader: CommandLoader, providerResolver: CLIProviderResolver, mcpSampling?: MCPSamplingService | undefined, fallbackService?: ProviderFallbackService); /** * Load and resolve command with provider using three-tier fallback */ resolveCommand(commandName: string, options: CommandExecutionOptions): Promise; /** * Attempt provider resolution with error handling */ private attemptProviderResolution; /** * Perform fallback resolution using ProviderFallbackService */ private performFallbackResolution; /** * Validate model availability */ private validateModelAvailability; } //# sourceMappingURL=command-resolver.d.ts.map