import { z } from "zod"; import type { CycleNode } from "../types.js"; export declare const renderCycleGraphSchema: z.ZodObject<{ path: z.ZodString; cycleIndex: z.ZodDefault; format: z.ZodDefault>; maxDepth: z.ZodDefault; truncateClassName: z.ZodDefault; }, "strip", z.ZodTypeAny, { path: string; maxDepth: number; cycleIndex: number; format: "mermaid" | "dot"; truncateClassName: number; }, { path: string; maxDepth?: number | undefined; cycleIndex?: number | undefined; format?: "mermaid" | "dot" | undefined; truncateClassName?: number | undefined; }>; export type RenderCycleGraphInput = z.infer; export interface RenderCycleGraphResult { ok: boolean; path: string; cycleIndex: number; format: "mermaid" | "dot"; /** The rendered graph as a string. For Mermaid, embed inside ```mermaid ... ``` fences. */ graph: string; /** A few notes about what got truncated, useful for review. */ notes: string[]; } /** Pure: render a single cycle node into Mermaid graph syntax. */ export declare function renderCycleAsMermaid(cycle: CycleNode, maxDepth?: number, truncate?: number): { graph: string; notes: string[]; }; /** Pure: render a single cycle as Graphviz DOT. */ export declare function renderCycleAsDot(cycle: CycleNode, maxDepth?: number, truncate?: number): { graph: string; notes: string[]; }; export declare function renderCycleGraph(input: RenderCycleGraphInput): Promise;