| BBox | Axis-aligned bounding box. |
| Bezier | Bezier curve used for rendering canvas edge connections. |
| CanvasDataManager | Manages saving, loading, and maintaining canvas local data on disk. |
| CanvasEmbed | Represents an embedded file reference within a canvas node. |
| CanvasIndex | Index that tracks and resolves links, embeds, and metadata across all canvas files. |
| CanvasIndexEntry | Represents a single entry in the canvas index, containing cached metadata and embeds for a canvas file. |
| CanvasMenu | Context menu and toolbar displayed on the canvas for node/edge actions. |
| CanvasPlugin | Internal plugin definition for the Canvas feature. |
| CanvasPluginInstance | Plugin instance for the Canvas internal plugin, managing canvas indexing, data, and rename operations. |
| CanvasPluginInstanceOptions | User-configurable options for the Canvas plugin. |
| CanvasRectEx | Extended rectangle representation for the canvas, providing both min/max and position/size properties. |
| CanvasSelection | Manages the visual selection state on the canvas, including selection bounds and resize handles. |
| CanvasView | View for displaying and editing canvas files, extending obsidian#TextFileView. |
| CanvasViewCanvas | Main canvas controller that manages rendering, selection, drag, zoom, pan, nodes, and edges for the canvas view. |
| CanvasViewCanvasEdge | Represents a connection (edge) between two nodes on the canvas. |
| CanvasViewCanvasEdgeLineEnd | Represents the visual endpoint (arrow, dot, etc.) at one end of a canvas edge. |
| CanvasViewCanvasEdgeLink | Represents one endpoint of a canvas edge, linking it to a specific side of a node. |
| CanvasViewCanvasEdgePath | SVG path elements for rendering a canvas edge, with separate paths for display and interaction. |
| CanvasViewCanvasNode | Represents a node on the canvas with position, size, content, and connection capabilities. |
| CanvasViewCanvasNodeBase | Base interface for canvas nodes, providing core editing and interaction methods. |
| CanvasViewCanvasNodeBaseBase | Intermediate base interface for canvas nodes, adding lifecycle and content mounting methods. |
| CanvasViewCanvasNodeBaseBaseBase | Lowest-level base interface for canvas nodes, providing core properties and interaction methods. |
| CanvasViewCanvasNodeUnknownData | Base data shared by all canvas node types. |
| CanvasViewConfig | Configuration options for the canvas view. |
| CanvasViewData | Serialized canvas data containing all nodes and edges. |
| CanvasViewDataEdge | Serialized data representation of an edge (connection) between two nodes in the canvas. |
| CanvasViewDataNode | Serialized data for a canvas node. |
| CanvasViewHistory | Manages undo/redo history for canvas state changes. |
| EdgeIndex | Spatial index (R-tree) for efficient hit-testing and spatial queries on canvas edges and nodes. |
| EdgeIndexBase | Base interface for the spatial edge index, extending the R-tree with custom insert/remove behavior. |
| EdgeIndexBaseBase | R-tree spatial index base implementation for efficient spatial queries on canvas elements. |
| EdgeIndexData | Node in the spatial index (R-tree) for canvas edges. |
| NodeInteractionLayer | Layer that handles user interactions with canvas nodes, such as resizing and connecting. |