import { z } from 'zod';
import type { ElsClient } from '../elsClient.js';
import type { ToolResult } from '../types.js';
/**
 * Tool: grouped_errors
 * Mapping: GET /analytics/grouped-errors → analytics.routes.ts:329
 * Upstream Zod: GroupedErrorsSchema (from, to, take, +фасет-фильтры).
 *
 * Список уникальных fingerprint'ов, отсортированных по count (default), с
 * per-group stats: count, firstSeen, lastSeen, affectedUsers, exampleTraceId.
 *
 * sortBy не пробрасывается в upstream (ELS-endpoint его не принимает),
 * но возвращается в structured-content для подсказки LLM.
 */
export declare const groupedErrorsInputShape: {
    from: z.ZodOptional<z.ZodString>;
    to: z.ZodOptional<z.ZodString>;
    level: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    serviceName: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    take: z.ZodDefault<z.ZodNumber>;
    sortBy: z.ZodDefault<z.ZodEnum<["count", "lastSeen", "affectedUsers"]>>;
};
export declare const groupedErrorsToolDef: {
    name: string;
    title: string;
    description: string;
    inputShape: {
        from: z.ZodOptional<z.ZodString>;
        to: z.ZodOptional<z.ZodString>;
        level: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        serviceName: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        take: z.ZodDefault<z.ZodNumber>;
        sortBy: z.ZodDefault<z.ZodEnum<["count", "lastSeen", "affectedUsers"]>>;
    };
};
type Args = {
    from?: string;
    to?: string;
    level?: string[];
    serviceName?: string[];
    take: number;
    sortBy: 'count' | 'lastSeen' | 'affectedUsers';
};
export declare function handleGroupedErrors(args: Args, client: ElsClient): Promise<ToolResult>;
export {};
//# sourceMappingURL=groupedErrors.d.ts.map