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.
- package/CHANGELOG.md +250 -226
- package/CHANGELOG.zh-CN.md +63 -39
- package/README.md +22 -1
- package/README.zh-CN.md +22 -1
- package/docs/probes/calibration-imported.json +141 -141
- package/docs/probes/eval-recorded-replay.json +597 -597
- package/docs/probes/eval-replay.json +124 -124
- package/docs/probes/eval-summary.json +42 -42
- package/docs/probes/runtime-eval.json +4230 -4230
- package/lib/attention/attention.d.ts +153 -0
- package/lib/attention/attention.js +209 -0
- package/lib/attention/budget.d.ts +31 -0
- package/lib/attention/budget.js +55 -0
- package/lib/attention/cognition.d.ts +230 -0
- package/lib/attention/cognition.js +245 -0
- package/lib/attention/index.d.ts +8 -0
- package/lib/attention/index.js +7 -0
- package/lib/attention/interrupts.d.ts +97 -0
- package/lib/attention/interrupts.js +151 -0
- package/lib/attention/resource.d.ts +167 -0
- package/lib/attention/resource.js +148 -0
- package/lib/attention/social.d.ts +74 -0
- package/lib/attention/social.js +153 -0
- package/lib/attention/socialTypes.d.ts +102 -0
- package/lib/attention/socialTypes.js +1 -0
- package/lib/authz/authz.d.ts +75 -0
- package/lib/authz/authz.js +176 -0
- package/lib/authz/index.d.ts +1 -0
- package/lib/authz/index.js +1 -0
- package/lib/bayes/calibration.d.ts +67 -0
- package/lib/bayes/calibration.js +114 -0
- package/lib/bayes/calibrationRegistry.d.ts +39 -0
- package/lib/bayes/calibrationRegistry.js +61 -0
- package/lib/bayes/calibrationSelection.d.ts +40 -0
- package/lib/bayes/calibrationSelection.js +89 -0
- package/lib/bayes/engine.d.ts +163 -0
- package/lib/bayes/engine.js +354 -0
- package/lib/bayes/index.d.ts +6 -0
- package/lib/bayes/index.js +6 -0
- package/lib/bayes/reliability.d.ts +27 -0
- package/lib/bayes/reliability.js +38 -0
- package/lib/bayes/scopedPriors.d.ts +34 -0
- package/lib/bayes/scopedPriors.js +70 -0
- package/lib/boundary/frame.d.ts +63 -0
- package/lib/boundary/frame.js +239 -0
- package/lib/boundary/ids.d.ts +8 -0
- package/lib/boundary/ids.js +12 -0
- package/lib/boundary/index.d.ts +12 -0
- package/lib/boundary/index.js +8 -0
- package/lib/boundary/refTable.d.ts +49 -0
- package/lib/boundary/refTable.js +92 -0
- package/lib/boundary/toolCall.d.ts +33 -0
- package/lib/boundary/toolCall.js +173 -0
- package/lib/concept/concept.d.ts +67 -0
- package/lib/concept/concept.js +1 -0
- package/lib/concept/conceptBudget.d.ts +56 -0
- package/lib/concept/conceptBudget.js +281 -0
- package/lib/concept/conceptBudgetTypes.d.ts +74 -0
- package/lib/concept/conceptBudgetTypes.js +1 -0
- package/lib/concept/index.d.ts +3 -0
- package/lib/concept/index.js +3 -0
- package/lib/concurrency/idempotency.d.ts +16 -0
- package/lib/concurrency/idempotency.js +21 -0
- package/lib/concurrency/index.d.ts +5 -0
- package/lib/concurrency/index.js +5 -0
- package/lib/concurrency/mutex.d.ts +13 -0
- package/lib/concurrency/mutex.js +26 -0
- package/lib/concurrency/namedLocks.d.ts +7 -0
- package/lib/concurrency/namedLocks.js +31 -0
- package/lib/concurrency/retry.d.ts +23 -0
- package/lib/concurrency/retry.js +38 -0
- package/lib/concurrency/worker.d.ts +42 -0
- package/lib/concurrency/worker.js +67 -0
- package/lib/context/agentContext.d.ts +58 -0
- package/lib/context/agentContext.js +197 -0
- package/lib/context/ast.d.ts +98 -0
- package/lib/context/ast.js +414 -0
- package/lib/context/contentStore.d.ts +16 -0
- package/lib/context/contentStore.js +61 -0
- package/lib/context/context.d.ts +15 -0
- package/lib/context/context.js +39 -0
- package/lib/context/contextIndex.d.ts +40 -0
- package/lib/context/contextIndex.js +64 -0
- package/lib/context/document.d.ts +102 -0
- package/lib/context/document.js +22 -0
- package/lib/context/fileStorePath.d.ts +1 -0
- package/lib/context/fileStorePath.js +13 -0
- package/lib/context/index.d.ts +22 -0
- package/lib/context/index.js +11 -0
- package/lib/context/lifecycle.d.ts +91 -0
- package/lib/context/lifecycle.js +163 -0
- package/lib/context/projections.d.ts +20 -0
- package/lib/context/projections.js +127 -0
- package/lib/context/workspace.d.ts +111 -0
- package/lib/context/workspace.js +318 -0
- package/lib/context/workspaceProtocol.d.ts +30 -0
- package/lib/context/workspaceProtocol.js +49 -0
- package/lib/context/workspaceService.d.ts +63 -0
- package/lib/context/workspaceService.js +352 -0
- package/lib/cooperation/board.d.ts +47 -0
- package/lib/cooperation/board.js +66 -0
- package/lib/cooperation/collaboration.d.ts +55 -0
- package/lib/cooperation/collaboration.js +1 -0
- package/lib/cooperation/index.d.ts +6 -0
- package/lib/cooperation/index.js +6 -0
- package/lib/cooperation/merge.d.ts +69 -0
- package/lib/cooperation/merge.js +109 -0
- package/lib/cooperation/metrics.d.ts +39 -0
- package/lib/cooperation/metrics.js +17 -0
- package/lib/cooperation/session.d.ts +75 -0
- package/lib/cooperation/session.js +74 -0
- package/lib/cooperation/unified.d.ts +38 -0
- package/lib/cooperation/unified.js +40 -0
- package/lib/database/adapter/adapters.d.ts +24 -0
- package/lib/database/adapter/adapters.js +31 -0
- package/lib/database/adapter/index.d.ts +4 -0
- package/lib/database/adapter/index.js +4 -0
- package/lib/database/adapter/runtimeSink.d.ts +20 -0
- package/lib/database/adapter/runtimeSink.js +50 -0
- package/lib/database/adapter/sessionStore.d.ts +11 -0
- package/lib/database/adapter/sessionStore.js +23 -0
- package/lib/database/adapter/turnStore.d.ts +10 -0
- package/lib/database/adapter/turnStore.js +15 -0
- package/lib/database/entity/agent.d.ts +133 -0
- package/lib/database/entity/agent.js +61 -0
- package/lib/database/entity/entity.d.ts +715 -0
- package/lib/database/entity/entity.js +372 -0
- package/lib/database/entity/handle.d.ts +31 -0
- package/lib/database/entity/handle.js +53 -0
- package/lib/database/entity/index.d.ts +32 -0
- package/lib/database/entity/index.js +22 -0
- package/lib/database/entity/message.d.ts +27 -0
- package/lib/database/entity/message.js +52 -0
- package/lib/database/entity/meta.d.ts +11 -0
- package/lib/database/entity/meta.js +1 -0
- package/lib/database/entity/object.d.ts +23 -0
- package/lib/database/entity/object.js +24 -0
- package/lib/database/entity/outbox.d.ts +9 -0
- package/lib/database/entity/outbox.js +5 -0
- package/lib/database/entity/process.d.ts +30 -0
- package/lib/database/entity/process.js +40 -0
- package/lib/database/entity/registry.d.ts +81 -0
- package/lib/database/entity/registry.js +91 -0
- package/lib/database/entity/runtimeApproval.d.ts +23 -0
- package/lib/database/entity/runtimeApproval.js +5 -0
- package/lib/database/entity/runtimeSession.d.ts +7 -0
- package/lib/database/entity/runtimeSession.js +5 -0
- package/lib/database/entity/runtimeTurn.d.ts +9 -0
- package/lib/database/entity/runtimeTurn.js +5 -0
- package/lib/database/entity/thread.d.ts +35 -0
- package/lib/database/entity/thread.js +55 -0
- package/lib/database/entity/window.d.ts +39 -0
- package/lib/database/entity/window.js +56 -0
- package/lib/database/entity/worker.d.ts +42 -0
- package/lib/database/entity/worker.js +58 -0
- package/lib/database/index.d.ts +6 -0
- package/lib/database/index.js +6 -0
- package/lib/database/repository/addressSpaceRepository.d.ts +18 -0
- package/lib/database/repository/addressSpaceRepository.js +40 -0
- package/lib/database/repository/agentRepository.d.ts +41 -0
- package/lib/database/repository/agentRepository.js +398 -0
- package/lib/database/repository/base.d.ts +31 -0
- package/lib/database/repository/base.js +23 -0
- package/lib/database/repository/executionRepository.d.ts +64 -0
- package/lib/database/repository/executionRepository.js +379 -0
- package/lib/database/repository/handleRepository.d.ts +35 -0
- package/lib/database/repository/handleRepository.js +57 -0
- package/lib/database/repository/index.d.ts +20 -0
- package/lib/database/repository/index.js +17 -0
- package/lib/database/repository/messageRepository.d.ts +33 -0
- package/lib/database/repository/messageRepository.js +45 -0
- package/lib/database/repository/objectRepository.d.ts +43 -0
- package/lib/database/repository/objectRepository.js +60 -0
- package/lib/database/repository/outboxRepository.d.ts +15 -0
- package/lib/database/repository/outboxRepository.js +51 -0
- package/lib/database/repository/processRepository.d.ts +31 -0
- package/lib/database/repository/processRepository.js +48 -0
- package/lib/database/repository/registryRepository.d.ts +72 -0
- package/lib/database/repository/registryRepository.js +95 -0
- package/lib/database/repository/repository.d.ts +322 -0
- package/lib/database/repository/repository.js +332 -0
- package/lib/database/repository/runtimeApprovalRepository.d.ts +14 -0
- package/lib/database/repository/runtimeApprovalRepository.js +35 -0
- package/lib/database/repository/runtimeSessionRepository.d.ts +9 -0
- package/lib/database/repository/runtimeSessionRepository.js +21 -0
- package/lib/database/repository/runtimeTurnRepository.d.ts +10 -0
- package/lib/database/repository/runtimeTurnRepository.js +32 -0
- package/lib/database/repository/socialRepository.d.ts +22 -0
- package/lib/database/repository/socialRepository.js +155 -0
- package/lib/database/repository/threadRepository.d.ts +29 -0
- package/lib/database/repository/threadRepository.js +48 -0
- package/lib/database/repository/windowRepository.d.ts +46 -0
- package/lib/database/repository/windowRepository.js +68 -0
- package/lib/database/repository/workerRepository.d.ts +38 -0
- package/lib/database/repository/workerRepository.js +61 -0
- package/lib/database/service/database.d.ts +55 -0
- package/lib/database/service/database.js +77 -0
- package/lib/database/service/handleService.d.ts +20 -0
- package/lib/database/service/handleService.js +34 -0
- package/lib/database/service/index.d.ts +16 -0
- package/lib/database/service/index.js +11 -0
- package/lib/database/service/messageService.d.ts +26 -0
- package/lib/database/service/messageService.js +40 -0
- package/lib/database/service/objectService.d.ts +32 -0
- package/lib/database/service/objectService.js +31 -0
- package/lib/database/service/processService.d.ts +22 -0
- package/lib/database/service/processService.js +45 -0
- package/lib/database/service/registryServices.d.ts +43 -0
- package/lib/database/service/registryServices.js +60 -0
- package/lib/database/service/service.d.ts +131 -0
- package/lib/database/service/service.js +153 -0
- package/lib/database/service/stepService.d.ts +23 -0
- package/lib/database/service/stepService.js +35 -0
- package/lib/database/service/threadService.d.ts +23 -0
- package/lib/database/service/threadService.js +48 -0
- package/lib/database/service/windowService.d.ts +15 -0
- package/lib/database/service/windowService.js +22 -0
- package/lib/database/service/workerService.d.ts +28 -0
- package/lib/database/service/workerService.js +34 -0
- package/lib/database/sql/index.d.ts +3 -0
- package/lib/database/sql/index.js +2 -0
- package/lib/database/sql/schema.d.ts +5 -0
- package/lib/database/sql/schema.js +416 -0
- package/lib/database/sql/sql.d.ts +290 -0
- package/lib/database/sql/sql.js +430 -0
- package/lib/database/store/database.d.ts +75 -0
- package/lib/database/store/database.js +143 -0
- package/lib/database/store/index.d.ts +3 -0
- package/lib/database/store/index.js +2 -0
- package/lib/database/store/store.d.ts +145 -0
- package/lib/database/store/store.js +192 -0
- package/lib/delegate/index.d.ts +2 -0
- package/lib/delegate/index.js +2 -0
- package/lib/delegate/team.d.ts +92 -0
- package/lib/delegate/team.js +200 -0
- package/lib/delegate/teamTypes.d.ts +43 -0
- package/lib/delegate/teamTypes.js +1 -0
- package/lib/diagnosis/checklist.d.ts +16 -0
- package/lib/diagnosis/checklist.js +61 -0
- package/lib/diagnosis/context.d.ts +19 -0
- package/lib/diagnosis/context.js +79 -0
- package/lib/diagnosis/frame.d.ts +34 -0
- package/lib/diagnosis/frame.js +230 -0
- package/lib/diagnosis/index.d.ts +5 -0
- package/lib/diagnosis/index.js +5 -0
- package/lib/diagnosis/router.d.ts +22 -0
- package/lib/diagnosis/router.js +47 -0
- package/lib/diagnosis/types.d.ts +78 -0
- package/lib/diagnosis/types.js +2 -0
- package/lib/error/agentError.d.ts +9 -0
- package/lib/error/agentError.js +13 -0
- package/lib/error/ampError.d.ts +14 -0
- package/lib/error/ampError.js +19 -0
- package/lib/error/authzError.d.ts +10 -0
- package/lib/error/authzError.js +11 -0
- package/lib/error/boundaryRejection.d.ts +16 -0
- package/lib/error/boundaryRejection.js +14 -0
- package/lib/error/index.d.ts +7 -0
- package/lib/error/index.js +7 -0
- package/lib/error/kernelError.d.ts +11 -0
- package/lib/error/kernelError.js +12 -0
- package/lib/error/mailboxError.d.ts +5 -0
- package/lib/error/mailboxError.js +6 -0
- package/lib/error/windowError.d.ts +8 -0
- package/lib/error/windowError.js +9 -0
- package/lib/evaluation/agreement.d.ts +22 -0
- package/lib/evaluation/agreement.js +82 -0
- package/lib/evaluation/index.d.ts +2 -0
- package/lib/evaluation/index.js +2 -0
- package/lib/evaluation/labels.d.ts +56 -0
- package/lib/evaluation/labels.js +206 -0
- package/lib/evidence/evidenceGraph.d.ts +37 -0
- package/lib/evidence/evidenceGraph.js +165 -0
- package/lib/evidence/index.d.ts +4 -0
- package/lib/evidence/index.js +2 -0
- package/lib/evidence/revalidation.d.ts +70 -0
- package/lib/evidence/revalidation.js +146 -0
- package/lib/execution/exec.d.ts +151 -0
- package/lib/execution/exec.js +282 -0
- package/lib/execution/handles.d.ts +25 -0
- package/lib/execution/handles.js +45 -0
- package/lib/execution/index.d.ts +3 -0
- package/lib/execution/index.js +3 -0
- package/lib/execution/pin.d.ts +60 -0
- package/lib/execution/pin.js +103 -0
- package/lib/frame/frame.d.ts +61 -0
- package/lib/frame/frame.js +1 -0
- package/lib/frame/index.d.ts +1 -0
- package/lib/frame/index.js +1 -0
- package/lib/goal/goal.d.ts +19 -0
- package/lib/goal/goal.js +21 -0
- package/lib/goal/index.d.ts +2 -0
- package/lib/goal/index.js +1 -0
- package/lib/goal/plan.d.ts +125 -0
- package/lib/goal/plan.js +60 -0
- package/lib/governance/attentionManifest.d.ts +279 -0
- package/lib/governance/attentionManifest.js +467 -0
- package/lib/governance/audit.d.ts +123 -0
- package/lib/governance/audit.js +263 -0
- package/lib/governance/budget.d.ts +219 -0
- package/lib/governance/budget.js +424 -0
- package/lib/governance/context.d.ts +159 -0
- package/lib/governance/context.js +229 -0
- package/lib/governance/control.d.ts +65 -0
- package/lib/governance/control.js +89 -0
- package/lib/governance/cooperation.d.ts +163 -0
- package/lib/governance/cooperation.js +350 -0
- package/lib/governance/credential.d.ts +117 -0
- package/lib/governance/credential.js +229 -0
- package/lib/governance/httpServer.d.ts +18 -0
- package/lib/governance/httpServer.js +74 -0
- package/lib/governance/index.d.ts +32 -0
- package/lib/governance/index.js +32 -0
- package/lib/governance/legal.d.ts +222 -0
- package/lib/governance/legal.js +371 -0
- package/lib/governance/matrix.d.ts +170 -0
- package/lib/governance/matrix.js +365 -0
- package/lib/governance/perspectives.d.ts +98 -0
- package/lib/governance/perspectives.js +340 -0
- package/lib/governance/signing.d.ts +131 -0
- package/lib/governance/signing.js +241 -0
- package/lib/governance/store.d.ts +33 -0
- package/lib/governance/store.js +89 -0
- package/lib/governance/switching.d.ts +183 -0
- package/lib/governance/switching.js +257 -0
- package/lib/governance/toolPolicy.d.ts +37 -0
- package/lib/governance/toolPolicy.js +42 -0
- package/lib/governance/transport.d.ts +76 -0
- package/lib/governance/transport.js +124 -0
- package/lib/governance/types.d.ts +218 -0
- package/lib/governance/types.js +72 -0
- package/lib/governance/workflow.d.ts +174 -0
- package/lib/governance/workflow.js +612 -0
- package/lib/index.d.ts +11 -0
- package/lib/index.js +11 -0
- package/lib/interaction/index.d.ts +1 -0
- package/lib/interaction/index.js +1 -0
- package/lib/interaction/interaction.d.ts +83 -0
- package/lib/interaction/interaction.js +256 -0
- package/lib/ipc/index.d.ts +4 -0
- package/lib/ipc/index.js +3 -0
- package/lib/ipc/mailbox.d.ts +37 -0
- package/lib/ipc/mailbox.js +77 -0
- package/lib/ipc/memorySocialStore.d.ts +14 -0
- package/lib/ipc/memorySocialStore.js +83 -0
- package/lib/ipc/social.d.ts +80 -0
- package/lib/ipc/social.js +1 -0
- package/lib/kernel/index.d.ts +2 -0
- package/lib/kernel/index.js +1 -0
- package/lib/kernel/scheduler.d.ts +195 -0
- package/lib/kernel/scheduler.js +334 -0
- package/lib/ledger/checkpoint.d.ts +116 -0
- package/lib/ledger/checkpoint.js +223 -0
- package/lib/ledger/index.d.ts +4 -0
- package/lib/ledger/index.js +4 -0
- package/lib/ledger/ledger.d.ts +21 -0
- package/lib/ledger/ledger.js +23 -0
- package/lib/ledger/persistence.d.ts +46 -0
- package/lib/ledger/persistence.js +106 -0
- package/lib/ledger/share.d.ts +29 -0
- package/lib/ledger/share.js +39 -0
- package/lib/lock/index.d.ts +2 -0
- package/lib/lock/index.js +1 -0
- package/lib/lock/lease.d.ts +23 -0
- package/lib/lock/lease.js +42 -0
- package/lib/manifest/agentCard.d.ts +35 -0
- package/lib/manifest/agentCard.js +38 -0
- package/lib/manifest/cardSign.d.ts +25 -0
- package/lib/manifest/cardSign.js +70 -0
- package/lib/manifest/federation.d.ts +64 -0
- package/lib/manifest/federation.js +187 -0
- package/lib/manifest/federationTypes.d.ts +51 -0
- package/lib/manifest/federationTypes.js +1 -0
- package/lib/manifest/index.d.ts +8 -0
- package/lib/manifest/index.js +8 -0
- package/lib/manifest/keys.d.ts +221 -0
- package/lib/manifest/keys.js +484 -0
- package/lib/manifest/manifest.d.ts +102 -0
- package/lib/manifest/manifest.js +1 -0
- package/lib/manifest/sign.d.ts +38 -0
- package/lib/manifest/sign.js +90 -0
- package/lib/manifest/trust.d.ts +54 -0
- package/lib/manifest/trust.js +87 -0
- package/lib/mission/index.d.ts +2 -0
- package/lib/mission/index.js +1 -0
- package/lib/mission/missionQueue.d.ts +19 -0
- package/lib/mission/missionQueue.js +62 -0
- package/lib/module/index.d.ts +9 -0
- package/lib/module/index.js +9 -0
- package/lib/module/llm/deepseek.d.ts +43 -0
- package/lib/module/llm/deepseek.js +162 -0
- package/lib/module/llm/llm.d.ts +64 -0
- package/lib/module/llm/llm.js +16 -0
- package/lib/module/mcp/client.d.ts +32 -0
- package/lib/module/mcp/client.js +84 -0
- package/lib/module/mcp/http.d.ts +32 -0
- package/lib/module/mcp/http.js +83 -0
- package/lib/module/mcp/protocol.d.ts +62 -0
- package/lib/module/mcp/protocol.js +20 -0
- package/lib/module/mcp/server.d.ts +22 -0
- package/lib/module/mcp/server.js +138 -0
- package/lib/module/mcp/transport.d.ts +19 -0
- package/lib/module/mcp/transport.js +16 -0
- package/lib/module/mcp/workspaceServer.d.ts +20 -0
- package/lib/module/mcp/workspaceServer.js +90 -0
- package/lib/module/sandbox/sandbox.d.ts +24 -0
- package/lib/module/sandbox/sandbox.js +5 -0
- package/lib/module/tool/mcpExecutor.d.ts +18 -0
- package/lib/module/tool/mcpExecutor.js +41 -0
- package/lib/module/tool/policy.d.ts +30 -0
- package/lib/module/tool/policy.js +23 -0
- package/lib/module/tool/redact.d.ts +9 -0
- package/lib/module/tool/redact.js +19 -0
- package/lib/module/tool/tool.d.ts +26 -0
- package/lib/module/tool/tool.js +24 -0
- package/lib/module/tool/workspaceExecutor.d.ts +12 -0
- package/lib/module/tool/workspaceExecutor.js +25 -0
- package/lib/policy/guard.d.ts +115 -0
- package/lib/policy/guard.js +154 -0
- package/lib/policy/index.d.ts +2 -0
- package/lib/policy/index.js +2 -0
- package/lib/policy/policy.d.ts +249 -0
- package/lib/policy/policy.js +364 -0
- package/lib/process/agent.d.ts +295 -0
- package/lib/process/agent.js +1 -0
- package/lib/process/agentService.d.ts +87 -0
- package/lib/process/agentService.js +128 -0
- package/lib/process/agentStore.d.ts +35 -0
- package/lib/process/agentStore.js +328 -0
- package/lib/process/executionStore.d.ts +79 -0
- package/lib/process/executionStore.js +71 -0
- package/lib/process/index.d.ts +5 -0
- package/lib/process/index.js +5 -0
- package/lib/process/process.d.ts +120 -0
- package/lib/process/process.js +111 -0
- package/lib/process/transitions.d.ts +11 -0
- package/lib/process/transitions.js +8 -0
- package/lib/progress/index.d.ts +2 -0
- package/lib/progress/index.js +1 -0
- package/lib/progress/progress.d.ts +26 -0
- package/lib/progress/progress.js +42 -0
- package/lib/protocol/a2a.d.ts +51 -0
- package/lib/protocol/a2a.js +79 -0
- package/lib/protocol/channel.d.ts +25 -0
- package/lib/protocol/channel.js +27 -0
- package/lib/protocol/envelope.d.ts +180 -0
- package/lib/protocol/envelope.js +495 -0
- package/lib/protocol/httpChannel.d.ts +33 -0
- package/lib/protocol/httpChannel.js +59 -0
- package/lib/protocol/index.d.ts +6 -0
- package/lib/protocol/index.js +6 -0
- package/lib/protocol/protocol.d.ts +120 -0
- package/lib/protocol/protocol.js +1 -0
- package/lib/protocol/wire.d.ts +12 -0
- package/lib/protocol/wire.js +55 -0
- package/lib/receipt/index.d.ts +1 -0
- package/lib/receipt/index.js +1 -0
- package/lib/receipt/receipt.d.ts +43 -0
- package/lib/receipt/receipt.js +1 -0
- package/lib/registry/content.d.ts +10 -0
- package/lib/registry/content.js +58 -0
- package/lib/registry/index.d.ts +4 -0
- package/lib/registry/index.js +2 -0
- package/lib/registry/registry.d.ts +109 -0
- package/lib/registry/registry.js +299 -0
- package/lib/runtime/action.d.ts +46 -0
- package/lib/runtime/action.js +39 -0
- package/lib/runtime/behavior.d.ts +110 -0
- package/lib/runtime/behavior.js +179 -0
- package/lib/runtime/behaviorTuning.d.ts +59 -0
- package/lib/runtime/behaviorTuning.js +95 -0
- package/lib/runtime/cognitiveRuntime.d.ts +189 -0
- package/lib/runtime/cognitiveRuntime.js +490 -0
- package/lib/runtime/escalation.d.ts +22 -0
- package/lib/runtime/escalation.js +15 -0
- package/lib/runtime/governedTask.d.ts +57 -0
- package/lib/runtime/governedTask.js +150 -0
- package/lib/runtime/index.d.ts +15 -0
- package/lib/runtime/index.js +15 -0
- package/lib/runtime/kernelRuntime.d.ts +33 -0
- package/lib/runtime/kernelRuntime.js +105 -0
- package/lib/runtime/operation.d.ts +30 -0
- package/lib/runtime/operation.js +1 -0
- package/lib/runtime/replay.d.ts +24 -0
- package/lib/runtime/replay.js +38 -0
- package/lib/runtime/routing.d.ts +12 -0
- package/lib/runtime/routing.js +44 -0
- package/lib/runtime/safety.d.ts +15 -0
- package/lib/runtime/safety.js +28 -0
- package/lib/runtime/session.d.ts +147 -0
- package/lib/runtime/session.js +214 -0
- package/lib/runtime/sessionStore.d.ts +24 -0
- package/lib/runtime/sessionStore.js +20 -0
- package/lib/runtime/telemetry.d.ts +24 -0
- package/lib/runtime/telemetry.js +33 -0
- package/lib/runtime/turnStore.d.ts +16 -0
- package/lib/runtime/turnStore.js +15 -0
- package/lib/scenario/index.d.ts +1 -0
- package/lib/scenario/index.js +1 -0
- package/lib/scenario/scenario.d.ts +52 -0
- package/lib/scenario/scenario.js +210 -0
- package/lib/semantic/canonical.d.ts +6 -0
- package/lib/semantic/canonical.js +22 -0
- package/lib/semantic/index.d.ts +2 -0
- package/lib/semantic/index.js +2 -0
- package/lib/semantic/sha256.d.ts +1 -0
- package/lib/semantic/sha256.js +66 -0
- package/lib/storage/appendLog.d.ts +145 -0
- package/lib/storage/appendLog.js +299 -0
- package/lib/storage/fileAppendSink.d.ts +7 -0
- package/lib/storage/fileAppendSink.js +34 -0
- package/lib/storage/index.d.ts +2 -0
- package/lib/storage/index.js +2 -0
- package/lib/store/bindCache.d.ts +9 -0
- package/lib/store/bindCache.js +18 -0
- package/lib/store/cache.d.ts +48 -0
- package/lib/store/cache.js +162 -0
- package/lib/store/context.d.ts +10 -0
- package/lib/store/context.js +27 -0
- package/lib/store/handleStore.d.ts +9 -0
- package/lib/store/handleStore.js +25 -0
- package/lib/store/index.d.ts +9 -0
- package/lib/store/index.js +8 -0
- package/lib/store/messageStore.d.ts +9 -0
- package/lib/store/messageStore.js +25 -0
- package/lib/store/objectStore.d.ts +9 -0
- package/lib/store/objectStore.js +25 -0
- package/lib/store/processStore.d.ts +9 -0
- package/lib/store/processStore.js +25 -0
- package/lib/store/threadStore.d.ts +9 -0
- package/lib/store/threadStore.js +25 -0
- package/lib/store/windowStore.d.ts +9 -0
- package/lib/store/windowStore.js +25 -0
- package/lib/structure/abstractSyntaxTree.d.ts +181 -0
- package/lib/structure/abstractSyntaxTree.js +400 -0
- package/lib/structure/avlTree.d.ts +125 -0
- package/lib/structure/avlTree.js +369 -0
- package/lib/structure/binarySearchTree.d.ts +125 -0
- package/lib/structure/binarySearchTree.js +306 -0
- package/lib/structure/binaryTree.d.ts +174 -0
- package/lib/structure/binaryTree.js +495 -0
- package/lib/structure/bloomFilter.d.ts +126 -0
- package/lib/structure/bloomFilter.js +177 -0
- package/lib/structure/compare.d.ts +55 -0
- package/lib/structure/compare.js +96 -0
- package/lib/structure/cuckooFilter.d.ts +149 -0
- package/lib/structure/cuckooFilter.js +267 -0
- package/lib/structure/deque.d.ts +117 -0
- package/lib/structure/deque.js +205 -0
- package/lib/structure/filterKey.d.ts +19 -0
- package/lib/structure/filterKey.js +28 -0
- package/lib/structure/hash.d.ts +129 -0
- package/lib/structure/hash.js +241 -0
- package/lib/structure/heap.d.ts +152 -0
- package/lib/structure/heap.js +227 -0
- package/lib/structure/index.d.ts +20 -0
- package/lib/structure/index.js +20 -0
- package/lib/structure/iterator.d.ts +6 -0
- package/lib/structure/iterator.js +16 -0
- package/lib/structure/lru.d.ts +235 -0
- package/lib/structure/lru.js +524 -0
- package/lib/structure/ordered.d.ts +89 -0
- package/lib/structure/ordered.js +336 -0
- package/lib/structure/priority.d.ts +499 -0
- package/lib/structure/priority.js +756 -0
- package/lib/structure/queue.d.ts +90 -0
- package/lib/structure/queue.js +154 -0
- package/lib/structure/redBlackTree.d.ts +142 -0
- package/lib/structure/redBlackTree.js +644 -0
- package/lib/structure/segmentTree.d.ts +129 -0
- package/lib/structure/segmentTree.js +205 -0
- package/lib/structure/stack.d.ts +77 -0
- package/lib/structure/stack.js +107 -0
- package/lib/structure/unordered.d.ts +99 -0
- package/lib/structure/unordered.js +341 -0
- package/lib/thread/index.d.ts +2 -0
- package/lib/thread/index.js +2 -0
- package/lib/thread/thread.d.ts +107 -0
- package/lib/thread/thread.js +81 -0
- package/lib/thread/transitions.d.ts +8 -0
- package/lib/thread/transitions.js +9 -0
- package/lib/types/common.d.ts +80 -0
- package/lib/types/common.js +5 -0
- package/lib/types/index.d.ts +23 -0
- package/lib/types/index.js +1 -0
- package/lib/warrant/epistemic.d.ts +141 -0
- package/lib/warrant/epistemic.js +1 -0
- package/lib/warrant/index.d.ts +3 -0
- package/lib/warrant/index.js +3 -0
- package/lib/warrant/inquiry.d.ts +69 -0
- package/lib/warrant/inquiry.js +119 -0
- package/lib/warrant/warrant.d.ts +46 -0
- package/lib/warrant/warrant.js +153 -0
- package/lib/window/compaction.d.ts +57 -0
- package/lib/window/compaction.js +334 -0
- package/lib/window/compactionTypes.d.ts +113 -0
- package/lib/window/compactionTypes.js +1 -0
- package/lib/window/index.d.ts +7 -0
- package/lib/window/index.js +3 -0
- package/lib/window/page.d.ts +16 -0
- package/lib/window/page.js +2 -0
- package/lib/window/window.d.ts +68 -0
- package/lib/window/window.js +194 -0
- package/package.json +22 -1
- package/src/authz/index.ts +1 -0
- package/src/concept/index.ts +3 -0
- package/src/concurrency/index.ts +5 -0
- package/src/cooperation/index.ts +6 -0
- package/src/delegate/index.ts +2 -0
- package/src/error/index.ts +7 -0
- package/src/evaluation/index.ts +2 -0
- package/src/execution/index.ts +3 -0
- package/src/frame/index.ts +1 -0
- package/src/index.ts +11 -0
- package/src/ledger/index.ts +4 -0
- package/src/manifest/index.ts +8 -0
- package/src/policy/index.ts +2 -0
- package/src/protocol/index.ts +6 -0
- package/src/receipt/index.ts +1 -0
- package/src/semantic/index.ts +2 -0
- package/src/storage/index.ts +2 -0
- package/src/structure/index.ts +20 -0
- package/src/thread/index.ts +2 -0
- package/src/warrant/index.ts +3 -0
- package/src/window/index.ts +7 -4
- package/tools/rewrite-declaration-extensions.ts +98 -0
- package/tsconfig.build.json +14 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Array-backed first-in, first-out queue.
|
|
3
|
+
*
|
|
4
|
+
* Values live in a circular buffer addressed by a head index and a count. Both
|
|
5
|
+
* ends of the logical sequence are therefore updated by index arithmetic:
|
|
6
|
+
* `enqueue` writes just past the current tail and `dequeue` advances the head
|
|
7
|
+
* without ever calling `Array.prototype.shift`. The buffer is not required to
|
|
8
|
+
* have a power-of-two length; it doubles when full and halves after a
|
|
9
|
+
* dequeue leaves it sparsely occupied. All operations are O(1) amortized.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* A first-in, first-out queue.
|
|
13
|
+
*
|
|
14
|
+
* `dequeue` and `peek` return `undefined` when the queue is empty rather than
|
|
15
|
+
* throwing. Since `undefined` is also a valid stored value, use {@link size} or
|
|
16
|
+
* {@link isEmpty} when presence must be distinguished from absence.
|
|
17
|
+
*
|
|
18
|
+
* Iteration is front-to-back.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* const queue = new Queue(["a", "b"]);
|
|
23
|
+
* queue.enqueue("c");
|
|
24
|
+
* queue.dequeue(); // "a"
|
|
25
|
+
* [...queue]; // ["b", "c"]
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare class Queue<T> implements Iterable<T> {
|
|
29
|
+
private items;
|
|
30
|
+
private head;
|
|
31
|
+
private count;
|
|
32
|
+
/**
|
|
33
|
+
* Create a queue, optionally seeded from `values`.
|
|
34
|
+
*
|
|
35
|
+
* Values are enqueued in iteration order, so the first value becomes the
|
|
36
|
+
* front.
|
|
37
|
+
*
|
|
38
|
+
* @param values - Values to enqueue, in order.
|
|
39
|
+
*/
|
|
40
|
+
constructor(values?: Iterable<T>);
|
|
41
|
+
/**
|
|
42
|
+
* Number of values currently in the queue.
|
|
43
|
+
*/
|
|
44
|
+
get size(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Whether the queue contains no values.
|
|
47
|
+
*/
|
|
48
|
+
get isEmpty(): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Add a value at the back of the queue.
|
|
51
|
+
*
|
|
52
|
+
* @param value - Value to enqueue.
|
|
53
|
+
* @returns This queue, for chaining.
|
|
54
|
+
*/
|
|
55
|
+
enqueue(value: T): this;
|
|
56
|
+
/**
|
|
57
|
+
* Remove and return the value at the front of the queue.
|
|
58
|
+
*
|
|
59
|
+
* @returns The former front value, or `undefined` if the queue is empty.
|
|
60
|
+
*/
|
|
61
|
+
dequeue(): T | undefined;
|
|
62
|
+
/**
|
|
63
|
+
* Return the value at the front of the queue without removing it.
|
|
64
|
+
*
|
|
65
|
+
* @returns The front value, or `undefined` if the queue is empty.
|
|
66
|
+
*/
|
|
67
|
+
peek(): T | undefined;
|
|
68
|
+
/**
|
|
69
|
+
* Remove every value and reset the ring to its initial capacity.
|
|
70
|
+
*/
|
|
71
|
+
clear(): void;
|
|
72
|
+
/**
|
|
73
|
+
* Snapshot the queue from front to back.
|
|
74
|
+
*
|
|
75
|
+
* @returns A new array whose first item is the front of the queue.
|
|
76
|
+
*/
|
|
77
|
+
toArray(): T[];
|
|
78
|
+
/**
|
|
79
|
+
* Iterate front to back over a snapshot taken when the iterator is created.
|
|
80
|
+
*/
|
|
81
|
+
[Symbol.iterator](): Generator<T, void, unknown>;
|
|
82
|
+
/**
|
|
83
|
+
* Copy the live values into a fresh ring, front to back.
|
|
84
|
+
*/
|
|
85
|
+
private resize;
|
|
86
|
+
/**
|
|
87
|
+
* Halve an oversized ring after dequeueing leaves it at most quarter full.
|
|
88
|
+
*/
|
|
89
|
+
private shrinkIfSparse;
|
|
90
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Array-backed first-in, first-out queue.
|
|
3
|
+
*
|
|
4
|
+
* Values live in a circular buffer addressed by a head index and a count. Both
|
|
5
|
+
* ends of the logical sequence are therefore updated by index arithmetic:
|
|
6
|
+
* `enqueue` writes just past the current tail and `dequeue` advances the head
|
|
7
|
+
* without ever calling `Array.prototype.shift`. The buffer is not required to
|
|
8
|
+
* have a power-of-two length; it doubles when full and halves after a
|
|
9
|
+
* dequeue leaves it sparsely occupied. All operations are O(1) amortized.
|
|
10
|
+
*/
|
|
11
|
+
import { generatorFrom } from "./iterator.js";
|
|
12
|
+
const InitialCapacity = 8;
|
|
13
|
+
/**
|
|
14
|
+
* A first-in, first-out queue.
|
|
15
|
+
*
|
|
16
|
+
* `dequeue` and `peek` return `undefined` when the queue is empty rather than
|
|
17
|
+
* throwing. Since `undefined` is also a valid stored value, use {@link size} or
|
|
18
|
+
* {@link isEmpty} when presence must be distinguished from absence.
|
|
19
|
+
*
|
|
20
|
+
* Iteration is front-to-back.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* const queue = new Queue(["a", "b"]);
|
|
25
|
+
* queue.enqueue("c");
|
|
26
|
+
* queue.dequeue(); // "a"
|
|
27
|
+
* [...queue]; // ["b", "c"]
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export class Queue {
|
|
31
|
+
items = new Array(InitialCapacity);
|
|
32
|
+
head = 0;
|
|
33
|
+
count = 0;
|
|
34
|
+
/**
|
|
35
|
+
* Create a queue, optionally seeded from `values`.
|
|
36
|
+
*
|
|
37
|
+
* Values are enqueued in iteration order, so the first value becomes the
|
|
38
|
+
* front.
|
|
39
|
+
*
|
|
40
|
+
* @param values - Values to enqueue, in order.
|
|
41
|
+
*/
|
|
42
|
+
constructor(values) {
|
|
43
|
+
if (values === (void 0)) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const initialValues = [...values];
|
|
47
|
+
for (let index = 0; index < initialValues.length; index += 1) {
|
|
48
|
+
this.enqueue(initialValues[index]);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Number of values currently in the queue.
|
|
53
|
+
*/
|
|
54
|
+
get size() {
|
|
55
|
+
return this.count;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Whether the queue contains no values.
|
|
59
|
+
*/
|
|
60
|
+
get isEmpty() {
|
|
61
|
+
return this.count === 0;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Add a value at the back of the queue.
|
|
65
|
+
*
|
|
66
|
+
* @param value - Value to enqueue.
|
|
67
|
+
* @returns This queue, for chaining.
|
|
68
|
+
*/
|
|
69
|
+
enqueue(value) {
|
|
70
|
+
if (this.count === this.items.length) {
|
|
71
|
+
this.resize(this.items.length * 2);
|
|
72
|
+
}
|
|
73
|
+
const tail = (this.head + this.count) % this.items.length;
|
|
74
|
+
this.items[tail] = value;
|
|
75
|
+
this.count += 1;
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Remove and return the value at the front of the queue.
|
|
80
|
+
*
|
|
81
|
+
* @returns The former front value, or `undefined` if the queue is empty.
|
|
82
|
+
*/
|
|
83
|
+
dequeue() {
|
|
84
|
+
if (this.count === 0) {
|
|
85
|
+
return undefined;
|
|
86
|
+
}
|
|
87
|
+
const value = this.items[this.head];
|
|
88
|
+
this.items[this.head] = undefined;
|
|
89
|
+
this.head = (this.head + 1) % this.items.length;
|
|
90
|
+
this.count -= 1;
|
|
91
|
+
this.shrinkIfSparse();
|
|
92
|
+
return value;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Return the value at the front of the queue without removing it.
|
|
96
|
+
*
|
|
97
|
+
* @returns The front value, or `undefined` if the queue is empty.
|
|
98
|
+
*/
|
|
99
|
+
peek() {
|
|
100
|
+
if (this.count === 0) {
|
|
101
|
+
return undefined;
|
|
102
|
+
}
|
|
103
|
+
return this.items[this.head];
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Remove every value and reset the ring to its initial capacity.
|
|
107
|
+
*/
|
|
108
|
+
clear() {
|
|
109
|
+
this.items = new Array(InitialCapacity);
|
|
110
|
+
this.head = 0;
|
|
111
|
+
this.count = 0;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Snapshot the queue from front to back.
|
|
115
|
+
*
|
|
116
|
+
* @returns A new array whose first item is the front of the queue.
|
|
117
|
+
*/
|
|
118
|
+
toArray() {
|
|
119
|
+
const values = new Array(this.count);
|
|
120
|
+
for (let index = 0; index < this.count; index += 1) {
|
|
121
|
+
values[index] = this.items[(this.head + index) % this.items.length];
|
|
122
|
+
}
|
|
123
|
+
return values;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Iterate front to back over a snapshot taken when the iterator is created.
|
|
127
|
+
*/
|
|
128
|
+
[Symbol.iterator]() {
|
|
129
|
+
return generatorFrom(this.toArray());
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Copy the live values into a fresh ring, front to back.
|
|
133
|
+
*/
|
|
134
|
+
resize(capacity) {
|
|
135
|
+
const next = new Array(capacity);
|
|
136
|
+
for (let index = 0; index < this.count; index += 1) {
|
|
137
|
+
next[index] = this.items[(this.head + index) % this.items.length];
|
|
138
|
+
}
|
|
139
|
+
this.items = next;
|
|
140
|
+
this.head = 0;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Halve an oversized ring after dequeueing leaves it at most quarter full.
|
|
144
|
+
*/
|
|
145
|
+
shrinkIfSparse() {
|
|
146
|
+
if (this.items.length <= InitialCapacity) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
if (this.count > this.items.length / 4) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
this.resize(this.items.length / 2);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Red-black binary search tree.
|
|
3
|
+
*
|
|
4
|
+
* The tree uses explicit null leaves (no sentinel) and stores a parent pointer
|
|
5
|
+
* on every node. Insertion and full CLRS-style deletion fix-up maintain the
|
|
6
|
+
* red-black invariants: the root is black, red nodes have black children, and
|
|
7
|
+
* every root-to-null path contains the same number of black nodes. These
|
|
8
|
+
* invariants bound the height by `2 * log2(n + 1)`, so `insert`, `has`,
|
|
9
|
+
* `delete`, `min`, `max`, `floor` and `ceil` are O(log n) worst case.
|
|
10
|
+
*/
|
|
11
|
+
import type { TreeOptions } from "./binarySearchTree.js";
|
|
12
|
+
export type { TreeOptions };
|
|
13
|
+
/**
|
|
14
|
+
* A self-balancing red-black binary search tree.
|
|
15
|
+
*
|
|
16
|
+
* Duplicate values (comparator result 0) are rejected. In-order iteration is
|
|
17
|
+
* sorted according to the configured comparator.
|
|
18
|
+
*/
|
|
19
|
+
export declare class RedBlackTree<T> implements Iterable<T> {
|
|
20
|
+
private rootNode;
|
|
21
|
+
private count;
|
|
22
|
+
private readonly compare;
|
|
23
|
+
/**
|
|
24
|
+
* Create an empty red-black tree.
|
|
25
|
+
*
|
|
26
|
+
* @param options - Comparator override; defaults to natural ordering.
|
|
27
|
+
*/
|
|
28
|
+
constructor(options?: TreeOptions<T>);
|
|
29
|
+
/**
|
|
30
|
+
* Number of stored values.
|
|
31
|
+
*/
|
|
32
|
+
get size(): number;
|
|
33
|
+
/**
|
|
34
|
+
* Height of the tree in nodes: 0 when empty, 1 for a leaf.
|
|
35
|
+
*
|
|
36
|
+
* Computed on demand in O(n) time; the red-black invariants bound it to
|
|
37
|
+
* O(log n).
|
|
38
|
+
*/
|
|
39
|
+
get height(): number;
|
|
40
|
+
/**
|
|
41
|
+
* Whether the tree contains no values.
|
|
42
|
+
*/
|
|
43
|
+
get isEmpty(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Insert a value unless an equivalent one is already stored.
|
|
46
|
+
*
|
|
47
|
+
* The new node starts red and is repaired by the standard CLRS insertion
|
|
48
|
+
* fix-up, including all LL/RR/LR/RL rotation shapes.
|
|
49
|
+
*
|
|
50
|
+
* @param value - Value to insert.
|
|
51
|
+
* @returns `true` if a node was added, `false` for an equivalent duplicate.
|
|
52
|
+
*/
|
|
53
|
+
insert(value: T): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Test whether an equivalent value is stored.
|
|
56
|
+
*
|
|
57
|
+
* @param value - Value to look up.
|
|
58
|
+
*/
|
|
59
|
+
has(value: T): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Delete the value equivalent to `value`.
|
|
62
|
+
*
|
|
63
|
+
* Handles zero-, one- and two-child removals and runs the full CLRS deletion
|
|
64
|
+
* fix-up, so all red-black invariants are restored before returning. A
|
|
65
|
+
* two-child node is replaced by its in-order successor.
|
|
66
|
+
*
|
|
67
|
+
* @param value - Value to remove.
|
|
68
|
+
* @returns `true` if a value was removed, `false` when none is equivalent.
|
|
69
|
+
*/
|
|
70
|
+
delete(value: T): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Minimum stored value according to the comparator, or `undefined` when
|
|
73
|
+
* empty.
|
|
74
|
+
*/
|
|
75
|
+
min(): T | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Maximum stored value according to the comparator, or `undefined` when
|
|
78
|
+
* empty.
|
|
79
|
+
*/
|
|
80
|
+
max(): T | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* Greatest stored value that is less than or equal to `value` in comparator
|
|
83
|
+
* order, or `undefined` when there is none.
|
|
84
|
+
*/
|
|
85
|
+
floor(value: T): T | undefined;
|
|
86
|
+
/**
|
|
87
|
+
* Least stored value that is greater than or equal to `value` in comparator
|
|
88
|
+
* order, or `undefined` when there is none.
|
|
89
|
+
*/
|
|
90
|
+
ceil(value: T): T | undefined;
|
|
91
|
+
/**
|
|
92
|
+
* Remove every value and reset the root to `null`.
|
|
93
|
+
*/
|
|
94
|
+
clear(): void;
|
|
95
|
+
/**
|
|
96
|
+
* Collect values in ascending comparator order.
|
|
97
|
+
*/
|
|
98
|
+
toArray(): T[];
|
|
99
|
+
/**
|
|
100
|
+
* Iterate values in ascending comparator order.
|
|
101
|
+
*
|
|
102
|
+
* Mutating the tree while iterating is not supported.
|
|
103
|
+
*/
|
|
104
|
+
[Symbol.iterator](): Generator<T>;
|
|
105
|
+
/**
|
|
106
|
+
* Check the tree's invariants.
|
|
107
|
+
*
|
|
108
|
+
* Verifies that the root is black, that no red node has a red child, that
|
|
109
|
+
* every root-to-null path has the same black height, that in-order values are
|
|
110
|
+
* strictly increasing, that parent links are consistent, and that the
|
|
111
|
+
* maintained size matches the reachable node count. An empty array means the
|
|
112
|
+
* tree is valid.
|
|
113
|
+
*/
|
|
114
|
+
validate(): string[];
|
|
115
|
+
/**
|
|
116
|
+
* Restore the red-black invariants after inserting a red leaf.
|
|
117
|
+
*/
|
|
118
|
+
private insertFixup;
|
|
119
|
+
/**
|
|
120
|
+
* Remove a known node, preserving the tree shape until fix-up runs.
|
|
121
|
+
*/
|
|
122
|
+
private deleteNode;
|
|
123
|
+
/**
|
|
124
|
+
* Replace the subtree rooted at `target` with the subtree `replacement`.
|
|
125
|
+
*/
|
|
126
|
+
private transplant;
|
|
127
|
+
/**
|
|
128
|
+
* Restore the red-black invariants after deleting a black node.
|
|
129
|
+
*/
|
|
130
|
+
private deleteFixup;
|
|
131
|
+
/**
|
|
132
|
+
* Left rotation around `node`; updates the root when needed.
|
|
133
|
+
*/
|
|
134
|
+
private rotateLeft;
|
|
135
|
+
/**
|
|
136
|
+
* Right rotation around `node`; updates the root when needed.
|
|
137
|
+
*/
|
|
138
|
+
private rotateRight;
|
|
139
|
+
private static isRed;
|
|
140
|
+
private static minimumNode;
|
|
141
|
+
private inorderValues;
|
|
142
|
+
}
|