export type { FileMetadata } from './types/file-metadata.model'; export interface Note { id: string; title: string; content: string; tags: string[]; frontmatter: { [key: string]: any }; backlinks: string[]; mtime: number; // last modified time fileName: string; filePath: string; originalPath: string; createdAt?: string; updatedAt?: string; } export interface VaultFile { type: 'file'; name: string; path: string; id: string; } export interface VaultFolder { type: 'folder'; name: string; path: string; children: VaultNode[]; isOpen: boolean; } export type VaultNode = VaultFile | VaultFolder; export interface GraphNode { id: string; label: string; } export interface GraphEdge { source: string; target: string; } export interface GraphData { nodes: GraphNode[]; edges: GraphEdge[]; } export interface TagInfo { name: string; count: number; }