/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { BaseDeclarativeTool, BaseToolInvocation, type ToolResult } from './tools.js';
import type { Config } from '../config/config.js';
import type { SubagentManager } from '../config/subagentManager.js';
type ListSubagentsParams = Record<string, never>;
export interface ListSubagentsToolDependencies {
    getSubagentManager?: () => SubagentManager | undefined;
}
declare class ListSubagentsToolInvocation extends BaseToolInvocation<ListSubagentsParams, ToolResult> {
    private readonly subagentManager;
    constructor(params: ListSubagentsParams, subagentManager: SubagentManager);
    getDescription(): string;
    execute(): Promise<ToolResult>;
    private buildSummary;
}
/**
 * Tool that enumerates all available subagents and surfaces their metadata.
 */
export declare class ListSubagentsTool extends BaseDeclarativeTool<ListSubagentsParams, ToolResult> {
    private readonly config;
    private readonly dependencies;
    static readonly Name = "list_subagents";
    constructor(config: Config, dependencies?: ListSubagentsToolDependencies);
    protected createInvocation(params: ListSubagentsParams): ListSubagentsToolInvocation;
    protected validateToolParamValues(): string | null;
}
export {};
