import { Node, Edge, ExtractionResult, ExtractionError, UnresolvedReference } from '../types'; import { generateNodeId } from './tree-sitter-helpers'; import { TreeSitterExtractor } from './tree-sitter'; import { isLanguageSupported } from './grammars'; /** * Astro built-in components — compiler-provided (``) or shipped by * `astro:components` (``, ``), not user code. */ const ASTRO_BUILTIN_COMPONENTS = new Set(['Fragment', 'Code', 'Debug']); /** * AstroExtractor - Extracts code relationships from Astro component files * * Astro files are multi-language: a TypeScript frontmatter block fenced by * `---` lines, a JSX-like HTML template, and optional