attention-manifest-protocol 0.4.0 → 0.4.2

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 (627) hide show
  1. package/CHANGELOG.md +250 -226
  2. package/CHANGELOG.zh-CN.md +63 -39
  3. package/README.md +22 -1
  4. package/README.zh-CN.md +22 -1
  5. package/docs/probes/calibration-imported.json +141 -141
  6. package/docs/probes/eval-recorded-replay.json +597 -597
  7. package/docs/probes/eval-replay.json +124 -124
  8. package/docs/probes/eval-summary.json +42 -42
  9. package/docs/probes/runtime-eval.json +4230 -4230
  10. package/lib/attention/attention.d.ts +153 -0
  11. package/lib/attention/attention.js +209 -0
  12. package/lib/attention/budget.d.ts +31 -0
  13. package/lib/attention/budget.js +55 -0
  14. package/lib/attention/cognition.d.ts +230 -0
  15. package/lib/attention/cognition.js +245 -0
  16. package/lib/attention/index.d.ts +8 -0
  17. package/lib/attention/index.js +7 -0
  18. package/lib/attention/interrupts.d.ts +97 -0
  19. package/lib/attention/interrupts.js +151 -0
  20. package/lib/attention/resource.d.ts +167 -0
  21. package/lib/attention/resource.js +148 -0
  22. package/lib/attention/social.d.ts +74 -0
  23. package/lib/attention/social.js +153 -0
  24. package/lib/attention/socialTypes.d.ts +102 -0
  25. package/lib/attention/socialTypes.js +1 -0
  26. package/lib/authz/authz.d.ts +75 -0
  27. package/lib/authz/authz.js +176 -0
  28. package/lib/authz/index.d.ts +1 -0
  29. package/lib/authz/index.js +1 -0
  30. package/lib/bayes/calibration.d.ts +67 -0
  31. package/lib/bayes/calibration.js +114 -0
  32. package/lib/bayes/calibrationRegistry.d.ts +39 -0
  33. package/lib/bayes/calibrationRegistry.js +61 -0
  34. package/lib/bayes/calibrationSelection.d.ts +40 -0
  35. package/lib/bayes/calibrationSelection.js +89 -0
  36. package/lib/bayes/engine.d.ts +163 -0
  37. package/lib/bayes/engine.js +354 -0
  38. package/lib/bayes/index.d.ts +6 -0
  39. package/lib/bayes/index.js +6 -0
  40. package/lib/bayes/reliability.d.ts +27 -0
  41. package/lib/bayes/reliability.js +38 -0
  42. package/lib/bayes/scopedPriors.d.ts +34 -0
  43. package/lib/bayes/scopedPriors.js +70 -0
  44. package/lib/boundary/frame.d.ts +63 -0
  45. package/lib/boundary/frame.js +239 -0
  46. package/lib/boundary/ids.d.ts +8 -0
  47. package/lib/boundary/ids.js +12 -0
  48. package/lib/boundary/index.d.ts +12 -0
  49. package/lib/boundary/index.js +8 -0
  50. package/lib/boundary/refTable.d.ts +49 -0
  51. package/lib/boundary/refTable.js +92 -0
  52. package/lib/boundary/toolCall.d.ts +33 -0
  53. package/lib/boundary/toolCall.js +173 -0
  54. package/lib/concept/concept.d.ts +67 -0
  55. package/lib/concept/concept.js +1 -0
  56. package/lib/concept/conceptBudget.d.ts +56 -0
  57. package/lib/concept/conceptBudget.js +281 -0
  58. package/lib/concept/conceptBudgetTypes.d.ts +74 -0
  59. package/lib/concept/conceptBudgetTypes.js +1 -0
  60. package/lib/concept/index.d.ts +3 -0
  61. package/lib/concept/index.js +3 -0
  62. package/lib/concurrency/idempotency.d.ts +16 -0
  63. package/lib/concurrency/idempotency.js +21 -0
  64. package/lib/concurrency/index.d.ts +5 -0
  65. package/lib/concurrency/index.js +5 -0
  66. package/lib/concurrency/mutex.d.ts +13 -0
  67. package/lib/concurrency/mutex.js +26 -0
  68. package/lib/concurrency/namedLocks.d.ts +7 -0
  69. package/lib/concurrency/namedLocks.js +31 -0
  70. package/lib/concurrency/retry.d.ts +23 -0
  71. package/lib/concurrency/retry.js +38 -0
  72. package/lib/concurrency/worker.d.ts +42 -0
  73. package/lib/concurrency/worker.js +67 -0
  74. package/lib/context/agentContext.d.ts +58 -0
  75. package/lib/context/agentContext.js +197 -0
  76. package/lib/context/ast.d.ts +98 -0
  77. package/lib/context/ast.js +414 -0
  78. package/lib/context/contentStore.d.ts +16 -0
  79. package/lib/context/contentStore.js +61 -0
  80. package/lib/context/context.d.ts +15 -0
  81. package/lib/context/context.js +39 -0
  82. package/lib/context/contextIndex.d.ts +40 -0
  83. package/lib/context/contextIndex.js +64 -0
  84. package/lib/context/document.d.ts +102 -0
  85. package/lib/context/document.js +22 -0
  86. package/lib/context/fileStorePath.d.ts +1 -0
  87. package/lib/context/fileStorePath.js +13 -0
  88. package/lib/context/index.d.ts +22 -0
  89. package/lib/context/index.js +11 -0
  90. package/lib/context/lifecycle.d.ts +91 -0
  91. package/lib/context/lifecycle.js +163 -0
  92. package/lib/context/projections.d.ts +20 -0
  93. package/lib/context/projections.js +127 -0
  94. package/lib/context/workspace.d.ts +111 -0
  95. package/lib/context/workspace.js +318 -0
  96. package/lib/context/workspaceProtocol.d.ts +30 -0
  97. package/lib/context/workspaceProtocol.js +49 -0
  98. package/lib/context/workspaceService.d.ts +63 -0
  99. package/lib/context/workspaceService.js +352 -0
  100. package/lib/cooperation/board.d.ts +47 -0
  101. package/lib/cooperation/board.js +66 -0
  102. package/lib/cooperation/collaboration.d.ts +55 -0
  103. package/lib/cooperation/collaboration.js +1 -0
  104. package/lib/cooperation/index.d.ts +6 -0
  105. package/lib/cooperation/index.js +6 -0
  106. package/lib/cooperation/merge.d.ts +69 -0
  107. package/lib/cooperation/merge.js +109 -0
  108. package/lib/cooperation/metrics.d.ts +39 -0
  109. package/lib/cooperation/metrics.js +17 -0
  110. package/lib/cooperation/session.d.ts +75 -0
  111. package/lib/cooperation/session.js +74 -0
  112. package/lib/cooperation/unified.d.ts +38 -0
  113. package/lib/cooperation/unified.js +40 -0
  114. package/lib/database/adapter/adapters.d.ts +24 -0
  115. package/lib/database/adapter/adapters.js +31 -0
  116. package/lib/database/adapter/index.d.ts +4 -0
  117. package/lib/database/adapter/index.js +4 -0
  118. package/lib/database/adapter/runtimeSink.d.ts +20 -0
  119. package/lib/database/adapter/runtimeSink.js +50 -0
  120. package/lib/database/adapter/sessionStore.d.ts +11 -0
  121. package/lib/database/adapter/sessionStore.js +23 -0
  122. package/lib/database/adapter/turnStore.d.ts +10 -0
  123. package/lib/database/adapter/turnStore.js +15 -0
  124. package/lib/database/entity/agent.d.ts +133 -0
  125. package/lib/database/entity/agent.js +61 -0
  126. package/lib/database/entity/entity.d.ts +715 -0
  127. package/lib/database/entity/entity.js +372 -0
  128. package/lib/database/entity/handle.d.ts +31 -0
  129. package/lib/database/entity/handle.js +53 -0
  130. package/lib/database/entity/index.d.ts +32 -0
  131. package/lib/database/entity/index.js +22 -0
  132. package/lib/database/entity/message.d.ts +27 -0
  133. package/lib/database/entity/message.js +52 -0
  134. package/lib/database/entity/meta.d.ts +11 -0
  135. package/lib/database/entity/meta.js +1 -0
  136. package/lib/database/entity/object.d.ts +23 -0
  137. package/lib/database/entity/object.js +24 -0
  138. package/lib/database/entity/outbox.d.ts +9 -0
  139. package/lib/database/entity/outbox.js +5 -0
  140. package/lib/database/entity/process.d.ts +30 -0
  141. package/lib/database/entity/process.js +40 -0
  142. package/lib/database/entity/registry.d.ts +81 -0
  143. package/lib/database/entity/registry.js +91 -0
  144. package/lib/database/entity/runtimeApproval.d.ts +23 -0
  145. package/lib/database/entity/runtimeApproval.js +5 -0
  146. package/lib/database/entity/runtimeSession.d.ts +7 -0
  147. package/lib/database/entity/runtimeSession.js +5 -0
  148. package/lib/database/entity/runtimeTurn.d.ts +9 -0
  149. package/lib/database/entity/runtimeTurn.js +5 -0
  150. package/lib/database/entity/thread.d.ts +35 -0
  151. package/lib/database/entity/thread.js +55 -0
  152. package/lib/database/entity/window.d.ts +39 -0
  153. package/lib/database/entity/window.js +56 -0
  154. package/lib/database/entity/worker.d.ts +42 -0
  155. package/lib/database/entity/worker.js +58 -0
  156. package/lib/database/index.d.ts +6 -0
  157. package/lib/database/index.js +6 -0
  158. package/lib/database/repository/addressSpaceRepository.d.ts +18 -0
  159. package/lib/database/repository/addressSpaceRepository.js +40 -0
  160. package/lib/database/repository/agentRepository.d.ts +41 -0
  161. package/lib/database/repository/agentRepository.js +398 -0
  162. package/lib/database/repository/base.d.ts +31 -0
  163. package/lib/database/repository/base.js +23 -0
  164. package/lib/database/repository/executionRepository.d.ts +64 -0
  165. package/lib/database/repository/executionRepository.js +379 -0
  166. package/lib/database/repository/handleRepository.d.ts +35 -0
  167. package/lib/database/repository/handleRepository.js +57 -0
  168. package/lib/database/repository/index.d.ts +20 -0
  169. package/lib/database/repository/index.js +17 -0
  170. package/lib/database/repository/messageRepository.d.ts +33 -0
  171. package/lib/database/repository/messageRepository.js +45 -0
  172. package/lib/database/repository/objectRepository.d.ts +43 -0
  173. package/lib/database/repository/objectRepository.js +60 -0
  174. package/lib/database/repository/outboxRepository.d.ts +15 -0
  175. package/lib/database/repository/outboxRepository.js +51 -0
  176. package/lib/database/repository/processRepository.d.ts +31 -0
  177. package/lib/database/repository/processRepository.js +48 -0
  178. package/lib/database/repository/registryRepository.d.ts +72 -0
  179. package/lib/database/repository/registryRepository.js +95 -0
  180. package/lib/database/repository/repository.d.ts +322 -0
  181. package/lib/database/repository/repository.js +332 -0
  182. package/lib/database/repository/runtimeApprovalRepository.d.ts +14 -0
  183. package/lib/database/repository/runtimeApprovalRepository.js +35 -0
  184. package/lib/database/repository/runtimeSessionRepository.d.ts +9 -0
  185. package/lib/database/repository/runtimeSessionRepository.js +21 -0
  186. package/lib/database/repository/runtimeTurnRepository.d.ts +10 -0
  187. package/lib/database/repository/runtimeTurnRepository.js +32 -0
  188. package/lib/database/repository/socialRepository.d.ts +22 -0
  189. package/lib/database/repository/socialRepository.js +155 -0
  190. package/lib/database/repository/threadRepository.d.ts +29 -0
  191. package/lib/database/repository/threadRepository.js +48 -0
  192. package/lib/database/repository/windowRepository.d.ts +46 -0
  193. package/lib/database/repository/windowRepository.js +68 -0
  194. package/lib/database/repository/workerRepository.d.ts +38 -0
  195. package/lib/database/repository/workerRepository.js +61 -0
  196. package/lib/database/service/database.d.ts +55 -0
  197. package/lib/database/service/database.js +77 -0
  198. package/lib/database/service/handleService.d.ts +20 -0
  199. package/lib/database/service/handleService.js +34 -0
  200. package/lib/database/service/index.d.ts +16 -0
  201. package/lib/database/service/index.js +11 -0
  202. package/lib/database/service/messageService.d.ts +26 -0
  203. package/lib/database/service/messageService.js +40 -0
  204. package/lib/database/service/objectService.d.ts +32 -0
  205. package/lib/database/service/objectService.js +31 -0
  206. package/lib/database/service/processService.d.ts +22 -0
  207. package/lib/database/service/processService.js +45 -0
  208. package/lib/database/service/registryServices.d.ts +43 -0
  209. package/lib/database/service/registryServices.js +60 -0
  210. package/lib/database/service/service.d.ts +131 -0
  211. package/lib/database/service/service.js +153 -0
  212. package/lib/database/service/stepService.d.ts +23 -0
  213. package/lib/database/service/stepService.js +35 -0
  214. package/lib/database/service/threadService.d.ts +23 -0
  215. package/lib/database/service/threadService.js +48 -0
  216. package/lib/database/service/windowService.d.ts +15 -0
  217. package/lib/database/service/windowService.js +22 -0
  218. package/lib/database/service/workerService.d.ts +28 -0
  219. package/lib/database/service/workerService.js +34 -0
  220. package/lib/database/sql/index.d.ts +3 -0
  221. package/lib/database/sql/index.js +2 -0
  222. package/lib/database/sql/schema.d.ts +5 -0
  223. package/lib/database/sql/schema.js +416 -0
  224. package/lib/database/sql/sql.d.ts +290 -0
  225. package/lib/database/sql/sql.js +430 -0
  226. package/lib/database/store/database.d.ts +75 -0
  227. package/lib/database/store/database.js +143 -0
  228. package/lib/database/store/index.d.ts +3 -0
  229. package/lib/database/store/index.js +2 -0
  230. package/lib/database/store/store.d.ts +145 -0
  231. package/lib/database/store/store.js +192 -0
  232. package/lib/delegate/index.d.ts +2 -0
  233. package/lib/delegate/index.js +2 -0
  234. package/lib/delegate/team.d.ts +92 -0
  235. package/lib/delegate/team.js +200 -0
  236. package/lib/delegate/teamTypes.d.ts +43 -0
  237. package/lib/delegate/teamTypes.js +1 -0
  238. package/lib/diagnosis/checklist.d.ts +16 -0
  239. package/lib/diagnosis/checklist.js +61 -0
  240. package/lib/diagnosis/context.d.ts +19 -0
  241. package/lib/diagnosis/context.js +79 -0
  242. package/lib/diagnosis/frame.d.ts +34 -0
  243. package/lib/diagnosis/frame.js +230 -0
  244. package/lib/diagnosis/index.d.ts +5 -0
  245. package/lib/diagnosis/index.js +5 -0
  246. package/lib/diagnosis/router.d.ts +22 -0
  247. package/lib/diagnosis/router.js +47 -0
  248. package/lib/diagnosis/types.d.ts +78 -0
  249. package/lib/diagnosis/types.js +2 -0
  250. package/lib/error/agentError.d.ts +9 -0
  251. package/lib/error/agentError.js +13 -0
  252. package/lib/error/ampError.d.ts +14 -0
  253. package/lib/error/ampError.js +19 -0
  254. package/lib/error/authzError.d.ts +10 -0
  255. package/lib/error/authzError.js +11 -0
  256. package/lib/error/boundaryRejection.d.ts +16 -0
  257. package/lib/error/boundaryRejection.js +14 -0
  258. package/lib/error/index.d.ts +7 -0
  259. package/lib/error/index.js +7 -0
  260. package/lib/error/kernelError.d.ts +11 -0
  261. package/lib/error/kernelError.js +12 -0
  262. package/lib/error/mailboxError.d.ts +5 -0
  263. package/lib/error/mailboxError.js +6 -0
  264. package/lib/error/windowError.d.ts +8 -0
  265. package/lib/error/windowError.js +9 -0
  266. package/lib/evaluation/agreement.d.ts +22 -0
  267. package/lib/evaluation/agreement.js +82 -0
  268. package/lib/evaluation/index.d.ts +2 -0
  269. package/lib/evaluation/index.js +2 -0
  270. package/lib/evaluation/labels.d.ts +56 -0
  271. package/lib/evaluation/labels.js +206 -0
  272. package/lib/evidence/evidenceGraph.d.ts +37 -0
  273. package/lib/evidence/evidenceGraph.js +165 -0
  274. package/lib/evidence/index.d.ts +4 -0
  275. package/lib/evidence/index.js +2 -0
  276. package/lib/evidence/revalidation.d.ts +70 -0
  277. package/lib/evidence/revalidation.js +146 -0
  278. package/lib/execution/exec.d.ts +151 -0
  279. package/lib/execution/exec.js +282 -0
  280. package/lib/execution/handles.d.ts +25 -0
  281. package/lib/execution/handles.js +45 -0
  282. package/lib/execution/index.d.ts +3 -0
  283. package/lib/execution/index.js +3 -0
  284. package/lib/execution/pin.d.ts +60 -0
  285. package/lib/execution/pin.js +103 -0
  286. package/lib/frame/frame.d.ts +61 -0
  287. package/lib/frame/frame.js +1 -0
  288. package/lib/frame/index.d.ts +1 -0
  289. package/lib/frame/index.js +1 -0
  290. package/lib/goal/goal.d.ts +19 -0
  291. package/lib/goal/goal.js +21 -0
  292. package/lib/goal/index.d.ts +2 -0
  293. package/lib/goal/index.js +1 -0
  294. package/lib/goal/plan.d.ts +125 -0
  295. package/lib/goal/plan.js +60 -0
  296. package/lib/governance/attentionManifest.d.ts +279 -0
  297. package/lib/governance/attentionManifest.js +467 -0
  298. package/lib/governance/audit.d.ts +123 -0
  299. package/lib/governance/audit.js +263 -0
  300. package/lib/governance/budget.d.ts +219 -0
  301. package/lib/governance/budget.js +424 -0
  302. package/lib/governance/context.d.ts +159 -0
  303. package/lib/governance/context.js +229 -0
  304. package/lib/governance/control.d.ts +65 -0
  305. package/lib/governance/control.js +89 -0
  306. package/lib/governance/cooperation.d.ts +163 -0
  307. package/lib/governance/cooperation.js +350 -0
  308. package/lib/governance/credential.d.ts +117 -0
  309. package/lib/governance/credential.js +229 -0
  310. package/lib/governance/httpServer.d.ts +18 -0
  311. package/lib/governance/httpServer.js +74 -0
  312. package/lib/governance/index.d.ts +32 -0
  313. package/lib/governance/index.js +32 -0
  314. package/lib/governance/legal.d.ts +222 -0
  315. package/lib/governance/legal.js +371 -0
  316. package/lib/governance/matrix.d.ts +170 -0
  317. package/lib/governance/matrix.js +365 -0
  318. package/lib/governance/perspectives.d.ts +98 -0
  319. package/lib/governance/perspectives.js +340 -0
  320. package/lib/governance/signing.d.ts +131 -0
  321. package/lib/governance/signing.js +241 -0
  322. package/lib/governance/store.d.ts +33 -0
  323. package/lib/governance/store.js +89 -0
  324. package/lib/governance/switching.d.ts +183 -0
  325. package/lib/governance/switching.js +257 -0
  326. package/lib/governance/toolPolicy.d.ts +37 -0
  327. package/lib/governance/toolPolicy.js +42 -0
  328. package/lib/governance/transport.d.ts +76 -0
  329. package/lib/governance/transport.js +124 -0
  330. package/lib/governance/types.d.ts +218 -0
  331. package/lib/governance/types.js +72 -0
  332. package/lib/governance/workflow.d.ts +174 -0
  333. package/lib/governance/workflow.js +612 -0
  334. package/lib/index.d.ts +11 -0
  335. package/lib/index.js +11 -0
  336. package/lib/interaction/index.d.ts +1 -0
  337. package/lib/interaction/index.js +1 -0
  338. package/lib/interaction/interaction.d.ts +83 -0
  339. package/lib/interaction/interaction.js +256 -0
  340. package/lib/ipc/index.d.ts +4 -0
  341. package/lib/ipc/index.js +3 -0
  342. package/lib/ipc/mailbox.d.ts +37 -0
  343. package/lib/ipc/mailbox.js +77 -0
  344. package/lib/ipc/memorySocialStore.d.ts +14 -0
  345. package/lib/ipc/memorySocialStore.js +83 -0
  346. package/lib/ipc/social.d.ts +80 -0
  347. package/lib/ipc/social.js +1 -0
  348. package/lib/kernel/index.d.ts +2 -0
  349. package/lib/kernel/index.js +1 -0
  350. package/lib/kernel/scheduler.d.ts +195 -0
  351. package/lib/kernel/scheduler.js +334 -0
  352. package/lib/ledger/checkpoint.d.ts +116 -0
  353. package/lib/ledger/checkpoint.js +223 -0
  354. package/lib/ledger/index.d.ts +4 -0
  355. package/lib/ledger/index.js +4 -0
  356. package/lib/ledger/ledger.d.ts +21 -0
  357. package/lib/ledger/ledger.js +23 -0
  358. package/lib/ledger/persistence.d.ts +46 -0
  359. package/lib/ledger/persistence.js +106 -0
  360. package/lib/ledger/share.d.ts +29 -0
  361. package/lib/ledger/share.js +39 -0
  362. package/lib/lock/index.d.ts +2 -0
  363. package/lib/lock/index.js +1 -0
  364. package/lib/lock/lease.d.ts +23 -0
  365. package/lib/lock/lease.js +42 -0
  366. package/lib/manifest/agentCard.d.ts +35 -0
  367. package/lib/manifest/agentCard.js +38 -0
  368. package/lib/manifest/cardSign.d.ts +25 -0
  369. package/lib/manifest/cardSign.js +70 -0
  370. package/lib/manifest/federation.d.ts +64 -0
  371. package/lib/manifest/federation.js +187 -0
  372. package/lib/manifest/federationTypes.d.ts +51 -0
  373. package/lib/manifest/federationTypes.js +1 -0
  374. package/lib/manifest/index.d.ts +8 -0
  375. package/lib/manifest/index.js +8 -0
  376. package/lib/manifest/keys.d.ts +221 -0
  377. package/lib/manifest/keys.js +484 -0
  378. package/lib/manifest/manifest.d.ts +102 -0
  379. package/lib/manifest/manifest.js +1 -0
  380. package/lib/manifest/sign.d.ts +38 -0
  381. package/lib/manifest/sign.js +90 -0
  382. package/lib/manifest/trust.d.ts +54 -0
  383. package/lib/manifest/trust.js +87 -0
  384. package/lib/mission/index.d.ts +2 -0
  385. package/lib/mission/index.js +1 -0
  386. package/lib/mission/missionQueue.d.ts +19 -0
  387. package/lib/mission/missionQueue.js +62 -0
  388. package/lib/module/index.d.ts +9 -0
  389. package/lib/module/index.js +9 -0
  390. package/lib/module/llm/deepseek.d.ts +43 -0
  391. package/lib/module/llm/deepseek.js +162 -0
  392. package/lib/module/llm/llm.d.ts +64 -0
  393. package/lib/module/llm/llm.js +16 -0
  394. package/lib/module/mcp/client.d.ts +32 -0
  395. package/lib/module/mcp/client.js +84 -0
  396. package/lib/module/mcp/http.d.ts +32 -0
  397. package/lib/module/mcp/http.js +83 -0
  398. package/lib/module/mcp/protocol.d.ts +62 -0
  399. package/lib/module/mcp/protocol.js +20 -0
  400. package/lib/module/mcp/server.d.ts +22 -0
  401. package/lib/module/mcp/server.js +138 -0
  402. package/lib/module/mcp/transport.d.ts +19 -0
  403. package/lib/module/mcp/transport.js +16 -0
  404. package/lib/module/mcp/workspaceServer.d.ts +20 -0
  405. package/lib/module/mcp/workspaceServer.js +90 -0
  406. package/lib/module/sandbox/sandbox.d.ts +24 -0
  407. package/lib/module/sandbox/sandbox.js +5 -0
  408. package/lib/module/tool/mcpExecutor.d.ts +18 -0
  409. package/lib/module/tool/mcpExecutor.js +41 -0
  410. package/lib/module/tool/policy.d.ts +30 -0
  411. package/lib/module/tool/policy.js +23 -0
  412. package/lib/module/tool/redact.d.ts +9 -0
  413. package/lib/module/tool/redact.js +19 -0
  414. package/lib/module/tool/tool.d.ts +26 -0
  415. package/lib/module/tool/tool.js +24 -0
  416. package/lib/module/tool/workspaceExecutor.d.ts +12 -0
  417. package/lib/module/tool/workspaceExecutor.js +25 -0
  418. package/lib/policy/guard.d.ts +115 -0
  419. package/lib/policy/guard.js +154 -0
  420. package/lib/policy/index.d.ts +2 -0
  421. package/lib/policy/index.js +2 -0
  422. package/lib/policy/policy.d.ts +249 -0
  423. package/lib/policy/policy.js +364 -0
  424. package/lib/process/agent.d.ts +295 -0
  425. package/lib/process/agent.js +1 -0
  426. package/lib/process/agentService.d.ts +87 -0
  427. package/lib/process/agentService.js +128 -0
  428. package/lib/process/agentStore.d.ts +35 -0
  429. package/lib/process/agentStore.js +328 -0
  430. package/lib/process/executionStore.d.ts +79 -0
  431. package/lib/process/executionStore.js +71 -0
  432. package/lib/process/index.d.ts +5 -0
  433. package/lib/process/index.js +5 -0
  434. package/lib/process/process.d.ts +120 -0
  435. package/lib/process/process.js +111 -0
  436. package/lib/process/transitions.d.ts +11 -0
  437. package/lib/process/transitions.js +8 -0
  438. package/lib/progress/index.d.ts +2 -0
  439. package/lib/progress/index.js +1 -0
  440. package/lib/progress/progress.d.ts +26 -0
  441. package/lib/progress/progress.js +42 -0
  442. package/lib/protocol/a2a.d.ts +51 -0
  443. package/lib/protocol/a2a.js +79 -0
  444. package/lib/protocol/channel.d.ts +25 -0
  445. package/lib/protocol/channel.js +27 -0
  446. package/lib/protocol/envelope.d.ts +180 -0
  447. package/lib/protocol/envelope.js +495 -0
  448. package/lib/protocol/httpChannel.d.ts +33 -0
  449. package/lib/protocol/httpChannel.js +59 -0
  450. package/lib/protocol/index.d.ts +6 -0
  451. package/lib/protocol/index.js +6 -0
  452. package/lib/protocol/protocol.d.ts +120 -0
  453. package/lib/protocol/protocol.js +1 -0
  454. package/lib/protocol/wire.d.ts +12 -0
  455. package/lib/protocol/wire.js +55 -0
  456. package/lib/receipt/index.d.ts +1 -0
  457. package/lib/receipt/index.js +1 -0
  458. package/lib/receipt/receipt.d.ts +43 -0
  459. package/lib/receipt/receipt.js +1 -0
  460. package/lib/registry/content.d.ts +10 -0
  461. package/lib/registry/content.js +58 -0
  462. package/lib/registry/index.d.ts +4 -0
  463. package/lib/registry/index.js +2 -0
  464. package/lib/registry/registry.d.ts +109 -0
  465. package/lib/registry/registry.js +299 -0
  466. package/lib/runtime/action.d.ts +46 -0
  467. package/lib/runtime/action.js +39 -0
  468. package/lib/runtime/behavior.d.ts +110 -0
  469. package/lib/runtime/behavior.js +179 -0
  470. package/lib/runtime/behaviorTuning.d.ts +59 -0
  471. package/lib/runtime/behaviorTuning.js +95 -0
  472. package/lib/runtime/cognitiveRuntime.d.ts +189 -0
  473. package/lib/runtime/cognitiveRuntime.js +490 -0
  474. package/lib/runtime/escalation.d.ts +22 -0
  475. package/lib/runtime/escalation.js +15 -0
  476. package/lib/runtime/governedTask.d.ts +57 -0
  477. package/lib/runtime/governedTask.js +150 -0
  478. package/lib/runtime/index.d.ts +15 -0
  479. package/lib/runtime/index.js +15 -0
  480. package/lib/runtime/kernelRuntime.d.ts +33 -0
  481. package/lib/runtime/kernelRuntime.js +105 -0
  482. package/lib/runtime/operation.d.ts +30 -0
  483. package/lib/runtime/operation.js +1 -0
  484. package/lib/runtime/replay.d.ts +24 -0
  485. package/lib/runtime/replay.js +38 -0
  486. package/lib/runtime/routing.d.ts +12 -0
  487. package/lib/runtime/routing.js +44 -0
  488. package/lib/runtime/safety.d.ts +15 -0
  489. package/lib/runtime/safety.js +28 -0
  490. package/lib/runtime/session.d.ts +147 -0
  491. package/lib/runtime/session.js +214 -0
  492. package/lib/runtime/sessionStore.d.ts +24 -0
  493. package/lib/runtime/sessionStore.js +20 -0
  494. package/lib/runtime/telemetry.d.ts +24 -0
  495. package/lib/runtime/telemetry.js +33 -0
  496. package/lib/runtime/turnStore.d.ts +16 -0
  497. package/lib/runtime/turnStore.js +15 -0
  498. package/lib/scenario/index.d.ts +1 -0
  499. package/lib/scenario/index.js +1 -0
  500. package/lib/scenario/scenario.d.ts +52 -0
  501. package/lib/scenario/scenario.js +210 -0
  502. package/lib/semantic/canonical.d.ts +6 -0
  503. package/lib/semantic/canonical.js +22 -0
  504. package/lib/semantic/index.d.ts +2 -0
  505. package/lib/semantic/index.js +2 -0
  506. package/lib/semantic/sha256.d.ts +1 -0
  507. package/lib/semantic/sha256.js +66 -0
  508. package/lib/storage/appendLog.d.ts +145 -0
  509. package/lib/storage/appendLog.js +299 -0
  510. package/lib/storage/fileAppendSink.d.ts +7 -0
  511. package/lib/storage/fileAppendSink.js +34 -0
  512. package/lib/storage/index.d.ts +2 -0
  513. package/lib/storage/index.js +2 -0
  514. package/lib/store/bindCache.d.ts +9 -0
  515. package/lib/store/bindCache.js +18 -0
  516. package/lib/store/cache.d.ts +48 -0
  517. package/lib/store/cache.js +162 -0
  518. package/lib/store/context.d.ts +10 -0
  519. package/lib/store/context.js +27 -0
  520. package/lib/store/handleStore.d.ts +9 -0
  521. package/lib/store/handleStore.js +25 -0
  522. package/lib/store/index.d.ts +9 -0
  523. package/lib/store/index.js +8 -0
  524. package/lib/store/messageStore.d.ts +9 -0
  525. package/lib/store/messageStore.js +25 -0
  526. package/lib/store/objectStore.d.ts +9 -0
  527. package/lib/store/objectStore.js +25 -0
  528. package/lib/store/processStore.d.ts +9 -0
  529. package/lib/store/processStore.js +25 -0
  530. package/lib/store/threadStore.d.ts +9 -0
  531. package/lib/store/threadStore.js +25 -0
  532. package/lib/store/windowStore.d.ts +9 -0
  533. package/lib/store/windowStore.js +25 -0
  534. package/lib/structure/abstractSyntaxTree.d.ts +181 -0
  535. package/lib/structure/abstractSyntaxTree.js +400 -0
  536. package/lib/structure/avlTree.d.ts +125 -0
  537. package/lib/structure/avlTree.js +369 -0
  538. package/lib/structure/binarySearchTree.d.ts +125 -0
  539. package/lib/structure/binarySearchTree.js +306 -0
  540. package/lib/structure/binaryTree.d.ts +174 -0
  541. package/lib/structure/binaryTree.js +495 -0
  542. package/lib/structure/bloomFilter.d.ts +126 -0
  543. package/lib/structure/bloomFilter.js +177 -0
  544. package/lib/structure/compare.d.ts +55 -0
  545. package/lib/structure/compare.js +96 -0
  546. package/lib/structure/cuckooFilter.d.ts +149 -0
  547. package/lib/structure/cuckooFilter.js +267 -0
  548. package/lib/structure/deque.d.ts +117 -0
  549. package/lib/structure/deque.js +205 -0
  550. package/lib/structure/filterKey.d.ts +19 -0
  551. package/lib/structure/filterKey.js +28 -0
  552. package/lib/structure/hash.d.ts +129 -0
  553. package/lib/structure/hash.js +241 -0
  554. package/lib/structure/heap.d.ts +152 -0
  555. package/lib/structure/heap.js +227 -0
  556. package/lib/structure/index.d.ts +20 -0
  557. package/lib/structure/index.js +20 -0
  558. package/lib/structure/iterator.d.ts +6 -0
  559. package/lib/structure/iterator.js +16 -0
  560. package/lib/structure/lru.d.ts +235 -0
  561. package/lib/structure/lru.js +524 -0
  562. package/lib/structure/ordered.d.ts +89 -0
  563. package/lib/structure/ordered.js +336 -0
  564. package/lib/structure/priority.d.ts +499 -0
  565. package/lib/structure/priority.js +756 -0
  566. package/lib/structure/queue.d.ts +90 -0
  567. package/lib/structure/queue.js +154 -0
  568. package/lib/structure/redBlackTree.d.ts +142 -0
  569. package/lib/structure/redBlackTree.js +644 -0
  570. package/lib/structure/segmentTree.d.ts +129 -0
  571. package/lib/structure/segmentTree.js +205 -0
  572. package/lib/structure/stack.d.ts +77 -0
  573. package/lib/structure/stack.js +107 -0
  574. package/lib/structure/unordered.d.ts +99 -0
  575. package/lib/structure/unordered.js +341 -0
  576. package/lib/thread/index.d.ts +2 -0
  577. package/lib/thread/index.js +2 -0
  578. package/lib/thread/thread.d.ts +107 -0
  579. package/lib/thread/thread.js +81 -0
  580. package/lib/thread/transitions.d.ts +8 -0
  581. package/lib/thread/transitions.js +9 -0
  582. package/lib/types/common.d.ts +80 -0
  583. package/lib/types/common.js +5 -0
  584. package/lib/types/index.d.ts +23 -0
  585. package/lib/types/index.js +1 -0
  586. package/lib/warrant/epistemic.d.ts +141 -0
  587. package/lib/warrant/epistemic.js +1 -0
  588. package/lib/warrant/index.d.ts +3 -0
  589. package/lib/warrant/index.js +3 -0
  590. package/lib/warrant/inquiry.d.ts +69 -0
  591. package/lib/warrant/inquiry.js +119 -0
  592. package/lib/warrant/warrant.d.ts +46 -0
  593. package/lib/warrant/warrant.js +153 -0
  594. package/lib/window/compaction.d.ts +57 -0
  595. package/lib/window/compaction.js +334 -0
  596. package/lib/window/compactionTypes.d.ts +113 -0
  597. package/lib/window/compactionTypes.js +1 -0
  598. package/lib/window/index.d.ts +7 -0
  599. package/lib/window/index.js +3 -0
  600. package/lib/window/page.d.ts +16 -0
  601. package/lib/window/page.js +2 -0
  602. package/lib/window/window.d.ts +68 -0
  603. package/lib/window/window.js +194 -0
  604. package/package.json +22 -1
  605. package/src/authz/index.ts +1 -0
  606. package/src/concept/index.ts +3 -0
  607. package/src/concurrency/index.ts +5 -0
  608. package/src/cooperation/index.ts +6 -0
  609. package/src/delegate/index.ts +2 -0
  610. package/src/error/index.ts +7 -0
  611. package/src/evaluation/index.ts +2 -0
  612. package/src/execution/index.ts +3 -0
  613. package/src/frame/index.ts +1 -0
  614. package/src/index.ts +11 -0
  615. package/src/ledger/index.ts +4 -0
  616. package/src/manifest/index.ts +8 -0
  617. package/src/policy/index.ts +2 -0
  618. package/src/protocol/index.ts +6 -0
  619. package/src/receipt/index.ts +1 -0
  620. package/src/semantic/index.ts +2 -0
  621. package/src/storage/index.ts +2 -0
  622. package/src/structure/index.ts +20 -0
  623. package/src/thread/index.ts +2 -0
  624. package/src/warrant/index.ts +3 -0
  625. package/src/window/index.ts +7 -4
  626. package/tools/rewrite-declaration-extensions.ts +98 -0
  627. package/tsconfig.build.json +14 -0
@@ -0,0 +1,306 @@
1
+ /**
2
+ * Unbalanced binary search tree.
3
+ *
4
+ * Values are ordered by a supplied {@link Comparator}, defaulting to
5
+ * {@link compareNatural}. Duplicate values (comparator result 0) are rejected.
6
+ * The tree is deliberately not balanced: a sorted insertion sequence degenerates
7
+ * it into a linked list, so `insert`, `has`, and `delete` are O(n) in the worst
8
+ * case and O(log n) only when the insertion order happens to keep the tree
9
+ * shallow. Use {@link AVLTree} or {@link RedBlackTree} when worst-case bounds
10
+ * matter.
11
+ */
12
+ import { compareNatural } from "./compare.js";
13
+ /**
14
+ * An unbalanced binary search tree.
15
+ *
16
+ * In-order iteration is sorted according to the configured comparator. The
17
+ * tree keeps exactly one representative for each comparator equivalence class,
18
+ * so inserting an equivalent value returns `false` and leaves the stored
19
+ * representative unchanged.
20
+ */
21
+ export class BinarySearchTree {
22
+ rootNode = null;
23
+ count = 0;
24
+ compare;
25
+ /**
26
+ * Create an empty search tree.
27
+ *
28
+ * @param options - Comparator override; defaults to natural ordering.
29
+ */
30
+ constructor(options) {
31
+ this.compare = options?.compare ?? ((left, right) => compareNatural(left, right));
32
+ }
33
+ /**
34
+ * Number of stored values.
35
+ */
36
+ get size() {
37
+ return this.count;
38
+ }
39
+ /**
40
+ * Number of nodes on the longest root-to-leaf path.
41
+ *
42
+ * Empty trees have height 0 and leaves have height 1. Computed in O(n) time.
43
+ */
44
+ get height() {
45
+ if (this.rootNode === null) {
46
+ return 0;
47
+ }
48
+ let maximum = 0;
49
+ const stack = [{ node: this.rootNode, depth: 1 }];
50
+ while (stack.length > 0) {
51
+ const frame = stack.pop();
52
+ if (frame === (void 0)) {
53
+ break;
54
+ }
55
+ if (frame.depth > maximum) {
56
+ maximum = frame.depth;
57
+ }
58
+ if (frame.node.left !== null) {
59
+ stack.push({ node: frame.node.left, depth: frame.depth + 1 });
60
+ }
61
+ if (frame.node.right !== null) {
62
+ stack.push({ node: frame.node.right, depth: frame.depth + 1 });
63
+ }
64
+ }
65
+ return maximum;
66
+ }
67
+ /**
68
+ * Whether the tree contains no values.
69
+ */
70
+ get isEmpty() {
71
+ return this.count === 0;
72
+ }
73
+ /**
74
+ * Insert a value unless an equivalent one is already stored.
75
+ *
76
+ * O(h) where `h` is the current height; O(n) worst case. The first value
77
+ * inserted into an empty tree does not invoke the comparator.
78
+ *
79
+ * @param value - Value to insert.
80
+ * @returns `true` if a node was added, `false` for an equivalent duplicate.
81
+ */
82
+ insert(value) {
83
+ if (this.rootNode === null) {
84
+ this.rootNode = { value, left: null, right: null };
85
+ this.count = 1;
86
+ return true;
87
+ }
88
+ let node = this.rootNode;
89
+ while (true) {
90
+ const order = this.compare(value, node.value);
91
+ if (order === 0) {
92
+ return false;
93
+ }
94
+ if (order < 0) {
95
+ if (node.left === null) {
96
+ node.left = { value, left: null, right: null };
97
+ this.count += 1;
98
+ return true;
99
+ }
100
+ node = node.left;
101
+ }
102
+ else {
103
+ if (node.right === null) {
104
+ node.right = { value, left: null, right: null };
105
+ this.count += 1;
106
+ return true;
107
+ }
108
+ node = node.right;
109
+ }
110
+ }
111
+ }
112
+ /**
113
+ * Test whether an equivalent value is stored.
114
+ *
115
+ * @param value - Value to look up.
116
+ */
117
+ has(value) {
118
+ let node = this.rootNode;
119
+ while (node !== null) {
120
+ const order = this.compare(value, node.value);
121
+ if (order === 0) {
122
+ return true;
123
+ }
124
+ node = order < 0 ? node.left : node.right;
125
+ }
126
+ return false;
127
+ }
128
+ /**
129
+ * Delete the value equivalent to `value`.
130
+ *
131
+ * Handles the zero-, one- and two-child cases; a two-child node is replaced by
132
+ * its in-order successor. O(h), O(n) worst case.
133
+ *
134
+ * @param value - Value to remove.
135
+ * @returns `true` if a value was removed, `false` when none is equivalent.
136
+ */
137
+ delete(value) {
138
+ let node = this.rootNode;
139
+ let parent = null;
140
+ while (node !== null) {
141
+ const order = this.compare(value, node.value);
142
+ if (order === 0) {
143
+ break;
144
+ }
145
+ parent = node;
146
+ node = order < 0 ? node.left : node.right;
147
+ }
148
+ if (node === null) {
149
+ return false;
150
+ }
151
+ let target = node;
152
+ let targetParent = parent;
153
+ if (target.left !== null && target.right !== null) {
154
+ let successorParent = target;
155
+ let successor = target.right;
156
+ while (successor.left !== null) {
157
+ successorParent = successor;
158
+ successor = successor.left;
159
+ }
160
+ target.value = successor.value;
161
+ target = successor;
162
+ targetParent = successorParent;
163
+ }
164
+ const child = target.left !== null ? target.left : target.right;
165
+ if (targetParent === null) {
166
+ this.rootNode = child;
167
+ }
168
+ else if (targetParent.left === target) {
169
+ targetParent.left = child;
170
+ }
171
+ else {
172
+ targetParent.right = child;
173
+ }
174
+ this.count -= 1;
175
+ return true;
176
+ }
177
+ /**
178
+ * Minimum stored value according to the comparator, or `undefined` when
179
+ * empty.
180
+ */
181
+ min() {
182
+ let node = this.rootNode;
183
+ if (node === null) {
184
+ return undefined;
185
+ }
186
+ while (node.left !== null) {
187
+ node = node.left;
188
+ }
189
+ return node.value;
190
+ }
191
+ /**
192
+ * Maximum stored value according to the comparator, or `undefined` when
193
+ * empty.
194
+ */
195
+ max() {
196
+ let node = this.rootNode;
197
+ if (node === null) {
198
+ return undefined;
199
+ }
200
+ while (node.right !== null) {
201
+ node = node.right;
202
+ }
203
+ return node.value;
204
+ }
205
+ /**
206
+ * Greatest stored value that is less than or equal to `value` in comparator
207
+ * order, or `undefined` when there is none.
208
+ */
209
+ floor(value) {
210
+ let node = this.rootNode;
211
+ let result;
212
+ while (node !== null) {
213
+ const order = this.compare(node.value, value);
214
+ if (order === 0) {
215
+ return node.value;
216
+ }
217
+ if (order < 0) {
218
+ result = node.value;
219
+ node = node.right;
220
+ }
221
+ else {
222
+ node = node.left;
223
+ }
224
+ }
225
+ return result;
226
+ }
227
+ /**
228
+ * Least stored value that is greater than or equal to `value` in comparator
229
+ * order, or `undefined` when there is none.
230
+ */
231
+ ceil(value) {
232
+ let node = this.rootNode;
233
+ let result;
234
+ while (node !== null) {
235
+ const order = this.compare(node.value, value);
236
+ if (order === 0) {
237
+ return node.value;
238
+ }
239
+ if (order < 0) {
240
+ node = node.right;
241
+ }
242
+ else {
243
+ result = node.value;
244
+ node = node.left;
245
+ }
246
+ }
247
+ return result;
248
+ }
249
+ /**
250
+ * Remove every value.
251
+ */
252
+ clear() {
253
+ this.rootNode = null;
254
+ this.count = 0;
255
+ }
256
+ /**
257
+ * Collect values in ascending comparator order.
258
+ */
259
+ toArray() {
260
+ return Array.from(this.inorderValues());
261
+ }
262
+ /**
263
+ * Iterate values in ascending comparator order.
264
+ *
265
+ * Mutating the tree while iterating is not supported.
266
+ */
267
+ [Symbol.iterator]() {
268
+ return this.inorderValues();
269
+ }
270
+ /**
271
+ * Check the tree's invariants.
272
+ *
273
+ * Verifies strict in-order ordering and that the maintained `size` matches the
274
+ * number of reachable nodes. Returns an empty array for a valid tree; each
275
+ * string describes one violation.
276
+ */
277
+ validate() {
278
+ const errors = [];
279
+ const values = this.toArray();
280
+ if (values.length !== this.count) {
281
+ errors.push(`size mismatch: expected ${this.count}, traversed ${values.length}`);
282
+ }
283
+ for (let index = 1; index < values.length; index += 1) {
284
+ if (this.compare(values[index - 1], values[index]) >= 0) {
285
+ errors.push(`ordering violation between in-order positions ${index - 1} and ${index}`);
286
+ }
287
+ }
288
+ return errors;
289
+ }
290
+ *inorderValues() {
291
+ const stack = [];
292
+ let node = this.rootNode;
293
+ while (node !== null || stack.length > 0) {
294
+ while (node !== null) {
295
+ stack.push(node);
296
+ node = node.left;
297
+ }
298
+ const current = stack.pop();
299
+ if (current === (void 0)) {
300
+ break;
301
+ }
302
+ yield current.value;
303
+ node = current.right;
304
+ }
305
+ }
306
+ }
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Unordered binary tree.
3
+ *
4
+ * The tree is shape-oriented rather than search-oriented: values have no
5
+ * ordering, `insert` fills the first missing child in level order, and the
6
+ * four traversal orders are available for inspection. Node objects are
7
+ * deliberately exposed through {@link BinaryTree.root}; a tree assembled by
8
+ * hand should be passed to the constructor so its `size` is computed from the
9
+ * existing nodes.
10
+ *
11
+ * `size` is maintained by {@link BinaryTree.insert} and
12
+ * {@link BinaryTree.clear}. Mutating the exposed nodes directly is not tracked
13
+ * by `size`; construct a new tree after manual restructuring.
14
+ */
15
+ /**
16
+ * A binary-tree node. Missing children are represented by `null`.
17
+ */
18
+ export declare class BinaryTreeNode<T> {
19
+ /**
20
+ * Stored value.
21
+ */
22
+ value: T;
23
+ /**
24
+ * Left child, or `null` when absent.
25
+ */
26
+ left: BinaryTreeNode<T> | null;
27
+ /**
28
+ * Right child, or `null` when absent.
29
+ */
30
+ right: BinaryTreeNode<T> | null;
31
+ /**
32
+ * Create a node.
33
+ *
34
+ * @param value - Stored value.
35
+ * @param left - Left child; defaults to `null`.
36
+ * @param right - Right child; defaults to `null`.
37
+ */
38
+ constructor(value: T, left?: BinaryTreeNode<T> | null, right?: BinaryTreeNode<T> | null);
39
+ }
40
+ /**
41
+ * Traversal orders supported by {@link BinaryTree.traverse}.
42
+ */
43
+ export type BinaryTreeOrder = "preorder" | "inorder" | "postorder" | "levelorder";
44
+ /**
45
+ * A binary tree with level-order construction, insertion and traversal.
46
+ *
47
+ * An empty tree has `size` 0 and `height` 0; a single node has height 1. A tree
48
+ * built from an existing root computes its size once in the constructor. All
49
+ * traversals are iterative, so unusually deep manual trees do not consume the
50
+ * call stack.
51
+ */
52
+ export declare class BinaryTree<T> implements Iterable<T> {
53
+ private rootNode;
54
+ private count;
55
+ /**
56
+ * Create a tree from an existing node graph.
57
+ *
58
+ * `size` is computed by walking the supplied graph. Passing `null` creates an
59
+ * empty tree.
60
+ *
61
+ * @param root - Root node, or `null` for an empty tree.
62
+ */
63
+ constructor(root?: BinaryTreeNode<T> | null);
64
+ /**
65
+ * Build a tree from a level-order array.
66
+ *
67
+ * Index 0 is the root; the children of index `i` are at `2i + 1` and
68
+ * `2i + 2`. `null` entries are holes. Trailing `null` entries are ignored, and
69
+ * entries below a hole are unreachable and therefore omitted.
70
+ *
71
+ * @param values - Level-order values, with `null` marking a missing node.
72
+ */
73
+ static fromLevelOrder<T>(values: ReadonlyArray<T | null>): BinaryTree<T>;
74
+ /**
75
+ * Build a complete tree from values in level order.
76
+ *
77
+ * Every position is filled, so the result is always complete. An empty
78
+ * iterable produces an empty tree.
79
+ *
80
+ * @param values - Values to place in level order.
81
+ */
82
+ static fromArray<T>(values: Iterable<T>): BinaryTree<T>;
83
+ /**
84
+ * Root node, or `null` for an empty tree.
85
+ */
86
+ get root(): BinaryTreeNode<T> | null;
87
+ /**
88
+ * Number of reachable nodes.
89
+ *
90
+ * Maintained by {@link insert} and {@link clear}. A tree built with the
91
+ * constructor starts from a traversal count; direct edits to exposed nodes are
92
+ * not reflected here.
93
+ */
94
+ get size(): number;
95
+ /**
96
+ * Number of nodes on the longest root-to-leaf path.
97
+ *
98
+ * Empty trees have height 0 and leaves have height 1. Computed on demand in
99
+ * O(n) time.
100
+ */
101
+ get height(): number;
102
+ /**
103
+ * Whether the tree contains no nodes.
104
+ */
105
+ get isEmpty(): boolean;
106
+ /**
107
+ * Insert a value at the first missing child in level order.
108
+ *
109
+ * The tree therefore keeps its complete shape when it started complete; for a
110
+ * manually built tree the search is still breadth-first, so the shallowest
111
+ * available slot is filled first. `size` is incremented.
112
+ *
113
+ * @param value - Value to store.
114
+ * @returns The newly created node.
115
+ */
116
+ insert(value: T): BinaryTreeNode<T>;
117
+ /**
118
+ * Remove every node and reset `size` to 0.
119
+ */
120
+ clear(): void;
121
+ /**
122
+ * Iterate values in the requested order.
123
+ *
124
+ * `null` holes are skipped. The tree is traversed iteratively, so the caller
125
+ * does not consume call-stack depth. Mutating the tree while iterating is not
126
+ * supported.
127
+ *
128
+ * @param order - Traversal order; defaults to `levelorder`.
129
+ */
130
+ traverse(order?: BinaryTreeOrder): Generator<T>;
131
+ /**
132
+ * Collect values in the requested traversal order.
133
+ *
134
+ * @param order - Traversal order; defaults to `levelorder`.
135
+ */
136
+ toArray(order?: BinaryTreeOrder): T[];
137
+ /**
138
+ * Mirror the tree by swapping every left and right child.
139
+ *
140
+ * The shape is unchanged, so `size` and `height` stay the same. Returns the
141
+ * tree itself for chaining.
142
+ */
143
+ invert(): this;
144
+ /**
145
+ * Whether all levels except possibly the last are full and the last level is
146
+ * filled from the left. An empty tree is complete.
147
+ */
148
+ isComplete(): boolean;
149
+ /**
150
+ * Whether every node has either zero or two children. An empty tree is full.
151
+ */
152
+ isFull(): boolean;
153
+ /**
154
+ * Deep-copy the tree.
155
+ *
156
+ * Every node is recreated, so the copy shares no nodes with the original.
157
+ * The copy's size is computed from the cloned shape.
158
+ */
159
+ clone(): BinaryTree<T>;
160
+ /**
161
+ * Iterate values in preorder (node, left, right).
162
+ *
163
+ * Equivalent to `traverse('preorder')`.
164
+ */
165
+ [Symbol.iterator](): Generator<T>;
166
+ /**
167
+ * Count reachable nodes without recursion.
168
+ */
169
+ private static countNodes;
170
+ private preorderValues;
171
+ private inorderValues;
172
+ private postorderValues;
173
+ private levelOrderValues;
174
+ }