/**
 * Security Review Agent
 *
 * Comprehensive security analysis agent for codebase auditing.
 * Inspired by Claude Code's /security-review command.
 *
 * Features:
 * - OWASP Top 10 vulnerability detection
 * - Secret/credential scanning
 * - Dependency vulnerability audits
 * - Injection vulnerability detection (SQL, XSS, Command)
 * - Authentication flow analysis
 * - File permission audits
 * - Network security analysis
 */
import { EventEmitter } from 'events';
import type { SecurityScanResult, SecurityReviewConfig } from './types.js';
export declare class SecurityReviewAgent extends EventEmitter {
    private config;
    private ready;
    private lastScanResult;
    constructor(config?: Partial<SecurityReviewConfig>);
    /**
     * Initialize the agent
     */
    initialize(): Promise<void>;
    /**
     * Check if agent is ready
     */
    isReady(): boolean;
    /**
     * Full security scan
     */
    fullScan(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Quick scan (subset of patterns)
     */
    quickScan(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Audit dependencies for vulnerabilities
     */
    auditDependencies(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Detect secrets and credentials
     */
    detectSecrets(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Audit file permissions
     */
    auditPermissions(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Analyze network security
     */
    analyzeNetworkSecurity(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Check for injection vulnerabilities
     */
    checkInjectionVulns(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Check for XSS vulnerabilities
     */
    checkXSSVulns(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Review authentication flow
     */
    reviewAuthFlow(targetPath: string): Promise<SecurityScanResult>;
    /**
     * Generate security report
     */
    generateReport(format: 'text' | 'json' | 'sarif' | 'markdown'): Promise<SecurityScanResult>;
    private getFilesToScan;
    private scanFile;
    private scanFileWithPatterns;
    private buildResult;
}
export declare function getSecurityReviewAgent(config?: Partial<SecurityReviewConfig>): SecurityReviewAgent;
export declare function resetSecurityReviewAgent(): void;
