export declare const REDAI_PERMISSIONS_FILE: string; /** * Các tool name mà CLI có thể nhận từ backend. Dùng làm danh sách chuẩn * khi hiển thị trạng thái và validate input lệnh permission. */ export declare const ALL_TOOL_NAMES: readonly ["Read", "Write", "Edit", "Bash", "Grep", "Glob", "WebFetch", "LLMRequest", "McpCall", "McpList", "PluginsList", "StartProcess", "StopProcess", "RestartProcess", "GetProcessStatus", "ReadProcessLogs", "WaitForOutput", "ListProcesses", "RunClaudeAgent", "RunCodexAgent", "RunGeminiAgent", "BrowserClick", "BrowserClickAt", "BrowserHover", "BrowserFill", "BrowserFillForm", "BrowserTypeText", "BrowserDrag", "BrowserUploadFile", "BrowserPressKey", "BrowserHandleDialog", "BrowserListPages", "BrowserSelectPage", "BrowserClosePage", "BrowserNewPage", "BrowserNavigate", "BrowserResizePage", "BrowserGetTabId", "BrowserScreenshot", "BrowserSnapshot", "BrowserWaitFor", "BrowserEvaluateScript", "BrowserListConsole", "BrowserGetConsoleMsg", "BrowserLighthouse", "BrowserScreencastStart", "BrowserScreencastStop", "BrowserPerfStartTrace", "BrowserPerfStopTrace", "BrowserPerfAnalyze", "BrowserListNetwork", "BrowserGetNetworkRequest", "BrowserEmulate", "BrowserInstallExtension", "BrowserListExtensions", "BrowserUninstallExtension", "BrowserReloadExtension", "BrowserTriggerExtension", "BrowserHeapSnapshot", "BrowserHeapSummary", "BrowserHeapClassNodes", "BrowserHeapDetails", "BrowserHeapRetainers", "BrowserList3pTools", "BrowserExecute3pTool", "BrowserListWebMcpTools", "BrowserExecuteWebMcp", "Screenshot", "MouseClick", "MouseMove", "MouseScroll", "KeyPress", "TypeText"]; export type ToolPermissionName = (typeof ALL_TOOL_NAMES)[number]; /** * Map { ToolName → enabled }. * Tool không có trong map = enabled (mặc định cho phép tất cả). * Computer-use tools (Screenshot, Mouse*, KeyPress, TypeText) mặc định disabled. */ export type PermissionsMap = Partial>; export declare const DEFAULT_DISABLED_TOOLS: ReadonlySet; export declare function loadPermissions(): PermissionsMap; export declare function savePermissions(perms: PermissionsMap): void; /** * Kiểm tra tool có được phép chạy không. * - Tool trong DEFAULT_DISABLED_TOOLS cần được user enable tường minh. * - Tool khác: không có trong map = allowed. */ export declare function isToolAllowed(toolName: string, perms: PermissionsMap): boolean; export declare function setToolPermission(toolName: ToolPermissionName, enabled: boolean): PermissionsMap;