export type Stereotype = 'Entity' | 'ValueObject' | 'Aggregate' | 'Repository' | 'Service' | 'unknown'; export type Visibility = 'public' | 'private' | 'protected' | 'package'; export interface PropertyDef { visibility: Visibility; type: string; name: string; } export interface MethodDef { visibility: Visibility; name: string; params: ParamDef[]; returnType: string; } export interface ParamDef { name: string; type: string; } export interface ClassDef { name: string; stereotype: Stereotype; properties: PropertyDef[]; methods: MethodDef[]; } export interface RelationshipDef { from: string; to: string; arrow: string; label?: string; fromCard?: string; toCard?: string; } export interface ClassDiagram { classes: ClassDef[]; relationships: RelationshipDef[]; } export declare function extractMermaidBlocks(markdown: string): string[]; export declare function parseClassDiagram(block: string): ClassDiagram | null; export declare function parseDddModel(markdown: string): ClassDiagram | null;