import { UserConsentManager } from './UserConsentManager.js'; interface ToolValidationResult { valid: boolean; errors?: string[]; } interface ToolExecutionResult { success: boolean; result?: T; error?: Error; } interface ExecutionLogEntry { timestamp: string; type: string; operation: string; status: 'success' | 'failure'; details: Record; tool: string; params: Record; } export declare class ToolSafetyController { private readonly consentManager; private readonly rateLimiter; private executionLog; constructor(consentManager: UserConsentManager, rateLimiter?: Map); validateToolExecution(tool: string, params: unknown): Promise; executeWithSafety(tool: string, params: unknown, executor: () => Promise): Promise>; private validateParameters; private isRateLimited; private logExecution; getExecutionLog(): ExecutionLogEntry[]; } export {};