/**
 * grafana_explore_datasources tool
 *
 * Discovers what datasources are configured in Grafana. This is the
 * agent's starting point for understanding what data is available —
 * it provides the datasource UIDs needed by grafana_query and
 * grafana_list_metrics, plus routing hints for which tool to use.
 */
import type { GrafanaClientRegistry } from "../grafana-client-registry.js";
export type QueryToolName = "grafana_query" | "grafana_query_logs" | "grafana_query_traces";
export type QueryLanguageName = "PromQL" | "LogQL" | "TraceQL";
/** Discriminated union: supported datasources have non-null tool+language, unsupported have null. */
export type QueryCapability = {
    queryTool: QueryToolName;
    queryLanguage: QueryLanguageName;
    supported: true;
} | {
    queryTool: null;
    queryLanguage: null;
    supported: false;
};
/** Returns routing hints for a datasource type, or an unsupported fallback. */
export declare function getQueryCapability(dsType: string): QueryCapability;
export declare function createExploreDatasourcesToolFactory(registry: GrafanaClientRegistry): (_ctx: unknown) => {
    name: string;
    label: string;
    description: string;
    parameters: {
        type: "object";
        properties: {
            [x: string]: unknown;
        };
    };
    execute(_toolCallId: string, _params: Record<string, unknown>): Promise<{
        content: Array<{
            type: "text";
            text: string;
        }>;
        details: unknown;
    }>;
};
