import { IStrategy } from "./strategies/base.js";
import { SwarmStrategy } from "./types.js";
/**
 * Strategy Factory - Creates and manages swarm strategies
 * Integrates all available strategies including new ones from swarm documentation
 */
export declare class StrategyFactory {
    private static strategies;
    private static strategyInfo;
    /**
     * Create a strategy instance based on the strategy type
     */
    static createStrategy(strategyType: SwarmStrategy): IStrategy;
    /**
     * Get all available strategy types
     */
    static getAvailableStrategies(): SwarmStrategy[];
    /**
     * Get strategy information for CLI help and documentation
     */
    static getStrategyInfo(): Record<SwarmStrategy, StrategyInfo>;
    /**
     * Recommend a strategy based on objective analysis
     */
    static recommendStrategy(objective: string): SwarmStrategy;
    /**
     * Register a custom strategy
     */
    static registerStrategy(strategyType: SwarmStrategy, strategyFactory: () => IStrategy): void;
    static getWorkflowIntegrations(strategy: SwarmStrategy): string[];
    static getAvailableWorkflows(): string[];
}
export interface StrategyInfo {
    name: string;
    description: string;
    features: string[];
    coordinationMode: "centralized" | "distributed" | "hierarchical" | "mesh" | "hybrid";
    estimatedDuration: number;
    preferredFor: string[];
    workflowIntegrations?: string[];
}
//# sourceMappingURL=strategy-factory.d.ts.map