import type { InternalWriteResult } from "../internal-urls/types.js"; import type { ToolSession } from "./index.js"; /** Raw `conflict://[/]` content for the shared read selector pipeline. */ export interface ConflictRegionRead { /** Prefix-free region text, sliced before any read formatting. */ text: string; /** 1-based file line number of the first rendered line. */ startLine: number; /** File the conflict block lives in. */ absolutePath: string; } /** * Select a `conflict://` (or `conflict:///`) body. The shared * read pipeline slices its raw text and renders once using source coordinates. */ export declare function readConflictUri(session: ToolSession, raw: string): Promise; /** * Resolve a `conflict://` or `conflict://*` write. `content` is the raw * model payload: hashline prefixes are stripped here (per-id `conflict://*` * directives are parsed before stripping, which would eat their `:` heads). * Scoped URIs (`/ours`, `/theirs`, `/base`) are read-only. */ export declare function writeConflictUri(session: ToolSession, raw: string, content: string, signal: AbortSignal | undefined): Promise;