import type { DocgenArtifactInventory, DocgenRunContext } from "../DocgenRunContext.js"; import type { ReviewIssueLocation } from "../review/ReviewTypes.js"; export type DocPatchFormat = "markdown" | "yaml" | "text"; export type DocPatchPosition = "after" | "before" | "append"; export type ReplaceSectionOperation = { type: "replace_section"; location: ReviewIssueLocation; content: string; headingLevel?: number; }; export type InsertSectionOperation = { type: "insert_section"; heading: string; content: string; location?: ReviewIssueLocation; position?: DocPatchPosition; headingLevel?: number; }; export type RemoveBlockOperation = { type: "remove_block"; location: ReviewIssueLocation; }; export type DocPatchOperation = ReplaceSectionOperation | InsertSectionOperation | RemoveBlockOperation; export interface DocPatchRequest { path: string; format?: DocPatchFormat; operations: DocPatchOperation[]; } export interface DocPatchPlanStep { operation: DocPatchOperation; applied: boolean; reason?: string; range?: { lineStart: number; lineEnd: number; }; } export interface DocPatchResult { path: string; format: DocPatchFormat; changed: boolean; steps: DocPatchPlanStep[]; } export interface DocPatchApplyInput { runContext: DocgenRunContext; patches: DocPatchRequest[]; dryRun?: boolean; } export interface DocPatchApplyResult { results: DocPatchResult[]; updatedArtifacts?: DocgenArtifactInventory; warnings: string[]; } export declare class DocPatchEngine { apply(input: DocPatchApplyInput): Promise; } //# sourceMappingURL=DocPatchEngine.d.ts.map