import ts from "typescript";
import { BusinessLogicContext } from "../types";
import { BusinessLogicDefinition } from "../types/businessLogicExtractor.types";
export declare class BusinessLogicExtractor {
    private sourceFile;
    private content;
    private filePath;
    private importExtractor;
    private functionExtractor;
    private componentExtractor;
    private typeExtractor;
    constructor(sourceFile: ts.SourceFile, content: string, filePath: string, srcDir: string, typeChecker?: ts.TypeChecker);
    /**
     * Extracts business logic context from the source file
     */
    extractBusinessLogicContext(): BusinessLogicContext;
    /**
     * Extracts complete business logic definition
     */
    extractBusinessLogicDefinition(): BusinessLogicDefinition;
    /**
     * **FIXED: Enhanced domain identification with better logic and priority**
     * Identifies the business domain based on file content and structure
     */
    private identifyDomain;
    /**
     * Extracts business operations from functions
     */
    private extractBusinessOperations;
    /**
     * Determines if a function represents a business operation
     */
    private isBusinessOperation;
    /**
     * Builds a business operation from a function definition
     */
    private buildBusinessOperation;
    /**
     * Extracts data flow patterns
     */
    private extractDataFlowPatterns;
    /**
     * Extracts side effects
     */
    private extractSideEffects;
    /**
     * Calculates business complexity
     */
    private calculateBusinessComplexity;
    /**
     * Analyzes business patterns
     */
    private analyzeBusinessPatterns;
    /**
     * Assesses business quality
     */
    private assessBusinessQuality;
    /**
     * Extracts business dependencies
     */
    private extractBusinessDependencies;
    /**
     * Extracts business rules
     */
    private extractBusinessRules;
    /**
     * Extracts workflows
     */
    private extractWorkflows;
    /**
     * Extracts validations
     */
    private extractValidations;
    /**
     * Extracts data transformations
     */
    private extractDataTransformations;
    private determinePurpose;
    private mapComplexityLevel;
    private extractStateManagementTriggers;
    private extractDataFetchingTriggers;
    private extractEventHandlingTriggers;
    private extractSideEffectTriggers;
    private extractComputationTriggers;
    private calculateOperationalComplexity;
    private calculateDataComplexity;
    private calculateLogicalComplexity;
    private calculateIntegrationComplexity;
    private identifyComplexityFactors;
    private identifyArchitecturalPatterns;
    private identifyDomainPatterns;
    private identifyDataPatterns;
    private identifyIntegrationPatterns;
    private identifyBusinessAntiPatterns;
    private calculateMaintainability;
    private calculateTestability;
    private calculateReusability;
    private calculateReliability;
    private calculatePerformance;
    private calculateSecurity;
    private identifyQualityIssues;
    private identifyExternalServices;
    private identifyDatabaseDependencies;
    private identifyApiDependencies;
    private identifyLibraryDependencies;
    private identifyConfigurationDependencies;
    private identifyResourceDependencies;
    private countOccurrences;
    private extractApiEndpoints;
    private assessApiReliability;
    private assessApiPerformance;
    private isExternalService;
    private determineServiceType;
    private findServiceAlternatives;
    private extractDatabaseOperations;
    private assessDatabasePerformance;
    private extractHttpMethod;
    private determineAuthType;
    private assessApiErrorHandling;
    private mapToLibraryPurpose;
    private assessLibrarySecurity;
    private assessLibraryMaintenance;
    private findLibraryAlternatives;
    private assessResourceOptimization;
    private extractWorkflowSteps;
    private extractWorkflowTriggers;
    private extractWorkflowConditions;
    private extractWorkflowOutcomes;
    private extractErrorHandlingStrategies;
    private extractValidationRules;
    private extractValidationMessages;
    private extractValidationDependencies;
    private extractCustomValidators;
    private createGenericDataStructure;
    private determineTransformationComplexity;
    private analyzeTransformationPerformance;
    private analyzeTransformationValidation;
}
