import { AstGrepBinaryManager } from "../core/binary-manager.js"; import { WorkspaceManager } from "../core/workspace-manager.js"; interface MetavariableCapture { value: string; line: number; column: number; } interface ExplainResult { matched: boolean; metavariables: Record; astNodes: string[]; suggestions: string[]; ast?: string; } /** * Pattern explanation tool that executes ast-grep to show metavariable captures and AST node kinds */ export declare class ExplainTool { private binaryManager; private workspaceManager; constructor(binaryManager: AstGrepBinaryManager, workspaceManager: WorkspaceManager); execute(paramsRaw: Record): Promise; private parseExplainOutput; private generateSuggestions; static getSchema(): { name: string; description: string; inputSchema: { type: string; properties: { pattern: { oneOf: ({ type: string; description: string; properties?: undefined; } | { type: string; properties: { context: { type: string; description: string; }; selector: { type: string; description: string; }; strictness: { type: string; enum: string[]; description: string; }; }; description: string; })[]; description: string; }; code: { type: string; description: string; }; language: { type: string; description: string; }; showAst: { type: string; description: string; }; timeoutMs: { type: string; description: string; }; verbose: { type: string; description: string; }; strictness: { type: string; enum: string[]; description: string; }; }; required: string[]; additionalProperties: boolean; }; }; } export {}; //# sourceMappingURL=explain.d.ts.map