@wowok/wowok 2.2.16 → 2.3.1
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/dist/esm/Transaction-CnEnSz1Q.mjs +1 -0
- package/dist/esm/arb-2vqYhvkj.mjs +1 -0
- package/dist/esm/base-Diz77Zc6.mjs +1 -0
- package/dist/esm/bcs/index.d.mts +3 -0
- package/dist/esm/bcs/index.mjs +1 -0
- package/dist/esm/bcs-DDXHXJXy.mjs +1 -0
- package/dist/esm/cache-DTr3MtXv.d.mts +38 -0
- package/dist/esm/call-57y0AfFd.mjs +1 -0
- package/dist/esm/chunk-D7D4PA-g.mjs +1 -0
- package/dist/esm/client/index.d.mts +3 -0
- package/dist/esm/client/index.mjs +1 -0
- package/dist/esm/client-BgCe6jlf.mjs +1 -0
- package/dist/esm/common-DAjh24WX.mjs +1 -0
- package/dist/esm/config-lfC3m3Qq.d.mts +22 -0
- package/dist/esm/cryptography/index.d.mts +2 -0
- package/dist/esm/cryptography/index.mjs +1 -0
- package/dist/esm/ed25519-DZsBW8ka.mjs +1 -0
- package/dist/esm/effects-lLpKpzCX.mjs +1 -0
- package/dist/esm/falcon512-DqfhrRs6.mjs +1 -0
- package/dist/esm/faucet/index.d.mts +2 -0
- package/dist/esm/faucet/index.mjs +1 -0
- package/dist/esm/faucet-BhrCl1M5.mjs +1 -0
- package/dist/esm/graphql/index.d.mts +2 -0
- package/dist/esm/graphql/index.mjs +1 -0
- package/dist/esm/graphql/schema/index.d.mts +10 -0
- package/dist/esm/graphql/schema/index.mjs +1 -0
- package/dist/esm/graphql--097PLGc.mjs +1 -0
- package/dist/esm/grpc/index.d.mts +2 -0
- package/dist/esm/grpc/index.mjs +1 -0
- package/dist/esm/grpc-DELIRSmn.mjs +1 -0
- package/dist/esm/index-B-cxGU73.d.mts +3059 -0
- package/dist/esm/index-CGqMj3cG.d.mts +67 -0
- package/dist/esm/index-D8z18cO-.d.mts +19933 -0
- package/dist/esm/index-uCW4oBx-.d.mts +24 -0
- package/dist/esm/index.d.mts +9 -0
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/jsonRpc/index.d.mts +2 -0
- package/dist/esm/jsonRpc/index.mjs +1 -0
- package/dist/esm/jsonRpc-BpByny_f.mjs +1 -0
- package/dist/esm/keypair-1v1DkI3F.mjs +1 -0
- package/dist/esm/keypairs/ed25519/index.d.mts +2 -0
- package/dist/esm/keypairs/ed25519/index.mjs +1 -0
- package/dist/esm/keypairs/falcon512/index.d.mts +2 -0
- package/dist/esm/keypairs/falcon512/index.mjs +1 -0
- package/dist/esm/keypairs/passkey/index.d.mts +2 -0
- package/dist/esm/keypairs/passkey/index.mjs +1 -0
- package/dist/esm/keypairs/secp256k1/index.d.mts +2 -0
- package/dist/esm/keypairs/secp256k1/index.mjs +1 -0
- package/dist/esm/keypairs/secp256r1/index.d.mts +2 -0
- package/dist/esm/keypairs/secp256r1/index.mjs +1 -0
- package/dist/esm/local-CjihK7WF.mjs +1 -0
- package/dist/esm/local-CtSmnSPu.d.mts +101 -0
- package/dist/esm/messenger-C8iIIH8a.mjs +1 -0
- package/dist/esm/messenger-api-CTTyAaH7.mjs +1 -0
- package/dist/esm/mnemonics-C6qlqegr.mjs +1 -0
- package/dist/esm/multisig/index.d.mts +2 -0
- package/dist/esm/multisig/index.mjs +1 -0
- package/dist/esm/network-DeigCh6J.mjs +1 -0
- package/dist/esm/object-CYKpq_cj.mjs +1 -0
- package/dist/esm/passkey-Dh6btBAD.mjs +1 -0
- package/dist/esm/pqxdh-CKkqzvPb.d.mts +42 -0
- package/dist/esm/proof-C5WiT6s8.mjs +1 -0
- package/dist/esm/publickey-6O2imwxm.mjs +1 -0
- package/dist/esm/publickey-BPT9QiGv.mjs +1 -0
- package/dist/esm/publickey-Bf71fssx.mjs +1 -0
- package/dist/esm/publickey-C6fyN2VZ.mjs +1 -0
- package/dist/esm/publickey-CltJ4l8n.mjs +1 -0
- package/dist/esm/publickey-qLbcTInT.mjs +1 -0
- package/dist/esm/received-DbaY6EZw.mjs +1 -0
- package/dist/esm/secp256k1-BZUdTK1D.mjs +1 -0
- package/dist/esm/secp256r1-COXOSFIF.mjs +1 -0
- package/dist/esm/service-BQ3NbWhf.mjs +1 -0
- package/dist/esm/sui-types-CuBKFvrd.mjs +1 -0
- package/dist/esm/transactions/index.d.mts +2 -0
- package/dist/esm/transactions/index.mjs +1 -0
- package/dist/esm/transactions-D9q2j6ZA.mjs +1 -0
- package/dist/esm/type-tag-serializer-BOCNO96r.d.mts +68 -0
- package/dist/esm/types-CiFC9IV5.d.mts +74 -0
- package/dist/esm/util-JBmJ6s-D.mjs +1 -0
- package/dist/esm/utils/index.d.mts +3 -0
- package/dist/esm/utils/index.mjs +1 -0
- package/dist/esm/utils-IlS3fpdQ.mjs +1 -0
- package/dist/esm/verify/index.d.mts +2 -0
- package/dist/esm/verify/index.mjs +1 -0
- package/dist/esm/w/call/allocation.d.mts +2 -0
- package/dist/esm/w/call/allocation.mjs +1 -0
- package/dist/esm/w/call/arbitration.d.mts +2 -0
- package/dist/esm/w/call/arbitration.mjs +1 -0
- package/dist/esm/w/call/base.d.mts +2 -0
- package/dist/esm/w/call/base.mjs +1 -0
- package/dist/esm/w/call/demand.d.mts +2 -0
- package/dist/esm/w/call/demand.mjs +1 -0
- package/dist/esm/w/call/guard.d.mts +2 -0
- package/dist/esm/w/call/guard.mjs +1 -0
- package/dist/esm/w/call/index.d.mts +2 -0
- package/dist/esm/w/call/index.mjs +1 -0
- package/dist/esm/w/call/machine.d.mts +2 -0
- package/dist/esm/w/call/machine.mjs +1 -0
- package/dist/esm/w/call/passport.d.mts +2 -0
- package/dist/esm/w/call/passport.mjs +1 -0
- package/dist/esm/w/call/payment.d.mts +2 -0
- package/dist/esm/w/call/payment.mjs +1 -0
- package/dist/esm/w/call/permission.d.mts +2 -0
- package/dist/esm/w/call/permission.mjs +1 -0
- package/dist/esm/w/call/progress.d.mts +2 -0
- package/dist/esm/w/call/progress.mjs +1 -0
- package/dist/esm/w/call/repository.d.mts +2 -0
- package/dist/esm/w/call/repository.mjs +1 -0
- package/dist/esm/w/call/reward.d.mts +2 -0
- package/dist/esm/w/call/reward.mjs +1 -0
- package/dist/esm/w/call/service.d.mts +2 -0
- package/dist/esm/w/call/service.mjs +1 -0
- package/dist/esm/w/call/treasury.d.mts +2 -0
- package/dist/esm/w/call/treasury.mjs +1 -0
- package/dist/esm/w/common.d.mts +2 -0
- package/dist/esm/w/common.mjs +1 -0
- package/dist/esm/w/index.d.mts +5 -0
- package/dist/esm/w/index.mjs +1 -0
- package/dist/esm/w/local/account.d.mts +2 -0
- package/dist/esm/w/local/account.mjs +1 -0
- package/dist/esm/w/local/cache.d.mts +2 -0
- package/dist/esm/w/local/cache.mjs +1 -0
- package/dist/esm/w/local/config.d.mts +2 -0
- package/dist/esm/w/local/config.mjs +1 -0
- package/dist/esm/w/local/index.d.mts +5 -0
- package/dist/esm/w/local/index.mjs +1 -0
- package/dist/esm/w/local/local.d.mts +2 -0
- package/dist/esm/w/local/local.mjs +1 -0
- package/dist/esm/w/local/storage.d.mts +53 -0
- package/dist/esm/w/local/storage.mjs +1 -0
- package/dist/esm/w/local/token.d.mts +2 -0
- package/dist/esm/w/local/token.mjs +1 -0
- package/dist/esm/w/local/util.d.mts +9 -0
- package/dist/esm/w/local/util.mjs +1 -0
- package/dist/esm/w/local/wip.d.mts +2 -0
- package/dist/esm/w/local/wip.mjs +1 -0
- package/dist/esm/w/messenger/crypto.d.mts +271 -0
- package/dist/esm/w/messenger/crypto.mjs +1 -0
- package/dist/esm/w/messenger/index.d.mts +2 -0
- package/dist/esm/w/messenger/index.mjs +1 -0
- package/dist/esm/w/messenger/messenger-api.d.mts +2 -0
- package/dist/esm/w/messenger/messenger-api.mjs +1 -0
- package/dist/esm/w/messenger/messenger.d.mts +2 -0
- package/dist/esm/w/messenger/messenger.mjs +1 -0
- package/dist/esm/w/messenger/pq/crypto.d.mts +43 -0
- package/dist/esm/w/messenger/pq/crypto.mjs +1 -0
- package/dist/esm/w/messenger/pq/erasure.d.mts +19 -0
- package/dist/esm/w/messenger/pq/erasure.mjs +1 -0
- package/dist/esm/w/messenger/pq/index.d.mts +10 -0
- package/dist/esm/w/messenger/pq/index.mjs +1 -0
- package/dist/esm/w/messenger/pq/keycombiner.d.mts +4 -0
- package/dist/esm/w/messenger/pq/keycombiner.mjs +1 -0
- package/dist/esm/w/messenger/pq/pqxdh.d.mts +2 -0
- package/dist/esm/w/messenger/pq/pqxdh.mjs +1 -0
- package/dist/esm/w/messenger/pq/ratchet.d.mts +16 -0
- package/dist/esm/w/messenger/pq/ratchet.mjs +1 -0
- package/dist/esm/w/messenger/pq/session.d.mts +46 -0
- package/dist/esm/w/messenger/pq/session.mjs +1 -0
- package/dist/esm/w/messenger/pq/spqr.d.mts +27 -0
- package/dist/esm/w/messenger/pq/spqr.mjs +1 -0
- package/dist/esm/w/messenger/pq/store-adapter.d.mts +35 -0
- package/dist/esm/w/messenger/pq/store-adapter.mjs +1 -0
- package/dist/esm/w/messenger/pq/types.d.mts +189 -0
- package/dist/esm/w/messenger/pq/types.mjs +1 -0
- package/dist/esm/w/messenger/storage.d.mts +256 -0
- package/dist/esm/w/messenger/storage.mjs +1 -0
- package/dist/esm/w/messenger/types.d.mts +2 -0
- package/dist/esm/w/messenger/types.mjs +1 -0
- package/dist/esm/w/query/index.d.mts +2 -0
- package/dist/esm/w/query/index.mjs +1 -0
- package/dist/esm/w/query/object.d.mts +2 -0
- package/dist/esm/w/query/object.mjs +1 -0
- package/dist/esm/wip-NbB1ChbI.d.mts +229 -0
- package/package.json +142 -152
- package/dist/cjs/_deps/bcs/bcs-type.d.ts +0 -127
- package/dist/cjs/_deps/bcs/bcs-type.js +0 -1
- package/dist/cjs/_deps/bcs/bcs.d.ts +0 -49
- package/dist/cjs/_deps/bcs/bcs.js +0 -1
- package/dist/cjs/_deps/bcs/index.d.ts +0 -16
- package/dist/cjs/_deps/bcs/index.js +0 -1
- package/dist/cjs/_deps/bcs/reader.d.ts +0 -15
- package/dist/cjs/_deps/bcs/reader.js +0 -1
- package/dist/cjs/_deps/bcs/types.d.ts +0 -24
- package/dist/cjs/_deps/bcs/types.js +0 -1
- package/dist/cjs/_deps/bcs/uleb.d.ts +0 -5
- package/dist/cjs/_deps/bcs/uleb.js +0 -1
- package/dist/cjs/_deps/bcs/utils.d.ts +0 -4
- package/dist/cjs/_deps/bcs/utils.js +0 -1
- package/dist/cjs/_deps/bcs/writer.d.ts +0 -28
- package/dist/cjs/_deps/bcs/writer.js +0 -1
- package/dist/cjs/_deps/utils/b58.d.ts +0 -2
- package/dist/cjs/_deps/utils/b58.js +0 -1
- package/dist/cjs/_deps/utils/b64.d.ts +0 -2
- package/dist/cjs/_deps/utils/b64.js +0 -1
- package/dist/cjs/_deps/utils/chunk.d.ts +0 -1
- package/dist/cjs/_deps/utils/chunk.js +0 -1
- package/dist/cjs/_deps/utils/dataloader.d.ts +0 -43
- package/dist/cjs/_deps/utils/dataloader.js +0 -1
- package/dist/cjs/_deps/utils/hex.d.ts +0 -2
- package/dist/cjs/_deps/utils/hex.js +0 -1
- package/dist/cjs/_deps/utils/index.d.ts +0 -7
- package/dist/cjs/_deps/utils/index.js +0 -1
- package/dist/cjs/_deps/utils/types.d.ts +0 -4
- package/dist/cjs/_deps/utils/types.js +0 -1
- package/dist/cjs/_deps/utils/with-resolver.d.ts +0 -6
- package/dist/cjs/_deps/utils/with-resolver.js +0 -1
- package/dist/cjs/bcs/bcs.d.ts +0 -1927
- package/dist/cjs/bcs/bcs.js +0 -1
- package/dist/cjs/bcs/effects.d.ts +0 -579
- package/dist/cjs/bcs/effects.js +0 -1
- package/dist/cjs/bcs/index.d.ts +0 -6
- package/dist/cjs/bcs/index.js +0 -1
- package/dist/cjs/bcs/pure.d.ts +0 -22
- package/dist/cjs/bcs/pure.js +0 -1
- package/dist/cjs/bcs/type-tag-serializer.d.ts +0 -7
- package/dist/cjs/bcs/type-tag-serializer.js +0 -1
- package/dist/cjs/bcs/types.d.ts +0 -65
- package/dist/cjs/bcs/types.js +0 -1
- package/dist/cjs/client/index.d.ts +0 -5
- package/dist/cjs/client/index.js +0 -1
- package/dist/cjs/client/network.d.ts +0 -5
- package/dist/cjs/client/network.js +0 -1
- package/dist/cjs/cryptography/index.d.ts +0 -7
- package/dist/cjs/cryptography/index.js +0 -1
- package/dist/cjs/cryptography/intent.d.ts +0 -3
- package/dist/cjs/cryptography/intent.js +0 -1
- package/dist/cjs/cryptography/keypair.d.ts +0 -39
- package/dist/cjs/cryptography/keypair.js +0 -1
- package/dist/cjs/cryptography/mnemonics.d.ts +0 -4
- package/dist/cjs/cryptography/mnemonics.js +0 -1
- package/dist/cjs/cryptography/publickey.d.ts +0 -25
- package/dist/cjs/cryptography/publickey.js +0 -1
- package/dist/cjs/cryptography/signature-scheme.d.ts +0 -13
- package/dist/cjs/cryptography/signature-scheme.js +0 -1
- package/dist/cjs/cryptography/signature.d.ts +0 -21
- package/dist/cjs/cryptography/signature.js +0 -1
- package/dist/cjs/experimental/cache.d.ts +0 -12
- package/dist/cjs/experimental/cache.js +0 -1
- package/dist/cjs/experimental/client.d.ts +0 -12
- package/dist/cjs/experimental/client.js +0 -1
- package/dist/cjs/experimental/core.d.ts +0 -31
- package/dist/cjs/experimental/core.js +0 -1
- package/dist/cjs/experimental/errors.d.ts +0 -8
- package/dist/cjs/experimental/errors.js +0 -1
- package/dist/cjs/experimental/index.d.ts +0 -7
- package/dist/cjs/experimental/index.js +0 -1
- package/dist/cjs/experimental/persistent-storage.d.ts +0 -36
- package/dist/cjs/experimental/persistent-storage.js +0 -1
- package/dist/cjs/experimental/persistent-storage.test.d.ts +0 -1
- package/dist/cjs/experimental/persistent-storage.test.js +0 -1
- package/dist/cjs/experimental/transports/utils.d.ts +0 -3
- package/dist/cjs/experimental/transports/utils.js +0 -1
- package/dist/cjs/experimental/types.d.ts +0 -361
- package/dist/cjs/experimental/types.js +0 -1
- package/dist/cjs/faucet/faucet.d.ts +0 -57
- package/dist/cjs/faucet/faucet.js +0 -1
- package/dist/cjs/faucet/index.d.ts +0 -1
- package/dist/cjs/faucet/index.js +0 -1
- package/dist/cjs/grpc/client.d.ts +0 -30
- package/dist/cjs/grpc/client.js +0 -1
- package/dist/cjs/grpc/core.d.ts +0 -28
- package/dist/cjs/grpc/core.js +0 -1
- package/dist/cjs/grpc/index.d.ts +0 -4
- package/dist/cjs/grpc/index.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/any.d.ts +0 -29
- package/dist/cjs/grpc/proto/google/protobuf/any.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/duration.d.ts +0 -23
- package/dist/cjs/grpc/proto/google/protobuf/duration.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/empty.d.ts +0 -16
- package/dist/cjs/grpc/proto/google/protobuf/empty.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/field_mask.d.ts +0 -22
- package/dist/cjs/grpc/proto/google/protobuf/field_mask.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/struct.d.ts +0 -72
- package/dist/cjs/grpc/proto/google/protobuf/struct.js +0 -1
- package/dist/cjs/grpc/proto/google/protobuf/timestamp.d.ts +0 -26
- package/dist/cjs/grpc/proto/google/protobuf/timestamp.js +0 -1
- package/dist/cjs/grpc/proto/google/rpc/error_details.d.ts +0 -166
- package/dist/cjs/grpc/proto/google/rpc/error_details.js +0 -1
- package/dist/cjs/grpc/proto/google/rpc/status.d.ts +0 -20
- package/dist/cjs/grpc/proto/google/rpc/status.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/argument.d.ts +0 -18
- package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.d.ts +0 -11
- package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.d.ts +0 -10
- package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.d.ts +0 -20
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.d.ts +0 -23
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.d.ts +0 -46
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/effects.d.ts +0 -81
- package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.d.ts +0 -21
- package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.d.ts +0 -5
- package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/event.d.ts +0 -25
- package/dist/cjs/grpc/proto/sui/rpc/v2/event.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.d.ts +0 -24
- package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.d.ts +0 -220
- package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.d.ts +0 -12
- package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/input.d.ts +0 -23
- package/dist/cjs/grpc/proto/sui/rpc/v2/input.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.d.ts +0 -43
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.d.ts +0 -160
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.d.ts +0 -150
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.d.ts +0 -31
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.d.ts +0 -78
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/object.d.ts +0 -32
- package/dist/cjs/grpc/proto/sui/rpc/v2/object.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.d.ts +0 -11
- package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/owner.d.ts +0 -19
- package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.d.ts +0 -15
- package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature.d.ts +0 -105
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.d.ts +0 -5
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.d.ts +0 -19
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.d.ts +0 -23
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.d.ts +0 -35
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.d.ts +0 -172
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.d.ts +0 -19
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.d.ts +0 -21
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.d.ts +0 -146
- package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.d.ts +0 -338
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.d.ts +0 -23
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +0 -1
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +0 -66
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js +0 -1
- package/dist/cjs/index.d.ts +0 -25
- package/dist/cjs/index.js +0 -1
- package/dist/cjs/jsonRpc/client.d.ts +0 -121
- package/dist/cjs/jsonRpc/client.js +0 -1
- package/dist/cjs/jsonRpc/core.d.ts +0 -87
- package/dist/cjs/jsonRpc/core.js +0 -1
- package/dist/cjs/jsonRpc/errors.d.ts +0 -12
- package/dist/cjs/jsonRpc/errors.js +0 -1
- package/dist/cjs/jsonRpc/http-transport.d.ts +0 -39
- package/dist/cjs/jsonRpc/http-transport.js +0 -1
- package/dist/cjs/jsonRpc/index.d.ts +0 -4
- package/dist/cjs/jsonRpc/index.js +0 -1
- package/dist/cjs/jsonRpc/json-rpc-resolver.d.ts +0 -4
- package/dist/cjs/jsonRpc/json-rpc-resolver.js +0 -1
- package/dist/cjs/jsonRpc/rpc-websocket-client.d.ts +0 -28
- package/dist/cjs/jsonRpc/rpc-websocket-client.js +0 -1
- package/dist/cjs/jsonRpc/types/chain.d.ts +0 -94
- package/dist/cjs/jsonRpc/types/chain.js +0 -1
- package/dist/cjs/jsonRpc/types/changes.d.ts +0 -19
- package/dist/cjs/jsonRpc/types/changes.js +0 -1
- package/dist/cjs/jsonRpc/types/coins.d.ts +0 -6
- package/dist/cjs/jsonRpc/types/coins.js +0 -1
- package/dist/cjs/jsonRpc/types/common.d.ts +0 -2
- package/dist/cjs/jsonRpc/types/common.js +0 -1
- package/dist/cjs/jsonRpc/types/generated.d.ts +0 -932
- package/dist/cjs/jsonRpc/types/generated.js +0 -1
- package/dist/cjs/jsonRpc/types/generated_old.d.ts +0 -954
- package/dist/cjs/jsonRpc/types/generated_old.js +0 -1
- package/dist/cjs/jsonRpc/types/index.d.ts +0 -6
- package/dist/cjs/jsonRpc/types/index.js +0 -1
- package/dist/cjs/jsonRpc/types/params.d.ts +0 -303
- package/dist/cjs/jsonRpc/types/params.js +0 -1
- package/dist/cjs/keypairs/falcon512/index.d.ts +0 -2
- package/dist/cjs/keypairs/falcon512/index.js +0 -1
- package/dist/cjs/keypairs/falcon512/keypair.d.ts +0 -19
- package/dist/cjs/keypairs/falcon512/keypair.js +0 -1
- package/dist/cjs/keypairs/falcon512/publickey.d.ts +0 -11
- package/dist/cjs/keypairs/falcon512/publickey.js +0 -1
- package/dist/cjs/keypairs/index.d.ts +0 -1
- package/dist/cjs/keypairs/index.js +0 -1
- package/dist/cjs/multisig/index.d.ts +0 -2
- package/dist/cjs/multisig/index.js +0 -1
- package/dist/cjs/multisig/publickey.d.ts +0 -44
- package/dist/cjs/multisig/publickey.js +0 -1
- package/dist/cjs/multisig/signer.d.ts +0 -19
- package/dist/cjs/multisig/signer.js +0 -1
- package/dist/cjs/transactions/Arguments.d.ts +0 -57
- package/dist/cjs/transactions/Arguments.js +0 -1
- package/dist/cjs/transactions/Commands.d.ts +0 -54
- package/dist/cjs/transactions/Commands.js +0 -1
- package/dist/cjs/transactions/Inputs.d.ts +0 -22
- package/dist/cjs/transactions/Inputs.js +0 -1
- package/dist/cjs/transactions/ObjectCache.d.ts +0 -83
- package/dist/cjs/transactions/ObjectCache.js +0 -1
- package/dist/cjs/transactions/Transaction.d.ts +0 -654
- package/dist/cjs/transactions/Transaction.js +0 -1
- package/dist/cjs/transactions/TransactionData.d.ts +0 -67
- package/dist/cjs/transactions/TransactionData.js +0 -1
- package/dist/cjs/transactions/__tests__/Transaction.test.d.ts +0 -1
- package/dist/cjs/transactions/__tests__/Transaction.test.js +0 -1
- package/dist/cjs/transactions/__tests__/bcs.test.d.ts +0 -1
- package/dist/cjs/transactions/__tests__/bcs.test.js +0 -1
- package/dist/cjs/transactions/data/internal.d.ts +0 -1010
- package/dist/cjs/transactions/data/internal.js +0 -1
- package/dist/cjs/transactions/data/v1.d.ts +0 -312
- package/dist/cjs/transactions/data/v1.js +0 -1
- package/dist/cjs/transactions/data/v2.d.ts +0 -153
- package/dist/cjs/transactions/data/v2.js +0 -1
- package/dist/cjs/transactions/executor/caching.d.ts +0 -27
- package/dist/cjs/transactions/executor/caching.js +0 -1
- package/dist/cjs/transactions/executor/parallel.d.ts +0 -26
- package/dist/cjs/transactions/executor/parallel.js +0 -1
- package/dist/cjs/transactions/executor/queue.d.ts +0 -11
- package/dist/cjs/transactions/executor/queue.js +0 -1
- package/dist/cjs/transactions/executor/serial.d.ts +0 -30
- package/dist/cjs/transactions/executor/serial.js +0 -1
- package/dist/cjs/transactions/hash.d.ts +0 -1
- package/dist/cjs/transactions/hash.js +0 -1
- package/dist/cjs/transactions/index.d.ts +0 -20
- package/dist/cjs/transactions/index.js +0 -1
- package/dist/cjs/transactions/intents/CoinWithBalance.d.ts +0 -9
- package/dist/cjs/transactions/intents/CoinWithBalance.js +0 -1
- package/dist/cjs/transactions/object.d.ts +0 -24
- package/dist/cjs/transactions/object.js +0 -1
- package/dist/cjs/transactions/plugins/NamedPackagesPlugin.d.ts +0 -13
- package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js +0 -1
- package/dist/cjs/transactions/pure.d.ts +0 -20
- package/dist/cjs/transactions/pure.js +0 -1
- package/dist/cjs/transactions/resolve.d.ts +0 -13
- package/dist/cjs/transactions/resolve.js +0 -1
- package/dist/cjs/transactions/serializer.d.ts +0 -7
- package/dist/cjs/transactions/serializer.js +0 -1
- package/dist/cjs/transactions/utils.d.ts +0 -10
- package/dist/cjs/transactions/utils.js +0 -1
- package/dist/cjs/utils/constants.d.ts +0 -11
- package/dist/cjs/utils/constants.js +0 -1
- package/dist/cjs/utils/derived-objects.d.ts +0 -2
- package/dist/cjs/utils/derived-objects.js +0 -1
- package/dist/cjs/utils/dynamic-fields.d.ts +0 -2
- package/dist/cjs/utils/dynamic-fields.js +0 -1
- package/dist/cjs/utils/format.d.ts +0 -2
- package/dist/cjs/utils/format.js +0 -1
- package/dist/cjs/utils/index.d.ts +0 -8
- package/dist/cjs/utils/index.js +0 -1
- package/dist/cjs/utils/move-registry.d.ts +0 -2
- package/dist/cjs/utils/move-registry.js +0 -1
- package/dist/cjs/utils/wow-types.d.ts +0 -14
- package/dist/cjs/utils/wow-types.js +0 -1
- package/dist/cjs/verify/index.d.ts +0 -1
- package/dist/cjs/verify/index.js +0 -1
- package/dist/cjs/verify/verify.d.ts +0 -16
- package/dist/cjs/verify/verify.js +0 -1
- package/dist/cjs/version.d.ts +0 -2
- package/dist/cjs/version.js +0 -1
- package/dist/cjs/w/call/allocation.d.ts +0 -35
- package/dist/cjs/w/call/allocation.js +0 -1
- package/dist/cjs/w/call/arb.d.ts +0 -17
- package/dist/cjs/w/call/arb.js +0 -1
- package/dist/cjs/w/call/arbitration.d.ts +0 -106
- package/dist/cjs/w/call/arbitration.js +0 -1
- package/dist/cjs/w/call/base.d.ts +0 -43
- package/dist/cjs/w/call/base.js +0 -1
- package/dist/cjs/w/call/contact.d.ts +0 -45
- package/dist/cjs/w/call/contact.js +0 -1
- package/dist/cjs/w/call/demand.d.ts +0 -79
- package/dist/cjs/w/call/demand.js +0 -1
- package/dist/cjs/w/call/entity.d.ts +0 -33
- package/dist/cjs/w/call/entity.js +0 -1
- package/dist/cjs/w/call/guard-ins.d.ts +0 -29
- package/dist/cjs/w/call/guard-ins.js +0 -1
- package/dist/cjs/w/call/guard.d.ts +0 -350
- package/dist/cjs/w/call/guard.js +0 -1
- package/dist/cjs/w/call/index.d.ts +0 -37
- package/dist/cjs/w/call/index.js +0 -1
- package/dist/cjs/w/call/machine.d.ts +0 -124
- package/dist/cjs/w/call/machine.js +0 -1
- package/dist/cjs/w/call/order.d.ts +0 -73
- package/dist/cjs/w/call/order.js +0 -1
- package/dist/cjs/w/call/passport.d.ts +0 -24
- package/dist/cjs/w/call/passport.js +0 -1
- package/dist/cjs/w/call/payment.d.ts +0 -27
- package/dist/cjs/w/call/payment.js +0 -1
- package/dist/cjs/w/call/permission.d.ts +0 -202
- package/dist/cjs/w/call/permission.js +0 -1
- package/dist/cjs/w/call/personal.d.ts +0 -51
- package/dist/cjs/w/call/personal.js +0 -1
- package/dist/cjs/w/call/progress.d.ts +0 -95
- package/dist/cjs/w/call/progress.js +0 -1
- package/dist/cjs/w/call/proof.d.ts +0 -27
- package/dist/cjs/w/call/proof.js +0 -1
- package/dist/cjs/w/call/repository.d.ts +0 -97
- package/dist/cjs/w/call/repository.js +0 -1
- package/dist/cjs/w/call/resource.d.ts +0 -27
- package/dist/cjs/w/call/resource.js +0 -1
- package/dist/cjs/w/call/reward.d.ts +0 -52
- package/dist/cjs/w/call/reward.js +0 -1
- package/dist/cjs/w/call/service.d.ts +0 -186
- package/dist/cjs/w/call/service.js +0 -1
- package/dist/cjs/w/call/treasury.d.ts +0 -77
- package/dist/cjs/w/call/treasury.js +0 -1
- package/dist/cjs/w/call/util.d.ts +0 -13
- package/dist/cjs/w/call/util.js +0 -1
- package/dist/cjs/w/common.d.ts +0 -344
- package/dist/cjs/w/common.js +0 -1
- package/dist/cjs/w/exception.d.ts +0 -83
- package/dist/cjs/w/exception.js +0 -1
- package/dist/cjs/w/index.d.ts +0 -8
- package/dist/cjs/w/index.js +0 -1
- package/dist/cjs/w/local/account.d.ts +0 -99
- package/dist/cjs/w/local/account.js +0 -1
- package/dist/cjs/w/local/cache.d.ts +0 -35
- package/dist/cjs/w/local/cache.js +0 -1
- package/dist/cjs/w/local/config.d.ts +0 -12
- package/dist/cjs/w/local/config.js +0 -1
- package/dist/cjs/w/local/index.d.ts +0 -199
- package/dist/cjs/w/local/index.js +0 -1
- package/dist/cjs/w/local/local.d.ts +0 -96
- package/dist/cjs/w/local/local.js +0 -1
- package/dist/cjs/w/local/storage.d.ts +0 -41
- package/dist/cjs/w/local/storage.js +0 -1
- package/dist/cjs/w/local/token.d.ts +0 -19
- package/dist/cjs/w/local/token.js +0 -1
- package/dist/cjs/w/local/util.d.ts +0 -1
- package/dist/cjs/w/local/util.js +0 -1
- package/dist/cjs/w/local/wip.d.ts +0 -135
- package/dist/cjs/w/local/wip.js +0 -1
- package/dist/cjs/w/messenger/crypto.d.ts +0 -88
- package/dist/cjs/w/messenger/crypto.js +0 -1
- package/dist/cjs/w/messenger/index.d.ts +0 -5
- package/dist/cjs/w/messenger/index.js +0 -1
- package/dist/cjs/w/messenger/messenger-api.d.ts +0 -140
- package/dist/cjs/w/messenger/messenger-api.js +0 -1
- package/dist/cjs/w/messenger/messenger-manager.d.ts +0 -85
- package/dist/cjs/w/messenger/messenger-manager.js +0 -1
- package/dist/cjs/w/messenger/messenger.d.ts +0 -92
- package/dist/cjs/w/messenger/messenger.js +0 -1
- package/dist/cjs/w/messenger/pq/crypto.d.ts +0 -39
- package/dist/cjs/w/messenger/pq/crypto.js +0 -1
- package/dist/cjs/w/messenger/pq/erasure.d.ts +0 -17
- package/dist/cjs/w/messenger/pq/erasure.js +0 -1
- package/dist/cjs/w/messenger/pq/index.d.ts +0 -9
- package/dist/cjs/w/messenger/pq/index.js +0 -1
- package/dist/cjs/w/messenger/pq/keycombiner.d.ts +0 -1
- package/dist/cjs/w/messenger/pq/keycombiner.js +0 -1
- package/dist/cjs/w/messenger/pq/pqxdh.d.ts +0 -38
- package/dist/cjs/w/messenger/pq/pqxdh.js +0 -1
- package/dist/cjs/w/messenger/pq/ratchet.d.ts +0 -12
- package/dist/cjs/w/messenger/pq/ratchet.js +0 -1
- package/dist/cjs/w/messenger/pq/session.d.ts +0 -41
- package/dist/cjs/w/messenger/pq/session.js +0 -1
- package/dist/cjs/w/messenger/pq/spqr.d.ts +0 -23
- package/dist/cjs/w/messenger/pq/spqr.js +0 -1
- package/dist/cjs/w/messenger/pq/store-adapter.d.ts +0 -31
- package/dist/cjs/w/messenger/pq/store-adapter.js +0 -1
- package/dist/cjs/w/messenger/pq/types.d.ts +0 -180
- package/dist/cjs/w/messenger/pq/types.js +0 -1
- package/dist/cjs/w/messenger/server.d.ts +0 -48
- package/dist/cjs/w/messenger/server.js +0 -1
- package/dist/cjs/w/messenger/session.d.ts +0 -65
- package/dist/cjs/w/messenger/session.js +0 -1
- package/dist/cjs/w/messenger/storage.d.ts +0 -110
- package/dist/cjs/w/messenger/storage.js +0 -1
- package/dist/cjs/w/messenger/templates/wts-html-template.d.ts +0 -30
- package/dist/cjs/w/messenger/templates/wts-html-template.js +0 -1
- package/dist/cjs/w/messenger/types.d.ts +0 -647
- package/dist/cjs/w/messenger/types.js +0 -1
- package/dist/cjs/w/messenger/utils.d.ts +0 -1
- package/dist/cjs/w/messenger/utils.js +0 -1
- package/dist/cjs/w/query/bult-in.d.ts +0 -62
- package/dist/cjs/w/query/bult-in.js +0 -1
- package/dist/cjs/w/query/event.d.ts +0 -76
- package/dist/cjs/w/query/event.js +0 -1
- package/dist/cjs/w/query/index.d.ts +0 -5
- package/dist/cjs/w/query/index.js +0 -1
- package/dist/cjs/w/query/object.d.ts +0 -626
- package/dist/cjs/w/query/object.js +0 -1
- package/dist/cjs/w/query/received.d.ts +0 -30
- package/dist/cjs/w/query/received.js +0 -1
- package/dist/cjs/w/query/util.d.ts +0 -4
- package/dist/cjs/w/query/util.js +0 -1
- package/dist/cjs/w/util.d.ts +0 -16
- package/dist/cjs/w/util.js +0 -1
- package/dist/esm/_deps/bcs/bcs-type.d.ts +0 -127
- package/dist/esm/_deps/bcs/bcs-type.js +0 -1
- package/dist/esm/_deps/bcs/bcs.d.ts +0 -49
- package/dist/esm/_deps/bcs/bcs.js +0 -1
- package/dist/esm/_deps/bcs/index.d.ts +0 -16
- package/dist/esm/_deps/bcs/index.js +0 -1
- package/dist/esm/_deps/bcs/reader.d.ts +0 -15
- package/dist/esm/_deps/bcs/reader.js +0 -1
- package/dist/esm/_deps/bcs/types.d.ts +0 -24
- package/dist/esm/_deps/bcs/types.js +0 -1
- package/dist/esm/_deps/bcs/uleb.d.ts +0 -5
- package/dist/esm/_deps/bcs/uleb.js +0 -1
- package/dist/esm/_deps/bcs/utils.d.ts +0 -4
- package/dist/esm/_deps/bcs/utils.js +0 -1
- package/dist/esm/_deps/bcs/writer.d.ts +0 -28
- package/dist/esm/_deps/bcs/writer.js +0 -1
- package/dist/esm/_deps/utils/b58.d.ts +0 -2
- package/dist/esm/_deps/utils/b58.js +0 -1
- package/dist/esm/_deps/utils/b64.d.ts +0 -2
- package/dist/esm/_deps/utils/b64.js +0 -1
- package/dist/esm/_deps/utils/chunk.d.ts +0 -1
- package/dist/esm/_deps/utils/chunk.js +0 -1
- package/dist/esm/_deps/utils/dataloader.d.ts +0 -43
- package/dist/esm/_deps/utils/dataloader.js +0 -1
- package/dist/esm/_deps/utils/hex.d.ts +0 -2
- package/dist/esm/_deps/utils/hex.js +0 -1
- package/dist/esm/_deps/utils/index.d.ts +0 -7
- package/dist/esm/_deps/utils/index.js +0 -1
- package/dist/esm/_deps/utils/types.d.ts +0 -4
- package/dist/esm/_deps/utils/types.js +0 -1
- package/dist/esm/_deps/utils/with-resolver.d.ts +0 -6
- package/dist/esm/_deps/utils/with-resolver.js +0 -1
- package/dist/esm/bcs/bcs.d.ts +0 -1927
- package/dist/esm/bcs/bcs.js +0 -1
- package/dist/esm/bcs/effects.d.ts +0 -579
- package/dist/esm/bcs/effects.js +0 -1
- package/dist/esm/bcs/index.d.ts +0 -6
- package/dist/esm/bcs/index.js +0 -1
- package/dist/esm/bcs/pure.d.ts +0 -22
- package/dist/esm/bcs/pure.js +0 -1
- package/dist/esm/bcs/type-tag-serializer.d.ts +0 -7
- package/dist/esm/bcs/type-tag-serializer.js +0 -1
- package/dist/esm/bcs/types.d.ts +0 -65
- package/dist/esm/bcs/types.js +0 -1
- package/dist/esm/client/index.d.ts +0 -5
- package/dist/esm/client/index.js +0 -1
- package/dist/esm/client/network.d.ts +0 -5
- package/dist/esm/client/network.js +0 -1
- package/dist/esm/cryptography/index.d.ts +0 -7
- package/dist/esm/cryptography/index.js +0 -1
- package/dist/esm/cryptography/intent.d.ts +0 -3
- package/dist/esm/cryptography/intent.js +0 -1
- package/dist/esm/cryptography/keypair.d.ts +0 -39
- package/dist/esm/cryptography/keypair.js +0 -1
- package/dist/esm/cryptography/mnemonics.d.ts +0 -4
- package/dist/esm/cryptography/mnemonics.js +0 -1
- package/dist/esm/cryptography/publickey.d.ts +0 -25
- package/dist/esm/cryptography/publickey.js +0 -1
- package/dist/esm/cryptography/signature-scheme.d.ts +0 -13
- package/dist/esm/cryptography/signature-scheme.js +0 -1
- package/dist/esm/cryptography/signature.d.ts +0 -21
- package/dist/esm/cryptography/signature.js +0 -1
- package/dist/esm/experimental/cache.d.ts +0 -12
- package/dist/esm/experimental/cache.js +0 -1
- package/dist/esm/experimental/client.d.ts +0 -12
- package/dist/esm/experimental/client.js +0 -1
- package/dist/esm/experimental/core.d.ts +0 -31
- package/dist/esm/experimental/core.js +0 -1
- package/dist/esm/experimental/errors.d.ts +0 -8
- package/dist/esm/experimental/errors.js +0 -1
- package/dist/esm/experimental/index.d.ts +0 -7
- package/dist/esm/experimental/index.js +0 -1
- package/dist/esm/experimental/persistent-storage.d.ts +0 -36
- package/dist/esm/experimental/persistent-storage.js +0 -1
- package/dist/esm/experimental/persistent-storage.test.d.ts +0 -1
- package/dist/esm/experimental/persistent-storage.test.js +0 -1
- package/dist/esm/experimental/transports/utils.d.ts +0 -3
- package/dist/esm/experimental/transports/utils.js +0 -1
- package/dist/esm/experimental/types.d.ts +0 -361
- package/dist/esm/experimental/types.js +0 -1
- package/dist/esm/faucet/faucet.d.ts +0 -57
- package/dist/esm/faucet/faucet.js +0 -1
- package/dist/esm/faucet/index.d.ts +0 -1
- package/dist/esm/faucet/index.js +0 -1
- package/dist/esm/grpc/client.d.ts +0 -30
- package/dist/esm/grpc/client.js +0 -1
- package/dist/esm/grpc/core.d.ts +0 -28
- package/dist/esm/grpc/core.js +0 -1
- package/dist/esm/grpc/index.d.ts +0 -4
- package/dist/esm/grpc/index.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/any.d.ts +0 -29
- package/dist/esm/grpc/proto/google/protobuf/any.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/duration.d.ts +0 -23
- package/dist/esm/grpc/proto/google/protobuf/duration.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/empty.d.ts +0 -16
- package/dist/esm/grpc/proto/google/protobuf/empty.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/field_mask.d.ts +0 -22
- package/dist/esm/grpc/proto/google/protobuf/field_mask.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/struct.d.ts +0 -72
- package/dist/esm/grpc/proto/google/protobuf/struct.js +0 -1
- package/dist/esm/grpc/proto/google/protobuf/timestamp.d.ts +0 -26
- package/dist/esm/grpc/proto/google/protobuf/timestamp.js +0 -1
- package/dist/esm/grpc/proto/google/rpc/error_details.d.ts +0 -166
- package/dist/esm/grpc/proto/google/rpc/error_details.js +0 -1
- package/dist/esm/grpc/proto/google/rpc/status.d.ts +0 -20
- package/dist/esm/grpc/proto/google/rpc/status.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/argument.d.ts +0 -18
- package/dist/esm/grpc/proto/sui/rpc/v2/argument.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.d.ts +0 -11
- package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/bcs.d.ts +0 -10
- package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.d.ts +0 -20
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.d.ts +0 -23
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.d.ts +0 -46
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/effects.d.ts +0 -81
- package/dist/esm/grpc/proto/sui/rpc/v2/effects.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/epoch.d.ts +0 -21
- package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.d.ts +0 -5
- package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/event.d.ts +0 -25
- package/dist/esm/grpc/proto/sui/rpc/v2/event.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.d.ts +0 -24
- package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.d.ts +0 -220
- package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.d.ts +0 -12
- package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/input.d.ts +0 -23
- package/dist/esm/grpc/proto/sui/rpc/v2/input.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.d.ts +0 -43
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.d.ts +0 -160
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package.d.ts +0 -150
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.d.ts +0 -31
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.d.ts +0 -78
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/object.d.ts +0 -32
- package/dist/esm/grpc/proto/sui/rpc/v2/object.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.d.ts +0 -11
- package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/owner.d.ts +0 -19
- package/dist/esm/grpc/proto/sui/rpc/v2/owner.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.d.ts +0 -15
- package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/signature.d.ts +0 -105
- package/dist/esm/grpc/proto/sui/rpc/v2/signature.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.d.ts +0 -5
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.d.ts +0 -19
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.d.ts +0 -23
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.d.ts +0 -35
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.d.ts +0 -172
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.d.ts +0 -19
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.d.ts +0 -21
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/system_state.d.ts +0 -146
- package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction.d.ts +0 -338
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.d.ts +0 -23
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +0 -1
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +0 -66
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js +0 -1
- package/dist/esm/index.d.ts +0 -25
- package/dist/esm/index.js +0 -1
- package/dist/esm/jsonRpc/client.d.ts +0 -121
- package/dist/esm/jsonRpc/client.js +0 -1
- package/dist/esm/jsonRpc/core.d.ts +0 -87
- package/dist/esm/jsonRpc/core.js +0 -1
- package/dist/esm/jsonRpc/errors.d.ts +0 -12
- package/dist/esm/jsonRpc/errors.js +0 -1
- package/dist/esm/jsonRpc/http-transport.d.ts +0 -39
- package/dist/esm/jsonRpc/http-transport.js +0 -1
- package/dist/esm/jsonRpc/index.d.ts +0 -4
- package/dist/esm/jsonRpc/index.js +0 -1
- package/dist/esm/jsonRpc/json-rpc-resolver.d.ts +0 -4
- package/dist/esm/jsonRpc/json-rpc-resolver.js +0 -1
- package/dist/esm/jsonRpc/rpc-websocket-client.d.ts +0 -28
- package/dist/esm/jsonRpc/rpc-websocket-client.js +0 -1
- package/dist/esm/jsonRpc/types/chain.d.ts +0 -94
- package/dist/esm/jsonRpc/types/chain.js +0 -1
- package/dist/esm/jsonRpc/types/changes.d.ts +0 -19
- package/dist/esm/jsonRpc/types/changes.js +0 -1
- package/dist/esm/jsonRpc/types/coins.d.ts +0 -6
- package/dist/esm/jsonRpc/types/coins.js +0 -1
- package/dist/esm/jsonRpc/types/common.d.ts +0 -2
- package/dist/esm/jsonRpc/types/common.js +0 -1
- package/dist/esm/jsonRpc/types/generated.d.ts +0 -932
- package/dist/esm/jsonRpc/types/generated.js +0 -1
- package/dist/esm/jsonRpc/types/generated_old.d.ts +0 -954
- package/dist/esm/jsonRpc/types/generated_old.js +0 -1
- package/dist/esm/jsonRpc/types/index.d.ts +0 -6
- package/dist/esm/jsonRpc/types/index.js +0 -1
- package/dist/esm/jsonRpc/types/params.d.ts +0 -303
- package/dist/esm/jsonRpc/types/params.js +0 -1
- package/dist/esm/keypairs/falcon512/index.d.ts +0 -2
- package/dist/esm/keypairs/falcon512/index.js +0 -1
- package/dist/esm/keypairs/falcon512/keypair.d.ts +0 -19
- package/dist/esm/keypairs/falcon512/keypair.js +0 -1
- package/dist/esm/keypairs/falcon512/publickey.d.ts +0 -11
- package/dist/esm/keypairs/falcon512/publickey.js +0 -1
- package/dist/esm/keypairs/index.d.ts +0 -1
- package/dist/esm/keypairs/index.js +0 -1
- package/dist/esm/multisig/index.d.ts +0 -2
- package/dist/esm/multisig/index.js +0 -1
- package/dist/esm/multisig/publickey.d.ts +0 -44
- package/dist/esm/multisig/publickey.js +0 -1
- package/dist/esm/multisig/signer.d.ts +0 -19
- package/dist/esm/multisig/signer.js +0 -1
- package/dist/esm/transactions/Arguments.d.ts +0 -57
- package/dist/esm/transactions/Arguments.js +0 -1
- package/dist/esm/transactions/Commands.d.ts +0 -54
- package/dist/esm/transactions/Commands.js +0 -1
- package/dist/esm/transactions/Inputs.d.ts +0 -22
- package/dist/esm/transactions/Inputs.js +0 -1
- package/dist/esm/transactions/ObjectCache.d.ts +0 -83
- package/dist/esm/transactions/ObjectCache.js +0 -1
- package/dist/esm/transactions/Transaction.d.ts +0 -654
- package/dist/esm/transactions/Transaction.js +0 -1
- package/dist/esm/transactions/TransactionData.d.ts +0 -67
- package/dist/esm/transactions/TransactionData.js +0 -1
- package/dist/esm/transactions/__tests__/Transaction.test.d.ts +0 -1
- package/dist/esm/transactions/__tests__/Transaction.test.js +0 -1
- package/dist/esm/transactions/__tests__/bcs.test.d.ts +0 -1
- package/dist/esm/transactions/__tests__/bcs.test.js +0 -1
- package/dist/esm/transactions/data/internal.d.ts +0 -1010
- package/dist/esm/transactions/data/internal.js +0 -1
- package/dist/esm/transactions/data/v1.d.ts +0 -312
- package/dist/esm/transactions/data/v1.js +0 -1
- package/dist/esm/transactions/data/v2.d.ts +0 -153
- package/dist/esm/transactions/data/v2.js +0 -1
- package/dist/esm/transactions/executor/caching.d.ts +0 -27
- package/dist/esm/transactions/executor/caching.js +0 -1
- package/dist/esm/transactions/executor/parallel.d.ts +0 -26
- package/dist/esm/transactions/executor/parallel.js +0 -1
- package/dist/esm/transactions/executor/queue.d.ts +0 -11
- package/dist/esm/transactions/executor/queue.js +0 -1
- package/dist/esm/transactions/executor/serial.d.ts +0 -30
- package/dist/esm/transactions/executor/serial.js +0 -1
- package/dist/esm/transactions/hash.d.ts +0 -1
- package/dist/esm/transactions/hash.js +0 -1
- package/dist/esm/transactions/index.d.ts +0 -20
- package/dist/esm/transactions/index.js +0 -1
- package/dist/esm/transactions/intents/CoinWithBalance.d.ts +0 -9
- package/dist/esm/transactions/intents/CoinWithBalance.js +0 -1
- package/dist/esm/transactions/object.d.ts +0 -24
- package/dist/esm/transactions/object.js +0 -1
- package/dist/esm/transactions/plugins/NamedPackagesPlugin.d.ts +0 -13
- package/dist/esm/transactions/plugins/NamedPackagesPlugin.js +0 -1
- package/dist/esm/transactions/pure.d.ts +0 -20
- package/dist/esm/transactions/pure.js +0 -1
- package/dist/esm/transactions/resolve.d.ts +0 -13
- package/dist/esm/transactions/resolve.js +0 -1
- package/dist/esm/transactions/serializer.d.ts +0 -7
- package/dist/esm/transactions/serializer.js +0 -1
- package/dist/esm/transactions/utils.d.ts +0 -10
- package/dist/esm/transactions/utils.js +0 -1
- package/dist/esm/utils/constants.d.ts +0 -11
- package/dist/esm/utils/constants.js +0 -1
- package/dist/esm/utils/derived-objects.d.ts +0 -2
- package/dist/esm/utils/derived-objects.js +0 -1
- package/dist/esm/utils/dynamic-fields.d.ts +0 -2
- package/dist/esm/utils/dynamic-fields.js +0 -1
- package/dist/esm/utils/format.d.ts +0 -2
- package/dist/esm/utils/format.js +0 -1
- package/dist/esm/utils/index.d.ts +0 -8
- package/dist/esm/utils/index.js +0 -1
- package/dist/esm/utils/move-registry.d.ts +0 -2
- package/dist/esm/utils/move-registry.js +0 -1
- package/dist/esm/utils/wow-types.d.ts +0 -14
- package/dist/esm/utils/wow-types.js +0 -1
- package/dist/esm/verify/index.d.ts +0 -1
- package/dist/esm/verify/index.js +0 -1
- package/dist/esm/verify/verify.d.ts +0 -16
- package/dist/esm/verify/verify.js +0 -1
- package/dist/esm/version.d.ts +0 -2
- package/dist/esm/version.js +0 -1
- package/dist/esm/w/call/allocation.d.ts +0 -35
- package/dist/esm/w/call/allocation.js +0 -1
- package/dist/esm/w/call/arb.d.ts +0 -17
- package/dist/esm/w/call/arb.js +0 -1
- package/dist/esm/w/call/arbitration.d.ts +0 -106
- package/dist/esm/w/call/arbitration.js +0 -1
- package/dist/esm/w/call/base.d.ts +0 -43
- package/dist/esm/w/call/base.js +0 -1
- package/dist/esm/w/call/contact.d.ts +0 -45
- package/dist/esm/w/call/contact.js +0 -1
- package/dist/esm/w/call/demand.d.ts +0 -79
- package/dist/esm/w/call/demand.js +0 -1
- package/dist/esm/w/call/entity.d.ts +0 -33
- package/dist/esm/w/call/entity.js +0 -1
- package/dist/esm/w/call/guard-ins.d.ts +0 -29
- package/dist/esm/w/call/guard-ins.js +0 -1
- package/dist/esm/w/call/guard.d.ts +0 -350
- package/dist/esm/w/call/guard.js +0 -1
- package/dist/esm/w/call/index.d.ts +0 -37
- package/dist/esm/w/call/index.js +0 -1
- package/dist/esm/w/call/machine.d.ts +0 -124
- package/dist/esm/w/call/machine.js +0 -1
- package/dist/esm/w/call/order.d.ts +0 -73
- package/dist/esm/w/call/order.js +0 -1
- package/dist/esm/w/call/passport.d.ts +0 -24
- package/dist/esm/w/call/passport.js +0 -1
- package/dist/esm/w/call/payment.d.ts +0 -27
- package/dist/esm/w/call/payment.js +0 -1
- package/dist/esm/w/call/permission.d.ts +0 -202
- package/dist/esm/w/call/permission.js +0 -1
- package/dist/esm/w/call/personal.d.ts +0 -51
- package/dist/esm/w/call/personal.js +0 -1
- package/dist/esm/w/call/progress.d.ts +0 -95
- package/dist/esm/w/call/progress.js +0 -1
- package/dist/esm/w/call/proof.d.ts +0 -27
- package/dist/esm/w/call/proof.js +0 -1
- package/dist/esm/w/call/repository.d.ts +0 -97
- package/dist/esm/w/call/repository.js +0 -1
- package/dist/esm/w/call/resource.d.ts +0 -27
- package/dist/esm/w/call/resource.js +0 -1
- package/dist/esm/w/call/reward.d.ts +0 -52
- package/dist/esm/w/call/reward.js +0 -1
- package/dist/esm/w/call/service.d.ts +0 -186
- package/dist/esm/w/call/service.js +0 -1
- package/dist/esm/w/call/treasury.d.ts +0 -77
- package/dist/esm/w/call/treasury.js +0 -1
- package/dist/esm/w/call/util.d.ts +0 -13
- package/dist/esm/w/call/util.js +0 -1
- package/dist/esm/w/common.d.ts +0 -344
- package/dist/esm/w/common.js +0 -1
- package/dist/esm/w/exception.d.ts +0 -83
- package/dist/esm/w/exception.js +0 -1
- package/dist/esm/w/index.d.ts +0 -8
- package/dist/esm/w/index.js +0 -1
- package/dist/esm/w/local/account.d.ts +0 -99
- package/dist/esm/w/local/account.js +0 -1
- package/dist/esm/w/local/cache.d.ts +0 -35
- package/dist/esm/w/local/cache.js +0 -1
- package/dist/esm/w/local/config.d.ts +0 -12
- package/dist/esm/w/local/config.js +0 -1
- package/dist/esm/w/local/index.d.ts +0 -199
- package/dist/esm/w/local/index.js +0 -1
- package/dist/esm/w/local/local.d.ts +0 -96
- package/dist/esm/w/local/local.js +0 -1
- package/dist/esm/w/local/storage.d.ts +0 -41
- package/dist/esm/w/local/storage.js +0 -1
- package/dist/esm/w/local/token.d.ts +0 -19
- package/dist/esm/w/local/token.js +0 -1
- package/dist/esm/w/local/util.d.ts +0 -1
- package/dist/esm/w/local/util.js +0 -1
- package/dist/esm/w/local/wip.d.ts +0 -135
- package/dist/esm/w/local/wip.js +0 -1
- package/dist/esm/w/messenger/crypto.d.ts +0 -88
- package/dist/esm/w/messenger/crypto.js +0 -1
- package/dist/esm/w/messenger/index.d.ts +0 -5
- package/dist/esm/w/messenger/index.js +0 -1
- package/dist/esm/w/messenger/messenger-api.d.ts +0 -140
- package/dist/esm/w/messenger/messenger-api.js +0 -1
- package/dist/esm/w/messenger/messenger-manager.d.ts +0 -85
- package/dist/esm/w/messenger/messenger-manager.js +0 -1
- package/dist/esm/w/messenger/messenger.d.ts +0 -92
- package/dist/esm/w/messenger/messenger.js +0 -1
- package/dist/esm/w/messenger/pq/crypto.d.ts +0 -39
- package/dist/esm/w/messenger/pq/crypto.js +0 -1
- package/dist/esm/w/messenger/pq/erasure.d.ts +0 -17
- package/dist/esm/w/messenger/pq/erasure.js +0 -1
- package/dist/esm/w/messenger/pq/index.d.ts +0 -9
- package/dist/esm/w/messenger/pq/index.js +0 -1
- package/dist/esm/w/messenger/pq/keycombiner.d.ts +0 -1
- package/dist/esm/w/messenger/pq/keycombiner.js +0 -1
- package/dist/esm/w/messenger/pq/pqxdh.d.ts +0 -38
- package/dist/esm/w/messenger/pq/pqxdh.js +0 -1
- package/dist/esm/w/messenger/pq/ratchet.d.ts +0 -12
- package/dist/esm/w/messenger/pq/ratchet.js +0 -1
- package/dist/esm/w/messenger/pq/session.d.ts +0 -41
- package/dist/esm/w/messenger/pq/session.js +0 -1
- package/dist/esm/w/messenger/pq/spqr.d.ts +0 -23
- package/dist/esm/w/messenger/pq/spqr.js +0 -1
- package/dist/esm/w/messenger/pq/store-adapter.d.ts +0 -31
- package/dist/esm/w/messenger/pq/store-adapter.js +0 -1
- package/dist/esm/w/messenger/pq/types.d.ts +0 -180
- package/dist/esm/w/messenger/pq/types.js +0 -1
- package/dist/esm/w/messenger/server.d.ts +0 -48
- package/dist/esm/w/messenger/server.js +0 -1
- package/dist/esm/w/messenger/session.d.ts +0 -65
- package/dist/esm/w/messenger/session.js +0 -1
- package/dist/esm/w/messenger/storage.d.ts +0 -110
- package/dist/esm/w/messenger/storage.js +0 -1
- package/dist/esm/w/messenger/templates/wts-html-template.d.ts +0 -30
- package/dist/esm/w/messenger/templates/wts-html-template.js +0 -1
- package/dist/esm/w/messenger/types.d.ts +0 -647
- package/dist/esm/w/messenger/types.js +0 -1
- package/dist/esm/w/messenger/utils.d.ts +0 -1
- package/dist/esm/w/messenger/utils.js +0 -1
- package/dist/esm/w/query/bult-in.d.ts +0 -62
- package/dist/esm/w/query/bult-in.js +0 -1
- package/dist/esm/w/query/event.d.ts +0 -76
- package/dist/esm/w/query/event.js +0 -1
- package/dist/esm/w/query/index.d.ts +0 -5
- package/dist/esm/w/query/index.js +0 -1
- package/dist/esm/w/query/object.d.ts +0 -626
- package/dist/esm/w/query/object.js +0 -1
- package/dist/esm/w/query/received.d.ts +0 -30
- package/dist/esm/w/query/received.js +0 -1
- package/dist/esm/w/query/util.d.ts +0 -4
- package/dist/esm/w/query/util.js +0 -1
- package/dist/esm/w/util.d.ts +0 -16
- package/dist/esm/w/util.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{PQError}from'./types.mjs';import{aesGcmDecrypt,aesGcmEncrypt,concatBytes,generateX25519KeyPair,hkdfChainKey,hkdfMessageKey,x25519DH}from'./crypto.mjs';function encodeHeader(a){const b=new Uint8Array(0x28);b['set'](a['dhPublicKey'],0x0);const c=new DataView(b['buffer']);return c['setUint32'](0x20,a['previousSendingCount'],![]),c['setUint32'](0x24,a['messageCount'],![]),b;}function decodeHeader(a){const b=a['slice'](0x0,0x20),c=new DataView(a['buffer'],a['byteOffset'],a['byteLength']);return{'dhPublicKey':b,'previousSendingCount':c['getUint32'](0x20,![]),'messageCount':c['getUint32'](0x24,![])};}function makeSkipKey(a,b){const c=new Uint8Array(a['length']+0x4);return c['set'](a,0x0),new DataView(c['buffer'])['setUint32'](a['length'],b,![]),Buffer['from'](c)['toString']('base64');}function initRatchet(a,b,c,d,e){return{'rootKey':a,'sendingChainKey':b,'sendingMessageCount':0x0,'receivingChainKey':c,'receivingMessageCount':0x0,'ourDHKeyPair':d,'peerDHPublicKey':e,'previousSendingCount':0x0,'skipMessageKeys':new Map()};}function ratchetEncrypt(a,b){const c=cloneRatchetState(a),{messageKey:d,nextChainKey:e}=hkdfMessageKey(c['sendingChainKey']);c['sendingChainKey']=e;const f=encodeHeader({'dhPublicKey':c['ourDHKeyPair']['publicKey'],'previousSendingCount':c['previousSendingCount'],'messageCount':c['sendingMessageCount']}),{ciphertext:g,iv:h,tag:i}=aesGcmEncrypt(d,b,f),j=concatBytes(f,h,i,g);return c['sendingMessageCount']+=0x1,{'message':{'type':0x1,'body':j},'newState':c};}function ratchetDecrypt(a,b){const c=0x28;if(b['length']<0x44)throw new PQError('DECRYPTION_FAILED','Message\x20body\x20too\x20short');const d=b['slice'](0x0,c),e=decodeHeader(d),f=b['slice'](c,0x34),g=b['slice'](0x34,0x44),h=b['slice'](0x44),i=cloneRatchetState(a);let j;if(i['peerDHPublicKey']&&Buffer['from'](e['dhPublicKey'])['equals'](Buffer['from'](i['peerDHPublicKey']))){if(e['messageCount']<i['receivingMessageCount']){j=trySkippedMessageKeys(i,e);if(!j)throw new PQError('DECRYPTION_FAILED','Message\x20key\x20not\x20found\x20for\x20old\x20message');}else{while(i['receivingMessageCount']<e['messageCount']){const {messageKey:m,nextChainKey:n}=hkdfMessageKey(i['receivingChainKey']),o=makeSkipKey(e['dhPublicKey'],i['receivingMessageCount']);i['skipMessageKeys']['set'](o,m),i['receivingChainKey']=n,i['receivingMessageCount']+=0x1;}const {messageKey:k,nextChainKey:l}=hkdfMessageKey(i['receivingChainKey']);j=k,i['receivingChainKey']=l,i['receivingMessageCount']+=0x1;}}else{j=trySkippedMessageKeys(i,e);if(!j){const p=dhRatchetStep(i,e);Object['assign'](i,p['newState']),j=p['messageKey'];}}return{'plaintext':aesGcmDecrypt(j,h,f,g,d),'newState':i};}function dhRatchetStep(a,b){a['previousSendingCount']=a['sendingMessageCount'];const c=x25519DH(a['ourDHKeyPair']['privateKey'],b['dhPublicKey']),{rootKey:d,chainKey:e}=hkdfChainKey(a['rootKey'],c),f=generateX25519KeyPair(),{rootKey:g,chainKey:h}=hkdfChainKey(d,x25519DH(f['privateKey'],b['dhPublicKey'])),{messageKey:i}=hkdfMessageKey(e);return{'messageKey':i,'newState':{'rootKey':g,'sendingChainKey':e,'sendingMessageCount':0x0,'receivingChainKey':h,'receivingMessageCount':0x1,'ourDHKeyPair':f,'peerDHPublicKey':b['dhPublicKey'],'previousSendingCount':b['previousSendingCount']}};}function trySkippedMessageKeys(a,b){const c=makeSkipKey(b['dhPublicKey'],b['messageCount']),d=a['skipMessageKeys']['get'](c);if(d)return a['skipMessageKeys']['delete'](c),d;return null;}function cloneRatchetState(a){return{'rootKey':new Uint8Array(a['rootKey']),'sendingChainKey':new Uint8Array(a['sendingChainKey']),'sendingMessageCount':a['sendingMessageCount'],'receivingChainKey':new Uint8Array(a['receivingChainKey']),'receivingMessageCount':a['receivingMessageCount'],'ourDHKeyPair':{'publicKey':new Uint8Array(a['ourDHKeyPair']['publicKey']),'privateKey':new Uint8Array(a['ourDHKeyPair']['privateKey'])},'peerDHPublicKey':a['peerDHPublicKey']?new Uint8Array(a['peerDHPublicKey']):null,'previousSendingCount':a['previousSendingCount'],'skipMessageKeys':new Map(a['skipMessageKeys'])};}function serializeRatchetState(a){const b={};for(const [c,d]of a['skipMessageKeys'])b[c]=Buffer['from'](d)['toString']('base64');return{'rootKey':Buffer['from'](a['rootKey'])['toString']('base64'),'sendingChainKey':Buffer['from'](a['sendingChainKey'])['toString']('base64'),'sendingMessageCount':a['sendingMessageCount'],'receivingChainKey':Buffer['from'](a['receivingChainKey'])['toString']('base64'),'receivingMessageCount':a['receivingMessageCount'],'ourDHPrivateKey':Buffer['from'](a['ourDHKeyPair']['privateKey'])['toString']('base64'),'ourDHPublicKey':Buffer['from'](a['ourDHKeyPair']['publicKey'])['toString']('base64'),'peerDHPublicKey':a['peerDHPublicKey']?Buffer['from'](a['peerDHPublicKey'])['toString']('base64'):null,'previousSendingCount':a['previousSendingCount'],'skipMessageKeys':b};}function deserializeRatchetState(a){const b=new Map();for(const [c,d]of Object['entries'](a['skipMessageKeys']))b['set'](c,new Uint8Array(Buffer['from'](d,'base64')));return{'rootKey':new Uint8Array(Buffer['from'](a['rootKey'],'base64')),'sendingChainKey':new Uint8Array(Buffer['from'](a['sendingChainKey'],'base64')),'sendingMessageCount':a['sendingMessageCount'],'receivingChainKey':new Uint8Array(Buffer['from'](a['receivingChainKey'],'base64')),'receivingMessageCount':a['receivingMessageCount'],'ourDHKeyPair':{'publicKey':new Uint8Array(Buffer['from'](a['ourDHPublicKey'],'base64')),'privateKey':new Uint8Array(Buffer['from'](a['ourDHPrivateKey'],'base64'))},'peerDHPublicKey':a['peerDHPublicKey']?new Uint8Array(Buffer['from'](a['peerDHPublicKey'],'base64')):null,'previousSendingCount':a['previousSendingCount'],'skipMessageKeys':b};}export{deserializeRatchetState,initRatchet,ratchetDecrypt,ratchetEncrypt,serializeRatchetState};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { EncryptedMessage, MLKEMKeyPair, PQIdentity, PQPreKeyBundle, SerializedPQSessionState, X25519KeyPair } from "./types.mjs";
|
|
2
|
+
import { t as GeneratedPreKeyBundle } from "../../../pqxdh-CKkqzvPb.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/w/messenger/pq/session.d.ts
|
|
5
|
+
interface PQSessionStore {
|
|
6
|
+
getIdentityKeyPair(): Promise<X25519KeyPair | null>;
|
|
7
|
+
setIdentityKeyPair(keyPair: X25519KeyPair): Promise<void>;
|
|
8
|
+
getRegistrationId(): Promise<number | null>;
|
|
9
|
+
setRegistrationId(id: number): Promise<void>;
|
|
10
|
+
getSignedPreKey(keyId: number): Promise<X25519KeyPair | null>;
|
|
11
|
+
setSignedPreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
|
|
12
|
+
getSignedPreKeySignature(keyId: number): Promise<Uint8Array | null>;
|
|
13
|
+
setSignedPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
|
|
14
|
+
getOneTimePreKey(keyId: number): Promise<X25519KeyPair | null>;
|
|
15
|
+
setOneTimePreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
|
|
16
|
+
removeOneTimePreKey(keyId: number): Promise<void>;
|
|
17
|
+
getPQPreKey(keyId: number): Promise<MLKEMKeyPair | null>;
|
|
18
|
+
setPQPreKey(keyId: number, keyPair: MLKEMKeyPair): Promise<void>;
|
|
19
|
+
getPQPreKeySignature(keyId: number): Promise<Uint8Array | null>;
|
|
20
|
+
setPQPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
|
|
21
|
+
getSession(peerAddress: string, peerDeviceId: number): Promise<SerializedPQSessionState | null>;
|
|
22
|
+
setSession(peerAddress: string, peerDeviceId: number, state: SerializedPQSessionState): Promise<void>;
|
|
23
|
+
removeSession(peerAddress: string, peerDeviceId: number): Promise<void>;
|
|
24
|
+
getPeerIdentity(peerAddress: string): Promise<Uint8Array | null>;
|
|
25
|
+
setPeerIdentity(peerAddress: string, identityKey: Uint8Array): Promise<void>;
|
|
26
|
+
}
|
|
27
|
+
declare class PQSessionCipher {
|
|
28
|
+
private store;
|
|
29
|
+
private identity;
|
|
30
|
+
private getFalcon512KeyPair;
|
|
31
|
+
constructor(store: PQSessionStore, getFalcon512KeyPair?: () => Promise<{
|
|
32
|
+
publicKey: Uint8Array;
|
|
33
|
+
privateKey: Uint8Array;
|
|
34
|
+
}>);
|
|
35
|
+
ensureIdentity(): Promise<PQIdentity>;
|
|
36
|
+
generatePreKeyBundle(signedPreKeyId: number, pqPreKeyId: number, oneTimePreKeyCount: number): Promise<GeneratedPreKeyBundle>;
|
|
37
|
+
processPreKeyBundle(peerAddress: string, peerDeviceId: number, bundle: PQPreKeyBundle): Promise<void>;
|
|
38
|
+
processInitialMessage(peerAddress: string, peerDeviceId: number, ephemeralPublicKey: Uint8Array, mlkemCiphertext: Uint8Array, peerIdentityKey: Uint8Array, signedPreKeyId: number, oneTimePreKeyId: number | null, pqPreKeyId: number): Promise<void>;
|
|
39
|
+
encryptMessage(peerAddress: string, plaintext: Uint8Array, peerDeviceId?: number): Promise<EncryptedMessage>;
|
|
40
|
+
decryptMessage(peerAddress: string, messageBody: Uint8Array, peerDeviceId?: number): Promise<Uint8Array>;
|
|
41
|
+
hasSession(peerAddress: string, peerDeviceId?: number): Promise<boolean>;
|
|
42
|
+
private loadSession;
|
|
43
|
+
private saveSession;
|
|
44
|
+
}
|
|
45
|
+
//#endregion
|
|
46
|
+
export { PQSessionCipher, PQSessionStore };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{PQError}from'./types.mjs';import{base64ToBytes,bytesToBase64,concatBytes,deriveRegistrationId,generateX25519KeyPair}from'./crypto.mjs';import{generatePreKeyBundle,pqxdhInitiate,pqxdhReceive,verifyPreKeyBundle}from'./pqxdh.mjs';import{deserializeRatchetState,initRatchet,ratchetDecrypt,ratchetEncrypt,serializeRatchetState}from'./ratchet.mjs';import{packChunk}from'./erasure.mjs';import{deserializeSPQRState,initSPQR,serializeSPQRState,spqrGetNextChunk,spqrOnPeerPQPKReceived,spqrReceiveChunk}from'./spqr.mjs';var PQSessionCipher=class{constructor(a,b){this['identity']=null,this['store']=a,this['getFalcon512KeyPair']=b||(async()=>{throw new PQError('HANDSHAKE_FAILED','Falcon512\x20key\x20pair\x20not\x20available\x20for\x20signing');});}async['ensureIdentity'](){if(this['identity'])return this['identity'];let a=await this['store']['getIdentityKeyPair'](),b=await this['store']['getRegistrationId']();return(!a||!b)&&(a=generateX25519KeyPair(),b=deriveRegistrationId(a['publicKey']),await this['store']['setIdentityKeyPair'](a),await this['store']['setRegistrationId'](b)),this['identity']={'x25519KeyPair':a,'registrationId':b},this['identity'];}async['generatePreKeyBundle'](a,b,c){const d=await this['ensureIdentity'](),e=await this['getFalcon512KeyPair'](),f=generatePreKeyBundle(d['x25519KeyPair'],e,a,b,c);await this['store']['setSignedPreKey'](a,f['signedPreKey']['keyPair']),await this['store']['setSignedPreKeySignature'](a,f['signedPreKey']['signature']);for(const g of f['oneTimePreKeys'])await this['store']['setOneTimePreKey'](g['keyId'],g['keyPair']);return await this['store']['setPQPreKey'](b,f['pqPreKey']['keyPair']),await this['store']['setPQPreKeySignature'](b,f['pqPreKey']['signature']),f;}async['processPreKeyBundle'](a,b,c){const d=await this['ensureIdentity']();if(!verifyPreKeyBundle(c))throw new PQError('HANDSHAKE_FAILED','PreKey\x20bundle\x20signature\x20verification\x20failed');const e=pqxdhInitiate(d['x25519KeyPair'],c),f={'pqxdhComplete':!![],'ratchetState':initRatchet(e['result']['rootKey'],e['result']['chainKey'],new Uint8Array(0x20),e['result']['ourDHKeyPair'],e['result']['peerDHPublicKey']),'spqrState':initSPQR(),'peerIdentityKey':c['identityKey'],'peerRegistrationId':c['registrationId'],'peerDeviceId':b,'pendingInitialMessage':{'ephemeralPublicKey':e['initialMessage']['ephemeralPublicKey'],'mlkemCiphertext':e['initialMessage']['mlkemCiphertext'],'identityKey':e['initialMessage']['identityKey'],'signedPreKeyId':c['signedPreKey']['keyId'],'oneTimePreKeyId':c['oneTimePreKey']?.['keyId']??null,'pqPreKeyId':c['pqPreKey']['keyId']}};await this['store']['setPeerIdentity'](a,c['identityKey']),await this['saveSession'](a,b,f);}async['processInitialMessage'](a,b,c,d,e,f,g,h){const i=await this['ensureIdentity'](),j=await this['store']['getSignedPreKey'](f);if(!j)throw new PQError('HANDSHAKE_FAILED','Signed\x20pre-key\x20not\x20found');let k=null;if(g!==null){k=await this['store']['getOneTimePreKey'](g);if(k)await this['store']['removeOneTimePreKey'](g);}const l=await this['store']['getPQPreKey'](h);if(!l)throw new PQError('HANDSHAKE_FAILED','PQ\x20pre-key\x20not\x20found');const m=pqxdhReceive(i['x25519KeyPair'],j,k,l,c,e,d),n={'pqxdhComplete':!![],'ratchetState':initRatchet(m['rootKey'],new Uint8Array(0x20),m['chainKey'],m['ourDHKeyPair'],m['peerDHPublicKey']),'spqrState':initSPQR(),'peerIdentityKey':e,'peerRegistrationId':0x0,'peerDeviceId':b};await this['store']['setPeerIdentity'](a,e),await this['saveSession'](a,b,n);}async['encryptMessage'](a,b,c=0x1){const d=await this['loadSession'](a,c);if(!d)throw new PQError('SESSION_NOT_FOUND','No\x20session\x20established');const {message:e,newState:f}=ratchetEncrypt(d['ratchetState'],b),g=f['sendingMessageCount']+f['previousSendingCount'],{chunk:h,newState:i}=spqrGetNextChunk(d['spqrState'],g);let j;if(h){const l=packChunk(h);j=concatBytes(new Uint8Array([0x1]),e['body'],l);}else j=concatBytes(new Uint8Array([0x0]),e['body']);const k=d['pendingInitialMessage']!==void 0x0;if(d['pendingInitialMessage']){const m=d['pendingInitialMessage'],n=m['oneTimePreKeyId']??0xffffffff,o=new Uint8Array(0x48c),p=new DataView(o['buffer']);o['set'](m['ephemeralPublicKey'],0x0),o['set'](m['mlkemCiphertext'],0x20),o['set'](m['identityKey'],0x460),p['setUint32'](0x480,m['signedPreKeyId'],![]),p['setUint32'](0x484,n,![]),p['setUint32'](0x488,m['pqPreKeyId'],![]),j=concatBytes(o,j),d['pendingInitialMessage']=void 0x0;}return d['ratchetState']=f,d['spqrState']=i,await this['saveSession'](a,c,d),{'type':k?0x3:0x1,'body':j};}async['decryptMessage'](a,b,c=0x1){const d=0x48c;let e=await this['loadSession'](a,c);if(!e&&b['length']>=d){const m=new DataView(b['buffer'],b['byteOffset'],b['byteLength']),n=b['slice'](0x0,0x20),o=b['slice'](0x20,0x460),p=b['slice'](0x460,0x480),q=m['getUint32'](0x480,![]),r=m['getUint32'](0x484,![]),s=m['getUint32'](0x488,![]),t=r===0xffffffff?null:r;await this['processInitialMessage'](a,c,n,o,p,q,t,s),b=b['slice'](d),e=await this['loadSession'](a,c);}if(!e)throw new PQError('SESSION_NOT_FOUND','No\x20session\x20established');if(b['length']<0x1)throw new PQError('DECRYPTION_FAILED','Message\x20body\x20too\x20short');const f=b[0x0]===0x1,g=b['slice'](0x1);let h=null;if(f){if(g['length']<0x34)throw new PQError('DECRYPTION_FAILED','SPQR\x20chunk\x20missing');h=g['slice'](g['length']-0x34);}const i=f?g['slice'](0x0,g['length']-0x34):g,{plaintext:j,newState:k}=ratchetDecrypt(e['ratchetState'],i);let l=e['spqrState'];if(h){const u=spqrReceiveChunk(l,h);l=u['newState'];if(u['shouldSendCT']&&u['peerPQPK'])l=spqrOnPeerPQPKReceived(l,u['peerPQPK'])['newState'];}return e['ratchetState']=k,e['spqrState']=l,await this['saveSession'](a,c,e),j;}async['hasSession'](a,b=0x1){const c=await this['loadSession'](a,b);return c!==null&&c['pqxdhComplete'];}async['loadSession'](a,b){const c=await this['store']['getSession'](a,b);if(!c)return null;const d={'pqxdhComplete':c['pqxdhComplete'],'ratchetState':deserializeRatchetState(c['ratchetState']),'spqrState':deserializeSPQRState(c['spqrState']),'peerIdentityKey':base64ToBytes(c['peerIdentityKey']),'peerRegistrationId':c['peerRegistrationId'],'peerDeviceId':c['peerDeviceId']};if(c['pendingInitialMessage'])d['pendingInitialMessage']={'ephemeralPublicKey':base64ToBytes(c['pendingInitialMessage']['ephemeralPublicKey']),'mlkemCiphertext':base64ToBytes(c['pendingInitialMessage']['mlkemCiphertext']),'identityKey':base64ToBytes(c['pendingInitialMessage']['identityKey']),'signedPreKeyId':c['pendingInitialMessage']['signedPreKeyId'],'oneTimePreKeyId':c['pendingInitialMessage']['oneTimePreKeyId'],'pqPreKeyId':c['pendingInitialMessage']['pqPreKeyId']};return d;}async['saveSession'](a,b,c){const d={'pqxdhComplete':c['pqxdhComplete'],'ratchetState':serializeRatchetState(c['ratchetState']),'spqrState':serializeSPQRState(c['spqrState']),'peerIdentityKey':bytesToBase64(c['peerIdentityKey']),'peerRegistrationId':c['peerRegistrationId'],'peerDeviceId':c['peerDeviceId']};if(c['pendingInitialMessage'])d['pendingInitialMessage']={'ephemeralPublicKey':bytesToBase64(c['pendingInitialMessage']['ephemeralPublicKey']),'mlkemCiphertext':bytesToBase64(c['pendingInitialMessage']['mlkemCiphertext']),'identityKey':bytesToBase64(c['pendingInitialMessage']['identityKey']),'signedPreKeyId':c['pendingInitialMessage']['signedPreKeyId'],'oneTimePreKeyId':c['pendingInitialMessage']['oneTimePreKeyId'],'pqPreKeyId':c['pendingInitialMessage']['pqPreKeyId']};await this['store']['setSession'](a,b,d);}};export{PQSessionCipher};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { SPQRChunk, SPQRState, SerializedSPQRState } from "./types.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/w/messenger/pq/spqr.d.ts
|
|
4
|
+
declare function initSPQR(): SPQRState;
|
|
5
|
+
declare function spqrGetNextChunk(state: SPQRState, messageCount: number): {
|
|
6
|
+
chunk: SPQRChunk | null;
|
|
7
|
+
newState: SPQRState;
|
|
8
|
+
};
|
|
9
|
+
declare function spqrProcessReceivedChunks(state: SPQRState, chunks: SPQRChunk[]): {
|
|
10
|
+
newState: SPQRState;
|
|
11
|
+
completed: boolean;
|
|
12
|
+
};
|
|
13
|
+
declare function spqrOnPeerPQPKReceived(state: SPQRState, peerPQPK: Uint8Array): {
|
|
14
|
+
newState: SPQRState;
|
|
15
|
+
ctChunks: Uint8Array[];
|
|
16
|
+
};
|
|
17
|
+
declare function spqrReceiveChunk(state: SPQRState, packedChunk: Uint8Array): {
|
|
18
|
+
newState: SPQRState;
|
|
19
|
+
peerPQPKReady: boolean;
|
|
20
|
+
peerPQPK: Uint8Array | null;
|
|
21
|
+
shouldSendCT: boolean;
|
|
22
|
+
};
|
|
23
|
+
declare function spqrGetCurrentKey(state: SPQRState): Uint8Array;
|
|
24
|
+
declare function serializeSPQRState(state: SPQRState): SerializedSPQRState;
|
|
25
|
+
declare function deserializeSPQRState(serialized: SerializedSPQRState): SPQRState;
|
|
26
|
+
//#endregion
|
|
27
|
+
export { deserializeSPQRState, initSPQR, serializeSPQRState, spqrGetCurrentKey, spqrGetNextChunk, spqrOnPeerPQPKReceived, spqrProcessReceivedChunks, spqrReceiveChunk };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{MLKEM_CIPHERTEXT_SIZE,MLKEM_PUBLIC_KEY_SIZE}from'./types.mjs';import{concatBytes,generateMLKEMKeyPair,hkdfDerive,mlkemDecapsulate,mlkemEncapsulate}from'./crypto.mjs';import{decodeShards,encodeShards,unpackChunk}from'./erasure.mjs';const SPQR_CYCLE_INTERVAL=0x32;function initSPQR(){return{'cycleId':0x0,'sendingPQKeys':null,'sendingChunks':[],'sendingChunkIndex':0x0,'sendingPhase':'idle','receivedChunks':new Map(),'receivingPhase':'idle','expectedTotalChunks':0x0,'receivedSharedSecret':null,'currentSPQRKey':new Uint8Array(0x20),'spqrChainKey':new Uint8Array(0x20),'spqrMessageCount':0x0};}function spqrGetNextChunk(a,b){const c=cloneSPQRState(a);c['sendingPhase']==='idle'&&b>0x0&&b%SPQR_CYCLE_INTERVAL===0x0&&(c['cycleId']+=0x1,c['sendingPQKeys']=generateMLKEMKeyPair(),c['sendingPhase']='sending_pk',c['sendingChunks']=encodeShards(c['sendingPQKeys']['publicKey']),c['sendingChunkIndex']=0x0);if(c['sendingPhase']==='idle')return{'chunk':null,'newState':c};if(c['sendingChunkIndex']>=c['sendingChunks']['length']){if(c['sendingPhase']==='sending_pk')c['sendingPhase']='waiting_for_ct',c['sendingChunkIndex']=0x0,c['sendingChunks']=[];else{if(c['sendingPhase']==='sending_ct_pk')return c['sendingPhase']='idle',c['sendingPQKeys']=null,c['sendingChunks']=[],c['sendingChunkIndex']=0x0,{'chunk':null,'newState':c};}}if(c['sendingPhase']==='waiting_for_ct')return{'chunk':null,'newState':c};const d=c['sendingChunks'][c['sendingChunkIndex']],e={'cycleId':c['cycleId'],'chunkIndex':c['sendingChunkIndex'],'totalChunks':c['sendingChunks']['length'],'data':d};return c['sendingChunkIndex']+=0x1,{'chunk':e,'newState':c};}function spqrProcessReceivedChunks(a,b){const c=cloneSPQRState(a);for(const d of b){c['receivingPhase']==='idle'&&(c['receivingPhase']='receiving_ct',c['expectedTotalChunks']=d['totalChunks'],c['receivedChunks']=new Map());if(d['cycleId']!==c['cycleId'])continue;c['receivedChunks']['set'](d['chunkIndex'],d['data']);}if(c['receivingPhase']==='receiving_ct'&&c['receivedChunks']['size']>=0x1c){const e=decodeShards(c['receivedChunks'],c['expectedTotalChunks'])['slice'](0x0,MLKEM_CIPHERTEXT_SIZE);if(c['sendingPQKeys']){const f=mlkemDecapsulate(e,c['sendingPQKeys']['secretKey']);return c['receivedSharedSecret']=f,c['currentSPQRKey']=hkdfDerive(concatBytes(c['currentSPQRKey'],f),new TextEncoder()['encode']('WowokSPQRUpdate'),0x20),c['receivingPhase']='done',c['receivedChunks']=new Map(),{'newState':c,'completed':!![]};}}return{'newState':c,'completed':![]};}function spqrOnPeerPQPKReceived(a,b){const c=cloneSPQRState(a),{ciphertext:d,sharedSecret:e}=mlkemEncapsulate(b);c['currentSPQRKey']=hkdfDerive(concatBytes(c['currentSPQRKey'],e),new TextEncoder()['encode']('WowokSPQRUpdate'),0x20);const f=encodeShards(d);return c['sendingChunks']=f,c['sendingChunkIndex']=0x0,c['sendingPhase']='sending_ct_pk',{'newState':c,'ctChunks':f};}function spqrReceiveChunk(a,b){const c=cloneSPQRState(a),d=unpackChunk(b);c['receivingPhase']==='idle'&&(c['receivingPhase']='receiving_pk',c['expectedTotalChunks']=d['totalChunks'],c['receivedChunks']=new Map(),c['cycleId']=d['cycleId']);if(d['cycleId']!==c['cycleId'])return{'newState':c,'peerPQPKReady':![],'peerPQPK':null,'shouldSendCT':![]};c['receivedChunks']['set'](d['chunkIndex'],d['data']);if(c['receivingPhase']==='receiving_pk'&&c['receivedChunks']['size']>=0x1c){const e=decodeShards(c['receivedChunks'],c['expectedTotalChunks'])['slice'](0x0,MLKEM_PUBLIC_KEY_SIZE);return c['receivingPhase']='receiving_ct',c['receivedChunks']=new Map(),{'newState':c,'peerPQPKReady':!![],'peerPQPK':e,'shouldSendCT':!![]};}if(c['receivingPhase']==='receiving_ct'&&c['receivedChunks']['size']>=0x1c){const f=decodeShards(c['receivedChunks'],c['expectedTotalChunks'])['slice'](0x0,MLKEM_CIPHERTEXT_SIZE);if(c['sendingPQKeys']){const g=mlkemDecapsulate(f,c['sendingPQKeys']['secretKey']);c['currentSPQRKey']=hkdfDerive(concatBytes(c['currentSPQRKey'],g),new TextEncoder()['encode']('WowokSPQRUpdate'),0x20),c['receivingPhase']='done',c['receivedChunks']=new Map(),c['sendingPQKeys']=null,c['sendingPhase']='idle',c['sendingChunks']=[],c['sendingChunkIndex']=0x0;}return{'newState':c,'peerPQPKReady':![],'peerPQPK':null,'shouldSendCT':![]};}return{'newState':c,'peerPQPKReady':![],'peerPQPK':null,'shouldSendCT':![]};}function spqrGetCurrentKey(a){return a['currentSPQRKey'];}function cloneSPQRState(a){return{'cycleId':a['cycleId'],'sendingPQKeys':a['sendingPQKeys']?{'publicKey':new Uint8Array(a['sendingPQKeys']['publicKey']),'secretKey':new Uint8Array(a['sendingPQKeys']['secretKey'])}:null,'sendingChunks':a['sendingChunks']['map'](b=>new Uint8Array(b)),'sendingChunkIndex':a['sendingChunkIndex'],'sendingPhase':a['sendingPhase'],'receivedChunks':new Map(a['receivedChunks']),'receivingPhase':a['receivingPhase'],'expectedTotalChunks':a['expectedTotalChunks'],'receivedSharedSecret':a['receivedSharedSecret']?new Uint8Array(a['receivedSharedSecret']):null,'currentSPQRKey':new Uint8Array(a['currentSPQRKey']),'spqrChainKey':new Uint8Array(a['spqrChainKey']),'spqrMessageCount':a['spqrMessageCount']};}function serializeSPQRState(a){const b={};for(const [c,d]of a['receivedChunks'])b[c['toString']()]=Buffer['from'](d)['toString']('base64');return{'cycleId':a['cycleId'],'sendingPQPublicKey':a['sendingPQKeys']?Buffer['from'](a['sendingPQKeys']['publicKey'])['toString']('base64'):null,'sendingPQSecretKey':a['sendingPQKeys']?Buffer['from'](a['sendingPQKeys']['secretKey'])['toString']('base64'):null,'sendingChunks':a['sendingChunks']['map'](e=>Buffer['from'](e)['toString']('base64')),'sendingChunkIndex':a['sendingChunkIndex'],'sendingPhase':a['sendingPhase'],'receivedChunks':b,'receivingPhase':a['receivingPhase'],'expectedTotalChunks':a['expectedTotalChunks'],'receivedSharedSecret':a['receivedSharedSecret']?Buffer['from'](a['receivedSharedSecret'])['toString']('base64'):null,'currentSPQRKey':Buffer['from'](a['currentSPQRKey'])['toString']('base64'),'spqrChainKey':Buffer['from'](a['spqrChainKey'])['toString']('base64'),'spqrMessageCount':a['spqrMessageCount']};}function deserializeSPQRState(a){const b=new Map();for(const [c,d]of Object['entries'](a['receivedChunks']))b['set'](parseInt(c),new Uint8Array(Buffer['from'](d,'base64')));return{'cycleId':a['cycleId'],'sendingPQKeys':a['sendingPQPublicKey']&&a['sendingPQSecretKey']?{'publicKey':new Uint8Array(Buffer['from'](a['sendingPQPublicKey'],'base64')),'secretKey':new Uint8Array(Buffer['from'](a['sendingPQSecretKey'],'base64'))}:null,'sendingChunks':a['sendingChunks']['map'](e=>new Uint8Array(Buffer['from'](e,'base64'))),'sendingChunkIndex':a['sendingChunkIndex'],'sendingPhase':a['sendingPhase'],'receivedChunks':b,'receivingPhase':a['receivingPhase'],'expectedTotalChunks':a['expectedTotalChunks'],'receivedSharedSecret':a['receivedSharedSecret']?new Uint8Array(Buffer['from'](a['receivedSharedSecret'],'base64')):null,'currentSPQRKey':new Uint8Array(Buffer['from'](a['currentSPQRKey'],'base64')),'spqrChainKey':new Uint8Array(Buffer['from'](a['spqrChainKey'],'base64')),'spqrMessageCount':a['spqrMessageCount']};}export{deserializeSPQRState,initSPQR,serializeSPQRState,spqrGetCurrentKey,spqrGetNextChunk,spqrOnPeerPQPKReceived,spqrProcessReceivedChunks,spqrReceiveChunk};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { MLKEMKeyPair, SerializedPQSessionState, X25519KeyPair } from "./types.mjs";
|
|
2
|
+
import { PQSessionStore } from "./session.mjs";
|
|
3
|
+
import Database from "libsql";
|
|
4
|
+
|
|
5
|
+
//#region src/w/messenger/pq/store-adapter.d.ts
|
|
6
|
+
declare class PQSessionStoreAdapter implements PQSessionStore {
|
|
7
|
+
private db;
|
|
8
|
+
private userAddress;
|
|
9
|
+
constructor(db: Database.Database, userAddress: string);
|
|
10
|
+
private getValue;
|
|
11
|
+
private putValue;
|
|
12
|
+
private delValue;
|
|
13
|
+
getIdentityKeyPair(): Promise<X25519KeyPair | null>;
|
|
14
|
+
setIdentityKeyPair(keyPair: X25519KeyPair): Promise<void>;
|
|
15
|
+
getRegistrationId(): Promise<number | null>;
|
|
16
|
+
setRegistrationId(id: number): Promise<void>;
|
|
17
|
+
getSignedPreKey(keyId: number): Promise<X25519KeyPair | null>;
|
|
18
|
+
setSignedPreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
|
|
19
|
+
getSignedPreKeySignature(keyId: number): Promise<Uint8Array | null>;
|
|
20
|
+
setSignedPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
|
|
21
|
+
getOneTimePreKey(keyId: number): Promise<X25519KeyPair | null>;
|
|
22
|
+
setOneTimePreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
|
|
23
|
+
removeOneTimePreKey(keyId: number): Promise<void>;
|
|
24
|
+
getPQPreKey(keyId: number): Promise<MLKEMKeyPair | null>;
|
|
25
|
+
setPQPreKey(keyId: number, keyPair: MLKEMKeyPair): Promise<void>;
|
|
26
|
+
getPQPreKeySignature(keyId: number): Promise<Uint8Array | null>;
|
|
27
|
+
setPQPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
|
|
28
|
+
getSession(peerAddress: string, peerDeviceId: number): Promise<SerializedPQSessionState | null>;
|
|
29
|
+
setSession(peerAddress: string, peerDeviceId: number, state: SerializedPQSessionState): Promise<void>;
|
|
30
|
+
removeSession(peerAddress: string, peerDeviceId: number): Promise<void>;
|
|
31
|
+
getPeerIdentity(peerAddress: string): Promise<Uint8Array | null>;
|
|
32
|
+
setPeerIdentity(peerAddress: string, identityKey: Uint8Array): Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
export { PQSessionStoreAdapter };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const PQ_STORE_PREFIX='pq';function arrayBufferToBase64(a){return Buffer['from'](a)['toString']('base64');}function base64ToUint8Array(a){return new Uint8Array(Buffer['from'](a,'base64'));}var PQSessionStoreAdapter=class{constructor(a,b){this['db']=a,this['userAddress']=b;}['getValue'](a){return this['db']['prepare']('SELECT\x20value\x20FROM\x20signal_store\x20WHERE\x20store_type\x20=\x20?\x20AND\x20key\x20=\x20?')['get'](PQ_STORE_PREFIX,a)?.['value'];}['putValue'](a,b){this['db']['prepare']('INSERT\x20INTO\x20signal_store\x20(store_type,\x20key,\x20value,\x20updated_at)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20(?,\x20?,\x20?,\x20strftime(\x27%s\x27,\x20\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT(store_type,\x20key)\x20DO\x20UPDATE\x20SET\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20=\x20excluded.value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20=\x20excluded.updated_at')['run'](PQ_STORE_PREFIX,a,b);}['delValue'](a){this['db']['prepare']('DELETE\x20FROM\x20signal_store\x20WHERE\x20store_type\x20=\x20?\x20AND\x20key\x20=\x20?')['run'](PQ_STORE_PREFIX,a);}async['getIdentityKeyPair'](){const a=this['getValue']('identity_x25519');if(!a)return null;const b=JSON['parse'](a);return{'publicKey':base64ToUint8Array(b['pubKey']),'privateKey':base64ToUint8Array(b['privKey'])};}async['setIdentityKeyPair'](a){const b={'pubKey':arrayBufferToBase64(a['publicKey']),'privKey':arrayBufferToBase64(a['privateKey'])};this['putValue']('identity_x25519',JSON['stringify'](b));}async['getRegistrationId'](){const a=this['getValue']('registration_id');return a?parseInt(a,0xa):null;}async['setRegistrationId'](a){this['putValue']('registration_id',a['toString']());}async['getSignedPreKey'](a){const b=this['getValue']('signed_prekey:'+a);if(!b)return null;const c=JSON['parse'](b);return{'publicKey':base64ToUint8Array(c['pubKey']),'privateKey':base64ToUint8Array(c['privKey'])};}async['setSignedPreKey'](a,b){const c={'pubKey':arrayBufferToBase64(b['publicKey']),'privKey':arrayBufferToBase64(b['privateKey'])};this['putValue']('signed_prekey:'+a,JSON['stringify'](c));}async['getSignedPreKeySignature'](a){const b=this['getValue']('signed_prekey_sig:'+a);return b?base64ToUint8Array(b):null;}async['setSignedPreKeySignature'](a,b){this['putValue']('signed_prekey_sig:'+a,arrayBufferToBase64(b));}async['getOneTimePreKey'](a){const b=this['getValue']('onetime_prekey:'+a);if(!b)return null;const c=JSON['parse'](b);return{'publicKey':base64ToUint8Array(c['pubKey']),'privateKey':base64ToUint8Array(c['privKey'])};}async['setOneTimePreKey'](a,b){const c={'pubKey':arrayBufferToBase64(b['publicKey']),'privKey':arrayBufferToBase64(b['privateKey'])};this['putValue']('onetime_prekey:'+a,JSON['stringify'](c));}async['removeOneTimePreKey'](a){this['delValue']('onetime_prekey:'+a);}async['getPQPreKey'](a){const b=this['getValue']('pq_prekey:'+a);if(!b)return null;const c=JSON['parse'](b);return{'publicKey':base64ToUint8Array(c['pubKey']),'secretKey':base64ToUint8Array(c['secKey'])};}async['setPQPreKey'](a,b){const c={'pubKey':arrayBufferToBase64(b['publicKey']),'secKey':arrayBufferToBase64(b['secretKey'])};this['putValue']('pq_prekey:'+a,JSON['stringify'](c));}async['getPQPreKeySignature'](a){const b=this['getValue']('pq_prekey_sig:'+a);return b?base64ToUint8Array(b):null;}async['setPQPreKeySignature'](a,b){this['putValue']('pq_prekey_sig:'+a,arrayBufferToBase64(b));}async['getSession'](a,b){const c='session:'+a+'.'+b,d=this['getValue'](c);if(!d)return null;return JSON['parse'](d);}async['setSession'](a,b,c){const d='session:'+a+'.'+b;this['putValue'](d,JSON['stringify'](c));}async['removeSession'](a,b){const c='session:'+a+'.'+b;this['delValue'](c);}async['getPeerIdentity'](a){const b=this['getValue']('peer_identity:'+a);return b?base64ToUint8Array(b):null;}async['setPeerIdentity'](a,b){this['putValue']('peer_identity:'+a,arrayBufferToBase64(b));}};export{PQSessionStoreAdapter};
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
//#region src/w/messenger/pq/types.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* PQ (Post-Quantum) 密码学类型定义
|
|
4
|
+
*
|
|
5
|
+
* 基于 @noble/post-quantum (MIT) 实现 Signal Protocol 兼容的
|
|
6
|
+
* PQXDH 握手 + Triple Ratchet (SPQR) 端到端加密
|
|
7
|
+
*/
|
|
8
|
+
interface KeyPair {
|
|
9
|
+
publicKey: Uint8Array;
|
|
10
|
+
secretKey: Uint8Array;
|
|
11
|
+
}
|
|
12
|
+
interface X25519KeyPair {
|
|
13
|
+
publicKey: Uint8Array;
|
|
14
|
+
privateKey: Uint8Array;
|
|
15
|
+
}
|
|
16
|
+
interface Falcon512KeyPair {
|
|
17
|
+
publicKey: Uint8Array;
|
|
18
|
+
privateKey: Uint8Array;
|
|
19
|
+
}
|
|
20
|
+
interface MLKEMKeyPair {
|
|
21
|
+
publicKey: Uint8Array;
|
|
22
|
+
secretKey: Uint8Array;
|
|
23
|
+
}
|
|
24
|
+
interface PQPreKeyBundle {
|
|
25
|
+
registrationId: number;
|
|
26
|
+
deviceId: number;
|
|
27
|
+
identityKey: Uint8Array;
|
|
28
|
+
falcon512PublicKey: Uint8Array;
|
|
29
|
+
signedPreKey: {
|
|
30
|
+
keyId: number;
|
|
31
|
+
publicKey: Uint8Array;
|
|
32
|
+
signature: Uint8Array;
|
|
33
|
+
};
|
|
34
|
+
oneTimePreKey?: {
|
|
35
|
+
keyId: number;
|
|
36
|
+
publicKey: Uint8Array;
|
|
37
|
+
};
|
|
38
|
+
pqPreKey: {
|
|
39
|
+
keyId: number;
|
|
40
|
+
publicKey: Uint8Array;
|
|
41
|
+
signature: Uint8Array;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
interface PQXDHResult {
|
|
45
|
+
rootKey: Uint8Array;
|
|
46
|
+
chainKey: Uint8Array;
|
|
47
|
+
ourDHKeyPair: X25519KeyPair;
|
|
48
|
+
peerDHPublicKey: Uint8Array;
|
|
49
|
+
peerIdentityKey: Uint8Array;
|
|
50
|
+
pqSharedSecret: Uint8Array;
|
|
51
|
+
}
|
|
52
|
+
interface RatchetState {
|
|
53
|
+
rootKey: Uint8Array;
|
|
54
|
+
sendingChainKey: Uint8Array;
|
|
55
|
+
sendingMessageCount: number;
|
|
56
|
+
receivingChainKey: Uint8Array;
|
|
57
|
+
receivingMessageCount: number;
|
|
58
|
+
ourDHKeyPair: X25519KeyPair;
|
|
59
|
+
peerDHPublicKey: Uint8Array | null;
|
|
60
|
+
previousSendingCount: number;
|
|
61
|
+
skipMessageKeys: Map<string, Uint8Array>;
|
|
62
|
+
}
|
|
63
|
+
interface EncryptedMessage {
|
|
64
|
+
type: MessageType;
|
|
65
|
+
body: Uint8Array;
|
|
66
|
+
registrationId?: number;
|
|
67
|
+
}
|
|
68
|
+
declare enum MessageType {
|
|
69
|
+
PREKEY_MESSAGE = 3,
|
|
70
|
+
NORMAL_MESSAGE = 1
|
|
71
|
+
}
|
|
72
|
+
type SPQRPhase = "idle" | "sending_pk" | "waiting_for_ct" | "sending_ct_pk" | "done";
|
|
73
|
+
type SPQRReceivePhase = "idle" | "receiving_pk" | "receiving_ct" | "done";
|
|
74
|
+
interface SPQRState {
|
|
75
|
+
cycleId: number;
|
|
76
|
+
sendingPQKeys: MLKEMKeyPair | null;
|
|
77
|
+
sendingChunks: Uint8Array[];
|
|
78
|
+
sendingChunkIndex: number;
|
|
79
|
+
sendingPhase: SPQRPhase;
|
|
80
|
+
receivedChunks: Map<number, Uint8Array>;
|
|
81
|
+
receivingPhase: SPQRReceivePhase;
|
|
82
|
+
expectedTotalChunks: number;
|
|
83
|
+
receivedSharedSecret: Uint8Array | null;
|
|
84
|
+
currentSPQRKey: Uint8Array;
|
|
85
|
+
spqrChainKey: Uint8Array;
|
|
86
|
+
spqrMessageCount: number;
|
|
87
|
+
}
|
|
88
|
+
interface SPQRChunk {
|
|
89
|
+
cycleId: number;
|
|
90
|
+
chunkIndex: number;
|
|
91
|
+
totalChunks: number;
|
|
92
|
+
data: Uint8Array;
|
|
93
|
+
}
|
|
94
|
+
interface PQSessionState {
|
|
95
|
+
pqxdhComplete: boolean;
|
|
96
|
+
ratchetState: RatchetState;
|
|
97
|
+
spqrState: SPQRState;
|
|
98
|
+
peerIdentityKey: Uint8Array;
|
|
99
|
+
peerRegistrationId: number;
|
|
100
|
+
peerDeviceId: number;
|
|
101
|
+
pendingInitialMessage?: {
|
|
102
|
+
ephemeralPublicKey: Uint8Array;
|
|
103
|
+
mlkemCiphertext: Uint8Array;
|
|
104
|
+
identityKey: Uint8Array;
|
|
105
|
+
signedPreKeyId: number;
|
|
106
|
+
oneTimePreKeyId: number | null;
|
|
107
|
+
pqPreKeyId: number;
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
interface PQIdentity {
|
|
111
|
+
x25519KeyPair: X25519KeyPair;
|
|
112
|
+
registrationId: number;
|
|
113
|
+
}
|
|
114
|
+
interface SerializedRatchetState {
|
|
115
|
+
rootKey: string;
|
|
116
|
+
sendingChainKey: string;
|
|
117
|
+
sendingMessageCount: number;
|
|
118
|
+
receivingChainKey: string;
|
|
119
|
+
receivingMessageCount: number;
|
|
120
|
+
ourDHPrivateKey: string;
|
|
121
|
+
ourDHPublicKey: string;
|
|
122
|
+
peerDHPublicKey: string | null;
|
|
123
|
+
previousSendingCount: number;
|
|
124
|
+
skipMessageKeys: Record<string, string>;
|
|
125
|
+
}
|
|
126
|
+
interface SerializedSPQRState {
|
|
127
|
+
cycleId: number;
|
|
128
|
+
sendingPQPublicKey: string | null;
|
|
129
|
+
sendingPQSecretKey: string | null;
|
|
130
|
+
sendingChunks: string[];
|
|
131
|
+
sendingChunkIndex: number;
|
|
132
|
+
sendingPhase: string;
|
|
133
|
+
receivedChunks: Record<string, string>;
|
|
134
|
+
receivingPhase: string;
|
|
135
|
+
expectedTotalChunks: number;
|
|
136
|
+
receivedSharedSecret: string | null;
|
|
137
|
+
currentSPQRKey: string;
|
|
138
|
+
spqrChainKey: string;
|
|
139
|
+
spqrMessageCount: number;
|
|
140
|
+
}
|
|
141
|
+
interface SerializedPQSessionState {
|
|
142
|
+
pqxdhComplete: boolean;
|
|
143
|
+
ratchetState: SerializedRatchetState;
|
|
144
|
+
spqrState: SerializedSPQRState;
|
|
145
|
+
peerIdentityKey: string;
|
|
146
|
+
peerRegistrationId: number;
|
|
147
|
+
peerDeviceId: number;
|
|
148
|
+
pendingInitialMessage?: {
|
|
149
|
+
ephemeralPublicKey: string;
|
|
150
|
+
mlkemCiphertext: string;
|
|
151
|
+
identityKey: string;
|
|
152
|
+
signedPreKeyId: number;
|
|
153
|
+
oneTimePreKeyId: number | null;
|
|
154
|
+
pqPreKeyId: number;
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
declare enum PQErrorCode {
|
|
158
|
+
INVALID_KEY = "INVALID_KEY",
|
|
159
|
+
HANDSHAKE_FAILED = "HANDSHAKE_FAILED",
|
|
160
|
+
ENCRYPTION_FAILED = "ENCRYPTION_FAILED",
|
|
161
|
+
DECRYPTION_FAILED = "DECRYPTION_FAILED",
|
|
162
|
+
SESSION_NOT_FOUND = "SESSION_NOT_FOUND",
|
|
163
|
+
SPQR_ERROR = "SPQR_ERROR",
|
|
164
|
+
ERASURE_ERROR = "ERASURE_ERROR",
|
|
165
|
+
SERIALIZATION_ERROR = "SERIALIZATION_ERROR"
|
|
166
|
+
}
|
|
167
|
+
declare class PQError extends Error {
|
|
168
|
+
code: PQErrorCode;
|
|
169
|
+
constructor(code: PQErrorCode, message: string);
|
|
170
|
+
}
|
|
171
|
+
declare const DEFAULT_DEVICE_ID = 1;
|
|
172
|
+
declare const ROOT_KEY_SIZE = 32;
|
|
173
|
+
declare const CHAIN_KEY_SIZE = 32;
|
|
174
|
+
declare const MESSAGE_KEY_SIZE = 32;
|
|
175
|
+
declare const DH_KEY_SIZE = 32;
|
|
176
|
+
declare const SIGNATURE_SIZE = 666;
|
|
177
|
+
declare const MLKEM_PUBLIC_KEY_SIZE = 1184;
|
|
178
|
+
declare const MLKEM_SECRET_KEY_SIZE = 2400;
|
|
179
|
+
declare const MLKEM_CIPHERTEXT_SIZE = 1088;
|
|
180
|
+
declare const MLKEM_SHARED_SECRET_SIZE = 32;
|
|
181
|
+
declare const AES_GCM_IV_SIZE = 12;
|
|
182
|
+
declare const AES_GCM_TAG_SIZE = 16;
|
|
183
|
+
declare const SPQR_CHUNK_DATA_SIZE = 34;
|
|
184
|
+
declare const SPQR_CHUNK_HEADER_SIZE = 8;
|
|
185
|
+
declare const SPQR_CHUNK_SIZE: number;
|
|
186
|
+
declare const SPQR_DATA_CHUNKS = 28;
|
|
187
|
+
declare const SPQR_TOTAL_CHUNKS = 56;
|
|
188
|
+
//#endregion
|
|
189
|
+
export { AES_GCM_IV_SIZE, AES_GCM_TAG_SIZE, CHAIN_KEY_SIZE, DEFAULT_DEVICE_ID, DH_KEY_SIZE, EncryptedMessage, Falcon512KeyPair, KeyPair, MESSAGE_KEY_SIZE, MLKEMKeyPair, MLKEM_CIPHERTEXT_SIZE, MLKEM_PUBLIC_KEY_SIZE, MLKEM_SECRET_KEY_SIZE, MLKEM_SHARED_SECRET_SIZE, MessageType, PQError, PQErrorCode, PQIdentity, PQPreKeyBundle, PQSessionState, PQXDHResult, ROOT_KEY_SIZE, RatchetState, SIGNATURE_SIZE, SPQRChunk, SPQRPhase, SPQRReceivePhase, SPQRState, SPQR_CHUNK_DATA_SIZE, SPQR_CHUNK_HEADER_SIZE, SPQR_CHUNK_SIZE, SPQR_DATA_CHUNKS, SPQR_TOTAL_CHUNKS, SerializedPQSessionState, SerializedRatchetState, SerializedSPQRState, X25519KeyPair };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let MessageType=function(a){return a[a['PREKEY_MESSAGE']=0x3]='PREKEY_MESSAGE',a[a['NORMAL_MESSAGE']=0x1]='NORMAL_MESSAGE',a;}({}),PQErrorCode=function(a){return a['INVALID_KEY']='INVALID_KEY',a['HANDSHAKE_FAILED']='HANDSHAKE_FAILED',a['ENCRYPTION_FAILED']='ENCRYPTION_FAILED',a['DECRYPTION_FAILED']='DECRYPTION_FAILED',a['SESSION_NOT_FOUND']='SESSION_NOT_FOUND',a['SPQR_ERROR']='SPQR_ERROR',a['ERASURE_ERROR']='ERASURE_ERROR',a['SERIALIZATION_ERROR']='SERIALIZATION_ERROR',a;}({});var PQError=class extends Error{constructor(a,b){super(b),this['code']=a,this['name']='PQError';}};const DEFAULT_DEVICE_ID=0x1,ROOT_KEY_SIZE=0x20,CHAIN_KEY_SIZE=0x20,MESSAGE_KEY_SIZE=0x20,DH_KEY_SIZE=0x20,SIGNATURE_SIZE=0x29a,MLKEM_PUBLIC_KEY_SIZE=0x4a0,MLKEM_SECRET_KEY_SIZE=0x960,MLKEM_CIPHERTEXT_SIZE=0x440,MLKEM_SHARED_SECRET_SIZE=0x20,AES_GCM_IV_SIZE=0xc,AES_GCM_TAG_SIZE=0x10,SPQR_CHUNK_DATA_SIZE=0x22,SPQR_CHUNK_HEADER_SIZE=0x8,SPQR_CHUNK_SIZE=0x2a,SPQR_DATA_CHUNKS=0x1c,SPQR_TOTAL_CHUNKS=0x38;export{AES_GCM_IV_SIZE,AES_GCM_TAG_SIZE,CHAIN_KEY_SIZE,DEFAULT_DEVICE_ID,DH_KEY_SIZE,MESSAGE_KEY_SIZE,MLKEM_CIPHERTEXT_SIZE,MLKEM_PUBLIC_KEY_SIZE,MLKEM_SECRET_KEY_SIZE,MLKEM_SHARED_SECRET_SIZE,MessageType,PQError,PQErrorCode,ROOT_KEY_SIZE,SIGNATURE_SIZE,SPQR_CHUNK_DATA_SIZE,SPQR_CHUNK_HEADER_SIZE,SPQR_CHUNK_SIZE,SPQR_DATA_CHUNKS,SPQR_TOTAL_CHUNKS};
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import { Wn as SessionState, hn as Message, wn as MessengerConfig } from "../../index-D8z18cO-.mjs";
|
|
2
|
+
import Database from "libsql";
|
|
3
|
+
|
|
4
|
+
//#region src/w/messenger/storage.d.ts
|
|
5
|
+
type KeyPairType = {
|
|
6
|
+
pubKey: ArrayBuffer;
|
|
7
|
+
privKey: ArrayBuffer;
|
|
8
|
+
};
|
|
9
|
+
interface StorageType {
|
|
10
|
+
getIdentityKeyPair(): Promise<KeyPairType | undefined>;
|
|
11
|
+
getLocalRegistrationId(): Promise<number | undefined>;
|
|
12
|
+
isTrustedIdentity(identifier: string, identityKey: ArrayBuffer, direction?: number): Promise<boolean>;
|
|
13
|
+
saveIdentity(encodedAddress: string, publicKey: ArrayBuffer): Promise<boolean>;
|
|
14
|
+
loadIdentity(address: string): Promise<ArrayBuffer | undefined>;
|
|
15
|
+
loadPreKey(keyId: string | number): Promise<KeyPairType | undefined>;
|
|
16
|
+
storePreKey(keyId: string | number, keyPair: KeyPairType): Promise<void>;
|
|
17
|
+
removePreKey(keyId: string | number): Promise<void>;
|
|
18
|
+
loadSignedPreKey(keyId: string | number): Promise<KeyPairType | undefined>;
|
|
19
|
+
storeSignedPreKey(keyId: string | number, keyPair: KeyPairType): Promise<void>;
|
|
20
|
+
removeSignedPreKey(keyId: string | number): Promise<void>;
|
|
21
|
+
loadSession(encodedAddress: string): Promise<string | undefined>;
|
|
22
|
+
storeSession(encodedAddress: string, record: string): Promise<void>;
|
|
23
|
+
removeSession(encodedAddress: string): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
declare function getDatabase(userAddress: string): Database.Database;
|
|
26
|
+
/**
|
|
27
|
+
* 重置数据库连接
|
|
28
|
+
* 用于测试时清理数据后重新创建连接
|
|
29
|
+
*/
|
|
30
|
+
declare function resetDbConnection(): void;
|
|
31
|
+
interface PersistedMeta {
|
|
32
|
+
nextPreKeyId: number;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Signal Protocol SQLite 存储
|
|
36
|
+
* 兼容 libsignal-protocol-typescript 的 StorageType 接口
|
|
37
|
+
*/
|
|
38
|
+
declare class SignalProtocolStorage implements StorageType {
|
|
39
|
+
private storePrefix;
|
|
40
|
+
private userAddress;
|
|
41
|
+
constructor(userAddress: string, storeType?: string);
|
|
42
|
+
private get db();
|
|
43
|
+
setIdentity(identity: KeyPairType, registrationId: number): Promise<void>;
|
|
44
|
+
getIdentityKeyPair(): Promise<KeyPairType | undefined>;
|
|
45
|
+
getLocalRegistrationId(): Promise<number | undefined>;
|
|
46
|
+
isTrustedIdentity(identifier: string, identityKey: ArrayBuffer): Promise<boolean>;
|
|
47
|
+
saveIdentity(encodedAddress: string, publicKey: ArrayBuffer): Promise<boolean>;
|
|
48
|
+
loadIdentity(address: string): Promise<ArrayBuffer | undefined>;
|
|
49
|
+
loadPreKey(keyId: string | number): Promise<KeyPairType | undefined>;
|
|
50
|
+
storePreKey(keyId: string | number, keyPair: KeyPairType): Promise<void>;
|
|
51
|
+
removePreKey(keyId: string | number): Promise<void>;
|
|
52
|
+
loadSignedPreKey(keyId: string | number): Promise<KeyPairType | undefined>;
|
|
53
|
+
storeSignedPreKey(keyId: string | number, keyPair: KeyPairType): Promise<void>;
|
|
54
|
+
removeSignedPreKey(keyId: string | number): Promise<void>;
|
|
55
|
+
loadSignedPreKeyWithSignature(keyId: string | number): Promise<(KeyPairType & {
|
|
56
|
+
signature: ArrayBuffer;
|
|
57
|
+
}) | undefined>;
|
|
58
|
+
storeSignedPreKeyWithSignature(keyId: string | number, keyPair: KeyPairType, signature: ArrayBuffer): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* 【核心改进】加载会话,支持发送/接收会话映射
|
|
61
|
+
* encodedAddress 格式: "peerAddress.deviceId"
|
|
62
|
+
* 我们会同时检查默认key和带前缀的key
|
|
63
|
+
*/
|
|
64
|
+
loadSession(encodedAddress: string): Promise<string | undefined>;
|
|
65
|
+
/**
|
|
66
|
+
* 【关键修复】保存会话时,如果是默认key格式,同时保存到接收会话key
|
|
67
|
+
* 这样Signal Protocol的SessionCipher保存的会话可以被我们的recv:key找到
|
|
68
|
+
*/
|
|
69
|
+
storeSession(encodedAddress: string, record: string): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* 【关键修复】删除会话时,同时删除对应的recv:key
|
|
72
|
+
*/
|
|
73
|
+
removeSession(encodedAddress: string): Promise<void>;
|
|
74
|
+
getMeta(): Promise<PersistedMeta>;
|
|
75
|
+
setMeta(meta: Partial<PersistedMeta>): Promise<void>;
|
|
76
|
+
listPreKeys(): number[];
|
|
77
|
+
private getValue;
|
|
78
|
+
private putValue;
|
|
79
|
+
private delValue;
|
|
80
|
+
}
|
|
81
|
+
declare class MessageStorage {
|
|
82
|
+
private userAddress;
|
|
83
|
+
constructor(userAddress: string);
|
|
84
|
+
private get db();
|
|
85
|
+
saveMessage(message: Message): void;
|
|
86
|
+
getMessage(messageId: string): Message | undefined;
|
|
87
|
+
getMessagesBySession(myAddress: string, peerAddress: string): Message[];
|
|
88
|
+
getPendingMessages(myAddress: string): Message[];
|
|
89
|
+
updateMessageStatus(messageId: string, status: Message["status"], updates?: Partial<Message>): void;
|
|
90
|
+
/**
|
|
91
|
+
* 更新消息查看状态
|
|
92
|
+
* 将消息标记为已查看,设置 viewed_at 为当前时间戳
|
|
93
|
+
*
|
|
94
|
+
* @param messageId 消息 ID
|
|
95
|
+
* @param viewedAt 查看时间戳(可选,默认当前时间)
|
|
96
|
+
* @returns 是否更新成功
|
|
97
|
+
*/
|
|
98
|
+
updateMessageViewed(messageId: string, viewedAt?: number): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* 批量更新消息查看状态
|
|
101
|
+
*
|
|
102
|
+
* @param messageIds 消息 ID 列表
|
|
103
|
+
* @param viewedAt 查看时间戳(可选,默认当前时间)
|
|
104
|
+
* @returns 成功更新的消息数量
|
|
105
|
+
*/
|
|
106
|
+
updateMessagesViewed(messageIds: string[], viewedAt?: number): number;
|
|
107
|
+
/**
|
|
108
|
+
* 获取用户的所有消息
|
|
109
|
+
*
|
|
110
|
+
* @param userAddress 用户地址
|
|
111
|
+
* @returns 所有相关消息(发送和接收的)
|
|
112
|
+
*/
|
|
113
|
+
getAllMessages(userAddress: string): Message[];
|
|
114
|
+
/**
|
|
115
|
+
* 通过消息 ID 获取消息
|
|
116
|
+
*
|
|
117
|
+
* @param messageId 消息 ID
|
|
118
|
+
* @returns 消息对象或 undefined
|
|
119
|
+
*/
|
|
120
|
+
getMessageById(messageId: string): Message | undefined;
|
|
121
|
+
/**
|
|
122
|
+
* 更新消息 ID(用于 Guard 消息确认后更新 messageId)
|
|
123
|
+
*
|
|
124
|
+
* 由于 message_id 是主键,需要通过删除旧记录并插入新记录来实现
|
|
125
|
+
*
|
|
126
|
+
* @param oldMessageId 旧消息 ID(internal_id)
|
|
127
|
+
* @param newMessageId 新消息 ID(正式的 message_id)
|
|
128
|
+
* @param updates 可选的更新字段
|
|
129
|
+
* @returns 是否成功更新
|
|
130
|
+
*/
|
|
131
|
+
updateMessageId(oldMessageId: string, newMessageId: string, updates?: Partial<Message>): boolean;
|
|
132
|
+
private rowToMessage;
|
|
133
|
+
/**
|
|
134
|
+
* 获取最后收到的消息序号(用于消息同步确认)
|
|
135
|
+
*
|
|
136
|
+
* 查询指定会话中,用户作为接收者时,发送者最后收到的消息序号
|
|
137
|
+
* 用于在发送新消息时,告诉对方我已经收到了哪些消息
|
|
138
|
+
*
|
|
139
|
+
* @param myAddress 当前用户地址
|
|
140
|
+
* @param peerAddress 对方地址
|
|
141
|
+
* @returns 最后收到的消息序号(leafIndex),如果没有则返回 -1
|
|
142
|
+
*/
|
|
143
|
+
getLastReceivedLeafIndex(myAddress: string, peerAddress: string): number;
|
|
144
|
+
}
|
|
145
|
+
declare class SessionStateStorage {
|
|
146
|
+
private userAddress;
|
|
147
|
+
constructor(userAddress: string);
|
|
148
|
+
private get db();
|
|
149
|
+
private getSessionId;
|
|
150
|
+
getSessionState(myAddress: string, peerAddress: string): SessionState | undefined;
|
|
151
|
+
updateSessionState(myAddress: string, peerAddress: string, updates: Partial<Omit<SessionState, "sessionId" | "myAddress" | "peerAddress">>): void;
|
|
152
|
+
getCurrentRoot(myAddress: string, peerAddress: string): string;
|
|
153
|
+
}
|
|
154
|
+
interface PersistedMessengerState {
|
|
155
|
+
/** 版本 */
|
|
156
|
+
version: string;
|
|
157
|
+
/** 管理的账号列表(名称或地址) */
|
|
158
|
+
accounts: string[];
|
|
159
|
+
/** Messenger 配置 */
|
|
160
|
+
config: Partial<MessengerConfig>;
|
|
161
|
+
/** 最后更新时间 */
|
|
162
|
+
updatedAt: number;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* MessengerManager 持久化存储类
|
|
166
|
+
*
|
|
167
|
+
* 使用 SQLite 存储 MessengerManager 的配置和状态
|
|
168
|
+
*/
|
|
169
|
+
declare class MessengerPersistStorage {
|
|
170
|
+
private initialized;
|
|
171
|
+
private get db();
|
|
172
|
+
/**
|
|
173
|
+
* 初始化存储表
|
|
174
|
+
*/
|
|
175
|
+
private initTable;
|
|
176
|
+
/**
|
|
177
|
+
* 保存 Messenger 配置和账号信息
|
|
178
|
+
*
|
|
179
|
+
* @param instanceId 实例标识(用于区分不同的 MessengerManager 实例)
|
|
180
|
+
* @param state 要保存的状态
|
|
181
|
+
*/
|
|
182
|
+
saveState(instanceId: string, state: PersistedMessengerState): void;
|
|
183
|
+
/**
|
|
184
|
+
* 加载 Messenger 配置和账号信息
|
|
185
|
+
*
|
|
186
|
+
* @param instanceId 实例标识
|
|
187
|
+
* @returns 保存的状态,如果不存在返回 null
|
|
188
|
+
*/
|
|
189
|
+
loadState(instanceId: string): PersistedMessengerState | null;
|
|
190
|
+
/**
|
|
191
|
+
* 删除保存的状态
|
|
192
|
+
*
|
|
193
|
+
* @param instanceId 实例标识
|
|
194
|
+
*/
|
|
195
|
+
deleteState(instanceId: string): void;
|
|
196
|
+
/**
|
|
197
|
+
* 获取所有实例ID列表
|
|
198
|
+
*/
|
|
199
|
+
getAllInstanceIds(): string[];
|
|
200
|
+
private get processId();
|
|
201
|
+
/**
|
|
202
|
+
* 尝试获取指定账号的 SSE 连接锁
|
|
203
|
+
* @param accountAddress 账号地址
|
|
204
|
+
* @param instanceId 当前实例ID
|
|
205
|
+
* @returns 是否成功获取锁
|
|
206
|
+
*/
|
|
207
|
+
tryAcquireSSELock(accountAddress: string, instanceId: string): boolean;
|
|
208
|
+
/**
|
|
209
|
+
* 更新 SSE 连接锁的心跳
|
|
210
|
+
* @param accountAddress 账号地址
|
|
211
|
+
* @param instanceId 当前实例ID
|
|
212
|
+
*/
|
|
213
|
+
updateSSELockHeartbeat(accountAddress: string, instanceId: string): void;
|
|
214
|
+
/**
|
|
215
|
+
* 释放指定账号的 SSE 连接锁
|
|
216
|
+
* @param accountAddress 账号地址
|
|
217
|
+
* @param instanceId 当前实例ID
|
|
218
|
+
*/
|
|
219
|
+
releaseSSELock(accountAddress: string, instanceId: string): void;
|
|
220
|
+
/**
|
|
221
|
+
* 检查是否持有指定账号的 SSE 连接锁
|
|
222
|
+
* @param accountAddress 账号地址
|
|
223
|
+
* @param instanceId 当前实例ID
|
|
224
|
+
* @returns 是否持有锁
|
|
225
|
+
*/
|
|
226
|
+
holdsSSELock(accountAddress: string, instanceId: string): boolean;
|
|
227
|
+
/**
|
|
228
|
+
* 尝试获取指定账号的 Polling 连接锁
|
|
229
|
+
* @param accountAddress 账号地址
|
|
230
|
+
* @param instanceId 当前实例ID
|
|
231
|
+
* @returns 是否成功获取锁
|
|
232
|
+
*/
|
|
233
|
+
tryAcquirePollingLock(accountAddress: string, instanceId: string): boolean;
|
|
234
|
+
/**
|
|
235
|
+
* 更新 Polling 连接锁的心跳
|
|
236
|
+
* @param accountAddress 账号地址
|
|
237
|
+
* @param instanceId 当前实例ID
|
|
238
|
+
*/
|
|
239
|
+
updatePollingLockHeartbeat(accountAddress: string, instanceId: string): void;
|
|
240
|
+
/**
|
|
241
|
+
* 释放指定账号的 Polling 连接锁
|
|
242
|
+
* @param accountAddress 账号地址
|
|
243
|
+
* @param instanceId 当前实例ID
|
|
244
|
+
*/
|
|
245
|
+
releasePollingLock(accountAddress: string, instanceId: string): void;
|
|
246
|
+
/**
|
|
247
|
+
* 检查是否持有指定账号的 Polling 连接锁
|
|
248
|
+
* @param accountAddress 账号地址
|
|
249
|
+
* @param instanceId 当前实例ID
|
|
250
|
+
* @returns 是否持有锁
|
|
251
|
+
*/
|
|
252
|
+
holdsPollingLock(accountAddress: string, instanceId: string): boolean;
|
|
253
|
+
}
|
|
254
|
+
declare const defaultPersistStorage: MessengerPersistStorage;
|
|
255
|
+
//#endregion
|
|
256
|
+
export { MessageStorage, MessengerPersistStorage, PersistedMessengerState, SessionStateStorage, SignalProtocolStorage, defaultPersistStorage, getDatabase, resetDbConnection };
|