/**
 * Filename search capability.
 *
 * `find` enumerates entries beneath a starting path whose *name* matches a query.
 * The query is interpreted as either a shell-style glob (when it contains `*` or
 * `?`) or, failing that, a plain case-insensitive substring. The walk is a
 * hand-rolled recursive descent over {@link ToolContext.fs}; it never touches
 * `node:fs`, a child process, or a platform `find` binary, so it behaves the same
 * against any backend a host plugs in (real disk, sandbox, in-memory).
 *
 * Results are returned as paths relative to the search root, one per line, and
 * are pared back through {@link ToolContext.budget} so the listing can never
 * overflow the model's window.
 */
/** Which kind of filesystem entry the caller wants back. */
type EntryKind = "file" | "dir";
/** The arguments this tool accepts from the model. */
export interface FindInput {
    /** Glob pattern (with `*`/`?`) or plain substring to match against names. */
    readonly query: string;
    /** Directory to search beneath; defaults to the working directory. */
    readonly path?: string;
    /** Restrict hits to regular files (`"file"`) or directories (`"dir"`). */
    readonly type?: EntryKind;
}
/**
 * The filename-search tool. Walks a path with {@link ToolContext.fs}, tests each
 * entry's *name* against a glob or substring query, optionally filters by file
 * vs. directory, and returns the matching root-relative paths clamped to
 * {@link ToolContext.budget}.
 */
export declare const findTool: import("..").DefinedTool;
export {};
