/**
 * Custom Tool Loader — user-defined agent tools (STU-48).
 *
 * Scans one or more tool directories for subdirectories containing a tool.js
 * entrypoint. Each tool.js must export a default object with:
 *
 *   {
 *     name:        string       — unique tool identifier
 *     description: string       — shown to the agent
 *     parameters:  JSON Schema  — input validation
 *     execute:     async (toolCallId, params, context) => { content, details }
 *   }
 *
 * Directories are processed in order — first occurrence of a name wins,
 * so workspace-level tools override app-bundled tools.
 *
 * context provides: { workspaceManager, gitUser }
 */
import { WorkspaceManager } from '../../core/workspace-manager.js';
import { GitUser } from '../../services/git.js';
export interface ToolContext {
    workspaceManager: WorkspaceManager;
    gitUser: GitUser;
}
export declare function loadCustomTools(toolsDirs: string[], context: ToolContext): Promise<any[]>;
