/**
 * OwlCoda Native Grep Tool
 *
 * Search file contents with a shared runtime contract across ripgrep and the
 * native walker: ignore pruning, heartbeat, timeout, and partial results.
 */
import type { GrepInput, NativeToolDef } from './types.js';
import type { TaskExecutionState } from '../protocol/types.js';
interface NudgeResult {
    prefix: string | null;
    count: number;
}
export declare function recordGrepAndBuildNudge(taskState: TaskExecutionState | undefined, input: GrepInput, matchCount: number): NudgeResult;
/** Test-only: clear the grep ledger for a given task. */
export declare function __resetGrepLedgerForTask(taskState: TaskExecutionState): void;
export declare function createGrepTool(): NativeToolDef<GrepInput>;
export {};
