@proposit/proposit-core 0.8.9

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 (429) hide show
  1. package/README.md +1032 -0
  2. package/dist/cli/commands/analysis.d.ts +3 -0
  3. package/dist/cli/commands/analysis.d.ts.map +1 -0
  4. package/dist/cli/commands/analysis.js +504 -0
  5. package/dist/cli/commands/analysis.js.map +1 -0
  6. package/dist/cli/commands/arguments.d.ts +3 -0
  7. package/dist/cli/commands/arguments.d.ts.map +1 -0
  8. package/dist/cli/commands/arguments.js +187 -0
  9. package/dist/cli/commands/arguments.js.map +1 -0
  10. package/dist/cli/commands/claims.d.ts +3 -0
  11. package/dist/cli/commands/claims.d.ts.map +1 -0
  12. package/dist/cli/commands/claims.js +120 -0
  13. package/dist/cli/commands/claims.js.map +1 -0
  14. package/dist/cli/commands/diff.d.ts +3 -0
  15. package/dist/cli/commands/diff.d.ts.map +1 -0
  16. package/dist/cli/commands/diff.js +61 -0
  17. package/dist/cli/commands/diff.js.map +1 -0
  18. package/dist/cli/commands/expressions.d.ts +3 -0
  19. package/dist/cli/commands/expressions.d.ts.map +1 -0
  20. package/dist/cli/commands/expressions.js +344 -0
  21. package/dist/cli/commands/expressions.js.map +1 -0
  22. package/dist/cli/commands/graph.d.ts +13 -0
  23. package/dist/cli/commands/graph.d.ts.map +1 -0
  24. package/dist/cli/commands/graph.js +382 -0
  25. package/dist/cli/commands/graph.js.map +1 -0
  26. package/dist/cli/commands/meta.d.ts +3 -0
  27. package/dist/cli/commands/meta.d.ts.map +1 -0
  28. package/dist/cli/commands/meta.js +14 -0
  29. package/dist/cli/commands/meta.js.map +1 -0
  30. package/dist/cli/commands/parse.d.ts +3 -0
  31. package/dist/cli/commands/parse.d.ts.map +1 -0
  32. package/dist/cli/commands/parse.js +171 -0
  33. package/dist/cli/commands/parse.js.map +1 -0
  34. package/dist/cli/commands/premises.d.ts +3 -0
  35. package/dist/cli/commands/premises.d.ts.map +1 -0
  36. package/dist/cli/commands/premises.js +261 -0
  37. package/dist/cli/commands/premises.js.map +1 -0
  38. package/dist/cli/commands/render.d.ts +3 -0
  39. package/dist/cli/commands/render.d.ts.map +1 -0
  40. package/dist/cli/commands/render.js +109 -0
  41. package/dist/cli/commands/render.js.map +1 -0
  42. package/dist/cli/commands/repair.d.ts +3 -0
  43. package/dist/cli/commands/repair.d.ts.map +1 -0
  44. package/dist/cli/commands/repair.js +53 -0
  45. package/dist/cli/commands/repair.js.map +1 -0
  46. package/dist/cli/commands/roles.d.ts +3 -0
  47. package/dist/cli/commands/roles.d.ts.map +1 -0
  48. package/dist/cli/commands/roles.js +64 -0
  49. package/dist/cli/commands/roles.js.map +1 -0
  50. package/dist/cli/commands/sources.d.ts +3 -0
  51. package/dist/cli/commands/sources.d.ts.map +1 -0
  52. package/dist/cli/commands/sources.js +103 -0
  53. package/dist/cli/commands/sources.js.map +1 -0
  54. package/dist/cli/commands/validate.d.ts +3 -0
  55. package/dist/cli/commands/validate.d.ts.map +1 -0
  56. package/dist/cli/commands/validate.js +27 -0
  57. package/dist/cli/commands/validate.js.map +1 -0
  58. package/dist/cli/commands/variables.d.ts +3 -0
  59. package/dist/cli/commands/variables.d.ts.map +1 -0
  60. package/dist/cli/commands/variables.js +206 -0
  61. package/dist/cli/commands/variables.js.map +1 -0
  62. package/dist/cli/commands/version-show.d.ts +3 -0
  63. package/dist/cli/commands/version-show.d.ts.map +1 -0
  64. package/dist/cli/commands/version-show.js +31 -0
  65. package/dist/cli/commands/version-show.js.map +1 -0
  66. package/dist/cli/config.d.ts +8 -0
  67. package/dist/cli/config.d.ts.map +1 -0
  68. package/dist/cli/config.js +24 -0
  69. package/dist/cli/config.js.map +1 -0
  70. package/dist/cli/engine.d.ts +19 -0
  71. package/dist/cli/engine.d.ts.map +1 -0
  72. package/dist/cli/engine.js +173 -0
  73. package/dist/cli/engine.js.map +1 -0
  74. package/dist/cli/import.d.ts +22 -0
  75. package/dist/cli/import.d.ts.map +1 -0
  76. package/dist/cli/import.js +242 -0
  77. package/dist/cli/import.js.map +1 -0
  78. package/dist/cli/llm/index.d.ts +6 -0
  79. package/dist/cli/llm/index.d.ts.map +1 -0
  80. package/dist/cli/llm/index.js +26 -0
  81. package/dist/cli/llm/index.js.map +1 -0
  82. package/dist/cli/llm/openai.d.ts +4 -0
  83. package/dist/cli/llm/openai.d.ts.map +1 -0
  84. package/dist/cli/llm/openai.js +44 -0
  85. package/dist/cli/llm/openai.js.map +1 -0
  86. package/dist/cli/llm/types.d.ts +14 -0
  87. package/dist/cli/llm/types.d.ts.map +1 -0
  88. package/dist/cli/llm/types.js +2 -0
  89. package/dist/cli/llm/types.js.map +1 -0
  90. package/dist/cli/logging.d.ts +8 -0
  91. package/dist/cli/logging.d.ts.map +1 -0
  92. package/dist/cli/logging.js +23 -0
  93. package/dist/cli/logging.js.map +1 -0
  94. package/dist/cli/output/diff-renderer.d.ts +4 -0
  95. package/dist/cli/output/diff-renderer.d.ts.map +1 -0
  96. package/dist/cli/output/diff-renderer.js +89 -0
  97. package/dist/cli/output/diff-renderer.js.map +1 -0
  98. package/dist/cli/output.d.ts +6 -0
  99. package/dist/cli/output.d.ts.map +1 -0
  100. package/dist/cli/output.js +41 -0
  101. package/dist/cli/output.js.map +1 -0
  102. package/dist/cli/router.d.ts +14 -0
  103. package/dist/cli/router.d.ts.map +1 -0
  104. package/dist/cli/router.js +59 -0
  105. package/dist/cli/router.js.map +1 -0
  106. package/dist/cli/schemata.d.ts +74 -0
  107. package/dist/cli/schemata.d.ts.map +1 -0
  108. package/dist/cli/schemata.js +89 -0
  109. package/dist/cli/schemata.js.map +1 -0
  110. package/dist/cli/storage/analysis.d.ts +9 -0
  111. package/dist/cli/storage/analysis.d.ts.map +1 -0
  112. package/dist/cli/storage/analysis.js +108 -0
  113. package/dist/cli/storage/analysis.js.map +1 -0
  114. package/dist/cli/storage/arguments.d.ts +12 -0
  115. package/dist/cli/storage/arguments.d.ts.map +1 -0
  116. package/dist/cli/storage/arguments.js +80 -0
  117. package/dist/cli/storage/arguments.js.map +1 -0
  118. package/dist/cli/storage/libraries.d.ts +14 -0
  119. package/dist/cli/storage/libraries.d.ts.map +1 -0
  120. package/dist/cli/storage/libraries.js +80 -0
  121. package/dist/cli/storage/libraries.js.map +1 -0
  122. package/dist/cli/storage/premises.d.ts +9 -0
  123. package/dist/cli/storage/premises.d.ts.map +1 -0
  124. package/dist/cli/storage/premises.js +67 -0
  125. package/dist/cli/storage/premises.js.map +1 -0
  126. package/dist/cli/storage/roles.d.ts +4 -0
  127. package/dist/cli/storage/roles.d.ts.map +1 -0
  128. package/dist/cli/storage/roles.js +26 -0
  129. package/dist/cli/storage/roles.js.map +1 -0
  130. package/dist/cli/storage/variables.d.ts +4 -0
  131. package/dist/cli/storage/variables.d.ts.map +1 -0
  132. package/dist/cli/storage/variables.js +36 -0
  133. package/dist/cli/storage/variables.js.map +1 -0
  134. package/dist/cli.d.ts +3 -0
  135. package/dist/cli.d.ts.map +1 -0
  136. package/dist/cli.js +65 -0
  137. package/dist/cli.js.map +1 -0
  138. package/dist/extensions/basics/argument-parser.d.ts +12 -0
  139. package/dist/extensions/basics/argument-parser.d.ts.map +1 -0
  140. package/dist/extensions/basics/argument-parser.js +27 -0
  141. package/dist/extensions/basics/argument-parser.js.map +1 -0
  142. package/dist/extensions/basics/index.d.ts +4 -0
  143. package/dist/extensions/basics/index.d.ts.map +1 -0
  144. package/dist/extensions/basics/index.js +3 -0
  145. package/dist/extensions/basics/index.js.map +1 -0
  146. package/dist/extensions/basics/schemata.d.ts +35 -0
  147. package/dist/extensions/basics/schemata.d.ts.map +1 -0
  148. package/dist/extensions/basics/schemata.js +55 -0
  149. package/dist/extensions/basics/schemata.js.map +1 -0
  150. package/dist/extensions/ieee/formatting.d.ts +18 -0
  151. package/dist/extensions/ieee/formatting.d.ts.map +1 -0
  152. package/dist/extensions/ieee/formatting.js +57 -0
  153. package/dist/extensions/ieee/formatting.js.map +1 -0
  154. package/dist/extensions/ieee/index.d.ts +6 -0
  155. package/dist/extensions/ieee/index.d.ts.map +1 -0
  156. package/dist/extensions/ieee/index.js +6 -0
  157. package/dist/extensions/ieee/index.js.map +1 -0
  158. package/dist/extensions/ieee/references.d.ts +1379 -0
  159. package/dist/extensions/ieee/references.d.ts.map +1 -0
  160. package/dist/extensions/ieee/references.js +929 -0
  161. package/dist/extensions/ieee/references.js.map +1 -0
  162. package/dist/extensions/ieee/relaxed.d.ts +1371 -0
  163. package/dist/extensions/ieee/relaxed.d.ts.map +1 -0
  164. package/dist/extensions/ieee/relaxed.js +160 -0
  165. package/dist/extensions/ieee/relaxed.js.map +1 -0
  166. package/dist/extensions/ieee/segment-builder.d.ts +9 -0
  167. package/dist/extensions/ieee/segment-builder.d.ts.map +1 -0
  168. package/dist/extensions/ieee/segment-builder.js +98 -0
  169. package/dist/extensions/ieee/segment-builder.js.map +1 -0
  170. package/dist/extensions/ieee/segment-templates.d.ts +58 -0
  171. package/dist/extensions/ieee/segment-templates.d.ts.map +1 -0
  172. package/dist/extensions/ieee/segment-templates.js +1618 -0
  173. package/dist/extensions/ieee/segment-templates.js.map +1 -0
  174. package/dist/extensions/ieee/source.d.ts +434 -0
  175. package/dist/extensions/ieee/source.d.ts.map +1 -0
  176. package/dist/extensions/ieee/source.js +12 -0
  177. package/dist/extensions/ieee/source.js.map +1 -0
  178. package/dist/index.d.ts +10 -0
  179. package/dist/index.d.ts.map +1 -0
  180. package/dist/index.js +10 -0
  181. package/dist/index.js.map +1 -0
  182. package/dist/lib/consts.d.ts +21 -0
  183. package/dist/lib/consts.d.ts.map +1 -0
  184. package/dist/lib/consts.js +117 -0
  185. package/dist/lib/consts.js.map +1 -0
  186. package/dist/lib/core/argument-engine.d.ts +181 -0
  187. package/dist/lib/core/argument-engine.d.ts.map +1 -0
  188. package/dist/lib/core/argument-engine.js +1294 -0
  189. package/dist/lib/core/argument-engine.js.map +1 -0
  190. package/dist/lib/core/argument-library.d.ts +84 -0
  191. package/dist/lib/core/argument-library.d.ts.map +1 -0
  192. package/dist/lib/core/argument-library.js +122 -0
  193. package/dist/lib/core/argument-library.js.map +1 -0
  194. package/dist/lib/core/argument-validation.d.ts +74 -0
  195. package/dist/lib/core/argument-validation.d.ts.map +1 -0
  196. package/dist/lib/core/argument-validation.js +315 -0
  197. package/dist/lib/core/argument-validation.js.map +1 -0
  198. package/dist/lib/core/change-collector.d.ts +24 -0
  199. package/dist/lib/core/change-collector.d.ts.map +1 -0
  200. package/dist/lib/core/change-collector.js +63 -0
  201. package/dist/lib/core/change-collector.js.map +1 -0
  202. package/dist/lib/core/checksum.d.ts +15 -0
  203. package/dist/lib/core/checksum.d.ts.map +1 -0
  204. package/dist/lib/core/checksum.js +43 -0
  205. package/dist/lib/core/checksum.js.map +1 -0
  206. package/dist/lib/core/claim-library.d.ts +23 -0
  207. package/dist/lib/core/claim-library.d.ts.map +1 -0
  208. package/dist/lib/core/claim-library.js +21 -0
  209. package/dist/lib/core/claim-library.js.map +1 -0
  210. package/dist/lib/core/claim-source-library.d.ts +32 -0
  211. package/dist/lib/core/claim-source-library.d.ts.map +1 -0
  212. package/dist/lib/core/claim-source-library.js +193 -0
  213. package/dist/lib/core/claim-source-library.js.map +1 -0
  214. package/dist/lib/core/diff.d.ts +20 -0
  215. package/dist/lib/core/diff.d.ts.map +1 -0
  216. package/dist/lib/core/diff.js +260 -0
  217. package/dist/lib/core/diff.js.map +1 -0
  218. package/dist/lib/core/evaluation/argument-evaluation.d.ts +53 -0
  219. package/dist/lib/core/evaluation/argument-evaluation.d.ts.map +1 -0
  220. package/dist/lib/core/evaluation/argument-evaluation.js +535 -0
  221. package/dist/lib/core/evaluation/argument-evaluation.js.map +1 -0
  222. package/dist/lib/core/evaluation/grading.d.ts +28 -0
  223. package/dist/lib/core/evaluation/grading.d.ts.map +1 -0
  224. package/dist/lib/core/evaluation/grading.js +44 -0
  225. package/dist/lib/core/evaluation/grading.js.map +1 -0
  226. package/dist/lib/core/evaluation/kleene.d.ts +12 -0
  227. package/dist/lib/core/evaluation/kleene.d.ts.map +1 -0
  228. package/dist/lib/core/evaluation/kleene.js +29 -0
  229. package/dist/lib/core/evaluation/kleene.js.map +1 -0
  230. package/dist/lib/core/evaluation/validation.d.ts +10 -0
  231. package/dist/lib/core/evaluation/validation.d.ts.map +1 -0
  232. package/dist/lib/core/evaluation/validation.js +28 -0
  233. package/dist/lib/core/evaluation/validation.js.map +1 -0
  234. package/dist/lib/core/expression-manager.d.ts +278 -0
  235. package/dist/lib/core/expression-manager.d.ts.map +1 -0
  236. package/dist/lib/core/expression-manager.js +1622 -0
  237. package/dist/lib/core/expression-manager.js.map +1 -0
  238. package/dist/lib/core/fork-library.d.ts +26 -0
  239. package/dist/lib/core/fork-library.d.ts.map +1 -0
  240. package/dist/lib/core/fork-library.js +71 -0
  241. package/dist/lib/core/fork-library.js.map +1 -0
  242. package/dist/lib/core/fork-namespace.d.ts +32 -0
  243. package/dist/lib/core/fork-namespace.d.ts.map +1 -0
  244. package/dist/lib/core/fork-namespace.js +99 -0
  245. package/dist/lib/core/fork-namespace.js.map +1 -0
  246. package/dist/lib/core/fork.d.ts +30 -0
  247. package/dist/lib/core/fork.d.ts.map +1 -0
  248. package/dist/lib/core/fork.js +125 -0
  249. package/dist/lib/core/fork.js.map +1 -0
  250. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +366 -0
  251. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -0
  252. package/dist/lib/core/interfaces/argument-engine.interfaces.js +2 -0
  253. package/dist/lib/core/interfaces/argument-engine.interfaces.js.map +1 -0
  254. package/dist/lib/core/interfaces/index.d.ts +5 -0
  255. package/dist/lib/core/interfaces/index.d.ts.map +1 -0
  256. package/dist/lib/core/interfaces/index.js +2 -0
  257. package/dist/lib/core/interfaces/index.js.map +1 -0
  258. package/dist/lib/core/interfaces/library.interfaces.d.ts +347 -0
  259. package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -0
  260. package/dist/lib/core/interfaces/library.interfaces.js +2 -0
  261. package/dist/lib/core/interfaces/library.interfaces.js.map +1 -0
  262. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts +401 -0
  263. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts.map +1 -0
  264. package/dist/lib/core/interfaces/premise-engine.interfaces.js +2 -0
  265. package/dist/lib/core/interfaces/premise-engine.interfaces.js.map +1 -0
  266. package/dist/lib/core/interfaces/shared.interfaces.d.ts +28 -0
  267. package/dist/lib/core/interfaces/shared.interfaces.d.ts.map +1 -0
  268. package/dist/lib/core/interfaces/shared.interfaces.js +2 -0
  269. package/dist/lib/core/interfaces/shared.interfaces.js.map +1 -0
  270. package/dist/lib/core/invariant-violation-error.d.ts +10 -0
  271. package/dist/lib/core/invariant-violation-error.d.ts.map +1 -0
  272. package/dist/lib/core/invariant-violation-error.js +16 -0
  273. package/dist/lib/core/invariant-violation-error.js.map +1 -0
  274. package/dist/lib/core/parser/formula-gen.js +923 -0
  275. package/dist/lib/core/parser/formula.d.ts +24 -0
  276. package/dist/lib/core/parser/formula.d.ts.map +1 -0
  277. package/dist/lib/core/parser/formula.js +8 -0
  278. package/dist/lib/core/parser/formula.js.map +1 -0
  279. package/dist/lib/core/premise-engine.d.ts +122 -0
  280. package/dist/lib/core/premise-engine.d.ts.map +1 -0
  281. package/dist/lib/core/premise-engine.js +1362 -0
  282. package/dist/lib/core/premise-engine.js.map +1 -0
  283. package/dist/lib/core/proposit-core.d.ts +111 -0
  284. package/dist/lib/core/proposit-core.d.ts.map +1 -0
  285. package/dist/lib/core/proposit-core.js +365 -0
  286. package/dist/lib/core/proposit-core.js.map +1 -0
  287. package/dist/lib/core/relationships.d.ts +15 -0
  288. package/dist/lib/core/relationships.d.ts.map +1 -0
  289. package/dist/lib/core/relationships.js +319 -0
  290. package/dist/lib/core/relationships.js.map +1 -0
  291. package/dist/lib/core/source-library.d.ts +23 -0
  292. package/dist/lib/core/source-library.d.ts.map +1 -0
  293. package/dist/lib/core/source-library.js +21 -0
  294. package/dist/lib/core/source-library.js.map +1 -0
  295. package/dist/lib/core/variable-manager.d.ts +68 -0
  296. package/dist/lib/core/variable-manager.d.ts.map +1 -0
  297. package/dist/lib/core/variable-manager.js +200 -0
  298. package/dist/lib/core/variable-manager.js.map +1 -0
  299. package/dist/lib/core/versioned-library.d.ts +52 -0
  300. package/dist/lib/core/versioned-library.d.ts.map +1 -0
  301. package/dist/lib/core/versioned-library.js +192 -0
  302. package/dist/lib/core/versioned-library.js.map +1 -0
  303. package/dist/lib/index.d.ts +54 -0
  304. package/dist/lib/index.d.ts.map +1 -0
  305. package/dist/lib/index.js +39 -0
  306. package/dist/lib/index.js.map +1 -0
  307. package/dist/lib/parsing/argument-parser.d.ts +49 -0
  308. package/dist/lib/parsing/argument-parser.d.ts.map +1 -0
  309. package/dist/lib/parsing/argument-parser.js +403 -0
  310. package/dist/lib/parsing/argument-parser.js.map +1 -0
  311. package/dist/lib/parsing/clamp-max-lengths.d.ts +11 -0
  312. package/dist/lib/parsing/clamp-max-lengths.d.ts.map +1 -0
  313. package/dist/lib/parsing/clamp-max-lengths.js +56 -0
  314. package/dist/lib/parsing/clamp-max-lengths.js.map +1 -0
  315. package/dist/lib/parsing/index.d.ts +7 -0
  316. package/dist/lib/parsing/index.d.ts.map +1 -0
  317. package/dist/lib/parsing/index.js +4 -0
  318. package/dist/lib/parsing/index.js.map +1 -0
  319. package/dist/lib/parsing/prompt-builder.d.ts +11 -0
  320. package/dist/lib/parsing/prompt-builder.d.ts.map +1 -0
  321. package/dist/lib/parsing/prompt-builder.js +229 -0
  322. package/dist/lib/parsing/prompt-builder.js.map +1 -0
  323. package/dist/lib/parsing/schemata.d.ts +79 -0
  324. package/dist/lib/parsing/schemata.d.ts.map +1 -0
  325. package/dist/lib/parsing/schemata.js +92 -0
  326. package/dist/lib/parsing/schemata.js.map +1 -0
  327. package/dist/lib/parsing/types.d.ts +24 -0
  328. package/dist/lib/parsing/types.d.ts.map +1 -0
  329. package/dist/lib/parsing/types.js +2 -0
  330. package/dist/lib/parsing/types.js.map +1 -0
  331. package/dist/lib/schemata/analysis.d.ts +9 -0
  332. package/dist/lib/schemata/analysis.d.ts.map +1 -0
  333. package/dist/lib/schemata/analysis.js +13 -0
  334. package/dist/lib/schemata/analysis.js.map +1 -0
  335. package/dist/lib/schemata/argument.d.ts +14 -0
  336. package/dist/lib/schemata/argument.d.ts.map +1 -0
  337. package/dist/lib/schemata/argument.js +24 -0
  338. package/dist/lib/schemata/argument.js.map +1 -0
  339. package/dist/lib/schemata/claim.d.ts +9 -0
  340. package/dist/lib/schemata/claim.d.ts.map +1 -0
  341. package/dist/lib/schemata/claim.js +18 -0
  342. package/dist/lib/schemata/claim.js.map +1 -0
  343. package/dist/lib/schemata/fork.d.ts +76 -0
  344. package/dist/lib/schemata/fork.d.ts.map +1 -0
  345. package/dist/lib/schemata/fork.js +55 -0
  346. package/dist/lib/schemata/fork.js.map +1 -0
  347. package/dist/lib/schemata/import.d.ts +33 -0
  348. package/dist/lib/schemata/import.d.ts.map +1 -0
  349. package/dist/lib/schemata/import.js +18 -0
  350. package/dist/lib/schemata/import.js.map +1 -0
  351. package/dist/lib/schemata/index.d.ts +8 -0
  352. package/dist/lib/schemata/index.d.ts.map +1 -0
  353. package/dist/lib/schemata/index.js +8 -0
  354. package/dist/lib/schemata/index.js.map +1 -0
  355. package/dist/lib/schemata/propositional.d.ts +142 -0
  356. package/dist/lib/schemata/propositional.d.ts.map +1 -0
  357. package/dist/lib/schemata/propositional.js +120 -0
  358. package/dist/lib/schemata/propositional.js.map +1 -0
  359. package/dist/lib/schemata/shared.d.ts +41 -0
  360. package/dist/lib/schemata/shared.d.ts.map +1 -0
  361. package/dist/lib/schemata/shared.js +66 -0
  362. package/dist/lib/schemata/shared.js.map +1 -0
  363. package/dist/lib/schemata/source.d.ts +18 -0
  364. package/dist/lib/schemata/source.d.ts.map +1 -0
  365. package/dist/lib/schemata/source.js +35 -0
  366. package/dist/lib/schemata/source.js.map +1 -0
  367. package/dist/lib/types/checksum.d.ts +20 -0
  368. package/dist/lib/types/checksum.d.ts.map +1 -0
  369. package/dist/lib/types/checksum.js +2 -0
  370. package/dist/lib/types/checksum.js.map +1 -0
  371. package/dist/lib/types/diff.d.ts +60 -0
  372. package/dist/lib/types/diff.d.ts.map +1 -0
  373. package/dist/lib/types/diff.js +2 -0
  374. package/dist/lib/types/diff.js.map +1 -0
  375. package/dist/lib/types/evaluation.d.ts +164 -0
  376. package/dist/lib/types/evaluation.d.ts.map +1 -0
  377. package/dist/lib/types/evaluation.js +2 -0
  378. package/dist/lib/types/evaluation.js.map +1 -0
  379. package/dist/lib/types/fork.d.ts +25 -0
  380. package/dist/lib/types/fork.d.ts.map +1 -0
  381. package/dist/lib/types/fork.js +2 -0
  382. package/dist/lib/types/fork.js.map +1 -0
  383. package/dist/lib/types/grammar.d.ts +38 -0
  384. package/dist/lib/types/grammar.d.ts.map +1 -0
  385. package/dist/lib/types/grammar.js +11 -0
  386. package/dist/lib/types/grammar.js.map +1 -0
  387. package/dist/lib/types/mutation.d.ts +31 -0
  388. package/dist/lib/types/mutation.d.ts.map +1 -0
  389. package/dist/lib/types/mutation.js +2 -0
  390. package/dist/lib/types/mutation.js.map +1 -0
  391. package/dist/lib/types/reactive.d.ts +14 -0
  392. package/dist/lib/types/reactive.d.ts.map +1 -0
  393. package/dist/lib/types/reactive.js +2 -0
  394. package/dist/lib/types/reactive.js.map +1 -0
  395. package/dist/lib/types/relationships.d.ts +36 -0
  396. package/dist/lib/types/relationships.d.ts.map +1 -0
  397. package/dist/lib/types/relationships.js +2 -0
  398. package/dist/lib/types/relationships.js.map +1 -0
  399. package/dist/lib/types/validation.d.ts +47 -0
  400. package/dist/lib/types/validation.d.ts.map +1 -0
  401. package/dist/lib/types/validation.js +43 -0
  402. package/dist/lib/types/validation.js.map +1 -0
  403. package/dist/lib/utils/changeset.d.ts +124 -0
  404. package/dist/lib/utils/changeset.d.ts.map +1 -0
  405. package/dist/lib/utils/changeset.js +221 -0
  406. package/dist/lib/utils/changeset.js.map +1 -0
  407. package/dist/lib/utils/collections.d.ts +12 -0
  408. package/dist/lib/utils/collections.d.ts.map +1 -0
  409. package/dist/lib/utils/collections.js +24 -0
  410. package/dist/lib/utils/collections.js.map +1 -0
  411. package/dist/lib/utils/default-map.d.ts +17 -0
  412. package/dist/lib/utils/default-map.d.ts.map +1 -0
  413. package/dist/lib/utils/default-map.js +33 -0
  414. package/dist/lib/utils/default-map.js.map +1 -0
  415. package/dist/lib/utils/lookup.d.ts +47 -0
  416. package/dist/lib/utils/lookup.d.ts.map +1 -0
  417. package/dist/lib/utils/lookup.js +62 -0
  418. package/dist/lib/utils/lookup.js.map +1 -0
  419. package/dist/lib/utils/position.d.ts +12 -0
  420. package/dist/lib/utils/position.d.ts.map +1 -0
  421. package/dist/lib/utils/position.js +13 -0
  422. package/dist/lib/utils/position.js.map +1 -0
  423. package/package.json +82 -0
  424. package/skills/proposit-core/SKILL.md +35 -0
  425. package/skills/proposit-core/docs/api-usage.md +442 -0
  426. package/skills/proposit-core/docs/architecture.md +256 -0
  427. package/skills/proposit-core/docs/cli.md +304 -0
  428. package/skills/proposit-core/docs/testing.md +281 -0
  429. package/skills/proposit-core/docs/types-schemas.md +648 -0
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module @polintpro/proposit-core
3
+ *
4
+ * Core engine for building, evaluating, and diffing propositional logic
5
+ * arguments. Exports {@link ArgumentEngine} and {@link PremiseEngine} as
6
+ * the primary API, along with all type schemata and the {@link diffArguments}
7
+ * utility.
8
+ */
9
+ export * from "./lib/index.js";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,gBAAgB,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module @polintpro/proposit-core
3
+ *
4
+ * Core engine for building, evaluating, and diffing propositional logic
5
+ * arguments. Exports {@link ArgumentEngine} and {@link PremiseEngine} as
6
+ * the primary API, along with all type schemata and the {@link diffArguments}
7
+ * utility.
8
+ */
9
+ export * from "./lib/index.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,gBAAgB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import type { TCoreChecksumConfig } from "./types/checksum.js";
2
+ export declare const DEFAULT_CHECKSUM_CONFIG: Readonly<TCoreChecksumConfig>;
3
+ /**
4
+ * Ensures all fields of a `TCoreChecksumConfig` are `Set<string>` instances.
5
+ * After a JSON round-trip, Sets become arrays (custom replacer) or empty
6
+ * objects (native `JSON.stringify`); this converts both forms back to Sets.
7
+ * Returns `undefined` if the input is `undefined`. Leaves undefined fields as-is.
8
+ */
9
+ export declare function normalizeChecksumConfig(config: TCoreChecksumConfig | undefined): TCoreChecksumConfig | undefined;
10
+ /**
11
+ * Converts all `Set<string>` fields in a `TCoreChecksumConfig` to `string[]`
12
+ * so the config survives a plain `JSON.stringify` round-trip (which turns Sets
13
+ * into `{}`). Returns `undefined` when the input is `undefined`.
14
+ */
15
+ export declare function serializeChecksumConfig(config: TCoreChecksumConfig | undefined): Record<string, string[]> | undefined;
16
+ /**
17
+ * Creates a checksum config by merging additional fields into the defaults.
18
+ * Omitted fields in `additional` inherit defaults. Fields are unioned, not replaced.
19
+ */
20
+ export declare function createChecksumConfig(additional: TCoreChecksumConfig): TCoreChecksumConfig;
21
+ //# sourceMappingURL=consts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,mBAAmB,CAgCjE,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACxC,mBAAmB,GAAG,SAAS,CAwBjC;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACxC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAmBtC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAChC,UAAU,EAAE,mBAAmB,GAChC,mBAAmB,CAkBrB"}
@@ -0,0 +1,117 @@
1
+ export const DEFAULT_CHECKSUM_CONFIG = {
2
+ expressionFields: new Set([
3
+ "type",
4
+ "parentId",
5
+ "position",
6
+ "argumentId",
7
+ "argumentVersion",
8
+ "premiseId",
9
+ "variableId",
10
+ "operator",
11
+ ]),
12
+ variableFields: new Set([
13
+ "symbol",
14
+ "argumentId",
15
+ "argumentVersion",
16
+ "claimId",
17
+ "claimVersion",
18
+ "boundPremiseId",
19
+ "boundArgumentId",
20
+ "boundArgumentVersion",
21
+ ]),
22
+ premiseFields: new Set(["argumentId", "argumentVersion"]),
23
+ argumentFields: new Set(["version"]),
24
+ roleFields: new Set(["conclusionPremiseId"]),
25
+ claimFields: new Set(["version"]),
26
+ sourceFields: new Set(["version"]),
27
+ claimSourceAssociationFields: new Set([
28
+ "claimId",
29
+ "claimVersion",
30
+ "sourceId",
31
+ "sourceVersion",
32
+ ]),
33
+ };
34
+ /**
35
+ * Ensures all fields of a `TCoreChecksumConfig` are `Set<string>` instances.
36
+ * After a JSON round-trip, Sets become arrays (custom replacer) or empty
37
+ * objects (native `JSON.stringify`); this converts both forms back to Sets.
38
+ * Returns `undefined` if the input is `undefined`. Leaves undefined fields as-is.
39
+ */
40
+ export function normalizeChecksumConfig(config) {
41
+ if (config === undefined)
42
+ return undefined;
43
+ const keys = [
44
+ "expressionFields",
45
+ "variableFields",
46
+ "premiseFields",
47
+ "argumentFields",
48
+ "roleFields",
49
+ "claimFields",
50
+ "sourceFields",
51
+ "claimSourceAssociationFields",
52
+ ];
53
+ const result = {};
54
+ for (const key of keys) {
55
+ const value = config[key];
56
+ if (value === undefined)
57
+ continue;
58
+ result[key] =
59
+ value instanceof Set
60
+ ? value
61
+ : Array.isArray(value)
62
+ ? new Set(value)
63
+ : new Set();
64
+ }
65
+ return result;
66
+ }
67
+ /**
68
+ * Converts all `Set<string>` fields in a `TCoreChecksumConfig` to `string[]`
69
+ * so the config survives a plain `JSON.stringify` round-trip (which turns Sets
70
+ * into `{}`). Returns `undefined` when the input is `undefined`.
71
+ */
72
+ export function serializeChecksumConfig(config) {
73
+ if (config === undefined)
74
+ return undefined;
75
+ const keys = [
76
+ "expressionFields",
77
+ "variableFields",
78
+ "premiseFields",
79
+ "argumentFields",
80
+ "roleFields",
81
+ "claimFields",
82
+ "sourceFields",
83
+ "claimSourceAssociationFields",
84
+ ];
85
+ const result = {};
86
+ for (const key of keys) {
87
+ const value = config[key];
88
+ if (value === undefined)
89
+ continue;
90
+ result[key] = Array.from(value);
91
+ }
92
+ return result;
93
+ }
94
+ /**
95
+ * Creates a checksum config by merging additional fields into the defaults.
96
+ * Omitted fields in `additional` inherit defaults. Fields are unioned, not replaced.
97
+ */
98
+ export function createChecksumConfig(additional) {
99
+ const keys = [
100
+ "expressionFields",
101
+ "variableFields",
102
+ "premiseFields",
103
+ "argumentFields",
104
+ "roleFields",
105
+ "claimFields",
106
+ "sourceFields",
107
+ "claimSourceAssociationFields",
108
+ ];
109
+ const result = {};
110
+ for (const key of keys) {
111
+ const base = DEFAULT_CHECKSUM_CONFIG[key];
112
+ const extra = additional[key];
113
+ result[key] = extra ? new Set([...base, ...extra]) : new Set(base);
114
+ }
115
+ return result;
116
+ }
117
+ //# sourceMappingURL=consts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,181 @@
1
+ import { type TClaimBoundVariable, type TPremiseBoundVariable, type TCoreArgument, type TCoreClaim, type TCoreClaimSourceAssociation, type TCorePremise, type TCorePropositionalExpression, type TCorePropositionalVariable, type TOptionalChecksum, type TCoreSource } from "../schemata/index.js";
2
+ import type { TCoreArgumentEvaluationOptions, TCoreArgumentEvaluationResult, TCoreArgumentRoleState, TCoreExpressionAssignment, TCoreValidationResult, TCoreValidityCheckOptions, TCoreValidityCheckResult } from "../types/evaluation.js";
3
+ import type { TCoreChecksumConfig } from "../types/checksum.js";
4
+ import { type TGrammarConfig } from "../types/grammar.js";
5
+ import type { TCorePositionConfig } from "../utils/position.js";
6
+ import type { TInvariantValidationResult } from "../types/validation.js";
7
+ import type { TCoreMutationResult } from "../types/mutation.js";
8
+ import type { TReactiveSnapshot } from "../types/reactive.js";
9
+ import type { TExpressionInput } from "./expression-manager.js";
10
+ import { PremiseEngine } from "./premise-engine.js";
11
+ import type { TPremiseEngineSnapshot } from "./premise-engine.js";
12
+ import type { TVariableManagerSnapshot } from "./variable-manager.js";
13
+ import type { TPremiseCrud, TVariableManagement, TArgumentExpressionQueries, TArgumentRoleState, TArgumentEvaluation, TArgumentLifecycle, TArgumentIdentity, TDisplayable, THierarchicalChecksummable, TClaimLookup, TSourceLookup, TClaimSourceLookup } from "./interfaces/index.js";
14
+ /** Default ID generator using the Web Crypto API (Node.js 20+, all modern browsers). */
15
+ export declare const defaultGenerateId: () => string;
16
+ export type TLogicEngineOptions = {
17
+ checksumConfig?: TCoreChecksumConfig;
18
+ positionConfig?: TCorePositionConfig;
19
+ grammarConfig?: TGrammarConfig;
20
+ /** UUID generator for new entity IDs. Defaults to `globalThis.crypto.randomUUID()`. */
21
+ generateId?: () => string;
22
+ };
23
+ export type TArgumentEngineSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable> = {
24
+ argument: TOptionalChecksum<TArg>;
25
+ variables: TVariableManagerSnapshot<TVar>;
26
+ premises: TPremiseEngineSnapshot<TPremise, TExpr>[];
27
+ conclusionPremiseId?: string;
28
+ config?: TLogicEngineOptions;
29
+ };
30
+ /**
31
+ * Manages a propositional logic argument composed of premises, variable
32
+ * assignments, and logical roles (supporting premises and a conclusion).
33
+ *
34
+ * Provides premise CRUD, role management, evaluation of individual
35
+ * assignments, and exhaustive validity checking via truth-table enumeration.
36
+ */
37
+ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource, TClaim extends TCoreClaim = TCoreClaim, TAssoc extends TCoreClaimSourceAssociation = TCoreClaimSourceAssociation> implements TPremiseCrud<TArg, TPremise, TExpr, TVar>, TVariableManagement<TArg, TPremise, TExpr, TVar>, TArgumentExpressionQueries<TExpr>, TArgumentRoleState<TArg, TPremise, TExpr, TVar>, TArgumentEvaluation, TArgumentLifecycle<TArg, TPremise, TExpr, TVar>, TArgumentIdentity<TArg>, TDisplayable, THierarchicalChecksummable<"premises" | "variables"> {
38
+ private argument;
39
+ private premises;
40
+ private variables;
41
+ private claimLibrary;
42
+ private sourceLibrary;
43
+ private claimSourceLibrary;
44
+ private conclusionPremiseId;
45
+ private checksumConfig?;
46
+ private positionConfig?;
47
+ private grammarConfig?;
48
+ private generateId;
49
+ private restoringFromSnapshot;
50
+ private checksumDirty;
51
+ private cachedMetaChecksum;
52
+ private cachedDescendantChecksum;
53
+ private cachedCombinedChecksum;
54
+ private cachedPremisesCollectionChecksum;
55
+ private cachedVariablesCollectionChecksum;
56
+ private expressionIndex;
57
+ private listeners;
58
+ private reactiveDirty;
59
+ private cachedReactiveSnapshot;
60
+ constructor(argument: TOptionalChecksum<TArg>, claimLibrary: TClaimLookup<TClaim>, sourceLibrary: TSourceLookup<TSource>, claimSourceLibrary: TClaimSourceLookup<TAssoc>, options?: TLogicEngineOptions);
61
+ private createCircularityCheck;
62
+ private wouldCreateCycle;
63
+ private wireCircularityCheck;
64
+ private wireEmptyBoundPremiseCheck;
65
+ private generateUniqueSymbol;
66
+ subscribe: (listener: () => void) => (() => void);
67
+ protected notifySubscribers(): void;
68
+ private finalizeChanges;
69
+ private static readonly skipValidationResult;
70
+ private suppressPremiseValidation;
71
+ private restorePremiseValidation;
72
+ protected withValidation<T>(fn: () => T): T;
73
+ getSnapshot: () => TReactiveSnapshot<TArg, TPremise, TExpr, TVar>;
74
+ protected buildReactiveSnapshot(): TReactiveSnapshot<TArg, TPremise, TExpr, TVar>;
75
+ private buildVariablesRecord;
76
+ private buildAllPremisesRecord;
77
+ private buildPremiseRecord;
78
+ private markReactiveDirty;
79
+ getArgument(): TArg;
80
+ toDisplayString(): string;
81
+ createPremise(extras?: Record<string, unknown>, symbol?: string): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
82
+ createPremiseWithId(id: string, extras?: Record<string, unknown>, symbol?: string): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
83
+ removePremise(premiseId: string): TCoreMutationResult<TPremise | undefined, TExpr, TVar, TPremise, TArg>;
84
+ getPremise(premiseId: string): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
85
+ hasPremise(premiseId: string): boolean;
86
+ listPremiseIds(): string[];
87
+ listPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar>[];
88
+ addVariable(variable: TOptionalChecksum<TClaimBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
89
+ bindVariableToPremise(variable: TOptionalChecksum<TPremiseBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
90
+ /** Adds a premise-bound variable that references a premise in a different argument. */
91
+ bindVariableToExternalPremise(variable: TOptionalChecksum<TPremiseBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
92
+ /** Adds a premise-bound variable that references another argument's conclusion premise. */
93
+ bindVariableToArgument(variable: Omit<TOptionalChecksum<TPremiseBoundVariable>, "boundPremiseId"> & Record<string, unknown>, conclusionPremiseId: string): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
94
+ updateVariable(variableId: string, updates: Record<string, unknown>): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg>;
95
+ private removeVariableCore;
96
+ removeVariable(variableId: string): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg>;
97
+ getVariables(): TVar[];
98
+ getVariable(variableId: string): TVar | undefined;
99
+ hasVariable(variableId: string): boolean;
100
+ getVariableBySymbol(symbol: string): TVar | undefined;
101
+ buildVariableIndex<K>(keyFn: (v: TVar) => K): Map<K, TVar>;
102
+ getVariablesBoundToPremise(premiseId: string): TVar[];
103
+ getExpression(expressionId: string): TExpr | undefined;
104
+ hasExpression(expressionId: string): boolean;
105
+ getExpressionPremiseId(expressionId: string): string | undefined;
106
+ findPremiseByExpressionId(expressionId: string): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
107
+ getAllExpressions(): TExpr[];
108
+ getExpressionsByVariableId(variableId: string): TExpr[];
109
+ listRootExpressions(): TExpr[];
110
+ /**
111
+ * Normalizes expression trees across all premises. Collapses unjustified
112
+ * formulas, operators with 0/1 children, and inserts formula buffers where
113
+ * needed. Works regardless of `autoNormalize` setting.
114
+ */
115
+ normalizeAllExpressions(): TCoreMutationResult<void, TExpr, TVar, TPremise, TArg>;
116
+ getRoleState(): TCoreArgumentRoleState;
117
+ setConclusionPremise(premiseId: string): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg>;
118
+ clearConclusionPremise(): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg>;
119
+ getConclusionPremise(): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
120
+ listSupportingPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar>[];
121
+ snapshot(): TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>;
122
+ /** Creates a new ArgumentEngine from a previously captured snapshot. */
123
+ static fromSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource, TClaim extends TCoreClaim = TCoreClaim, TAssoc extends TCoreClaimSourceAssociation = TCoreClaimSourceAssociation>(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>, claimLibrary: TClaimLookup<TClaim>, sourceLibrary: TSourceLookup<TSource>, claimSourceLibrary: TClaimSourceLookup<TAssoc>, grammarConfig?: TGrammarConfig, checksumVerification?: "ignore" | "strict", generateId?: () => string): ArgumentEngine<TArg, TPremise, TExpr, TVar, TSource, TClaim, TAssoc>;
124
+ /**
125
+ * Creates a new ArgumentEngine from flat arrays of entities, as typically
126
+ * stored in a relational database. Expressions are grouped by their
127
+ * `premiseId` field and loaded in BFS order (roots first, then children
128
+ * of already-added nodes) to satisfy parent-existence requirements.
129
+ */
130
+ static fromData<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource, TClaim extends TCoreClaim = TCoreClaim, TAssoc extends TCoreClaimSourceAssociation = TCoreClaimSourceAssociation>(argument: TOptionalChecksum<TArg>, claimLibrary: TClaimLookup<TClaim>, sourceLibrary: TSourceLookup<TSource>, claimSourceLibrary: TClaimSourceLookup<TAssoc>, variables: TOptionalChecksum<TVar>[], premises: TOptionalChecksum<TPremise>[], expressions: TExpressionInput<TExpr>[], roles: TCoreArgumentRoleState, config?: TLogicEngineOptions, grammarConfig?: TGrammarConfig, checksumVerification?: "ignore" | "strict"): ArgumentEngine<TArg, TPremise, TExpr, TVar, TSource, TClaim, TAssoc>;
131
+ /**
132
+ * Verifies that all checksum fields in the snapshot match the recomputed
133
+ * checksums on the restored engine. Throws on the first mismatch.
134
+ */
135
+ private static verifySnapshotChecksums;
136
+ /**
137
+ * Verifies that all checksum fields in the input data match the recomputed
138
+ * checksums on the restored engine. Throws on the first mismatch.
139
+ */
140
+ private static verifyDataChecksums;
141
+ rollback(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>): void;
142
+ private rollbackInternal;
143
+ checksum(): string;
144
+ descendantChecksum(): string | null;
145
+ combinedChecksum(): string;
146
+ getCollectionChecksum(name: "premises" | "variables"): string | null;
147
+ flushChecksums(): void;
148
+ private markDirty;
149
+ /** Invalidate all premise checksums (e.g. after variable changes). */
150
+ private markAllPremisesDirty;
151
+ private attachVariableChecksum;
152
+ collectReferencedVariables(): {
153
+ variableIds: string[];
154
+ byId: Record<string, {
155
+ symbol: string;
156
+ premiseIds: string[];
157
+ }>;
158
+ bySymbol: Record<string, {
159
+ variableIds: string[];
160
+ premiseIds: string[];
161
+ }>;
162
+ };
163
+ private validateAfterPremiseMutation;
164
+ validate(): TInvariantValidationResult;
165
+ validateEvaluability(): TCoreValidationResult;
166
+ private asValidationContext;
167
+ private asEvaluationContext;
168
+ evaluate(assignment: TCoreExpressionAssignment, options?: TCoreArgumentEvaluationOptions): TCoreArgumentEvaluationResult;
169
+ checkValidity(options?: TCoreValidityCheckOptions): TCoreValidityCheckResult;
170
+ /**
171
+ * Override point for subclasses to prevent forking. When this returns
172
+ * `false`, `forkArgument` will throw.
173
+ */
174
+ canFork(): boolean;
175
+ /**
176
+ * Override point for subclasses to restrict cross-argument bindings.
177
+ * When this returns `false`, `bindVariableToExternalPremise` will throw.
178
+ */
179
+ protected canBind(_boundArgumentId: string, _boundArgumentVersion: number): boolean;
180
+ }
181
+ //# sourceMappingURL=argument-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument-engine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}