llmcc_ts/
lib.rs

1#[macro_use]
2extern crate llmcc_core;
3
4mod bind;
5mod collect;
6mod infer;
7mod pattern;
8pub mod token;
9
10pub use infer::infer_type;
11
12pub const TYPESCRIPT_PRIMITIVES: &[&str] = &[
13    // Primitive types
14    "string",
15    "number",
16    "boolean",
17    "null",
18    "undefined",
19    "symbol",
20    "bigint",
21    "void",
22    "never",
23    "any",
24    "unknown",
25    "object",
26    // Common built-in types
27    "Array",
28    "Object",
29    "Function",
30    "Promise",
31    "Map",
32    "Set",
33    "WeakMap",
34    "WeakSet",
35    "Date",
36    "RegExp",
37    "Error",
38];
39
40pub use crate::bind::BinderVisitor;
41pub use crate::collect::CollectorVisitor;
42
43pub use llmcc_core::{
44    CompileCtxt, ProjectGraph, build_llmcc_graph, build_llmcc_ir, print_llmcc_ir,
45};
46pub use token::LangTypeScript;