/**
 * Detector for server-only imports in client-side code
 */
import { BaseDetector } from "./BaseDetector";
import { Vulnerability } from "../types/vulnerability.types";
import { ScanResult } from "../../../types";
export declare class ServerOnlyImportsDetector extends BaseDetector {
    private static readonly SERVER_IMPORT_PATTERNS;
    private static readonly NODEJS_BUILTINS;
    private static readonly SERVER_ONLY_LIBRARIES;
    private static readonly POTENTIALLY_SERVER_ONLY;
    constructor();
    detect(scanResult: ScanResult): Promise<Vulnerability[]>;
    /**
     * Filter files to only include client-side files
     */
    private filterClientSideFiles;
    /**
     * Validate if a server import pattern match is actually problematic
     */
    private validateServerImportMatch;
    /**
     * AST-based analysis for server-only imports
     */
    private analyzeASTForServerImports;
    /**
     * Find import declarations
     */
    private findImportDeclarations;
    /**
     * Find require() calls
     */
    private findRequireCalls;
    /**
     * Find dynamic import() calls
     */
    private findDynamicImports;
    /**
     * Analyze import declaration for server-only modules
     */
    private analyzeImportDeclaration;
    /**
     * Analyze require call for server-only modules
     */
    private analyzeRequireCall;
    /**
     * Analyze dynamic import for server-only modules
     */
    private analyzeDynamicImport;
    /**
     * Analyze module name to determine if it's server-only
     */
    private analyzeModuleForServerOnly;
    /**
     * Check if a library contains critical/sensitive functionality
     */
    private isCriticalServerLibrary;
    private isTypeDefinitionFile;
    /**
     * Extract function name from AST node context
     */
    private extractFunctionFromAST;
}
