import type { AgentTool } from "../../internal/harness.js"; import type { ExecutionEnv } from "../../internal/harness.js"; /** Extract top-level symbol names (deduped, in first-seen order) from source text. A lightweight * comment/docstring state machine (council #4) skips column-0 declaration-like lines that are really * inside a `/* … *​/` block comment or a Python `"""`/`'''` docstring — otherwise e.g. a module * docstring containing `def foo():` at column 0 produces a phantom symbol. Not a full parser (v1 * heuristic): it tracks whole-line block/docstring regions, the common false-positive source. * * ⚠️ **Exported ONLY as a v1 heuristic, NOT a containment proof** (design/79 §3): it is column-0 / * source-only and skips indented lines, so it CANNOT enumerate everything an artifact can call. The * auto-promote tripwire (src/core/auto-promote.ts) consumes it in ESCALATE-ONLY mode — a clean scan * contributes nothing; it can only ever raise an escalation, never clear one. */ export declare function extractSymbols(text: string): string[]; export declare function makeRepoMapTool(env: ExecutionEnv, rootCanonical: string, additionalRoots?: readonly string[]): AgentTool; //# sourceMappingURL=repo-map.d.ts.map