UNPKG

pompelmi

Version:

RFI-safe file uploads for Node.js — Express/Koa/Next.js middleware with deep ZIP inspection, MIME/size checks, and optional YARA scanning.

66 lines (65 loc) 2.02 kB
/** * Hybrid Analysis Orchestrator * * Advanced orchestration framework for coordinating multiple analysis engines * including Binary Ninja, Ghidra, dynamic taint tracking, and custom engines. */ import type { AnalysisEngine, AnalysisPhase, EngineCapability, HybridConfig, HybridAnalysisResult, HybridOrchestrator } from '../types/taint-tracking'; /** * Main hybrid orchestration engine */ export declare class HybridAnalysisOrchestrator implements HybridOrchestrator { private config; private engines; private correlator; private activeSessions; /** * Configure the orchestrator */ configure(config: HybridConfig): Promise<void>; /** * Register an analysis engine with the orchestrator */ registerEngine(engine: AnalysisEngine, instance: any, capabilities: EngineCapability): Promise<void>; /** * Execute comprehensive hybrid analysis */ analyze(data: Uint8Array): Promise<HybridAnalysisResult>; /** * Get available engines and their capabilities */ getAvailableEngines(): Promise<EngineCapability[]>; /** * Cancel ongoing analysis */ cancelAnalysis(sessionId: string): Promise<boolean>; /** * Get analysis progress */ getProgress(sessionId: string): Promise<{ phase: AnalysisPhase; completedTasks: number; totalTasks: number; estimatedTimeRemaining: number; }>; /** * Generate analysis tasks based on orchestration strategy */ private generateAnalysisTasks; /** * Execute tasks with proper scheduling and dependency management */ private executeTasks; /** * Execute a single analysis task */ private executeTask; private calculateTaskDependencies; private calculateTaskPriority; private estimateTaskDuration; private calculateResultConfidence; private findTaskEngine; private determineCurrentPhase; private generateHybridResult; private generateRecommendations; }