/**
 * V3.1 Comprehensive Inference Engine
 * Orchestrates both logical and deployment inference from minimal models
 */
import { ModelDefinition, LogicalComponentSpec, LogicalDeploymentSpec, ValidationResult, InferenceEngineConfig } from './core/types.js';
export interface ComprehensiveInferenceResult {
    component: LogicalComponentSpec;
    deployments: Record<string, LogicalDeploymentSpec>;
    validation: ValidationResult;
    statistics: {
        modelsProcessed: number;
        controllersGenerated: number;
        servicesGenerated: number;
        eventsGenerated: number;
        viewsGenerated: number;
        deploymentsGenerated: number;
        totalRulesApplied: number;
        processingTimeMs: number;
    };
}
export declare class ComprehensiveInferenceEngine {
    private logicalEngine;
    private deploymentGenerator;
    private ruleLoader;
    private contextManager;
    private config;
    private debug;
    constructor(config?: Partial<InferenceEngineConfig>, debug?: boolean);
    /**
     * Load all inference rules (logical + deployment)
     */
    loadRules(): Promise<ValidationResult>;
    /**
     * Generate complete specification with logical components AND deployment
     */
    inferCompleteSpecification(models: ModelDefinition[], componentName?: string, targetEnvironment?: 'development' | 'staging' | 'production', metadata?: Record<string, any>): Promise<ComprehensiveInferenceResult>;
    /**
     * Generate only deployment specification from existing component
     */
    inferDeploymentOnly(component: LogicalComponentSpec, targetEnvironment?: 'development' | 'staging' | 'production', metadata?: Record<string, any>): Promise<{
        deployments: Record<string, LogicalDeploymentSpec>;
        validation: ValidationResult;
        statistics: {
            deploymentsGenerated: number;
            rulesApplied: number;
            processingTimeMs: number;
        };
    }>;
    /**
     * Get comprehensive engine information
     */
    getEngineInfo(): {
        version: string;
        config: InferenceEngineConfig;
        capabilities: string[];
        loadedRules: {
            logical: {
                controllers: number;
                services: number;
                events: number;
                views: number;
            };
            deployment: {
                instances: number;
                channels: number;
                bindings: number;
            };
        };
    };
}
//# sourceMappingURL=comprehensive-engine.d.ts.map