semantifold 0.3.0 → 0.4.0

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 (297) hide show
  1. package/README.md +58 -15
  2. package/build/index.d.ts +48 -2
  3. package/build/index.d.ts.map +1 -1
  4. package/build/index.js +57 -8
  5. package/build/src/artifact-path.d.ts +23 -1
  6. package/build/src/artifact-path.d.ts.map +1 -1
  7. package/build/src/artifact-path.js +45 -3
  8. package/build/src/artifacts.d.ts.map +1 -1
  9. package/build/src/artifacts.js +66 -1
  10. package/build/src/backends/c-validation.d.ts.map +1 -1
  11. package/build/src/backends/c-validation.js +7 -3
  12. package/build/src/backends/cpp-validation.d.ts.map +1 -1
  13. package/build/src/backends/cpp-validation.js +7 -3
  14. package/build/src/backends/csharp.js +7 -1
  15. package/build/src/backends/dart-runtime.d.ts +2 -0
  16. package/build/src/backends/dart-runtime.d.ts.map +1 -0
  17. package/build/src/backends/dart-runtime.js +41 -0
  18. package/build/src/backends/dart.d.ts +20 -0
  19. package/build/src/backends/dart.d.ts.map +1 -0
  20. package/build/src/backends/dart.js +321 -0
  21. package/build/src/backends/effects.d.ts +60 -0
  22. package/build/src/backends/effects.d.ts.map +1 -0
  23. package/build/src/backends/effects.js +746 -0
  24. package/build/src/backends/go.js +18 -4
  25. package/build/src/backends/identifiers.d.ts +36 -4
  26. package/build/src/backends/identifiers.d.ts.map +1 -1
  27. package/build/src/backends/identifiers.js +154 -10
  28. package/build/src/backends/index.d.ts.map +1 -1
  29. package/build/src/backends/index.js +27 -4
  30. package/build/src/backends/ios.d.ts +68 -0
  31. package/build/src/backends/ios.d.ts.map +1 -0
  32. package/build/src/backends/ios.js +1503 -0
  33. package/build/src/backends/java.d.ts.map +1 -1
  34. package/build/src/backends/java.js +429 -36
  35. package/build/src/backends/javascript.d.ts +6 -0
  36. package/build/src/backends/javascript.d.ts.map +1 -1
  37. package/build/src/backends/javascript.js +380 -24
  38. package/build/src/backends/kotlin-runtime.d.ts +3 -0
  39. package/build/src/backends/kotlin-runtime.d.ts.map +1 -0
  40. package/build/src/backends/kotlin-runtime.js +29 -0
  41. package/build/src/backends/kotlin.d.ts +23 -0
  42. package/build/src/backends/kotlin.d.ts.map +1 -0
  43. package/build/src/backends/kotlin.js +136 -0
  44. package/build/src/backends/native-validation.d.ts +2 -2
  45. package/build/src/backends/native-validation.d.ts.map +1 -1
  46. package/build/src/backends/native-validation.js +2 -2
  47. package/build/src/backends/ordered-expressions.d.ts.map +1 -1
  48. package/build/src/backends/ordered-expressions.js +39 -7
  49. package/build/src/backends/php-stdlib-support.d.ts +19 -0
  50. package/build/src/backends/php-stdlib-support.d.ts.map +1 -0
  51. package/build/src/backends/php-stdlib-support.js +227 -0
  52. package/build/src/backends/php.d.ts.map +1 -1
  53. package/build/src/backends/php.js +448 -33
  54. package/build/src/backends/program.d.ts +81 -0
  55. package/build/src/backends/program.d.ts.map +1 -0
  56. package/build/src/backends/program.js +1308 -0
  57. package/build/src/backends/python.js +7 -1
  58. package/build/src/backends/ruby.d.ts.map +1 -1
  59. package/build/src/backends/ruby.js +310 -24
  60. package/build/src/backends/rust-runtime.d.ts +7 -0
  61. package/build/src/backends/rust-runtime.d.ts.map +1 -0
  62. package/build/src/backends/rust-runtime.js +32 -0
  63. package/build/src/backends/rust-validation.d.ts +9 -0
  64. package/build/src/backends/rust-validation.d.ts.map +1 -0
  65. package/build/src/backends/rust-validation.js +78 -0
  66. package/build/src/backends/rust.d.ts +24 -0
  67. package/build/src/backends/rust.d.ts.map +1 -0
  68. package/build/src/backends/rust.js +344 -0
  69. package/build/src/backends/scalars.d.ts +14 -6
  70. package/build/src/backends/scalars.d.ts.map +1 -1
  71. package/build/src/backends/scalars.js +167 -17
  72. package/build/src/backends/shared.d.ts +23 -4
  73. package/build/src/backends/shared.d.ts.map +1 -1
  74. package/build/src/backends/shared.js +2158 -62
  75. package/build/src/backends/stdlib-support.d.ts +14 -0
  76. package/build/src/backends/stdlib-support.d.ts.map +1 -0
  77. package/build/src/backends/stdlib-support.js +237 -0
  78. package/build/src/backends/swift-runtime.d.ts +3 -0
  79. package/build/src/backends/swift-runtime.d.ts.map +1 -0
  80. package/build/src/backends/swift-runtime.js +14 -0
  81. package/build/src/backends/swift.d.ts +8 -0
  82. package/build/src/backends/swift.d.ts.map +1 -0
  83. package/build/src/backends/swift.js +127 -0
  84. package/build/src/backends/typescript.d.ts.map +1 -1
  85. package/build/src/backends/typescript.js +344 -24
  86. package/build/src/backends/wasm.d.ts +43 -0
  87. package/build/src/backends/wasm.d.ts.map +1 -0
  88. package/build/src/backends/wasm.js +2164 -0
  89. package/build/src/backends/writer.d.ts +235 -4
  90. package/build/src/backends/writer.d.ts.map +1 -1
  91. package/build/src/backends/writer.js +468 -3
  92. package/build/src/diagnostic.d.ts +4 -3
  93. package/build/src/diagnostic.d.ts.map +1 -1
  94. package/build/src/diagnostic.js +5 -3
  95. package/build/src/frontends/c.d.ts.map +1 -1
  96. package/build/src/frontends/c.js +5 -3
  97. package/build/src/frontends/cpp.d.ts.map +1 -1
  98. package/build/src/frontends/cpp.js +5 -3
  99. package/build/src/frontends/csharp.d.ts.map +1 -1
  100. package/build/src/frontends/csharp.js +7 -3
  101. package/build/src/frontends/dart.d.ts +10 -0
  102. package/build/src/frontends/dart.d.ts.map +1 -0
  103. package/build/src/frontends/dart.js +913 -0
  104. package/build/src/frontends/index.d.ts +3 -1
  105. package/build/src/frontends/index.d.ts.map +1 -1
  106. package/build/src/frontends/index.js +15 -5
  107. package/build/src/frontends/java.d.ts +110 -1
  108. package/build/src/frontends/java.d.ts.map +1 -1
  109. package/build/src/frontends/java.js +1725 -70
  110. package/build/src/frontends/javascript-typescript.d.ts +69 -1
  111. package/build/src/frontends/javascript-typescript.d.ts.map +1 -1
  112. package/build/src/frontends/javascript-typescript.js +1825 -93
  113. package/build/src/frontends/kotlin.d.ts +10 -0
  114. package/build/src/frontends/kotlin.d.ts.map +1 -0
  115. package/build/src/frontends/kotlin.js +685 -0
  116. package/build/src/frontends/php.d.ts +118 -1
  117. package/build/src/frontends/php.d.ts.map +1 -1
  118. package/build/src/frontends/php.js +1583 -76
  119. package/build/src/frontends/program.d.ts +74 -0
  120. package/build/src/frontends/program.d.ts.map +1 -0
  121. package/build/src/frontends/program.js +989 -0
  122. package/build/src/frontends/ruby.d.ts +68 -1
  123. package/build/src/frontends/ruby.d.ts.map +1 -1
  124. package/build/src/frontends/ruby.js +1446 -101
  125. package/build/src/frontends/rust-parser.d.ts +11 -0
  126. package/build/src/frontends/rust-parser.d.ts.map +1 -0
  127. package/build/src/frontends/rust-parser.js +15 -0
  128. package/build/src/frontends/rust.d.ts +14 -0
  129. package/build/src/frontends/rust.d.ts.map +1 -0
  130. package/build/src/frontends/rust.js +715 -0
  131. package/build/src/frontends/scalars.d.ts +10 -0
  132. package/build/src/frontends/scalars.d.ts.map +1 -1
  133. package/build/src/frontends/scalars.js +28 -2
  134. package/build/src/frontends/swift.d.ts +10 -0
  135. package/build/src/frontends/swift.d.ts.map +1 -0
  136. package/build/src/frontends/swift.js +860 -0
  137. package/build/src/frontends/types.d.ts +186 -0
  138. package/build/src/frontends/types.d.ts.map +1 -0
  139. package/build/src/frontends/types.js +634 -0
  140. package/build/src/language-registry.d.ts +46 -4
  141. package/build/src/language-registry.d.ts.map +1 -1
  142. package/build/src/language-registry.js +167 -13
  143. package/build/src/mapping.d.ts +2 -2
  144. package/build/src/mapping.d.ts.map +1 -1
  145. package/build/src/mapping.js +31 -10
  146. package/build/src/semantic/capabilities.d.ts +66 -0
  147. package/build/src/semantic/capabilities.d.ts.map +1 -0
  148. package/build/src/semantic/capabilities.js +649 -0
  149. package/build/src/semantic/effects.d.ts +26 -0
  150. package/build/src/semantic/effects.d.ts.map +1 -0
  151. package/build/src/semantic/effects.js +764 -0
  152. package/build/src/semantic/generics.d.ts +23 -0
  153. package/build/src/semantic/generics.d.ts.map +1 -0
  154. package/build/src/semantic/generics.js +61 -0
  155. package/build/src/semantic/lifetime.d.ts +37 -0
  156. package/build/src/semantic/lifetime.d.ts.map +1 -0
  157. package/build/src/semantic/lifetime.js +527 -0
  158. package/build/src/semantic/provenance.d.ts +9 -2
  159. package/build/src/semantic/provenance.d.ts.map +1 -1
  160. package/build/src/semantic/provenance.js +462 -20
  161. package/build/src/semantic/scalars.d.ts +11 -0
  162. package/build/src/semantic/scalars.d.ts.map +1 -1
  163. package/build/src/semantic/scalars.js +16 -1
  164. package/build/src/semantic/stdlib.d.ts +254 -0
  165. package/build/src/semantic/stdlib.d.ts.map +1 -0
  166. package/build/src/semantic/stdlib.js +880 -0
  167. package/build/src/semantic/types.d.ts +2952 -202
  168. package/build/src/semantic/types.d.ts.map +1 -1
  169. package/build/src/semantic/types.js +688 -15
  170. package/build/src/semantic/validate.d.ts +85 -5
  171. package/build/src/semantic/validate.d.ts.map +1 -1
  172. package/build/src/semantic/validate.js +2576 -98
  173. package/build/src/stdlib-facades.d.ts +304 -0
  174. package/build/src/stdlib-facades.d.ts.map +1 -0
  175. package/build/src/stdlib-facades.js +1167 -0
  176. package/build/src/stdlib-negotiation.d.ts +69 -0
  177. package/build/src/stdlib-negotiation.d.ts.map +1 -0
  178. package/build/src/stdlib-negotiation.js +403 -0
  179. package/build/src/stdlib-providers.d.ts +72 -0
  180. package/build/src/stdlib-providers.d.ts.map +1 -0
  181. package/build/src/stdlib-providers.js +339 -0
  182. package/build/src/toolchains.d.ts +55 -1
  183. package/build/src/toolchains.d.ts.map +1 -1
  184. package/build/src/toolchains.js +15 -4
  185. package/docs/architecture.md +45 -13
  186. package/docs/dart.md +60 -0
  187. package/docs/goals.md +3 -3
  188. package/docs/ios.md +121 -0
  189. package/docs/kotlin.md +42 -0
  190. package/docs/language-support.md +231 -26
  191. package/docs/multi-file-modules.md +52 -0
  192. package/docs/parser-qualification.md +121 -8
  193. package/docs/plans/2026-09-05-standard-library-portability.md +10 -10
  194. package/docs/rust.md +88 -0
  195. package/docs/source-maps.md +15 -7
  196. package/docs/standard-library-portability.md +39 -8
  197. package/docs/swift.md +44 -0
  198. package/docs/testing.md +366 -4
  199. package/docs/webassembly.md +52 -0
  200. package/index.js +63 -8
  201. package/node_modules/semantifold-tree-sitter-legacy-internal/README.md +2 -2
  202. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/LICENSE +21 -0
  203. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/README.md +45 -0
  204. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/binding.gyp +30 -0
  205. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding.cc +20 -0
  206. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding_test.js +9 -0
  207. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.d.ts +28 -0
  208. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.js +11 -0
  209. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/grammar.js +1630 -0
  210. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/package.json +64 -0
  211. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-arm64/tree-sitter-rust.node +0 -0
  212. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-x64/tree-sitter-rust.node +0 -0
  213. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-arm64/tree-sitter-rust.node +0 -0
  214. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-x64/tree-sitter-rust.node +0 -0
  215. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-arm64/tree-sitter-rust.node +0 -0
  216. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-x64/tree-sitter-rust.node +0 -0
  217. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/highlights.scm +159 -0
  218. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/injections.scm +9 -0
  219. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/tags.scm +60 -0
  220. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/grammar.json +9405 -0
  221. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/node-types.json +5399 -0
  222. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/parser.c +192569 -0
  223. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/scanner.c +393 -0
  224. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/alloc.h +54 -0
  225. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/array.h +290 -0
  226. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/parser.h +266 -0
  227. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter-rust.wasm +0 -0
  228. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter.json +53 -0
  229. package/node_modules/semantifold-tree-sitter-legacy-internal/package.json +3 -2
  230. package/node_modules/semantifold-tree-sitter-legacy-internal/src/c.js +5 -4
  231. package/package.json +5 -2
  232. package/src/artifact-path.js +47 -2
  233. package/src/artifacts.js +67 -0
  234. package/src/backends/c-validation.js +6 -1
  235. package/src/backends/cpp-validation.js +6 -1
  236. package/src/backends/csharp.js +3 -0
  237. package/src/backends/dart-runtime.js +41 -0
  238. package/src/backends/dart.js +326 -0
  239. package/src/backends/effects.js +705 -0
  240. package/src/backends/go.js +14 -2
  241. package/src/backends/identifiers.js +160 -9
  242. package/src/backends/index.js +27 -2
  243. package/src/backends/ios.js +1612 -0
  244. package/src/backends/java.js +454 -36
  245. package/src/backends/javascript.js +389 -23
  246. package/src/backends/kotlin-runtime.js +29 -0
  247. package/src/backends/kotlin.js +141 -0
  248. package/src/backends/native-validation.js +1 -1
  249. package/src/backends/ordered-expressions.js +40 -6
  250. package/src/backends/php-stdlib-support.js +239 -0
  251. package/src/backends/php.js +469 -32
  252. package/src/backends/program.js +1407 -0
  253. package/src/backends/python.js +3 -0
  254. package/src/backends/ruby.js +326 -23
  255. package/src/backends/rust-runtime.js +34 -0
  256. package/src/backends/rust-validation.js +75 -0
  257. package/src/backends/rust.js +335 -0
  258. package/src/backends/scalars.js +141 -16
  259. package/src/backends/shared.js +2304 -124
  260. package/src/backends/stdlib-support.js +234 -0
  261. package/src/backends/swift-runtime.js +14 -0
  262. package/src/backends/swift.js +132 -0
  263. package/src/backends/typescript.js +349 -23
  264. package/src/backends/wasm.js +2208 -0
  265. package/src/backends/writer.js +520 -2
  266. package/src/diagnostic.js +4 -2
  267. package/src/frontends/c.js +4 -2
  268. package/src/frontends/cpp.js +4 -2
  269. package/src/frontends/csharp.js +4 -2
  270. package/src/frontends/dart.js +963 -0
  271. package/src/frontends/index.js +14 -4
  272. package/src/frontends/java.js +1977 -69
  273. package/src/frontends/javascript-typescript.js +2046 -102
  274. package/src/frontends/kotlin.js +713 -0
  275. package/src/frontends/php.js +1725 -79
  276. package/src/frontends/program.js +1062 -0
  277. package/src/frontends/ruby.js +1624 -98
  278. package/src/frontends/rust-parser.js +18 -0
  279. package/src/frontends/rust.js +714 -0
  280. package/src/frontends/scalars.js +31 -1
  281. package/src/frontends/swift.js +893 -0
  282. package/src/frontends/types.js +750 -0
  283. package/src/language-registry.js +172 -12
  284. package/src/mapping.js +33 -9
  285. package/src/semantic/capabilities.js +671 -0
  286. package/src/semantic/effects.js +737 -0
  287. package/src/semantic/generics.js +58 -0
  288. package/src/semantic/lifetime.js +517 -0
  289. package/src/semantic/provenance.js +412 -19
  290. package/src/semantic/scalars.js +17 -0
  291. package/src/semantic/stdlib.js +921 -0
  292. package/src/semantic/types.js +765 -14
  293. package/src/semantic/validate.js +2934 -209
  294. package/src/stdlib-facades.js +1211 -0
  295. package/src/stdlib-negotiation.js +446 -0
  296. package/src/stdlib-providers.js +377 -0
  297. package/src/toolchains.js +16 -3
@@ -0,0 +1,304 @@
1
+ export type StdlibFacadeFunctionDeclaration = {
2
+ /**
3
+ * - Closed public declaration kind.
4
+ */
5
+ kind: "function";
6
+ /**
7
+ * - Exact source-visible symbol.
8
+ */
9
+ name: string;
10
+ /**
11
+ * - Ordered source signature.
12
+ */
13
+ parameters: {
14
+ name: string;
15
+ type: string;
16
+ }[];
17
+ /**
18
+ * - Canonical result type.
19
+ */
20
+ returnType: string;
21
+ /**
22
+ * - Closed public effects.
23
+ */
24
+ effects: string[];
25
+ /**
26
+ * - Escaping canonical failure names.
27
+ */
28
+ failures: string[];
29
+ /**
30
+ * - Accepted source call forms.
31
+ */
32
+ forms: ("direct-call" | "unqualified-call" | "receiver-call")[];
33
+ /**
34
+ * - Initial scalar qualification ownership.
35
+ */
36
+ ownership: "not-applicable";
37
+ };
38
+ export type StdlibFacadeClassDeclaration = {
39
+ /**
40
+ * - Closed public declaration kind.
41
+ */
42
+ kind: "class";
43
+ /**
44
+ * - Exact source-visible class symbol.
45
+ */
46
+ name: string;
47
+ /**
48
+ * - Accepted construction form.
49
+ */
50
+ forms: ["constructor-call"];
51
+ /**
52
+ * - Class instance ownership.
53
+ */
54
+ ownership: "owned-reference";
55
+ /**
56
+ * - Constructor contract.
57
+ */
58
+ constructor: {
59
+ effects: string[];
60
+ failures: string[];
61
+ ownership: "acquired";
62
+ parameters: {
63
+ name: string;
64
+ type: string;
65
+ }[];
66
+ };
67
+ /**
68
+ * - Public instance methods.
69
+ */
70
+ methods: {
71
+ effects: string[];
72
+ failures: string[];
73
+ forms: ["receiver-call"];
74
+ name: string;
75
+ ownership: "borrowed" | "consumed";
76
+ parameters: {
77
+ name: string;
78
+ type: string;
79
+ }[];
80
+ returnType: string;
81
+ }[];
82
+ };
83
+ export type StdlibFacadePublicDeclaration = StdlibFacadeFunctionDeclaration | StdlibFacadeClassDeclaration;
84
+ export type StdlibFacadeRecord = {
85
+ /**
86
+ * - Facade-module dependencies.
87
+ */
88
+ dependencies: {
89
+ identity: string;
90
+ range: string;
91
+ }[];
92
+ /**
93
+ * - Versioned facade identity.
94
+ */
95
+ identity: string;
96
+ /**
97
+ * - Source language.
98
+ */
99
+ language: import("./semantic/types.js").SemanticLanguage;
100
+ /**
101
+ * - Exact source native identities.
102
+ */
103
+ nativeModules: ({
104
+ identity: string;
105
+ kind: "module";
106
+ symbols: string[];
107
+ } | {
108
+ forms: ("unqualified-call" | "receiver-call")[];
109
+ identity: string;
110
+ kind: "builtin";
111
+ symbols: string[];
112
+ })[];
113
+ /**
114
+ * - Public source surface.
115
+ */
116
+ publicDeclarations: StdlibFacadePublicDeclaration[];
117
+ /**
118
+ * - Canonical-only requirements.
119
+ */
120
+ requirements: {
121
+ module: string;
122
+ operations: string[];
123
+ range: string;
124
+ }[];
125
+ /**
126
+ * - Exact compatible source/runtime profile.
127
+ */
128
+ runtimeProfile: string;
129
+ /**
130
+ * - Executable compiler-owned source module.
131
+ */
132
+ source: {
133
+ content: string;
134
+ filename: string;
135
+ id: string;
136
+ };
137
+ /**
138
+ * - Exact facade version.
139
+ */
140
+ version: string;
141
+ /**
142
+ * - Native-selectable visibility.
143
+ */
144
+ visibility: "internal" | "public";
145
+ };
146
+ export type FacadeSourceNames = {
147
+ /**
148
+ * - Source filename extension.
149
+ */
150
+ extension: string;
151
+ /**
152
+ * - Public native stdlib module identity.
153
+ */
154
+ nativeModule: string;
155
+ /**
156
+ * - Public native symbol.
157
+ */
158
+ publicName: string;
159
+ /**
160
+ * - Unused-elimination fixture symbol.
161
+ */
162
+ unusedName: string;
163
+ /**
164
+ * - Unused-elimination fixture module.
165
+ */
166
+ unusedNativeModule: string;
167
+ /**
168
+ * - Public executable facade source.
169
+ */
170
+ probeSource: string;
171
+ /**
172
+ * - Internal canonical runner source.
173
+ */
174
+ runnerSource: string;
175
+ /**
176
+ * - Unused executable facade source.
177
+ */
178
+ unusedSource: string;
179
+ };
180
+ export type StdlibFacadeRegistry = {
181
+ /**
182
+ * - Stable immutable facade records.
183
+ */
184
+ facades: readonly StdlibFacadeRecord[];
185
+ /**
186
+ * - Exact native identity resolver.
187
+ */
188
+ resolveFacade: (language: string, nativeModule: string, symbol: string, range?: string) => StdlibFacadeRecord;
189
+ /**
190
+ * - Facade dependency resolver.
191
+ */
192
+ resolveIdentity: (identity: string, language: string, range?: string) => StdlibFacadeRecord;
193
+ /**
194
+ * - Exact native module resolver.
195
+ */
196
+ resolveModule: (language: string, nativeModule: string, range?: string) => StdlibFacadeRecord;
197
+ };
198
+ /**
199
+ * @typedef StdlibFacadeFunctionDeclaration
200
+ * @property {"function"} kind - Closed public declaration kind.
201
+ * @property {string} name - Exact source-visible symbol.
202
+ * @property {{name: string, type: string}[]} parameters - Ordered source signature.
203
+ * @property {string} returnType - Canonical result type.
204
+ * @property {string[]} effects - Closed public effects.
205
+ * @property {string[]} failures - Escaping canonical failure names.
206
+ * @property {("direct-call" | "unqualified-call" | "receiver-call")[]} forms - Accepted source call forms.
207
+ * @property {"not-applicable"} ownership - Initial scalar qualification ownership.
208
+ */
209
+ /**
210
+ * @typedef StdlibFacadeClassDeclaration
211
+ * @property {"class"} kind - Closed public declaration kind.
212
+ * @property {string} name - Exact source-visible class symbol.
213
+ * @property {["constructor-call"]} forms - Accepted construction form.
214
+ * @property {"owned-reference"} ownership - Class instance ownership.
215
+ * @property {{effects: string[], failures: string[], ownership: "acquired", parameters: {name: string, type: string}[]}} constructor - Constructor contract.
216
+ * @property {{effects: string[], failures: string[], forms: ["receiver-call"], name: string, ownership: "borrowed" | "consumed", parameters: {name: string, type: string}[], returnType: string}[]} methods - Public instance methods.
217
+ */
218
+ /** @typedef {StdlibFacadeFunctionDeclaration | StdlibFacadeClassDeclaration} StdlibFacadePublicDeclaration */
219
+ /**
220
+ * @typedef StdlibFacadeRecord
221
+ * @property {{identity: string, range: string}[]} dependencies - Facade-module dependencies.
222
+ * @property {string} identity - Versioned facade identity.
223
+ * @property {import("./semantic/types.js").SemanticLanguage} language - Source language.
224
+ * @property {({identity: string, kind: "module", symbols: string[]} | {forms: ("unqualified-call" | "receiver-call")[], identity: string, kind: "builtin", symbols: string[]})[]} nativeModules - Exact source native identities.
225
+ * @property {StdlibFacadePublicDeclaration[]} publicDeclarations - Public source surface.
226
+ * @property {{module: string, operations: string[], range: string}[]} requirements - Canonical-only requirements.
227
+ * @property {string} runtimeProfile - Exact compatible source/runtime profile.
228
+ * @property {{content: string, filename: string, id: string}} source - Executable compiler-owned source module.
229
+ * @property {string} version - Exact facade version.
230
+ * @property {"internal" | "public"} visibility - Native-selectable visibility.
231
+ */
232
+ /**
233
+ * @typedef FacadeSourceNames
234
+ * @property {string} extension - Source filename extension.
235
+ * @property {string} nativeModule - Public native stdlib module identity.
236
+ * @property {string} publicName - Public native symbol.
237
+ * @property {string} unusedName - Unused-elimination fixture symbol.
238
+ * @property {string} unusedNativeModule - Unused-elimination fixture module.
239
+ * @property {string} probeSource - Public executable facade source.
240
+ * @property {string} runnerSource - Internal canonical runner source.
241
+ * @property {string} unusedSource - Unused executable facade source.
242
+ */
243
+ /**
244
+ * @typedef StdlibFacadeRegistry
245
+ * @property {readonly StdlibFacadeRecord[]} facades - Stable immutable facade records.
246
+ * @property {(language: string, nativeModule: string, symbol: string, range?: string) => StdlibFacadeRecord} resolveFacade - Exact native identity resolver.
247
+ * @property {(identity: string, language: string, range?: string) => StdlibFacadeRecord} resolveIdentity - Facade dependency resolver.
248
+ * @property {(language: string, nativeModule: string, range?: string) => StdlibFacadeRecord} resolveModule - Exact native module resolver.
249
+ */
250
+ /**
251
+ * Creates a detached immutable source-language facade registry.
252
+ * @param {unknown} records - Optional facade definitions; built-in qualification definitions by default.
253
+ * @returns {Readonly<StdlibFacadeRegistry>} Validated facade registry.
254
+ */
255
+ export declare function createStdlibFacadeRegistry(records?: unknown): Readonly<StdlibFacadeRegistry>;
256
+ /**
257
+ * Lists all built-in public and internal facade modules in stable order.
258
+ * @returns {readonly StdlibFacadeRecord[]} Immutable facade definitions.
259
+ */
260
+ export declare function listStdlibFacades(): readonly StdlibFacadeRecord[];
261
+ /**
262
+ * Resolves one built-in facade from parser-proved native module and symbol identities.
263
+ * @param {string} language - Source language.
264
+ * @param {string} nativeModule - Exact native module identity.
265
+ * @param {string} symbol - Exact imported or qualified symbol.
266
+ * @param {string} [range] - Compatible facade version range.
267
+ * @returns {StdlibFacadeRecord} Immutable facade definition.
268
+ */
269
+ export declare function resolveStdlibFacade(language: string, nativeModule: string, symbol: string, range?: string): StdlibFacadeRecord;
270
+ /**
271
+ * Resolves a dependency-first, cycle-free facade module closure.
272
+ * @param {StdlibFacadeRecord[]} roots - Parser-selected facade roots.
273
+ * @param {Readonly<StdlibFacadeRegistry>} [registry] - Facade registry.
274
+ * @returns {StdlibFacadeRecord[]} Stable dependency-first closure.
275
+ */
276
+ export declare function resolveStdlibFacadeClosure(roots: StdlibFacadeRecord[], registry?: Readonly<StdlibFacadeRegistry>): StdlibFacadeRecord[];
277
+ /**
278
+ * Creates the detached, deterministic program descriptor for one selected facade closure.
279
+ * @param {import("./semantic/types.js").SemanticLanguage} language - Source language profile.
280
+ * @param {StdlibFacadeRecord[]} facades - Dependency-first selected facade records.
281
+ * @returns {import("./semantic/types.js").StdlibFacadeProgramDescriptor} Plain program descriptor.
282
+ */
283
+ export declare function stdlibFacadeProgramDescriptor(language: import("./semantic/types.js").SemanticLanguage, facades: StdlibFacadeRecord[]): import("./semantic/types.js").StdlibFacadeProgramDescriptor;
284
+ /**
285
+ * Derives compiler-owned semantic capability authority from selected facade requirements.
286
+ * The initial executable qualification corpus intentionally targets one canonical module.
287
+ * @param {StdlibFacadeRecord[]} records - Selected facade closure.
288
+ * @returns {{contract: {contractVersion: string, identity: string}, input: import("./semantic/types.js").CapabilityAuthorityInput} | {contracts: {contractVersion: string, identity: string}[], input: import("./semantic/types.js").CapabilityAuthorityInput} | null} Authority input.
289
+ */
290
+ export declare function facadeCapabilityAuthority(records: StdlibFacadeRecord[]): {
291
+ contract: {
292
+ contractVersion: string;
293
+ identity: string;
294
+ };
295
+ input: import("./semantic/types.js").CapabilityAuthorityInput;
296
+ } | {
297
+ contracts: {
298
+ contractVersion: string;
299
+ identity: string;
300
+ }[];
301
+ input: import("./semantic/types.js").CapabilityAuthorityInput;
302
+ } | null;
303
+ export declare const stdlibFacadeRegistry: Readonly<StdlibFacadeRegistry>;
304
+ //# sourceMappingURL=stdlib-facades.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stdlib-facades.d.ts","sourceRoot":"","sources":["../../src/stdlib-facades.js"],"names":[],"mappings":"AAgBG,YAAS,+BAA+B,GACxC;;;;IAAuB,IAAI,EAAhB,UAAU,CACrB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAA2C,UAAU,EAA1C;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,EAAE,CACzC;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAqB,OAAO,EAAjB,MAAM,EAAE,CACnB;;;;IAAqB,QAAQ,EAAlB,MAAM,EAAE,CACnB;;;;IAAqE,KAAK,EAA/D,CAAC,aAAa,GAAG,kBAAkB,GAAG,eAAe,CAAC,EAAE,CACnE;;;;IAA6B,SAAS,EAA3B,gBAAgB,CAC7B;CAAA,CAAA;AAEE,YAAS,4BAA4B,GACrC;;;;IAAoB,IAAI,EAAb,OAAO,CAClB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAiC,KAAK,EAA3B,CAAC,kBAAkB,CAAC,CAC/B;;;;IAA8B,SAAS,EAA5B,iBAAiB,CAC5B;;;;IAAuH,WAAW,EAAvH;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,EAAE,UAAU,CAAC;QAAC,UAAU,EAAE;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAC,EAAE,CAAA;KAAC,CACrH;;;;IAAkM,OAAO,EAA9L;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,CAAC,eAAe,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;QAAC,UAAU,EAAE;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAC,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAC,EAAE,CAClM;CAAA,CAAA;AACG,YAA0E,6BAA6B,GAA7F,+BAA+B,GAAG,4BAA4B,CAA+B;AAExG,YAAS,kBAAkB,GAC3B;;;;IAAgD,YAAY,EAAjD;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,EAAE,CAC9C;;;;IAAmB,QAAQ,EAAhB,MAAM,CACjB;;;;IAA2D,QAAQ,EAAxD,OAAO,qBAAqB,EAAE,gBAAgB,CACzD;;;;IAAgL,aAAa,EAAlL,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAC,GAAG;QAAC,KAAK,EAAE,CAAC,kBAAkB,GAAG,eAAe,CAAC,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAC,CAAC,EAAE,CAC9K;;;;IAA4C,kBAAkB,EAAnD,6BAA6B,EAAE,CAC1C;;;;IAAoE,YAAY,EAArE;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,EAAE,CAClE;;;;IAAmB,cAAc,EAAtB,MAAM,CACjB;;;;IAA4D,MAAM,EAAvD;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,CAC1D;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAAkC,UAAU,EAAjC,UAAU,GAAG,QAAQ,CAClC;CAAA,CAAA;AAEE,YAAS,iBAAiB,GAC1B;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAAmB,YAAY,EAApB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAmB,kBAAkB,EAA1B,MAAM,CACjB;;;;IAAmB,WAAW,EAAnB,MAAM,CACjB;;;;IAAmB,YAAY,EAApB,MAAM,CACjB;;;;IAAmB,YAAY,EAApB,MAAM,CACnB;CAAA,CAAA;AAEE,YAAS,oBAAoB,GAC7B;;;;IAA0C,OAAO,EAAtC,SAAS,kBAAkB,EAAE,CACxC;;;;IAA2G,aAAa,EAA7G,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,kBAAkB,CACzG;;;;IAAuF,eAAe,EAA3F,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,kBAAkB,CACrF;;;;IAA2F,aAAa,EAA7F,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,kBAAkB,CAC3F;CAAA,CAAA;AAnDD;;;;;;;;;;GAUG;AACH;;;;;;;;GAQG;AACH,8GAA8G;AAC9G;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;GAUG;AACH;;;;;;GAMG;AAEH;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,GAHvC,OAGgE,GAF9D,QAAQ,CAAC,oBAAoB,CAAC,CAkE1C;AAiCD;;;GAGG;AACH,wBAAgB,iBAAiB,IAFpB,SAAS,kBAAkB,EAAE,CAIzC;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EANjC,MAMiC,EAAE,YAAY,EAL/C,MAK+C,EAAE,MAAM,EAJvD,MAIuD,EAAE,KAAK,AAHtE,CACA,EADQ,MAG8D,GAF5D,kBAAkB,CAI9B;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAJrC,kBAAkB,EAImB,EAAE,QAAQ,AAHvD,CACA,EADQ,QAAQ,CAAC,oBAAoB,CAGyC,GAFpE,kBAAkB,EAAE,CA6BhC;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAJ3C,OAAO,qBAAqB,EAAE,gBAIa,EAAE,OAAO,EAHpD,kBAAkB,EAGkC,GAFlD,OAAO,qBAAqB,EAAE,6BAA6B,CAoBvE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAHtC,kBAAkB,EAGoB,GAFpC;IAAC,QAAQ,EAAE;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IAAC,KAAK,EAAE,OAAO,qBAAqB,EAAE,wBAAwB,CAAA;CAAC,GAAG;IAAC,SAAS,EAAE;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,qBAAqB,EAAE,wBAAwB,CAAA;CAAC,GAAG,IAAI,CAqFrQ;AAs2BD,eAAO,MAAM,oBAAoB,gCAA+B,CAAA"}