import { IncomingMessage } from 'http';
import { McpRequest } from '../types/McpTypes.js';
export declare class SecurityManager {
    private logger;
    private allowedOrigins;
    private apiKeys;
    private rateLimiter;
    private validationCache;
    private requestSchema;
    private codePatternCache;
    constructor();
    private initializeDangerousPatterns;
    validateConnection(request: IncomingMessage): Promise<boolean>;
    validateRequest(request: McpRequest, headers: any): Promise<boolean>;
    validateCodeExecution(code: string, language: string): {
        valid: boolean;
        reason?: string;
    };
    private performCodeValidation;
    private validateJavaCode;
    private validateCCode;
    generateSessionToken(): string;
    hashApiKey(apiKey: string): string;
    private getClientIdentifier;
    private isValidMcpRequest;
    private sanitizeRequest;
    private sanitizeObject;
    private validatePythonCode;
    private validateJavaScriptCode;
}
//# sourceMappingURL=SecurityManager.d.ts.map