/** * postgres-mcp - Code Mode Security * * Input validation, rate limiting, and audit logging for code execution. */ import { type SecurityConfig, type ValidationResult, type ExecutionRecord, type SandboxResult } from "./types.js"; /** * Security manager for Code Mode executions */ export declare class CodeModeSecurityManager { private readonly config; private readonly rateLimitMap; private readonly cleanupTimer; constructor(config?: Partial); /** * Validate code before execution */ validateCode(code: string): ValidationResult; /** * Check rate limit for a client * @returns true if within limits, false if rate limited */ checkRateLimit(clientId: string): boolean; /** * Get remaining rate limit for a client */ getRateLimitRemaining(clientId: string): number; /** * Sanitize and truncate result if too large */ sanitizeResult(result: unknown): unknown; /** * Log execution for audit purposes */ auditLog(execution: ExecutionRecord): void; /** * Create execution record for audit */ createExecutionRecord(code: string, result: SandboxResult, readonly: boolean, clientId?: string): ExecutionRecord; /** * Clean up old rate limit entries */ cleanupRateLimits(): void; } //# sourceMappingURL=security.d.ts.map