/** * [WHO]: FindTool, findTool, createFindTool, FindToolInput * [FROM]: Depends on agent-core, node:child_process, node:fs, glob * [TO]: Consumed by core/tools/index.ts * [HERE]: core/tools/find.ts - file pattern matching via glob; consumed by orchestrator */ import type { AgentTool } from "@catui/agent-core"; import { type Static } from "@sinclair/typebox"; import { type TruncationResult } from "./truncate.js"; declare const findSchema: import("@sinclair/typebox").TObject<{ pattern: import("@sinclair/typebox").TString; path: import("@sinclair/typebox").TOptional; limit: import("@sinclair/typebox").TOptional; sort: import("@sinclair/typebox").TOptional; }>; export type FindToolInput = Static; export interface FindToolDetails { truncation?: TruncationResult; resultLimitReached?: number; } /** * Pluggable operations for the find tool. * Override these to delegate file search to remote systems (e.g., SSH). */ export interface FindOperations { /** Check if path exists */ exists: (absolutePath: string) => Promise | boolean; /** Find files matching glob pattern. Returns relative paths. */ glob: (pattern: string, cwd: string, options: { ignore: string[]; limit: number; }) => Promise | string[]; } export interface FindToolOptions { /** Custom operations for find. Default: local filesystem + fd */ operations?: FindOperations; } export declare function createFindTool(cwd: string, options?: FindToolOptions): AgentTool; /** Default find tool using process.cwd() - for backwards compatibility */ export declare const findTool: AgentTool; limit: import("@sinclair/typebox").TOptional; sort: import("@sinclair/typebox").TOptional; }>, any>; export {};