Adopt consistent, explicit identifier naming across diagrams and TypeScript APIs.

Rules 1) Diagram ids/syntax keywords

2) TypeScript naming style

3) Type-only files

4) Exported fields/props

5) Stability/compatibility for naming formats

Example

// diagram detector keyword
const detector: DiagramDetector = (txt) => /^\s*contextMap-beta/.test(txt);

// stable diagram config key naming: one established pattern
export interface MermaidConfig {
  contextMap?: MiniContextMapLanguageDiagramConfig; // avoid “Mini…Language…” unless consistent everywhere
}

// type-only file convention
// packages/mermaid/src/diagrams/gantt/gantt.type.ts
export type DiagramStylesProvider = (options?: Record<string, unknown>) => string;

// explicit fields
export interface NodeMetaData {
  width?: string;
  height?: string;
}