/**
 * presentTool — the SHELL of the auto-attached `present` tool (9.22.0).
 *
 * Pattern: the `skip_step` placeholder, exactly. The tool here carries the
 * schema the model reads; the AUTHORITATIVE work — `head` the ref under the
 * run's scope, compose the description-snapshot result, emit
 * `agentfootprint.artifacts.presented` — lives in the tool-calls stage
 * (`applyPresent` in `stages/toolCalls.ts`), which OVERWRITES this
 * placeholder's result. Bookkeeping lives where the batch order lives: the
 * stage owns the scope, the store, and the typed emit channel; a tool's
 * execute owns none of them.
 *
 * Attached by `buildToolRegistry` ONLY when a store is attached (the
 * `read_skill` seam): a storeless agent never sees the tool, never reserves
 * the name, and is byte-identical.
 *
 * The pure half — `PRESENT_TOOL_NAME`, `presentArtifact`, the snapshot
 * shapes — lives in `src/artifacts/present.ts`, which cannot import core.
 */
import { type Tool } from '../../tools/tools.js';
/** Build the placeholder `present` tool. See the module header. */
export declare function buildPresentTool(): Tool;
