import type { AbapSource } from "./engine.js"; export interface MethodOutline { name: string; visibility: "public" | "protected" | "private"; } export interface ClassOutline { name: string; isGlobal: boolean; isFinal: boolean; isAbstract: boolean; isForTesting: boolean; superClass: string | null; interfaces: string[]; methods: MethodOutline[]; attributes: string[]; constants: string[]; } export interface FileOutline { file: string; classes: ClassOutline[]; interfaces: string[]; forms: string[]; parseable: boolean; } export declare function outlineAbap(files: AbapSource[]): FileOutline[]; /** * Render outlines as a Mermaid classDiagram: classes with method visibility * (+/#/-) and attributes, inheritance (<|--), interface realization (<|..), * and legacy FORMs as one pseudo-class per file. Deterministic text out — * paste into any Mermaid renderer (GitHub, docs sites, diagram tools) for * the visual; nothing here draws pixels. */ export declare function outlineToMermaid(outlines: FileOutline[]): string;