import { z } from "zod"; import type { AgentTool } from "@kenkaiiii/gg-agent"; import { type ToolOperations } from "./operations.js"; declare const GrepParams: z.ZodObject<{ pattern: z.ZodString; path: z.ZodOptional; include: z.ZodOptional; max_results: z.ZodOptional; case_insensitive: z.ZodOptional; }, z.core.$strip>; export interface GrepToolOptions { /** Wall-clock budget for one call. Overridable so tests can trip it without a 5s wait. */ deadlineMs?: number; /** * Whether the external `rg` scanner may be used when it is on PATH. Read * lazily so a settings change takes effect without rebuilding the toolset. */ useExternalScanner?: () => boolean; /** Test seam: smallest scan that uses worker threads (default WORKER_MIN_FILES). */ workerMinFiles?: number; } export declare function createGrepTool(cwd: string, ops?: ToolOperations, options?: GrepToolOptions): AgentTool; export declare function detectExternalScanner(): Promise; /** Test seam: forget the cached probe result. */ export declare function resetExternalScannerProbe(): void; /** * For each top-level alternative, the longest run of literal characters every * match of that alternative contains. `undefined` when any alternative has no * such run, since that alternative could match a file containing none of them. * Deliberately conservative: groups, classes, escapes of letters/digits and * anything non-ASCII end a run instead of being reasoned about. */ export declare function requiredLiterals(pattern: string): string[] | undefined; export {};