@typescript/native-preview 7.0.0-dev.20260422.1 → 7.0.0-dev.20260424.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/dist/api/async/api.d.ts +241 -0
  2. package/dist/api/async/api.d.ts.map +1 -0
  3. package/dist/api/async/api.js +810 -0
  4. package/dist/api/async/api.js.map +1 -0
  5. package/dist/api/async/client.d.ts +22 -0
  6. package/dist/api/async/client.d.ts.map +1 -0
  7. package/dist/api/async/client.js +140 -0
  8. package/dist/api/async/client.js.map +1 -0
  9. package/dist/api/async/types.d.ts +179 -0
  10. package/dist/api/async/types.d.ts.map +1 -0
  11. package/dist/api/async/types.js +2 -0
  12. package/dist/api/async/types.js.map +1 -0
  13. package/dist/api/fs.d.ts +23 -0
  14. package/dist/api/fs.d.ts.map +1 -0
  15. package/dist/api/fs.js +109 -0
  16. package/dist/api/fs.js.map +1 -0
  17. package/dist/api/node/encoder.d.ts +15 -0
  18. package/dist/api/node/encoder.d.ts.map +1 -0
  19. package/dist/api/node/encoder.generated.d.ts +5 -0
  20. package/dist/api/node/encoder.generated.d.ts.map +1 -0
  21. package/dist/api/node/encoder.generated.js +74 -0
  22. package/dist/api/node/encoder.generated.js.map +1 -0
  23. package/dist/api/node/encoder.js +304 -0
  24. package/dist/api/node/encoder.js.map +1 -0
  25. package/dist/api/node/msgpack.d.ts +32 -0
  26. package/dist/api/node/msgpack.d.ts.map +1 -0
  27. package/dist/api/node/msgpack.js +212 -0
  28. package/dist/api/node/msgpack.js.map +1 -0
  29. package/dist/api/node/node.d.ts +63 -0
  30. package/dist/api/node/node.d.ts.map +1 -0
  31. package/dist/api/node/node.generated.d.ts +172 -0
  32. package/dist/api/node/node.generated.d.ts.map +1 -0
  33. package/dist/api/node/node.generated.js +817 -0
  34. package/dist/api/node/node.generated.js.map +1 -0
  35. package/dist/api/node/node.infrastructure.d.ts +51 -0
  36. package/dist/api/node/node.infrastructure.d.ts.map +1 -0
  37. package/dist/api/node/node.infrastructure.js +122 -0
  38. package/dist/api/node/node.infrastructure.js.map +1 -0
  39. package/dist/api/node/node.js +201 -0
  40. package/dist/api/node/node.js.map +1 -0
  41. package/dist/api/node/protocol.d.ts +29 -0
  42. package/dist/api/node/protocol.d.ts.map +1 -0
  43. package/dist/api/node/protocol.generated.d.ts +4 -0
  44. package/dist/api/node/protocol.generated.d.ts.map +1 -0
  45. package/dist/api/node/protocol.generated.js +241 -0
  46. package/dist/api/node/protocol.generated.js.map +1 -0
  47. package/dist/api/node/protocol.js +30 -0
  48. package/dist/api/node/protocol.js.map +1 -0
  49. package/dist/api/objectRegistry.d.ts +38 -0
  50. package/dist/api/objectRegistry.d.ts.map +1 -0
  51. package/dist/api/objectRegistry.js +55 -0
  52. package/dist/api/objectRegistry.js.map +1 -0
  53. package/dist/api/options.d.ts +24 -0
  54. package/dist/api/options.d.ts.map +1 -0
  55. package/dist/api/options.js +11 -0
  56. package/dist/api/options.js.map +1 -0
  57. package/dist/api/path.d.ts +110 -0
  58. package/dist/api/path.d.ts.map +1 -0
  59. package/dist/api/path.js +508 -0
  60. package/dist/api/path.js.map +1 -0
  61. package/dist/api/proto.d.ts +152 -0
  62. package/dist/api/proto.d.ts.map +1 -0
  63. package/dist/api/proto.js +22 -0
  64. package/dist/api/proto.js.map +1 -0
  65. package/dist/api/sourceFileCache.d.ts +79 -0
  66. package/dist/api/sourceFileCache.d.ts.map +1 -0
  67. package/dist/api/sourceFileCache.js +169 -0
  68. package/dist/api/sourceFileCache.js.map +1 -0
  69. package/dist/api/sync/api.d.ts +241 -0
  70. package/dist/api/sync/api.d.ts.map +1 -0
  71. package/dist/api/sync/api.js +818 -0
  72. package/dist/api/sync/api.js.map +1 -0
  73. package/dist/api/sync/client.d.ts +13 -0
  74. package/dist/api/sync/client.d.ts.map +1 -0
  75. package/dist/api/sync/client.js +72 -0
  76. package/dist/api/sync/client.js.map +1 -0
  77. package/dist/api/sync/types.d.ts +179 -0
  78. package/dist/api/sync/types.d.ts.map +1 -0
  79. package/dist/api/sync/types.js +2 -0
  80. package/dist/api/sync/types.js.map +1 -0
  81. package/dist/api/syncChannel.d.ts +111 -0
  82. package/dist/api/syncChannel.d.ts.map +1 -0
  83. package/dist/api/syncChannel.js +488 -0
  84. package/dist/api/syncChannel.js.map +1 -0
  85. package/dist/ast/ast.d.ts +66 -0
  86. package/dist/ast/ast.d.ts.map +1 -0
  87. package/dist/ast/ast.generated.d.ts +1160 -0
  88. package/dist/ast/ast.generated.d.ts.map +1 -0
  89. package/dist/ast/ast.generated.js +4 -0
  90. package/dist/ast/ast.generated.js.map +1 -0
  91. package/dist/ast/ast.js +7 -0
  92. package/dist/ast/ast.js.map +1 -0
  93. package/dist/ast/astnav.d.ts +19 -0
  94. package/dist/ast/astnav.d.ts.map +1 -0
  95. package/dist/ast/astnav.js +596 -0
  96. package/dist/ast/astnav.js.map +1 -0
  97. package/dist/ast/clone.d.ts +16 -0
  98. package/dist/ast/clone.d.ts.map +1 -0
  99. package/dist/ast/clone.js +104 -0
  100. package/dist/ast/clone.js.map +1 -0
  101. package/dist/ast/factory.generated.d.ts +513 -0
  102. package/dist/ast/factory.generated.d.ts.map +1 -0
  103. package/dist/ast/factory.generated.js +3026 -0
  104. package/dist/ast/factory.generated.js.map +1 -0
  105. package/dist/ast/index.d.ts +18 -0
  106. package/dist/ast/index.d.ts.map +1 -0
  107. package/dist/ast/index.js +18 -0
  108. package/dist/ast/index.js.map +1 -0
  109. package/dist/ast/is.d.ts +34 -0
  110. package/dist/ast/is.d.ts.map +1 -0
  111. package/dist/ast/is.generated.d.ts +328 -0
  112. package/dist/ast/is.generated.d.ts.map +1 -0
  113. package/dist/ast/is.generated.js +1101 -0
  114. package/dist/ast/is.generated.js.map +1 -0
  115. package/dist/ast/is.js +226 -0
  116. package/dist/ast/is.js.map +1 -0
  117. package/dist/ast/scanner.d.ts +97 -0
  118. package/dist/ast/scanner.d.ts.map +1 -0
  119. package/dist/ast/scanner.js +2230 -0
  120. package/dist/ast/scanner.js.map +1 -0
  121. package/dist/ast/utils.d.ts +5 -0
  122. package/dist/ast/utils.d.ts.map +1 -0
  123. package/dist/ast/utils.js +27 -0
  124. package/dist/ast/utils.js.map +1 -0
  125. package/dist/ast/visitor.d.ts +14 -0
  126. package/dist/ast/visitor.d.ts.map +1 -0
  127. package/dist/ast/visitor.generated.d.ts +50 -0
  128. package/dist/ast/visitor.generated.d.ts.map +1 -0
  129. package/dist/ast/visitor.generated.js +978 -0
  130. package/dist/ast/visitor.generated.js.map +1 -0
  131. package/dist/ast/visitor.js +47 -0
  132. package/dist/ast/visitor.js.map +1 -0
  133. package/dist/enums/characterCodes.d.ts +2 -0
  134. package/dist/enums/characterCodes.d.ts.map +1 -0
  135. package/dist/enums/characterCodes.enum.d.ts +129 -0
  136. package/dist/enums/characterCodes.enum.d.ts.map +1 -0
  137. package/dist/enums/characterCodes.enum.js +132 -0
  138. package/dist/enums/characterCodes.enum.js.map +1 -0
  139. package/dist/enums/characterCodes.js +130 -0
  140. package/dist/enums/characterCodes.js.map +1 -0
  141. package/dist/enums/commentDirectiveType.d.ts +2 -0
  142. package/dist/enums/commentDirectiveType.d.ts.map +1 -0
  143. package/dist/enums/commentDirectiveType.enum.d.ts +5 -0
  144. package/dist/enums/commentDirectiveType.enum.d.ts.map +1 -0
  145. package/dist/enums/commentDirectiveType.enum.js +6 -0
  146. package/dist/enums/commentDirectiveType.enum.js.map +1 -0
  147. package/dist/enums/commentDirectiveType.js +6 -0
  148. package/dist/enums/commentDirectiveType.js.map +1 -0
  149. package/dist/enums/diagnosticCategory.d.ts +2 -0
  150. package/dist/enums/diagnosticCategory.d.ts.map +1 -0
  151. package/dist/enums/diagnosticCategory.enum.d.ts +7 -0
  152. package/dist/enums/diagnosticCategory.enum.d.ts.map +1 -0
  153. package/dist/enums/diagnosticCategory.enum.js +9 -0
  154. package/dist/enums/diagnosticCategory.enum.js.map +1 -0
  155. package/dist/enums/diagnosticCategory.js +9 -0
  156. package/dist/enums/diagnosticCategory.js.map +1 -0
  157. package/dist/enums/elementFlags.d.ts +2 -0
  158. package/dist/enums/elementFlags.d.ts.map +1 -0
  159. package/dist/enums/elementFlags.enum.d.ts +12 -0
  160. package/dist/enums/elementFlags.enum.d.ts.map +1 -0
  161. package/dist/enums/elementFlags.enum.js +14 -0
  162. package/dist/enums/elementFlags.enum.js.map +1 -0
  163. package/dist/enums/elementFlags.js +14 -0
  164. package/dist/enums/elementFlags.js.map +1 -0
  165. package/dist/enums/languageVariant.d.ts +2 -0
  166. package/dist/enums/languageVariant.d.ts.map +1 -0
  167. package/dist/enums/languageVariant.enum.d.ts +5 -0
  168. package/dist/enums/languageVariant.enum.d.ts.map +1 -0
  169. package/dist/enums/languageVariant.enum.js +6 -0
  170. package/dist/enums/languageVariant.enum.js.map +1 -0
  171. package/dist/enums/languageVariant.js +6 -0
  172. package/dist/enums/languageVariant.js.map +1 -0
  173. package/dist/enums/modifierFlags.d.ts +2 -0
  174. package/dist/enums/modifierFlags.d.ts.map +1 -0
  175. package/dist/enums/modifierFlags.enum.d.ts +42 -0
  176. package/dist/enums/modifierFlags.enum.d.ts.map +1 -0
  177. package/dist/enums/modifierFlags.enum.js +44 -0
  178. package/dist/enums/modifierFlags.enum.js.map +1 -0
  179. package/dist/enums/modifierFlags.js +44 -0
  180. package/dist/enums/modifierFlags.js.map +1 -0
  181. package/dist/enums/nodeFlags.d.ts +2 -0
  182. package/dist/enums/nodeFlags.d.ts.map +1 -0
  183. package/dist/enums/nodeFlags.enum.d.ts +41 -0
  184. package/dist/enums/nodeFlags.enum.d.ts.map +1 -0
  185. package/dist/enums/nodeFlags.enum.js +43 -0
  186. package/dist/enums/nodeFlags.enum.js.map +1 -0
  187. package/dist/enums/nodeFlags.js +43 -0
  188. package/dist/enums/nodeFlags.js.map +1 -0
  189. package/dist/enums/objectFlags.d.ts +2 -0
  190. package/dist/enums/objectFlags.d.ts.map +1 -0
  191. package/dist/enums/objectFlags.enum.d.ts +49 -0
  192. package/dist/enums/objectFlags.enum.d.ts.map +1 -0
  193. package/dist/enums/objectFlags.enum.js +51 -0
  194. package/dist/enums/objectFlags.enum.js.map +1 -0
  195. package/dist/enums/objectFlags.js +51 -0
  196. package/dist/enums/objectFlags.js.map +1 -0
  197. package/dist/enums/outerExpressionKinds.d.ts +2 -0
  198. package/dist/enums/outerExpressionKinds.d.ts.map +1 -0
  199. package/dist/enums/outerExpressionKinds.enum.d.ts +12 -0
  200. package/dist/enums/outerExpressionKinds.enum.d.ts.map +1 -0
  201. package/dist/enums/outerExpressionKinds.enum.js +14 -0
  202. package/dist/enums/outerExpressionKinds.enum.js.map +1 -0
  203. package/dist/enums/outerExpressionKinds.js +14 -0
  204. package/dist/enums/outerExpressionKinds.js.map +1 -0
  205. package/dist/enums/regularExpressionFlags.d.ts +2 -0
  206. package/dist/enums/regularExpressionFlags.d.ts.map +1 -0
  207. package/dist/enums/regularExpressionFlags.enum.d.ts +13 -0
  208. package/dist/enums/regularExpressionFlags.enum.d.ts.map +1 -0
  209. package/dist/enums/regularExpressionFlags.enum.js +14 -0
  210. package/dist/enums/regularExpressionFlags.enum.js.map +1 -0
  211. package/dist/enums/regularExpressionFlags.js +14 -0
  212. package/dist/enums/regularExpressionFlags.js.map +1 -0
  213. package/dist/enums/scriptKind.d.ts +2 -0
  214. package/dist/enums/scriptKind.d.ts.map +1 -0
  215. package/dist/enums/scriptKind.enum.d.ts +11 -0
  216. package/dist/enums/scriptKind.enum.d.ts.map +1 -0
  217. package/dist/enums/scriptKind.enum.js +12 -0
  218. package/dist/enums/scriptKind.enum.js.map +1 -0
  219. package/dist/enums/scriptKind.js +12 -0
  220. package/dist/enums/scriptKind.js.map +1 -0
  221. package/dist/enums/scriptTarget.d.ts +2 -0
  222. package/dist/enums/scriptTarget.d.ts.map +1 -0
  223. package/dist/enums/scriptTarget.enum.d.ts +17 -0
  224. package/dist/enums/scriptTarget.enum.d.ts.map +1 -0
  225. package/dist/enums/scriptTarget.enum.js +18 -0
  226. package/dist/enums/scriptTarget.enum.js.map +1 -0
  227. package/dist/enums/scriptTarget.js +18 -0
  228. package/dist/enums/scriptTarget.js.map +1 -0
  229. package/dist/enums/signatureFlags.d.ts +2 -0
  230. package/dist/enums/signatureFlags.d.ts.map +1 -0
  231. package/dist/enums/signatureFlags.enum.d.ts +15 -0
  232. package/dist/enums/signatureFlags.enum.d.ts.map +1 -0
  233. package/dist/enums/signatureFlags.enum.js +17 -0
  234. package/dist/enums/signatureFlags.enum.js.map +1 -0
  235. package/dist/enums/signatureFlags.js +17 -0
  236. package/dist/enums/signatureFlags.js.map +1 -0
  237. package/dist/enums/signatureKind.d.ts +2 -0
  238. package/dist/enums/signatureKind.d.ts.map +1 -0
  239. package/dist/enums/signatureKind.enum.d.ts +5 -0
  240. package/dist/enums/signatureKind.enum.d.ts.map +1 -0
  241. package/dist/enums/signatureKind.enum.js +7 -0
  242. package/dist/enums/signatureKind.enum.js.map +1 -0
  243. package/dist/enums/signatureKind.js +7 -0
  244. package/dist/enums/signatureKind.js.map +1 -0
  245. package/dist/enums/symbolFlags.d.ts +2 -0
  246. package/dist/enums/symbolFlags.d.ts.map +1 -0
  247. package/dist/enums/symbolFlags.enum.d.ts +71 -0
  248. package/dist/enums/symbolFlags.enum.d.ts.map +1 -0
  249. package/dist/enums/symbolFlags.enum.js +73 -0
  250. package/dist/enums/symbolFlags.enum.js.map +1 -0
  251. package/dist/enums/symbolFlags.js +73 -0
  252. package/dist/enums/symbolFlags.js.map +1 -0
  253. package/dist/enums/syntaxKind.d.ts +2 -0
  254. package/dist/enums/syntaxKind.d.ts.map +1 -0
  255. package/dist/enums/syntaxKind.enum.d.ts +389 -0
  256. package/dist/enums/syntaxKind.enum.d.ts.map +1 -0
  257. package/dist/enums/syntaxKind.enum.js +391 -0
  258. package/dist/enums/syntaxKind.enum.js.map +1 -0
  259. package/dist/enums/syntaxKind.js +391 -0
  260. package/dist/enums/syntaxKind.js.map +1 -0
  261. package/dist/enums/tokenFlags.d.ts +2 -0
  262. package/dist/enums/tokenFlags.d.ts.map +1 -0
  263. package/dist/enums/tokenFlags.enum.d.ts +30 -0
  264. package/dist/enums/tokenFlags.enum.d.ts.map +1 -0
  265. package/dist/enums/tokenFlags.enum.js +32 -0
  266. package/dist/enums/tokenFlags.enum.js.map +1 -0
  267. package/dist/enums/tokenFlags.js +32 -0
  268. package/dist/enums/tokenFlags.js.map +1 -0
  269. package/dist/enums/typeFlags.d.ts +2 -0
  270. package/dist/enums/typeFlags.d.ts.map +1 -0
  271. package/dist/enums/typeFlags.enum.d.ts +76 -0
  272. package/dist/enums/typeFlags.enum.d.ts.map +1 -0
  273. package/dist/enums/typeFlags.enum.js +78 -0
  274. package/dist/enums/typeFlags.enum.js.map +1 -0
  275. package/dist/enums/typeFlags.js +78 -0
  276. package/dist/enums/typeFlags.js.map +1 -0
  277. package/dist/enums/typePredicateKind.d.ts +2 -0
  278. package/dist/enums/typePredicateKind.d.ts.map +1 -0
  279. package/dist/enums/typePredicateKind.enum.d.ts +7 -0
  280. package/dist/enums/typePredicateKind.enum.d.ts.map +1 -0
  281. package/dist/enums/typePredicateKind.enum.js +9 -0
  282. package/dist/enums/typePredicateKind.enum.js.map +1 -0
  283. package/dist/enums/typePredicateKind.js +9 -0
  284. package/dist/enums/typePredicateKind.js.map +1 -0
  285. package/lib/getExePath.d.ts +2 -0
  286. package/package.json +57 -12
  287. package/vendor/vscode-jsonrpc/README.md +69 -0
  288. package/vendor/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  289. package/vendor/vscode-jsonrpc/lib/browser/main.js +83 -0
  290. package/vendor/vscode-jsonrpc/lib/browser/ril.d.ts +22 -0
  291. package/vendor/vscode-jsonrpc/lib/browser/ril.js +203 -0
  292. package/vendor/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  293. package/vendor/vscode-jsonrpc/lib/common/api.js +87 -0
  294. package/vendor/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  295. package/vendor/vscode-jsonrpc/lib/common/cancellation.js +132 -0
  296. package/vendor/vscode-jsonrpc/lib/common/connection.d.ts +367 -0
  297. package/vendor/vscode-jsonrpc/lib/common/connection.js +1272 -0
  298. package/vendor/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  299. package/vendor/vscode-jsonrpc/lib/common/disposable.js +16 -0
  300. package/vendor/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  301. package/vendor/vscode-jsonrpc/lib/common/encoding.js +70 -0
  302. package/vendor/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  303. package/vendor/vscode-jsonrpc/lib/common/events.js +136 -0
  304. package/vendor/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  305. package/vendor/vscode-jsonrpc/lib/common/is.js +34 -0
  306. package/vendor/vscode-jsonrpc/lib/common/linkedMap.d.ts +55 -0
  307. package/vendor/vscode-jsonrpc/lib/common/linkedMap.js +412 -0
  308. package/vendor/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  309. package/vendor/vscode-jsonrpc/lib/common/messageBuffer.js +155 -0
  310. package/vendor/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  311. package/vendor/vscode-jsonrpc/lib/common/messageReader.js +246 -0
  312. package/vendor/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  313. package/vendor/vscode-jsonrpc/lib/common/messageWriter.js +157 -0
  314. package/vendor/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  315. package/vendor/vscode-jsonrpc/lib/common/messages.js +436 -0
  316. package/vendor/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  317. package/vendor/vscode-jsonrpc/lib/common/ral.js +23 -0
  318. package/vendor/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  319. package/vendor/vscode-jsonrpc/lib/common/semaphore.js +74 -0
  320. package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  321. package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +77 -0
  322. package/vendor/vscode-jsonrpc/lib/node/main.d.ts +58 -0
  323. package/vendor/vscode-jsonrpc/lib/node/main.js +289 -0
  324. package/vendor/vscode-jsonrpc/lib/node/ril.d.ts +12 -0
  325. package/vendor/vscode-jsonrpc/lib/node/ril.js +163 -0
  326. package/vendor/vscode-jsonrpc/package.json +54 -0
  327. package/vendor/vscode-jsonrpc/typings/thenable.d.ts +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/async/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { type ClientOptions, type ClientSocketOptions, type ClientSpawnOptions } from "../options.ts";
2
+ export type { ClientOptions, ClientSocketOptions, ClientSpawnOptions };
3
+ /**
4
+ * Client handles communication with the TypeScript API server
5
+ * over STDIO (spawned process) or a Unix domain socket using JSON-RPC.
6
+ */
7
+ export declare class Client {
8
+ private socket;
9
+ private process;
10
+ private connection;
11
+ private options;
12
+ private connected;
13
+ constructor(options: ClientOptions);
14
+ connect(): Promise<void>;
15
+ private connectViaSpawn;
16
+ private connectViaSocket;
17
+ private registerFSCallbacks;
18
+ apiRequest<T>(method: string, params?: unknown): Promise<T>;
19
+ apiRequestBinary(method: string, params?: unknown): Promise<Uint8Array | undefined>;
20
+ close(): Promise<void>;
21
+ }
22
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"AAeA,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EAG1B,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;AAEvE;;;GAGG;AACH,qBAAa,MAAM;IACf,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,UAAU,CAAgC;IAClD,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,SAAS,CAAS;gBAEd,OAAO,EAAE,aAAa;IAI5B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAWhB,eAAe;YA6Cf,gBAAgB;IAmB9B,OAAO,CAAC,mBAAmB;IAoBrB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAY3D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAOnF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAoB/B"}
@@ -0,0 +1,140 @@
1
+ import { createMessageConnection, RequestType, SocketMessageReader, SocketMessageWriter, StreamMessageReader, StreamMessageWriter, } from "#vscode-jsonrpc/node";
2
+ import { fsCallbackNames, } from "../fs.js";
3
+ import { isSpawnOptions, resolveExePath, } from "../options.js";
4
+ /**
5
+ * Client handles communication with the TypeScript API server
6
+ * over STDIO (spawned process) or a Unix domain socket using JSON-RPC.
7
+ */
8
+ export class Client {
9
+ socket;
10
+ process;
11
+ connection;
12
+ options;
13
+ connected = false;
14
+ constructor(options) {
15
+ this.options = options;
16
+ }
17
+ async connect() {
18
+ if (this.connected)
19
+ return;
20
+ if (isSpawnOptions(this.options)) {
21
+ await this.connectViaSpawn(this.options);
22
+ }
23
+ else {
24
+ await this.connectViaSocket(this.options);
25
+ }
26
+ }
27
+ async connectViaSpawn(options) {
28
+ const { spawn } = await import("node:child_process");
29
+ return new Promise((resolve, reject) => {
30
+ const args = [
31
+ "--api",
32
+ "--async",
33
+ "--cwd",
34
+ options.cwd ?? process.cwd(),
35
+ ];
36
+ // Enable virtual FS callbacks for each provided FS function
37
+ const enabledCallbacks = [];
38
+ if (options.fs) {
39
+ for (const name of fsCallbackNames) {
40
+ if (options.fs[name]) {
41
+ enabledCallbacks.push(name);
42
+ }
43
+ }
44
+ }
45
+ if (enabledCallbacks.length > 0) {
46
+ args.push(`--callbacks=${enabledCallbacks.join(",")}`);
47
+ }
48
+ this.process = spawn(resolveExePath(options), args, {
49
+ stdio: ["pipe", "pipe", "inherit"],
50
+ });
51
+ this.process.once("error", error => {
52
+ reject(new Error(`Failed to start tsgo process: ${error.message}`));
53
+ });
54
+ this.process.once("spawn", () => {
55
+ this.connected = true;
56
+ resolve();
57
+ });
58
+ const reader = new StreamMessageReader(this.process.stdout);
59
+ const writer = new StreamMessageWriter(this.process.stdin);
60
+ this.connection = createMessageConnection(reader, writer);
61
+ this.registerFSCallbacks(this.connection, options.fs);
62
+ this.connection.listen();
63
+ });
64
+ }
65
+ async connectViaSocket(options) {
66
+ const { createConnection } = await import("node:net");
67
+ return new Promise((resolve, reject) => {
68
+ this.socket = createConnection(options.pipe, () => {
69
+ const reader = new SocketMessageReader(this.socket);
70
+ const writer = new SocketMessageWriter(this.socket);
71
+ this.connection = createMessageConnection(reader, writer);
72
+ this.connection.listen();
73
+ this.connected = true;
74
+ resolve();
75
+ });
76
+ this.socket.once("error", error => {
77
+ reject(new Error(`Socket error: ${error.message}`));
78
+ });
79
+ });
80
+ }
81
+ registerFSCallbacks(connection, fs) {
82
+ if (!fs)
83
+ return;
84
+ for (const name of fsCallbackNames) {
85
+ const callback = fs[name];
86
+ if (callback) {
87
+ const requestType = new RequestType(name);
88
+ connection.onRequest(requestType, (arg) => {
89
+ const result = callback(arg);
90
+ if (name === "readFile") {
91
+ // readFile has 3 returns: string (content), null (not found), undefined (fall back).
92
+ // JSON-RPC can't distinguish null from undefined, so wrap in object.
93
+ if (result === undefined)
94
+ return null;
95
+ return { content: result };
96
+ }
97
+ return result ?? null;
98
+ });
99
+ }
100
+ }
101
+ }
102
+ async apiRequest(method, params) {
103
+ if (!this.connected) {
104
+ await this.connect();
105
+ }
106
+ if (!this.connection) {
107
+ throw new Error("Connection not established");
108
+ }
109
+ const requestType = new RequestType(method);
110
+ return this.connection.sendRequest(requestType, params);
111
+ }
112
+ async apiRequestBinary(method, params) {
113
+ const response = await this.apiRequest(method, params);
114
+ if (!response)
115
+ return undefined;
116
+ const buffer = Buffer.from(response.data, "base64");
117
+ return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
118
+ }
119
+ async close() {
120
+ if (this.connection) {
121
+ this.connection.dispose();
122
+ this.connection = undefined;
123
+ }
124
+ if (this.socket) {
125
+ this.socket.destroy();
126
+ this.socket = undefined;
127
+ }
128
+ if (this.process) {
129
+ // Close stdin to unblock the server's read loop, allowing it to exit cleanly.
130
+ // The server is blocked on stdin.Read(), so just sending SIGTERM would deadlock:
131
+ // - Node won't exit while child is alive
132
+ // - Child can't process SIGTERM while blocked on read
133
+ // - Read won't error until stdin is closed
134
+ this.process.stdin?.end();
135
+ this.process = undefined;
136
+ }
137
+ this.connected = false;
138
+ }
139
+ }
140
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,179 @@
1
+ import type { DiagnosticCategory } from "#enums/diagnosticCategory";
2
+ import type { ElementFlags } from "#enums/elementFlags";
3
+ import type { ObjectFlags } from "#enums/objectFlags";
4
+ import type { TypeFlags } from "#enums/typeFlags";
5
+ import type { TypePredicateKind } from "#enums/typePredicateKind";
6
+ import type { Symbol } from "./api.ts";
7
+ /**
8
+ * A TypeScript type.
9
+ *
10
+ * Use TypeFlags to determine the specific kind of type and access
11
+ * kind-specific properties. For example:
12
+ *
13
+ * ```ts
14
+ * if (type.flags & TypeFlags.StringLiteral) {
15
+ * console.log((type as LiteralType).value); // string
16
+ * }
17
+ * ```
18
+ */
19
+ export interface Type {
20
+ /** Unique identifier for this type */
21
+ readonly id: string;
22
+ /** Type flags — use to determine the specific kind of type */
23
+ readonly flags: TypeFlags;
24
+ /** Get the symbol associated with this type, if any */
25
+ getSymbol(): Promise<Symbol | undefined>;
26
+ }
27
+ /** Literal types: StringLiteral, NumberLiteral, BigIntLiteral, BooleanLiteral */
28
+ export interface LiteralType extends Type {
29
+ /** The literal value */
30
+ readonly value: string | number | boolean;
31
+ }
32
+ /** Object types (TypeFlags.Object) */
33
+ export interface ObjectType extends Type {
34
+ /** Object flags — use to determine the specific kind of object type */
35
+ readonly objectFlags: ObjectFlags;
36
+ }
37
+ /** Type references (ObjectFlags.Reference) — e.g. Array<string>, Map<K, V> */
38
+ export interface TypeReference extends ObjectType {
39
+ /** Get the generic target type (e.g. Array for Array<string>) */
40
+ getTarget(): Promise<Type>;
41
+ }
42
+ /** Interface types — classes and interfaces (ObjectFlags.ClassOrInterface) */
43
+ export interface InterfaceType extends TypeReference {
44
+ /** Get all type parameters (outer + local, excluding thisType) */
45
+ getTypeParameters(): Promise<readonly Type[]>;
46
+ /** Get outer type parameters from enclosing declarations */
47
+ getOuterTypeParameters(): Promise<readonly Type[]>;
48
+ /** Get local type parameters declared on this interface/class */
49
+ getLocalTypeParameters(): Promise<readonly Type[]>;
50
+ }
51
+ /** Tuple types (ObjectFlags.Tuple) */
52
+ export interface TupleType extends InterfaceType {
53
+ /** Per-element flags (Required, Optional, Rest, Variadic) */
54
+ readonly elementFlags: readonly ElementFlags[];
55
+ /** Number of initial required or optional elements */
56
+ readonly fixedLength: number;
57
+ /** Whether the tuple is readonly */
58
+ readonly readonly: boolean;
59
+ }
60
+ /** Union or intersection types (TypeFlags.Union | TypeFlags.Intersection) */
61
+ export interface UnionOrIntersectionType extends Type {
62
+ /** Get the constituent types */
63
+ getTypes(): Promise<readonly Type[]>;
64
+ }
65
+ /** Union types (TypeFlags.Union) */
66
+ export interface UnionType extends UnionOrIntersectionType {
67
+ }
68
+ /** Intersection types (TypeFlags.Intersection) */
69
+ export interface IntersectionType extends UnionOrIntersectionType {
70
+ }
71
+ /** Type parameters (TypeFlags.TypeParameter) */
72
+ export interface TypeParameter extends Type {
73
+ }
74
+ /** Index types — keyof T (TypeFlags.Index) */
75
+ export interface IndexType extends Type {
76
+ /** Get the target type T in `keyof T` */
77
+ getTarget(): Promise<Type>;
78
+ }
79
+ /** Indexed access types — T[K] (TypeFlags.IndexedAccess) */
80
+ export interface IndexedAccessType extends Type {
81
+ /** Get the object type T in `T[K]` */
82
+ getObjectType(): Promise<Type>;
83
+ /** Get the index type K in `T[K]` */
84
+ getIndexType(): Promise<Type>;
85
+ }
86
+ /** Conditional types — T extends U ? X : Y (TypeFlags.Conditional) */
87
+ export interface ConditionalType extends Type {
88
+ /** Get the check type T in `T extends U ? X : Y` */
89
+ getCheckType(): Promise<Type>;
90
+ /** Get the extends type U in `T extends U ? X : Y` */
91
+ getExtendsType(): Promise<Type>;
92
+ }
93
+ /** Substitution types (TypeFlags.Substitution) */
94
+ export interface SubstitutionType extends Type {
95
+ getBaseType(): Promise<Type>;
96
+ getConstraint(): Promise<Type>;
97
+ }
98
+ /** Template literal types (TypeFlags.TemplateLiteral) */
99
+ export interface TemplateLiteralType extends Type {
100
+ /** Text segments (always one more than the number of type spans) */
101
+ readonly texts: readonly string[];
102
+ /** Get the types interspersed between text segments */
103
+ getTypes(): Promise<readonly Type[]>;
104
+ }
105
+ /** String mapping types — Uppercase<T>, Lowercase<T>, etc. (TypeFlags.StringMapping) */
106
+ export interface StringMappingType extends Type {
107
+ /** Get the mapped type */
108
+ getTarget(): Promise<Type>;
109
+ }
110
+ /** Base for all type predicates */
111
+ export interface TypePredicateBase {
112
+ readonly kind: TypePredicateKind;
113
+ readonly type: Type | undefined;
114
+ }
115
+ /** `this is T` */
116
+ export interface ThisTypePredicate extends TypePredicateBase {
117
+ readonly kind: TypePredicateKind.This;
118
+ readonly parameterName: undefined;
119
+ readonly parameterIndex: undefined;
120
+ readonly type: Type;
121
+ }
122
+ /** `x is T` */
123
+ export interface IdentifierTypePredicate extends TypePredicateBase {
124
+ readonly kind: TypePredicateKind.Identifier;
125
+ readonly parameterName: string;
126
+ readonly parameterIndex: number;
127
+ readonly type: Type;
128
+ }
129
+ /** `asserts this is T` */
130
+ export interface AssertsThisTypePredicate extends TypePredicateBase {
131
+ readonly kind: TypePredicateKind.AssertsThis;
132
+ readonly parameterName: undefined;
133
+ readonly parameterIndex: undefined;
134
+ readonly type: Type | undefined;
135
+ }
136
+ /** `asserts x is T` */
137
+ export interface AssertsIdentifierTypePredicate extends TypePredicateBase {
138
+ readonly kind: TypePredicateKind.AssertsIdentifier;
139
+ readonly parameterName: string;
140
+ readonly parameterIndex: number;
141
+ readonly type: Type | undefined;
142
+ }
143
+ /** A type predicate — e.g. `x is T` or `asserts x is T` */
144
+ export type TypePredicate = ThisTypePredicate | IdentifierTypePredicate | AssertsThisTypePredicate | AssertsIdentifierTypePredicate;
145
+ /** An index signature — e.g. `[key: string]: T` */
146
+ export interface IndexInfo {
147
+ /** The index key type (e.g. string or number) */
148
+ readonly keyType: Type;
149
+ /** The index value type */
150
+ readonly valueType: Type;
151
+ /** Whether the index signature is readonly */
152
+ readonly isReadonly: boolean;
153
+ }
154
+ /**
155
+ * A diagnostic message from the TypeScript compiler.
156
+ */
157
+ export interface Diagnostic {
158
+ /** File name of the source file this diagnostic belongs to, if any */
159
+ readonly fileName?: string;
160
+ /** Start position of the diagnostic */
161
+ readonly pos: number;
162
+ /** End position of the diagnostic */
163
+ readonly end: number;
164
+ /** Diagnostic error code */
165
+ readonly code: number;
166
+ /** Diagnostic category (error, warning, suggestion, message) */
167
+ readonly category: DiagnosticCategory;
168
+ /** Localized diagnostic message text */
169
+ readonly text: string;
170
+ /** Whether this diagnostic highlights unnecessary code */
171
+ readonly reportsUnnecessary?: boolean;
172
+ /** Whether this diagnostic highlights deprecated code */
173
+ readonly reportsDeprecated?: boolean;
174
+ /** Chained diagnostic messages */
175
+ readonly messageChain?: readonly Diagnostic[];
176
+ /** Related diagnostic information */
177
+ readonly relatedInformation?: readonly Diagnostic[];
178
+ }
179
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/api/async/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/async/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ export interface FileSystemEntries {
2
+ files: string[];
3
+ directories: string[];
4
+ }
5
+ export interface FileSystem {
6
+ directoryExists?: (directoryName: string) => boolean | undefined;
7
+ fileExists?: (fileName: string) => boolean | undefined;
8
+ getAccessibleEntries?: (directoryName: string) => FileSystemEntries | undefined;
9
+ /**
10
+ * Read a file's content.
11
+ * - Return the file content as a `string` (including `""` for empty files).
12
+ * - Return `null` to indicate the file does not exist (without falling back to the real FS).
13
+ * - Return `undefined` to fall back to the real filesystem.
14
+ */
15
+ readFile?: (fileName: string) => string | null | undefined;
16
+ realpath?: (path: string) => string | undefined;
17
+ writeFile?: (path: string, content: string) => void;
18
+ removeFile?: (path: string) => void;
19
+ }
20
+ /** The callback names supported by the Go server for virtual FS delegation. */
21
+ export declare const fsCallbackNames: readonly ["readFile", "fileExists", "directoryExists", "getAccessibleEntries", "realpath"];
22
+ export declare function createVirtualFileSystem(files: Record<string, string>): FileSystem;
23
+ //# sourceMappingURL=fs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/api/fs.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACvB,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;IACjE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;IACvD,oBAAoB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,iBAAiB,GAAG,SAAS,CAAC;IAChF;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,+EAA+E;AAC/E,eAAO,MAAM,eAAe,4FAA6F,CAAC;AAa1H,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,CAkHjF"}
package/dist/api/fs.js ADDED
@@ -0,0 +1,109 @@
1
+ import { getPathComponents } from "./path.js";
2
+ /** The callback names supported by the Go server for virtual FS delegation. */
3
+ export const fsCallbackNames = ["readFile", "fileExists", "directoryExists", "getAccessibleEntries", "realpath"];
4
+ export function createVirtualFileSystem(files) {
5
+ const root = {
6
+ type: "directory",
7
+ children: {},
8
+ };
9
+ const content = {};
10
+ for (const filePath of Object.keys(files)) {
11
+ content[filePath] = files[filePath];
12
+ addToTree(filePath);
13
+ }
14
+ return {
15
+ directoryExists,
16
+ fileExists,
17
+ getAccessibleEntries,
18
+ readFile,
19
+ realpath: path => path,
20
+ writeFile,
21
+ removeFile,
22
+ };
23
+ function getNodeFromPath(path) {
24
+ if (!path || path === "/") {
25
+ return root;
26
+ }
27
+ const segments = getPathComponents(path).slice(1);
28
+ let current = root;
29
+ for (const segment of segments) {
30
+ if (current.type !== "directory") {
31
+ return undefined;
32
+ }
33
+ const child = current.children[segment];
34
+ if (!child) {
35
+ return undefined;
36
+ }
37
+ current = child;
38
+ }
39
+ return current;
40
+ }
41
+ function ensureDirectory(segments) {
42
+ let current = root;
43
+ for (const segment of segments) {
44
+ if (!current.children[segment]) {
45
+ current.children[segment] = { type: "directory", children: {} };
46
+ }
47
+ else if (current.children[segment].type !== "directory") {
48
+ throw new Error(`Cannot create directory: a file already exists at "/${segments.join("/")}"`);
49
+ }
50
+ current = current.children[segment];
51
+ }
52
+ return current;
53
+ }
54
+ function addToTree(path) {
55
+ const segments = getPathComponents(path).slice(1);
56
+ if (segments.length === 0) {
57
+ throw new Error(`Invalid file path: "${path}"`);
58
+ }
59
+ const filename = segments.pop();
60
+ const dirNode = ensureDirectory(segments);
61
+ dirNode.children[filename] = { type: "file" };
62
+ }
63
+ function writeFile(path, data) {
64
+ content[path] = data;
65
+ addToTree(path);
66
+ }
67
+ function removeFile(path) {
68
+ delete content[path];
69
+ const segments = getPathComponents(path).slice(1);
70
+ if (segments.length === 0)
71
+ return;
72
+ const filename = segments.pop();
73
+ const dirNode = getNodeFromPath("/" + segments.join("/"));
74
+ if (dirNode && dirNode.type === "directory") {
75
+ delete dirNode.children[filename];
76
+ }
77
+ }
78
+ function directoryExists(directoryName) {
79
+ const node = getNodeFromPath(directoryName);
80
+ return !!node && node.type === "directory";
81
+ }
82
+ function fileExists(fileName) {
83
+ return fileName in content;
84
+ }
85
+ function getAccessibleEntries(directoryName) {
86
+ const node = getNodeFromPath(directoryName);
87
+ if (!node || node.type !== "directory") {
88
+ return undefined;
89
+ }
90
+ const fileEntries = [];
91
+ const directories = [];
92
+ for (const [name, child] of Object.entries(node.children)) {
93
+ if (child.type === "file") {
94
+ fileEntries.push(name);
95
+ }
96
+ else {
97
+ directories.push(name);
98
+ }
99
+ }
100
+ return { files: fileEntries, directories };
101
+ }
102
+ function readFile(fileName) {
103
+ if (fileName in content) {
104
+ return content[fileName];
105
+ }
106
+ return undefined;
107
+ }
108
+ }
109
+ //# sourceMappingURL=fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/api/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAuB9C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,UAAU,CAAU,CAAC;AAa1H,MAAM,UAAU,uBAAuB,CAAC,KAA6B;IACjE,MAAM,IAAI,GAAe;QACrB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,EAAE;KACf,CAAC;IACF,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAED,OAAO;QACH,eAAe;QACf,UAAU;QACV,oBAAoB;QACpB,QAAQ;QACR,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI;QACtB,SAAS;QACT,UAAU;KACb,CAAC;IAEF,SAAS,eAAe,CAAC,IAAY;QACjC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,OAAO,GAAU,IAAI,CAAC;QAC1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC/B,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,KAAK,GAAU,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,OAAO,GAAG,KAAK,CAAC;QACpB,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,SAAS,eAAe,CAAC,QAAkB;QACvC,IAAI,OAAO,GAAe,IAAI,CAAC;QAC/B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YACpE,CAAC;iBACI,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,uDAAuD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClG,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe,CAAC;QACtD,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,SAAS,SAAS,CAAC,IAAY;QAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAG,CAAC;QACjC,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IAED,SAAS,SAAS,CAAC,IAAY,EAAE,IAAY;QACzC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACrB,SAAS,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,UAAU,CAAC,IAAY;QAC5B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAClC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAG,CAAC;QACjC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1D,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC1C,OAAO,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED,SAAS,eAAe,CAAC,aAAqB;QAC1C,MAAM,IAAI,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAC5C,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;IAC/C,CAAC;IAED,SAAS,UAAU,CAAC,QAAgB;QAChC,OAAO,QAAQ,IAAI,OAAO,CAAC;IAC/B,CAAC;IAED,SAAS,oBAAoB,CAAC,aAAqB;QAC/C,MAAM,IAAI,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;iBACI,CAAC;gBACF,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;QACL,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,QAAQ,CAAC,QAAgB;QAC9B,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;YACtB,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { Node, SourceFile } from "../../ast/index.ts";
2
+ /**
3
+ * Encode a SourceFile AST node into the binary format.
4
+ */
5
+ export declare function encodeSourceFile(sourceFile: SourceFile): Uint8Array;
6
+ /**
7
+ * Encode an arbitrary AST node into the binary format.
8
+ * When encoding a non-SourceFile node, the header hash and parse options fields will be zero.
9
+ */
10
+ export declare function encodeNode(node: Node): Uint8Array;
11
+ /**
12
+ * Encode a Uint8Array to a base64 string.
13
+ */
14
+ export declare function uint8ArrayToBase64(data: Uint8Array): string;
15
+ //# sourceMappingURL=encoder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../../src/api/node/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIR,IAAI,EAEJ,UAAU,EAEb,MAAM,oBAAoB,CAAC;AA4M5B;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAuKjD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAE3D"}
@@ -0,0 +1,5 @@
1
+ import type { Node } from "../../ast/index.ts";
2
+ import { SyntaxKind } from "../../ast/index.ts";
3
+ export declare function getNodeDataType(kind: SyntaxKind): number;
4
+ export declare function getNodeCommonData(node: Node): number;
5
+ //# sourceMappingURL=encoder.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoder.generated.d.ts","sourceRoot":"","sources":["../../../src/api/node/encoder.generated.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAiBR,IAAI,EAMP,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAOhD,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAuBxD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CA6CpD"}