/** * Class Diagram AST Types */ export type ClassDirection = 'TB' | 'BT' | 'LR' | 'RL'; export type RelationType = 'aggregation' | 'extension' | 'composition' | 'dependency' | 'lollipop' | 'none'; export type LineType = 'solid' | 'dotted'; export interface ClassRelation { id1: string; id2: string; relation: { type1: RelationType; type2: RelationType; lineType: LineType; }; relationTitle1?: string; relationTitle2?: string; title?: string; } export interface ClassMember { text: string; visibility?: '+' | '-' | '#' | '~'; type?: 'method' | 'attribute'; } export interface ClassDefinition { id: string; label?: string; members: ClassMember[]; annotations: string[]; cssClasses: string[]; styles: string[]; link?: string; linkTarget?: string; tooltip?: string; callback?: string; callbackArgs?: string; } export interface ClassNote { text: string; forClass?: string; } export interface Namespace { name: string; classes: string[]; } export interface ClassDefStyle { name: string; styles: string[]; } export interface ClassDiagramAST { type: 'classDiagram'; direction: ClassDirection; classes: Map; relations: ClassRelation[]; namespaces: Map; notes: ClassNote[]; classDefs: Map; accTitle?: string; accDescription?: string; } /** * Create an empty ClassDiagramAST */ export declare function createClassDiagramAST(): ClassDiagramAST; //# sourceMappingURL=class.d.ts.map