/** * Excision of a carved resource's own `resource "" ""` block from * the surviving Terraform source (#998 — closes the "auto-excise" limitation). * * After `terraform state rm`, the block left behind would re-CREATE the * resource on the next apply — the one edit the bridge previously left to * hand-work. This removes the carve set's own blocks as part of the survivor * rewrite, so the one bridge `.patch` (#1589) carries the whole handoff edit. * * Pure text transform. The scanner tracks brace depth outside of strings, * comments, template interpolations, and heredocs — enough for real `.tf` * files without pulling in the wasm parser for what is a subtractive edit. */ export interface ExciseTarget { /** Terraform address, e.g. `aws_s3_bucket.assets`. */ address: string; type: string; name: string; } export interface ExciseResult { content: string; /** Addresses whose block was found and removed, in file order. */ excised: string[]; } /** * Remove the targets' own `resource` blocks from one `.tf` file's text. A * comment line directly above a removed block stays (it may describe more * than the block); the blank line the removal leaves behind is collapsed. */ export declare function exciseResourceBlocks(content: string, targets: ExciseTarget[]): ExciseResult; //# sourceMappingURL=excise.d.ts.map