1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//! File-level analysis aggregation for cross-file static analysis.
//!
//! This module provides types for aggregating script and template usage
//! information into a single file-level summary, suitable for cross-file
//! analysis, MCP integration, and caching.
//!
//! # Module Structure
//!
//! - [`file_usage`] - Single-file usage aggregation (FileUsageInfo)
//! - [`project_index`] - Cross-file project index (ProjectIndex)
//! - [`typescript`] - TypeScript/JavaScript file parsing for composables
//!
//! # Usage Example
//!
//! ```ignore
//! use verter_core::analysis::{FileUsageInfo, ProjectIndex, parse_typescript_file};
//!
//! // Parse Vue SFC and create usage info
//! let usage = FileUsageInfo::from_script_result(&script_result);
//!
//! // Parse TypeScript composable
//! let ts_info = parse_typescript_file(source, true);
//!
//! // Convert to owned for cross-file indexing
//! let owned = FileUsageInfoOwned::from_span_based(&usage, source);
//! let ts_owned = ts_info.to_file_usage_owned(source.as_bytes());
//!
//! // Add to project index
//! let mut index = ProjectIndex::new();
//! index.add_file(vue_path, owned);
//! index.add_file(ts_path, ts_owned);
//!
//! // Query cross-file relationships
//! let providers = index.files_providing("theme");
//! let validation = index.validate_inject(&file, "theme");
//! ```
pub use ;
pub use ;
pub use ;