import { z } from 'zod';
import { type ToolDescriptionContext } from '../defineTool';
export declare const GREP_FIELDS_DESCRIPTION: ({ runtime, }: ToolDescriptionContext) => string;
export declare const grepFieldsInputSchema: z.ZodObject<{
    patterns: z.ZodArray<z.ZodString, "many">;
    exploreName: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    exploreName: string | null;
    patterns: string[];
}, {
    exploreName: string | null;
    patterns: string[];
}>;
export type ToolGrepFieldsArgs = z.infer<typeof grepFieldsInputSchema>;
export declare const grepFieldsPatternStatsSchema: z.ZodArray<z.ZodObject<{
    pattern: z.ZodString;
    matchCount: z.ZodNumber;
    scopeSize: z.ZodNumber;
    matchedAllFields: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
    pattern: string;
    matchCount: number;
    scopeSize: number;
    matchedAllFields: boolean;
}, {
    pattern: string;
    matchCount: number;
    scopeSize: number;
    matchedAllFields: boolean;
}>, "many">;
export declare const grepFieldsResultSchema: z.ZodObject<{
    description: z.ZodString;
    exploreName: z.ZodNullable<z.ZodString>;
    patterns: z.ZodArray<z.ZodObject<{
        pattern: z.ZodString;
        status: z.ZodEnum<["matches", "no_matches", "no_signal"]>;
        matchCount: z.ZodNumber;
        scopeSize: z.ZodNumber;
        matchedAllFields: z.ZodBoolean;
        note: z.ZodString;
        resultsByExplore: z.ZodArray<z.ZodObject<{
            exploreName: z.ZodString;
            exploreLabel: z.ZodString;
            requiredFilters: z.ZodArray<z.ZodObject<{
                fieldId: z.ZodString;
                fieldRef: z.ZodString;
                tableName: z.ZodString;
                operator: z.ZodString;
                values: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
                settings: z.ZodOptional<z.ZodUnknown>;
                required: z.ZodBoolean;
            }, "strip", z.ZodTypeAny, {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }, {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }>, "many">;
            fields: z.ZodArray<z.ZodObject<{
                exploreName: z.ZodString;
                exploreLabel: z.ZodString;
                fieldId: z.ZodString;
                path: z.ZodString;
                kind: z.ZodEnum<["dimension", "metric"]>;
                fieldType: z.ZodString;
                label: z.ZodString;
                description: z.ZodNullable<z.ZodString>;
                hint: z.ZodNullable<z.ZodString>;
                usageInVerifiedCharts: z.ZodNumber;
                matchLocality: z.ZodEnum<["name", "description", "hint", "mixed"]>;
            }, "strip", z.ZodTypeAny, {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }, {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }>, "many">;
        }, "strip", z.ZodTypeAny, {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }, {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }>, "many">;
        metricAmbiguityNote: z.ZodNullable<z.ZodString>;
        matchingExploresByName: z.ZodArray<z.ZodObject<{
            exploreName: z.ZodString;
            exploreLabel: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            exploreName: string;
            exploreLabel: string;
        }, {
            exploreName: string;
            exploreLabel: string;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        status: "matches" | "no_matches" | "no_signal";
        note: string;
        pattern: string;
        matchCount: number;
        scopeSize: number;
        matchedAllFields: boolean;
        resultsByExplore: {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }[];
        metricAmbiguityNote: string | null;
        matchingExploresByName: {
            exploreName: string;
            exploreLabel: string;
        }[];
    }, {
        status: "matches" | "no_matches" | "no_signal";
        note: string;
        pattern: string;
        matchCount: number;
        scopeSize: number;
        matchedAllFields: boolean;
        resultsByExplore: {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }[];
        metricAmbiguityNote: string | null;
        matchingExploresByName: {
            exploreName: string;
            exploreLabel: string;
        }[];
    }>, "many">;
    fuzzyMatches: z.ZodArray<z.ZodObject<{
        exploreName: z.ZodString;
        fieldId: z.ZodString;
        label: z.ZodString;
        fieldType: z.ZodString;
        description: z.ZodNullable<z.ZodString>;
        searchRank: z.ZodNullable<z.ZodNumber>;
        usageInCharts: z.ZodNumber;
        usageInVerifiedCharts: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        label: string;
        fieldId: string;
        fieldType: string;
        description: string | null;
        exploreName: string;
        searchRank: number | null;
        usageInCharts: number;
        usageInVerifiedCharts: number;
    }, {
        label: string;
        fieldId: string;
        fieldType: string;
        description: string | null;
        exploreName: string;
        searchRank: number | null;
        usageInCharts: number;
        usageInVerifiedCharts: number;
    }>, "many">;
    relevantVerifiedAnswers: z.ZodOptional<z.ZodArray<z.ZodObject<{
        artifactVersionUuid: z.ZodString;
        chartConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
        artifactType: z.ZodEnum<["chart", "dashboard"]>;
        verifiedQuestion: z.ZodNullable<z.ZodString>;
        title: z.ZodNullable<z.ZodString>;
        description: z.ZodNullable<z.ZodString>;
        similarity: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        description: string | null;
        title: string | null;
        chartConfig: Record<string, unknown>;
        artifactVersionUuid: string;
        artifactType: "chart" | "dashboard";
        verifiedQuestion: string | null;
        similarity: number;
    }, {
        description: string | null;
        title: string | null;
        chartConfig: Record<string, unknown>;
        artifactVersionUuid: string;
        artifactType: "chart" | "dashboard";
        verifiedQuestion: string | null;
        similarity: number;
    }>, "many">>;
}, "strip", z.ZodTypeAny, {
    description: string;
    exploreName: string | null;
    patterns: {
        status: "matches" | "no_matches" | "no_signal";
        note: string;
        pattern: string;
        matchCount: number;
        scopeSize: number;
        matchedAllFields: boolean;
        resultsByExplore: {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }[];
        metricAmbiguityNote: string | null;
        matchingExploresByName: {
            exploreName: string;
            exploreLabel: string;
        }[];
    }[];
    fuzzyMatches: {
        label: string;
        fieldId: string;
        fieldType: string;
        description: string | null;
        exploreName: string;
        searchRank: number | null;
        usageInCharts: number;
        usageInVerifiedCharts: number;
    }[];
    relevantVerifiedAnswers?: {
        description: string | null;
        title: string | null;
        chartConfig: Record<string, unknown>;
        artifactVersionUuid: string;
        artifactType: "chart" | "dashboard";
        verifiedQuestion: string | null;
        similarity: number;
    }[] | undefined;
}, {
    description: string;
    exploreName: string | null;
    patterns: {
        status: "matches" | "no_matches" | "no_signal";
        note: string;
        pattern: string;
        matchCount: number;
        scopeSize: number;
        matchedAllFields: boolean;
        resultsByExplore: {
            exploreName: string;
            fields: {
                label: string;
                fieldId: string;
                fieldType: string;
                description: string | null;
                path: string;
                kind: "metric" | "dimension";
                exploreName: string;
                exploreLabel: string;
                usageInVerifiedCharts: number;
                hint: string | null;
                matchLocality: "name" | "description" | "hint" | "mixed";
            }[];
            requiredFilters: {
                required: boolean;
                operator: string;
                tableName: string;
                fieldId: string;
                fieldRef: string;
                values?: unknown[] | undefined;
                settings?: unknown;
            }[];
            exploreLabel: string;
        }[];
        metricAmbiguityNote: string | null;
        matchingExploresByName: {
            exploreName: string;
            exploreLabel: string;
        }[];
    }[];
    fuzzyMatches: {
        label: string;
        fieldId: string;
        fieldType: string;
        description: string | null;
        exploreName: string;
        searchRank: number | null;
        usageInCharts: number;
        usageInVerifiedCharts: number;
    }[];
    relevantVerifiedAnswers?: {
        description: string | null;
        title: string | null;
        chartConfig: Record<string, unknown>;
        artifactVersionUuid: string;
        artifactType: "chart" | "dashboard";
        verifiedQuestion: string | null;
        similarity: number;
    }[] | undefined;
}>;
export declare const toolGrepFieldsOutputSchema: z.ZodObject<{
    result: z.ZodString;
    metadata: z.ZodObject<{
        status: z.ZodEnum<["success", "error"]>;
    } & {
        patternStats: z.ZodOptional<z.ZodArray<z.ZodObject<{
            pattern: z.ZodString;
            matchCount: z.ZodNumber;
            scopeSize: z.ZodNumber;
            matchedAllFields: z.ZodBoolean;
        }, "strip", z.ZodTypeAny, {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }, {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }>, "many">>;
    }, "strip", z.ZodTypeAny, {
        status: "error" | "success";
        patternStats?: {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }[] | undefined;
    }, {
        status: "error" | "success";
        patternStats?: {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }[] | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    metadata: {
        status: "error" | "success";
        patternStats?: {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }[] | undefined;
    };
    result: string;
}, {
    metadata: {
        status: "error" | "success";
        patternStats?: {
            pattern: string;
            matchCount: number;
            scopeSize: number;
            matchedAllFields: boolean;
        }[] | undefined;
    };
    result: string;
}>;
export type GrepFieldsResult = z.infer<typeof grepFieldsResultSchema>;
export type ToolGrepFieldsOutput = z.infer<typeof toolGrepFieldsOutputSchema>;
//# sourceMappingURL=toolGrepFieldsArgs.d.ts.map