@swal/edge-mesh 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +128 -0
- package/NOTICE +37 -0
- package/README.md +470 -2
- package/dist/adapters/gpu-agent/index.d.ts +61 -0
- package/dist/adapters/gpu-agent/index.d.ts.map +1 -0
- package/dist/adapters/gpu-agent/index.js +364 -0
- package/dist/adapters/gpu-agent/index.js.map +1 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.d.ts +19 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.js +51 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.js.map +1 -0
- package/dist/adapters/maloca-salud/eps-bridge.d.ts +15 -0
- package/dist/adapters/maloca-salud/eps-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/eps-bridge.js +27 -0
- package/dist/adapters/maloca-salud/eps-bridge.js.map +1 -0
- package/dist/adapters/maloca-salud/patient-profile.d.ts +20 -0
- package/dist/adapters/maloca-salud/patient-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/patient-profile.js +36 -0
- package/dist/adapters/maloca-salud/patient-profile.js.map +1 -0
- package/dist/adapters/maloca-salud/types.d.ts +40 -0
- package/dist/adapters/maloca-salud/types.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/types.js +2 -0
- package/dist/adapters/maloca-salud/types.js.map +1 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.d.ts +31 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.js +103 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.js.map +1 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.d.ts +14 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.js +40 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.js.map +1 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.d.ts +21 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.js +58 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.js.map +1 -0
- package/dist/adapters/maloca-veeduria/types.d.ts +30 -0
- package/dist/adapters/maloca-veeduria/types.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/types.js +2 -0
- package/dist/adapters/maloca-veeduria/types.js.map +1 -0
- package/dist/adapters/maloca-xavier/agent-profile.d.ts +32 -0
- package/dist/adapters/maloca-xavier/agent-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/agent-profile.js +56 -0
- package/dist/adapters/maloca-xavier/agent-profile.js.map +1 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.d.ts +27 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.js +58 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.js.map +1 -0
- package/dist/adapters/maloca-xavier/llm-router.d.ts +25 -0
- package/dist/adapters/maloca-xavier/llm-router.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/llm-router.js +58 -0
- package/dist/adapters/maloca-xavier/llm-router.js.map +1 -0
- package/dist/authz/index.d.ts +81 -0
- package/dist/authz/index.d.ts.map +1 -0
- package/dist/authz/index.js +271 -0
- package/dist/authz/index.js.map +1 -0
- package/dist/chat/index.d.ts +138 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +394 -0
- package/dist/chat/index.js.map +1 -0
- package/dist/chat/offline-queue.d.ts +32 -0
- package/dist/chat/offline-queue.d.ts.map +1 -0
- package/dist/chat/offline-queue.js +93 -0
- package/dist/chat/offline-queue.js.map +1 -0
- package/dist/core/DefaultEdgeMeshNode.d.ts +17 -0
- package/dist/core/DefaultEdgeMeshNode.d.ts.map +1 -0
- package/dist/core/DefaultEdgeMeshNode.js +57 -0
- package/dist/core/DefaultEdgeMeshNode.js.map +1 -0
- package/dist/core/node.d.ts +26 -0
- package/dist/core/node.d.ts.map +1 -0
- package/dist/core/node.js +16 -0
- package/dist/core/node.js.map +1 -0
- package/dist/edge-mesh.d.ts +139 -0
- package/dist/edge-mesh.d.ts.map +1 -0
- package/dist/edge-mesh.js +1146 -0
- package/dist/edge-mesh.js.map +1 -0
- package/dist/gos/GosBridge.d.ts +49 -0
- package/dist/gos/GosBridge.d.ts.map +1 -0
- package/dist/gos/GosBridge.js +133 -0
- package/dist/gos/GosBridge.js.map +1 -0
- package/dist/governance/authority.d.ts +44 -0
- package/dist/governance/authority.d.ts.map +1 -0
- package/dist/governance/authority.js +123 -0
- package/dist/governance/authority.js.map +1 -0
- package/dist/governance/index.d.ts +66 -0
- package/dist/governance/index.d.ts.map +1 -0
- package/dist/governance/index.js +210 -0
- package/dist/governance/index.js.map +1 -0
- package/dist/governance/merge.d.ts +31 -0
- package/dist/governance/merge.d.ts.map +1 -0
- package/dist/governance/merge.js +167 -0
- package/dist/governance/merge.js.map +1 -0
- package/dist/identity/index.d.ts +199 -0
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/identity/index.js +415 -0
- package/dist/identity/index.js.map +1 -0
- package/dist/index.d.ts +71 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +56 -0
- package/dist/index.js.map +1 -0
- package/dist/maloca/backoffice.d.ts +31 -0
- package/dist/maloca/backoffice.d.ts.map +1 -0
- package/dist/maloca/backoffice.js +40 -0
- package/dist/maloca/backoffice.js.map +1 -0
- package/dist/maloca/event-bus.d.ts +60 -0
- package/dist/maloca/event-bus.d.ts.map +1 -0
- package/dist/maloca/event-bus.js +175 -0
- package/dist/maloca/event-bus.js.map +1 -0
- package/dist/maloca/evidentia.d.ts +136 -0
- package/dist/maloca/evidentia.d.ts.map +1 -0
- package/dist/maloca/evidentia.js +447 -0
- package/dist/maloca/evidentia.js.map +1 -0
- package/dist/maloca/gateway/api.d.ts +146 -0
- package/dist/maloca/gateway/api.d.ts.map +1 -0
- package/dist/maloca/gateway/api.js +228 -0
- package/dist/maloca/gateway/api.js.map +1 -0
- package/dist/maloca/gateway/auth.d.ts +20 -0
- package/dist/maloca/gateway/auth.d.ts.map +1 -0
- package/dist/maloca/gateway/auth.js +115 -0
- package/dist/maloca/gateway/auth.js.map +1 -0
- package/dist/maloca/gateway/dashboard.d.ts +42 -0
- package/dist/maloca/gateway/dashboard.d.ts.map +1 -0
- package/dist/maloca/gateway/dashboard.js +67 -0
- package/dist/maloca/gateway/dashboard.js.map +1 -0
- package/dist/maloca/gateway/websocket.d.ts +34 -0
- package/dist/maloca/gateway/websocket.d.ts.map +1 -0
- package/dist/maloca/gateway/websocket.js +71 -0
- package/dist/maloca/gateway/websocket.js.map +1 -0
- package/dist/maloca/karma.d.ts +165 -0
- package/dist/maloca/karma.d.ts.map +1 -0
- package/dist/maloca/karma.js +307 -0
- package/dist/maloca/karma.js.map +1 -0
- package/dist/maloca/kernel.d.ts +20 -0
- package/dist/maloca/kernel.d.ts.map +1 -0
- package/dist/maloca/kernel.js +76 -0
- package/dist/maloca/kernel.js.map +1 -0
- package/dist/maloca/metadata.d.ts +30 -0
- package/dist/maloca/metadata.d.ts.map +1 -0
- package/dist/maloca/metadata.js +80 -0
- package/dist/maloca/metadata.js.map +1 -0
- package/dist/maloca/perfil.d.ts +57 -0
- package/dist/maloca/perfil.d.ts.map +1 -0
- package/dist/maloca/perfil.js +113 -0
- package/dist/maloca/perfil.js.map +1 -0
- package/dist/maloca/plugin-registry.d.ts +27 -0
- package/dist/maloca/plugin-registry.d.ts.map +1 -0
- package/dist/maloca/plugin-registry.js +76 -0
- package/dist/maloca/plugin-registry.js.map +1 -0
- package/dist/maloca/polygon-bridge.d.ts +63 -0
- package/dist/maloca/polygon-bridge.d.ts.map +1 -0
- package/dist/maloca/polygon-bridge.js +198 -0
- package/dist/maloca/polygon-bridge.js.map +1 -0
- package/dist/maloca/types.d.ts +44 -0
- package/dist/maloca/types.d.ts.map +1 -0
- package/dist/maloca/types.js +2 -0
- package/dist/maloca/types.js.map +1 -0
- package/dist/medico/aval.d.ts +149 -0
- package/dist/medico/aval.d.ts.map +1 -0
- package/dist/medico/aval.js +281 -0
- package/dist/medico/aval.js.map +1 -0
- package/dist/medico/canonica.d.ts +96 -0
- package/dist/medico/canonica.d.ts.map +1 -0
- package/dist/medico/canonica.js +148 -0
- package/dist/medico/canonica.js.map +1 -0
- package/dist/medico/credencial.d.ts +160 -0
- package/dist/medico/credencial.d.ts.map +1 -0
- package/dist/medico/credencial.js +240 -0
- package/dist/medico/credencial.js.map +1 -0
- package/dist/medico/index.d.ts +36 -0
- package/dist/medico/index.d.ts.map +1 -0
- package/dist/medico/index.js +39 -0
- package/dist/medico/index.js.map +1 -0
- package/dist/medico/malla.d.ts +218 -0
- package/dist/medico/malla.d.ts.map +1 -0
- package/dist/medico/malla.js +347 -0
- package/dist/medico/malla.js.map +1 -0
- package/dist/medico/registro-profesional.d.ts +84 -0
- package/dist/medico/registro-profesional.d.ts.map +1 -0
- package/dist/medico/registro-profesional.js +135 -0
- package/dist/medico/registro-profesional.js.map +1 -0
- package/dist/medico/registro.d.ts +149 -0
- package/dist/medico/registro.d.ts.map +1 -0
- package/dist/medico/registro.js +173 -0
- package/dist/medico/registro.js.map +1 -0
- package/dist/medico/types.d.ts +287 -0
- package/dist/medico/types.d.ts.map +1 -0
- package/dist/medico/types.js +135 -0
- package/dist/medico/types.js.map +1 -0
- package/dist/medico/verificacion-registro.d.ts +300 -0
- package/dist/medico/verificacion-registro.d.ts.map +1 -0
- package/dist/medico/verificacion-registro.js +319 -0
- package/dist/medico/verificacion-registro.js.map +1 -0
- package/dist/mesh/index.d.ts +457 -0
- package/dist/mesh/index.d.ts.map +1 -0
- package/dist/mesh/index.js +929 -0
- package/dist/mesh/index.js.map +1 -0
- package/dist/namespaces/encrypted-plugin.d.ts +56 -0
- package/dist/namespaces/encrypted-plugin.d.ts.map +1 -0
- package/dist/namespaces/encrypted-plugin.js +173 -0
- package/dist/namespaces/encrypted-plugin.js.map +1 -0
- package/dist/namespaces/index.d.ts +52 -0
- package/dist/namespaces/index.d.ts.map +1 -0
- package/dist/namespaces/index.js +134 -0
- package/dist/namespaces/index.js.map +1 -0
- package/dist/namespaces/ivn-proofs.d.ts +54 -0
- package/dist/namespaces/ivn-proofs.d.ts.map +1 -0
- package/dist/namespaces/ivn-proofs.js +162 -0
- package/dist/namespaces/ivn-proofs.js.map +1 -0
- package/dist/namespaces/offers-gossip.d.ts +95 -0
- package/dist/namespaces/offers-gossip.d.ts.map +1 -0
- package/dist/namespaces/offers-gossip.js +213 -0
- package/dist/namespaces/offers-gossip.js.map +1 -0
- package/dist/node-memory/idb-store.d.ts +22 -0
- package/dist/node-memory/idb-store.d.ts.map +1 -0
- package/dist/node-memory/idb-store.js +154 -0
- package/dist/node-memory/idb-store.js.map +1 -0
- package/dist/node-memory/index.d.ts +14 -0
- package/dist/node-memory/index.d.ts.map +1 -0
- package/dist/node-memory/index.js +159 -0
- package/dist/node-memory/index.js.map +1 -0
- package/dist/node-memory/sync-flush.d.ts +11 -0
- package/dist/node-memory/sync-flush.d.ts.map +1 -0
- package/dist/node-memory/sync-flush.js +37 -0
- package/dist/node-memory/sync-flush.js.map +1 -0
- package/dist/node-memory/types.d.ts +34 -0
- package/dist/node-memory/types.d.ts.map +1 -0
- package/dist/node-memory/types.js +2 -0
- package/dist/node-memory/types.js.map +1 -0
- package/dist/node-memory/xavier-store.d.ts +12 -0
- package/dist/node-memory/xavier-store.d.ts.map +1 -0
- package/dist/node-memory/xavier-store.js +75 -0
- package/dist/node-memory/xavier-store.js.map +1 -0
- package/dist/op-log/index.d.ts +49 -0
- package/dist/op-log/index.d.ts.map +1 -0
- package/dist/op-log/index.js +190 -0
- package/dist/op-log/index.js.map +1 -0
- package/dist/presence/health.d.ts +54 -0
- package/dist/presence/health.d.ts.map +1 -0
- package/dist/presence/health.js +139 -0
- package/dist/presence/health.js.map +1 -0
- package/dist/presence/index.d.ts +85 -0
- package/dist/presence/index.d.ts.map +1 -0
- package/dist/presence/index.js +255 -0
- package/dist/presence/index.js.map +1 -0
- package/dist/presence/peer-health.d.ts +40 -0
- package/dist/presence/peer-health.d.ts.map +1 -0
- package/dist/presence/peer-health.js +118 -0
- package/dist/presence/peer-health.js.map +1 -0
- package/dist/protocol/canonical.d.ts +10 -0
- package/dist/protocol/canonical.d.ts.map +1 -0
- package/dist/protocol/canonical.js +32 -0
- package/dist/protocol/canonical.js.map +1 -0
- package/dist/protocol/crypto.d.ts +299 -0
- package/dist/protocol/crypto.d.ts.map +1 -0
- package/dist/protocol/crypto.js +739 -0
- package/dist/protocol/crypto.js.map +1 -0
- package/dist/protocol/index.d.ts +30 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +116 -0
- package/dist/protocol/index.js.map +1 -0
- package/dist/protocol/utils.d.ts +5 -0
- package/dist/protocol/utils.d.ts.map +1 -0
- package/dist/protocol/utils.js +27 -0
- package/dist/protocol/utils.js.map +1 -0
- package/dist/salones/manager.d.ts +100 -0
- package/dist/salones/manager.d.ts.map +1 -0
- package/dist/salones/manager.js +240 -0
- package/dist/salones/manager.js.map +1 -0
- package/dist/security/rate-limiter.d.ts +13 -0
- package/dist/security/rate-limiter.d.ts.map +1 -0
- package/dist/security/rate-limiter.js +32 -0
- package/dist/security/rate-limiter.js.map +1 -0
- package/dist/snapshot/index.d.ts +90 -0
- package/dist/snapshot/index.d.ts.map +1 -0
- package/dist/snapshot/index.js +189 -0
- package/dist/snapshot/index.js.map +1 -0
- package/dist/storage/index.d.ts +49 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +176 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/optimizer.d.ts +28 -0
- package/dist/storage/optimizer.d.ts.map +1 -0
- package/dist/storage/optimizer.js +50 -0
- package/dist/storage/optimizer.js.map +1 -0
- package/dist/storage/ydoc-persistence.d.ts +27 -0
- package/dist/storage/ydoc-persistence.d.ts.map +1 -0
- package/dist/storage/ydoc-persistence.js +128 -0
- package/dist/storage/ydoc-persistence.js.map +1 -0
- package/dist/sync/ChunkSyncManager.d.ts +41 -0
- package/dist/sync/ChunkSyncManager.d.ts.map +1 -0
- package/dist/sync/ChunkSyncManager.js +115 -0
- package/dist/sync/ChunkSyncManager.js.map +1 -0
- package/dist/sync/conflict-resolver.d.ts +33 -0
- package/dist/sync/conflict-resolver.d.ts.map +1 -0
- package/dist/sync/conflict-resolver.js +54 -0
- package/dist/sync/conflict-resolver.js.map +1 -0
- package/dist/sync/engine.d.ts +168 -0
- package/dist/sync/engine.d.ts.map +1 -0
- package/dist/sync/engine.js +315 -0
- package/dist/sync/engine.js.map +1 -0
- package/dist/sync/index.d.ts +3 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +3 -0
- package/dist/sync/index.js.map +1 -0
- package/dist/transport/TorTransportAdapter.d.ts +70 -0
- package/dist/transport/TorTransportAdapter.d.ts.map +1 -0
- package/dist/transport/TorTransportAdapter.js +192 -0
- package/dist/transport/TorTransportAdapter.js.map +1 -0
- package/dist/transport/memory.d.ts +31 -0
- package/dist/transport/memory.d.ts.map +1 -0
- package/dist/transport/memory.js +114 -0
- package/dist/transport/memory.js.map +1 -0
- package/dist/transport/peerjs.d.ts +45 -0
- package/dist/transport/peerjs.d.ts.map +1 -0
- package/dist/transport/peerjs.js +301 -0
- package/dist/transport/peerjs.js.map +1 -0
- package/dist/transport/pqc-handshake.d.ts +72 -0
- package/dist/transport/pqc-handshake.d.ts.map +1 -0
- package/dist/transport/pqc-handshake.js +129 -0
- package/dist/transport/pqc-handshake.js.map +1 -0
- package/dist/transport/relay-config.d.ts +11 -0
- package/dist/transport/relay-config.d.ts.map +1 -0
- package/dist/transport/relay-config.js +48 -0
- package/dist/transport/relay-config.js.map +1 -0
- package/dist/transport/relay-server.d.ts +37 -0
- package/dist/transport/relay-server.d.ts.map +1 -0
- package/dist/transport/relay-server.js +230 -0
- package/dist/transport/relay-server.js.map +1 -0
- package/dist/transport/tor.d.ts +47 -0
- package/dist/transport/tor.d.ts.map +1 -0
- package/dist/transport/tor.js +158 -0
- package/dist/transport/tor.js.map +1 -0
- package/dist/transport/types.d.ts +34 -0
- package/dist/transport/types.d.ts.map +1 -0
- package/dist/transport/types.js +2 -0
- package/dist/transport/types.js.map +1 -0
- package/dist/types/index.d.ts +293 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +73 -0
- package/dist/types/index.js.map +1 -0
- package/dist/web/admission.d.ts +24 -0
- package/dist/web/admission.d.ts.map +1 -0
- package/dist/web/admission.js +41 -0
- package/dist/web/admission.js.map +1 -0
- package/dist/web/crypto.d.ts +18 -0
- package/dist/web/crypto.d.ts.map +1 -0
- package/dist/web/crypto.js +78 -0
- package/dist/web/crypto.js.map +1 -0
- package/dist/web/exchange.d.ts +23 -0
- package/dist/web/exchange.d.ts.map +1 -0
- package/dist/web/exchange.js +54 -0
- package/dist/web/exchange.js.map +1 -0
- package/dist/web/fragment.d.ts +58 -0
- package/dist/web/fragment.d.ts.map +1 -0
- package/dist/web/fragment.js +198 -0
- package/dist/web/fragment.js.map +1 -0
- package/dist/web/index.d.ts +25 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +14 -0
- package/dist/web/index.js.map +1 -0
- package/dist/web/merge/index.d.ts +104 -0
- package/dist/web/merge/index.d.ts.map +1 -0
- package/dist/web/merge/index.js +236 -0
- package/dist/web/merge/index.js.map +1 -0
- package/dist/web/oplog/hlc.d.ts +19 -0
- package/dist/web/oplog/hlc.d.ts.map +1 -0
- package/dist/web/oplog/hlc.js +39 -0
- package/dist/web/oplog/hlc.js.map +1 -0
- package/dist/web/oplog/index.d.ts +10 -0
- package/dist/web/oplog/index.d.ts.map +1 -0
- package/dist/web/oplog/index.js +6 -0
- package/dist/web/oplog/index.js.map +1 -0
- package/dist/web/oplog/log.d.ts +182 -0
- package/dist/web/oplog/log.d.ts.map +1 -0
- package/dist/web/oplog/log.js +693 -0
- package/dist/web/oplog/log.js.map +1 -0
- package/dist/web/oplog/store.d.ts +40 -0
- package/dist/web/oplog/store.d.ts.map +1 -0
- package/dist/web/oplog/store.js +85 -0
- package/dist/web/oplog/store.js.map +1 -0
- package/dist/web/oplog/sync.d.ts +54 -0
- package/dist/web/oplog/sync.d.ts.map +1 -0
- package/dist/web/oplog/sync.js +162 -0
- package/dist/web/oplog/sync.js.map +1 -0
- package/dist/web/oplog/types.d.ts +119 -0
- package/dist/web/oplog/types.d.ts.map +1 -0
- package/dist/web/oplog/types.js +2 -0
- package/dist/web/oplog/types.js.map +1 -0
- package/dist/web/pairing.d.ts +186 -0
- package/dist/web/pairing.d.ts.map +1 -0
- package/dist/web/pairing.js +395 -0
- package/dist/web/pairing.js.map +1 -0
- package/dist/web/pq.d.ts +36 -0
- package/dist/web/pq.d.ts.map +1 -0
- package/dist/web/pq.js +59 -0
- package/dist/web/pq.js.map +1 -0
- package/dist/web/provider.d.ts +188 -0
- package/dist/web/provider.d.ts.map +1 -0
- package/dist/web/provider.js +2042 -0
- package/dist/web/provider.js.map +1 -0
- package/dist/web/rooms.d.ts +20 -0
- package/dist/web/rooms.d.ts.map +1 -0
- package/dist/web/rooms.js +51 -0
- package/dist/web/rooms.js.map +1 -0
- package/dist/web/rotation.d.ts +73 -0
- package/dist/web/rotation.d.ts.map +1 -0
- package/dist/web/rotation.js +130 -0
- package/dist/web/rotation.js.map +1 -0
- package/dist/web/secstate.d.ts +213 -0
- package/dist/web/secstate.d.ts.map +1 -0
- package/dist/web/secstate.js +789 -0
- package/dist/web/secstate.js.map +1 -0
- package/dist/web/store.d.ts +9 -0
- package/dist/web/store.d.ts.map +1 -0
- package/dist/web/store.js +32 -0
- package/dist/web/store.js.map +1 -0
- package/dist/web/transports/loopback.d.ts +11 -0
- package/dist/web/transports/loopback.d.ts.map +1 -0
- package/dist/web/transports/loopback.js +97 -0
- package/dist/web/transports/loopback.js.map +1 -0
- package/dist/web/transports/qr-sdp.d.ts +27 -0
- package/dist/web/transports/qr-sdp.d.ts.map +1 -0
- package/dist/web/transports/qr-sdp.js +131 -0
- package/dist/web/transports/qr-sdp.js.map +1 -0
- package/dist/web/transports/ws.d.ts +12 -0
- package/dist/web/transports/ws.d.ts.map +1 -0
- package/dist/web/transports/ws.js +139 -0
- package/dist/web/transports/ws.js.map +1 -0
- package/dist/web/trust/canonical.d.ts +8 -0
- package/dist/web/trust/canonical.d.ts.map +1 -0
- package/dist/web/trust/canonical.js +27 -0
- package/dist/web/trust/canonical.js.map +1 -0
- package/dist/web/trust/docs.d.ts +51 -0
- package/dist/web/trust/docs.d.ts.map +1 -0
- package/dist/web/trust/docs.js +170 -0
- package/dist/web/trust/docs.js.map +1 -0
- package/dist/web/trust/index.d.ts +10 -0
- package/dist/web/trust/index.d.ts.map +1 -0
- package/dist/web/trust/index.js +7 -0
- package/dist/web/trust/index.js.map +1 -0
- package/dist/web/trust/keys.d.ts +37 -0
- package/dist/web/trust/keys.d.ts.map +1 -0
- package/dist/web/trust/keys.js +75 -0
- package/dist/web/trust/keys.js.map +1 -0
- package/dist/web/trust/store.d.ts +150 -0
- package/dist/web/trust/store.d.ts.map +1 -0
- package/dist/web/trust/store.js +587 -0
- package/dist/web/trust/store.js.map +1 -0
- package/dist/web/trust/types.d.ts +134 -0
- package/dist/web/trust/types.d.ts.map +1 -0
- package/dist/web/trust/types.js +4 -0
- package/dist/web/trust/types.js.map +1 -0
- package/dist/web/types.d.ts +115 -0
- package/dist/web/types.d.ts.map +1 -0
- package/dist/web/types.js +2 -0
- package/dist/web/types.js.map +1 -0
- package/dist/web/util.d.ts +12 -0
- package/dist/web/util.d.ts.map +1 -0
- package/dist/web/util.js +54 -0
- package/dist/web/util.js.map +1 -0
- package/dist/web/webrtc.d.ts +35 -0
- package/dist/web/webrtc.d.ts.map +1 -0
- package/dist/web/webrtc.js +304 -0
- package/dist/web/webrtc.js.map +1 -0
- package/package.json +138 -4
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import { isEpoch, type Role, type TrustRoot } from "./admission.js";
|
|
2
|
+
import { type RotDoc } from "./rotation.js";
|
|
3
|
+
import type { MeshStore } from "./store.js";
|
|
4
|
+
import { type Signer } from "./trust/keys.js";
|
|
5
|
+
import { type TrustStore } from "./trust/store.js";
|
|
6
|
+
import type { Grant, Revocation, TrustSchema } from "./trust/types.js";
|
|
7
|
+
/** Module every mesh grant names (apps may add their own modules to the schema). */
|
|
8
|
+
export declare const MESH_MODULE = "mesh";
|
|
9
|
+
export declare const MESH_SCHEMA: TrustSchema;
|
|
10
|
+
/** A device's key-agreement keys (rotation wraps), signed by the device's own ML-DSA-65 identity key. */
|
|
11
|
+
export interface KexDoc {
|
|
12
|
+
t: "kex";
|
|
13
|
+
v: 1;
|
|
14
|
+
inst: string;
|
|
15
|
+
dev: string;
|
|
16
|
+
/** raw P-256 public key, base64url */
|
|
17
|
+
ecdh: string;
|
|
18
|
+
/** ML-KEM-768 encapsulation key, base64url */
|
|
19
|
+
kem: string;
|
|
20
|
+
/** the device's own counter: the highest one wins (a device that changes its keys publishes n + 1) */
|
|
21
|
+
n: number;
|
|
22
|
+
sig: string;
|
|
23
|
+
}
|
|
24
|
+
export type SecDoc = Grant | Revocation | KexDoc | RotDoc;
|
|
25
|
+
export interface AddOutcome {
|
|
26
|
+
status: "accepted" | "duplicate" | "pending" | "rejected";
|
|
27
|
+
id?: string;
|
|
28
|
+
reason?: string;
|
|
29
|
+
}
|
|
30
|
+
/** Members an admin's grants can make (its lowest grant ids count; R5-S3: an admin cannot flood the recipient list). */
|
|
31
|
+
export declare const MAX_MEMBERS_PER_ADMIN = 256;
|
|
32
|
+
/** Grants of one non-root issuer kept at all (beyond: the cap-N smallest ids are kept, see `applyCap`). */
|
|
33
|
+
export declare const MAX_STORED_PER_ISSUER: number;
|
|
34
|
+
/** Revocations of one target grant by one issuer kept (beyond: the cap-N smallest ids are kept, see `applyCap`). */
|
|
35
|
+
export declare const MAX_REVS_PER_ISSUER_TARGET = 4;
|
|
36
|
+
/** Recent owner rotations kept in full (with their wraps) to serve stragglers; their cuts are kept for good. */
|
|
37
|
+
export declare const MAX_ROTATIONS_KEPT = 32;
|
|
38
|
+
/** R6-S5: a count alone does not bound memory: one deferred document may carry a large `upTo`/wrap list. */
|
|
39
|
+
export declare const MAX_DOC_BYTES: number;
|
|
40
|
+
/** R6-S5: total bytes held by deferred documents (the auditor measured 126 MiB from 64 deferred revocations). */
|
|
41
|
+
export declare const MAX_DEFERRED_BYTES: number;
|
|
42
|
+
export interface MemberInfo {
|
|
43
|
+
deviceId: string;
|
|
44
|
+
pub: string;
|
|
45
|
+
role: Exclude<Role, "owner">;
|
|
46
|
+
grant: Grant;
|
|
47
|
+
}
|
|
48
|
+
export declare class SecurityState {
|
|
49
|
+
readonly trust: TrustStore;
|
|
50
|
+
readonly root: TrustRoot;
|
|
51
|
+
private readonly store;
|
|
52
|
+
private readonly now;
|
|
53
|
+
private readonly kex;
|
|
54
|
+
private readonly rots;
|
|
55
|
+
private readonly cuts;
|
|
56
|
+
/** inventory: keys of every document held */
|
|
57
|
+
private readonly have;
|
|
58
|
+
/** keys of documents dropped for good (superseded key records, pruned rotations): never asked for again */
|
|
59
|
+
private readonly gone;
|
|
60
|
+
/** hashes of whole documents that failed verification (a forged copy never blocks the genuine one) */
|
|
61
|
+
private readonly bad;
|
|
62
|
+
/** R6-B1: documents waiting for their parent/target, by the hash of the WHOLE document (never by the id it claims) */
|
|
63
|
+
private readonly deferred;
|
|
64
|
+
/** R6-S2b: who sent each parked document, so the retry charges that sender's waiting slots and not the parent's. */
|
|
65
|
+
private readonly deferredFrom;
|
|
66
|
+
/** R6-S5: bytes held by `deferred` (kept exact: every set and every drop goes through defer/unpark) */
|
|
67
|
+
private deferredBytesHeld;
|
|
68
|
+
private readonly listeners;
|
|
69
|
+
private queue;
|
|
70
|
+
private capIndex;
|
|
71
|
+
version: number;
|
|
72
|
+
private constructor();
|
|
73
|
+
static open(o: {
|
|
74
|
+
root: TrustRoot;
|
|
75
|
+
store: MeshStore;
|
|
76
|
+
schema?: TrustSchema;
|
|
77
|
+
now?: () => number;
|
|
78
|
+
}): Promise<SecurityState>;
|
|
79
|
+
get inst(): string;
|
|
80
|
+
onChange(cb: () => void): () => void;
|
|
81
|
+
/**
|
|
82
|
+
* Add documents (any order, any source). Serialized; listeners fire once when anything was accepted.
|
|
83
|
+
* `opts.from` (R6-S2b) is the transport-level id of the peer that sent them: the trust store charges the waiting
|
|
84
|
+
* slots they park to that sender, so one peer cannot take the whole waiting set by signing with fresh random keys.
|
|
85
|
+
* Leave it undefined for local/own documents (a pair's own, ours, restored from storage): no sender is charged.
|
|
86
|
+
*/
|
|
87
|
+
addMany(xs: readonly unknown[], opts?: {
|
|
88
|
+
from?: string;
|
|
89
|
+
}): Promise<AddOutcome[]>;
|
|
90
|
+
add(x: unknown): Promise<AddOutcome>;
|
|
91
|
+
private ingest;
|
|
92
|
+
/**
|
|
93
|
+
* Park a document until its parent/target arrives. Returns a reason if it was dropped instead.
|
|
94
|
+
* R6-B1: keyed by the hash of the WHOLE document received, never by the id it claims, so a forged copy parked under
|
|
95
|
+
* somebody else's id can neither shadow the genuine one nor take its key out of `missing()`.
|
|
96
|
+
* R6-S2b: remembers which peer sent it, so the retry charges that sender's waiting slots and not the parent's.
|
|
97
|
+
*/
|
|
98
|
+
private defer;
|
|
99
|
+
/** Drop a parked document and give its bytes back. */
|
|
100
|
+
private unpark;
|
|
101
|
+
/** Bytes held by parked documents (R6-S5 accounting). */
|
|
102
|
+
deferredBytes(): number;
|
|
103
|
+
private retryDeferred;
|
|
104
|
+
private ingestTrust;
|
|
105
|
+
/**
|
|
106
|
+
* R6-S4 (order-independent caps). A cap used to be "the first N that arrive are kept", so two devices holding the
|
|
107
|
+
* same documents concluded different things: different revocations kept give a different seq cut-off, and different
|
|
108
|
+
* grants kept give a different membership. The rule is now on the set, not on the arrival order: for each bucket
|
|
109
|
+
* (grants per issuer, revocations per (issuer, target)) the kept documents are the cap-N ones with the SMALLEST
|
|
110
|
+
* content address, and a document arriving with a smaller address evicts the largest kept one. Keeping the smallest
|
|
111
|
+
* ids is incremental (each arrival leaves the cap-N smallest of everything seen so far), so every device ends with
|
|
112
|
+
* the same set whatever the order, and it agrees with the existing `withinCap` rule for members.
|
|
113
|
+
* Returns true when the document just accepted is itself the one pushed out.
|
|
114
|
+
*/
|
|
115
|
+
private applyCap;
|
|
116
|
+
/** Identity key of a device: the root's, or the subject key of any of its grants (revoked ones too). */
|
|
117
|
+
identityOf(dev: string): string | undefined;
|
|
118
|
+
private ingestKex;
|
|
119
|
+
private ingestRot;
|
|
120
|
+
private saving;
|
|
121
|
+
private dirty;
|
|
122
|
+
/** Persist, coalesced: at most one write in flight and one more queued. */
|
|
123
|
+
private scheduleSave;
|
|
124
|
+
/** Resolves once everything accepted so far is in the local store. */
|
|
125
|
+
flush(): Promise<void>;
|
|
126
|
+
private save;
|
|
127
|
+
private load;
|
|
128
|
+
/** Grant ids executed by an owner rotation (authoritative cuts). */
|
|
129
|
+
isCut(grantId: string): boolean;
|
|
130
|
+
executedCuts(): string[];
|
|
131
|
+
private chainOf;
|
|
132
|
+
/** The grant was cut off by an owner rotation (itself or an ancestor: revocations cascade). */
|
|
133
|
+
private executed;
|
|
134
|
+
/** R5-S3: an admin's grants count up to MAX_MEMBERS_PER_ADMIN (its lowest grant ids: the same on every device). */
|
|
135
|
+
private withinCap;
|
|
136
|
+
/** The grant that makes `dev` a member now (best role), or null. Never null for the root (its own authority). */
|
|
137
|
+
memberGrant(dev: string): Grant | null;
|
|
138
|
+
roleOf(dev: string): Role | null;
|
|
139
|
+
/** Every device with a grant (members and former members), except the root. */
|
|
140
|
+
knownDevices(): string[];
|
|
141
|
+
/**
|
|
142
|
+
* Results of the whole-set queries. Valid while no document is added (both counters unchanged)
|
|
143
|
+
* AND within the same second: membership depends on the clock (grants expire / start), so a
|
|
144
|
+
* cache keyed only on versions would keep an expired member listed until the next document.
|
|
145
|
+
*/
|
|
146
|
+
private memo;
|
|
147
|
+
private memoFor;
|
|
148
|
+
members(): MemberInfo[];
|
|
149
|
+
private computeMembers;
|
|
150
|
+
/** Has grants, none of which makes it a member any more. */
|
|
151
|
+
isOut(dev: string): boolean;
|
|
152
|
+
/**
|
|
153
|
+
* R5-B2: devices that lost membership through a revocation the owner has not executed yet: whoever they are, and
|
|
154
|
+
* whenever they were paired, they may hold the current key. Executed = cut by an owner rotation (itself or an
|
|
155
|
+
* ancestor). Returns the devices, the grant ids to cut and the revocation documents behind them.
|
|
156
|
+
*/
|
|
157
|
+
unexecuted(only?: ReadonlySet<string>): {
|
|
158
|
+
devices: string[];
|
|
159
|
+
cut: string[];
|
|
160
|
+
revs: string[];
|
|
161
|
+
};
|
|
162
|
+
private computeUnexecuted;
|
|
163
|
+
/** Best key-agreement record of a device (root or one with a grant). */
|
|
164
|
+
keyAgreement(dev: string): {
|
|
165
|
+
ecdh: string;
|
|
166
|
+
kem: string;
|
|
167
|
+
} | null;
|
|
168
|
+
kexDoc(dev: string): KexDoc | null;
|
|
169
|
+
rotations(): Array<RotDoc & {
|
|
170
|
+
id: string;
|
|
171
|
+
}>;
|
|
172
|
+
rotation(id: string): (RotDoc & {
|
|
173
|
+
id: string;
|
|
174
|
+
}) | undefined;
|
|
175
|
+
inventory(): string[];
|
|
176
|
+
/**
|
|
177
|
+
* Keys among `ids` this device does not hold (nor dropped for good, nor knows to be bad).
|
|
178
|
+
* R6-B1: parked documents do NOT hide a key. Only a VERIFIED (accepted) document with that id stops it from being
|
|
179
|
+
* asked for again: otherwise one forged copy parked under an id withholds the genuine one from every peer.
|
|
180
|
+
*/
|
|
181
|
+
missing(ids: readonly unknown[]): string[];
|
|
182
|
+
get(keys: readonly string[]): Promise<SecDoc[]>;
|
|
183
|
+
/** Grant for `subjectPub` signed by `signer` (the root, or a member whose own grant may delegate). */
|
|
184
|
+
issueGrant(signer: Signer, subjectPub: string, o: {
|
|
185
|
+
role: "admin" | "member";
|
|
186
|
+
name?: string;
|
|
187
|
+
epoch?: number;
|
|
188
|
+
permissions?: Record<string, "ver" | "editar" | "administrar">;
|
|
189
|
+
now?: number;
|
|
190
|
+
}): Promise<Grant>;
|
|
191
|
+
/**
|
|
192
|
+
* Revocations of every grant of `target` that `signer` may revoke (root: all of them; an admin: those it issued,
|
|
193
|
+
* directly or below). `heads` (web/oplog `headIds()`) keep the target's history up to there; omitted = none kept.
|
|
194
|
+
*/
|
|
195
|
+
revocationsFor(signer: Signer, target: string, o?: {
|
|
196
|
+
heads?: Readonly<Record<string, number | {
|
|
197
|
+
seq: number;
|
|
198
|
+
id: string;
|
|
199
|
+
}>>;
|
|
200
|
+
reason?: string;
|
|
201
|
+
now?: number;
|
|
202
|
+
}): Promise<Revocation[]>;
|
|
203
|
+
/** This device's own key-agreement record (counter `n` above every record of it seen so far). */
|
|
204
|
+
kexRecord(signer: Signer, ecdh: string, kem: string): Promise<KexDoc>;
|
|
205
|
+
}
|
|
206
|
+
/** A web/trust Signer over a mesh vault (ML-DSA-65 identity key). */
|
|
207
|
+
export declare function vaultSigner(v: {
|
|
208
|
+
deviceId: string;
|
|
209
|
+
devicePublicKey: Uint8Array;
|
|
210
|
+
sign(d: Uint8Array): Promise<Uint8Array>;
|
|
211
|
+
}, pubB64: string): Signer;
|
|
212
|
+
export { isEpoch };
|
|
213
|
+
//# sourceMappingURL=secstate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secstate.d.ts","sourceRoot":"","sources":["../../src/web/secstate.ts"],"names":[],"mappings":"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"}
|