@inco/js 0.2.15 → 0.2.17
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/cjs/attesteddecrypt/attested-decrypt.d.ts +34 -0
- package/dist/cjs/attesteddecrypt/attested-decrypt.js +91 -0
- package/dist/cjs/attesteddecrypt/index.d.ts +2 -0
- package/dist/cjs/attesteddecrypt/index.js +19 -0
- package/dist/cjs/attesteddecrypt/types.d.ts +18 -0
- package/dist/cjs/attesteddecrypt/types.js +16 -0
- package/dist/cjs/binary.js +82 -0
- package/dist/{chain.js → cjs/chain.js} +1 -1
- package/dist/{encryption → cjs/encryption}/encryption.d.ts +2 -2
- package/dist/cjs/encryption/encryption.js +109 -0
- package/dist/cjs/encryption/index.d.ts +1 -0
- package/dist/{fhevm → cjs/encryption}/index.js +2 -2
- package/dist/{fhevm → cjs/fhevm}/fhe-environment.d.ts +1 -1
- package/dist/cjs/fhevm/fhe-environment.js +11 -0
- package/dist/{fhevm → cjs/fhevm}/fhevm.d.ts +1 -1
- package/dist/cjs/fhevm/fhevm.js +145 -0
- package/dist/cjs/fhevm/index.d.ts +1 -0
- package/dist/{encryption → cjs/fhevm}/index.js +2 -2
- package/dist/{fhevm → cjs/fhevm}/reencrypt.d.ts +3 -3
- package/dist/cjs/fhevm/reencrypt.js +127 -0
- package/dist/{fhevm → cjs/fhevm}/tfhe.d.ts +1 -1
- package/dist/cjs/fhevm/tfhe.js +336 -0
- package/dist/{fhevm → cjs/fhevm}/types.d.ts +1 -1
- package/dist/cjs/fhevm/types.js +29 -0
- package/dist/cjs/generated/abis/addTwo.js +62 -0
- package/dist/cjs/generated/abis/inco-fhevm.js +681 -0
- package/dist/{generated → cjs/generated}/abis/index.js +1 -1
- package/dist/cjs/generated/abis/lightning.js +1606 -0
- package/dist/{generated → cjs/generated}/es/cosmos/ics23/v1/proofs_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/cosmos/msg/v1/msg_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/cosmos_proto/cosmos_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/google/api/annotations_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/google/api/http_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/fhe/v1/events_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/fhe/v1/genesis_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/fhe/v1/query_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/fhe/v1/tx_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/fhe/v1/types_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/kms/lite/v1/kms_service_pb.d.ts +54 -41
- package/dist/{generated → cjs/generated}/es/inco/kms/lite/v1/kms_service_pb.js +6 -11
- package/dist/{generated → cjs/generated}/es/inco/kms/lite/v1/types_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/preflight/v1/genesis_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/preflight/v1/query_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/preflight/v1/tx_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/inco/preflight/v1/types_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/kms/base_pb.js +1 -1
- package/dist/{generated → cjs/generated}/es/sf/ethereum/type/v2/type_pb.js +1 -1
- package/dist/{generated → cjs/generated}/fhe-environments.js +1 -1
- package/dist/{generated → cjs/generated}/lightning.d.ts +21 -0
- package/dist/{generated → cjs/generated}/lightning.js +23 -1
- package/dist/cjs/generated/local-node.d.ts +23 -0
- package/dist/cjs/generated/local-node.js +27 -0
- package/dist/{generated → cjs/generated}/ts/amino/amino.js +1 -1
- package/dist/{generated → cjs/generated}/ts/cometbft/abci/v1/types.js +1 -1
- package/dist/cjs/generated/ts/cometbft/crypto/v1/keys.js +108 -0
- package/dist/cjs/generated/ts/cometbft/crypto/v1/proof.js +433 -0
- package/dist/cjs/generated/ts/cometbft/types/v1/params.js +716 -0
- package/dist/cjs/generated/ts/cometbft/types/v1/validator.js +358 -0
- package/dist/cjs/generated/ts/cosmos/app/v1alpha1/module.js +221 -0
- package/dist/{generated → cjs/generated}/ts/cosmos/msg/v1/msg.js +1 -1
- package/dist/cjs/generated/ts/cosmos_proto/cosmos.js +216 -0
- package/dist/{generated → cjs/generated}/ts/gogoproto/gogo.js +1 -1
- package/dist/{generated → cjs/generated}/ts/google/api/annotations.js +1 -1
- package/dist/cjs/generated/ts/google/api/http.js +356 -0
- package/dist/{generated → cjs/generated}/ts/google/protobuf/descriptor.js +1 -1
- package/dist/cjs/generated/ts/google/protobuf/duration.js +93 -0
- package/dist/cjs/generated/ts/google/protobuf/timestamp.js +93 -0
- package/dist/cjs/generated/ts/google/protobuf/wrappers.js +509 -0
- package/dist/cjs/generated/ts/inco/abci/v1/types.js +73 -0
- package/dist/cjs/generated/ts/inco/fhe/module/v1/module.js +66 -0
- package/dist/cjs/generated/ts/inco/fhe/v1/events.js +190 -0
- package/dist/cjs/generated/ts/inco/fhe/v1/genesis.js +714 -0
- package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/query.js +1 -1
- package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/tx.js +1 -1
- package/dist/cjs/generated/ts/inco/fhe/v1/types.js +990 -0
- package/dist/cjs/generated/ts/inco/originchain/module/v1/module.js +66 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/abci.js +331 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/events.js +216 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/genesis.js +69 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/query.js +280 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/tx.js +140 -0
- package/dist/cjs/generated/ts/inco/originchain/v1/types.js +203 -0
- package/dist/cjs/generated/ts/inco/preflight/module/v1/module.js +66 -0
- package/dist/cjs/generated/ts/inco/preflight/v1/genesis.js +185 -0
- package/dist/cjs/generated/ts/inco/preflight/v1/query.js +259 -0
- package/dist/cjs/generated/ts/inco/preflight/v1/tx.js +448 -0
- package/dist/cjs/generated/ts/inco/preflight/v1/types.js +398 -0
- package/dist/{handle.d.ts → cjs/handle.d.ts} +1 -1
- package/dist/{handle.js → cjs/handle.js} +5 -5
- package/dist/cjs/index.d.ts +5 -0
- package/dist/{index.js → cjs/index.js} +5 -5
- package/dist/cjs/kms/client.d.ts +8 -0
- package/dist/cjs/kms/client.js +41 -0
- package/dist/{l1 → cjs/l1}/client.d.ts +6 -6
- package/dist/{l1 → cjs/l1}/client.js +8 -8
- package/dist/cjs/l1/index.d.ts +2 -0
- package/dist/{l1 → cjs/l1}/index.js +3 -3
- package/dist/{l1 → cjs/l1}/preflight.d.ts +3 -3
- package/dist/cjs/l1/preflight.js +42 -0
- package/dist/cjs/lite/attested-decrypt.d.ts +3 -0
- package/dist/cjs/lite/attested-decrypt.js +6 -0
- package/dist/{lite → cjs/lite}/deployments.d.ts +2 -2
- package/dist/cjs/lite/deployments.js +21 -0
- package/dist/{lite → cjs/lite}/ecies.d.ts +6 -6
- package/dist/cjs/lite/ecies.js +135 -0
- package/dist/{lite → cjs/lite}/hadu.d.ts +1 -1
- package/dist/cjs/lite/hadu.js +41 -0
- package/dist/cjs/lite/index.d.ts +7 -0
- package/dist/cjs/lite/index.js +23 -0
- package/dist/{lite → cjs/lite}/lightning.d.ts +13 -6
- package/dist/cjs/lite/lightning.js +204 -0
- package/dist/{lite → cjs/lite}/reencrypt.d.ts +7 -7
- package/dist/cjs/lite/reencrypt.js +142 -0
- package/dist/cjs/local/index.d.ts +1 -0
- package/dist/{local → cjs/local}/index.js +2 -2
- package/dist/{local → cjs/local}/local-node.js +1 -1
- package/dist/{reencryption → cjs/reencryption}/eip712.js +5 -5
- package/dist/cjs/reencryption/index.d.ts +2 -0
- package/dist/cjs/reencryption/index.js +19 -0
- package/dist/{reencryption → cjs/reencryption}/types.d.ts +6 -10
- package/dist/{reencryption → cjs/reencryption}/types.js +1 -1
- package/dist/cjs/retry.d.ts +15 -0
- package/dist/cjs/retry.js +28 -0
- package/dist/{schema.js → cjs/schema.js} +1 -1
- package/dist/{viem.d.ts → cjs/viem.d.ts} +1 -1
- package/dist/cjs/viem.js +12 -0
- package/dist/esm/attesteddecrypt/attested-decrypt.d.ts +34 -0
- package/dist/esm/attesteddecrypt/attested-decrypt.js +88 -0
- package/dist/esm/attesteddecrypt/index.d.ts +2 -0
- package/dist/esm/attesteddecrypt/index.js +3 -0
- package/dist/esm/attesteddecrypt/types.d.ts +18 -0
- package/dist/esm/attesteddecrypt/types.js +12 -0
- package/dist/esm/binary.d.ts +21 -0
- package/dist/esm/binary.js +67 -0
- package/dist/esm/chain.d.ts +22 -0
- package/dist/esm/chain.js +24 -0
- package/dist/esm/encryption/encryption.d.ts +119 -0
- package/dist/esm/encryption/encryption.js +101 -0
- package/dist/esm/encryption/index.d.ts +1 -0
- package/dist/esm/encryption/index.js +2 -0
- package/dist/esm/fhevm/fhe-environment.d.ts +9 -0
- package/dist/esm/fhevm/fhe-environment.js +8 -0
- package/dist/esm/fhevm/fhevm.d.ts +41 -0
- package/dist/esm/fhevm/fhevm.js +139 -0
- package/dist/esm/fhevm/index.d.ts +1 -0
- package/dist/esm/fhevm/index.js +2 -0
- package/dist/esm/fhevm/reencrypt.d.ts +20 -0
- package/dist/esm/fhevm/reencrypt.js +123 -0
- package/dist/esm/fhevm/tfhe.d.ts +74 -0
- package/dist/esm/fhevm/tfhe.js +328 -0
- package/dist/esm/fhevm/types.d.ts +3 -0
- package/dist/esm/fhevm/types.js +26 -0
- package/dist/esm/generated/abis/addTwo.d.ts +83 -0
- package/dist/{generated → esm/generated}/abis/addTwo.js +2 -5
- package/dist/esm/generated/abis/inco-fhevm.d.ts +874 -0
- package/dist/{generated → esm/generated}/abis/inco-fhevm.js +3 -6
- package/dist/esm/generated/abis/index.d.ts +2 -0
- package/dist/esm/generated/abis/index.js +3 -0
- package/dist/esm/generated/abis/lightning.d.ts +2226 -0
- package/dist/{generated → esm/generated}/abis/lightning.js +2 -5
- package/dist/esm/generated/es/cosmos/ics23/v1/proofs_pb.d.ts +593 -0
- package/dist/esm/generated/es/cosmos/ics23/v1/proofs_pb.js +198 -0
- package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.d.ts +29 -0
- package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.js +33 -0
- package/dist/esm/generated/es/cosmos_proto/cosmos_pb.d.ts +174 -0
- package/dist/esm/generated/es/cosmos_proto/cosmos_pb.js +115 -0
- package/dist/esm/generated/es/google/api/annotations_pb.d.ts +13 -0
- package/dist/esm/generated/es/google/api/annotations_pb.js +27 -0
- package/dist/esm/generated/es/google/api/http_pb.d.ts +440 -0
- package/dist/esm/generated/es/google/api/http_pb.js +34 -0
- package/dist/esm/generated/es/inco/fhe/v1/events_pb.d.ts +79 -0
- package/dist/esm/generated/es/inco/fhe/v1/events_pb.js +21 -0
- package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.d.ts +252 -0
- package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.js +46 -0
- package/dist/esm/generated/es/inco/fhe/v1/query_pb.d.ts +569 -0
- package/dist/esm/generated/es/inco/fhe/v1/query_pb.js +108 -0
- package/dist/esm/generated/es/inco/fhe/v1/tx_pb.d.ts +494 -0
- package/dist/esm/generated/es/inco/fhe/v1/tx_pb.js +108 -0
- package/dist/esm/generated/es/inco/fhe/v1/types_pb.d.ts +419 -0
- package/dist/esm/generated/es/inco/fhe/v1/types_pb.js +133 -0
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +333 -0
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.js +58 -0
- package/dist/esm/generated/es/inco/kms/lite/v1/types_pb.d.ts +212 -0
- package/dist/esm/generated/es/inco/kms/lite/v1/types_pb.js +44 -0
- package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.d.ts +56 -0
- package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.js +20 -0
- package/dist/esm/generated/es/inco/preflight/v1/query_pb.d.ts +100 -0
- package/dist/esm/generated/es/inco/preflight/v1/query_pb.js +38 -0
- package/dist/esm/generated/es/inco/preflight/v1/tx_pb.d.ts +193 -0
- package/dist/esm/generated/es/inco/preflight/v1/tx_pb.js +48 -0
- package/dist/esm/generated/es/inco/preflight/v1/types_pb.d.ts +144 -0
- package/dist/esm/generated/es/inco/preflight/v1/types_pb.js +34 -0
- package/dist/esm/generated/es/kms/base_pb.d.ts +765 -0
- package/dist/esm/generated/es/kms/base_pb.js +238 -0
- package/dist/esm/generated/es/sf/ethereum/type/v2/type_pb.d.ts +1736 -0
- package/dist/esm/generated/es/sf/ethereum/type/v2/type_pb.js +571 -0
- package/dist/esm/generated/fhe-environments.d.ts +14 -0
- package/dist/esm/generated/fhe-environments.js +15 -0
- package/dist/esm/generated/lightning.d.ts +211 -0
- package/dist/esm/generated/lightning.js +223 -0
- package/dist/esm/generated/local-node.d.ts +23 -0
- package/dist/esm/generated/local-node.js +24 -0
- package/dist/esm/generated/ts/amino/amino.d.ts +1 -0
- package/dist/esm/generated/ts/amino/amino.js +8 -0
- package/dist/esm/generated/ts/cometbft/abci/v1/types.d.ts +597 -0
- package/dist/esm/generated/ts/cometbft/abci/v1/types.js +5063 -0
- package/dist/esm/generated/ts/cometbft/crypto/v1/keys.d.ts +27 -0
- package/dist/esm/generated/ts/cometbft/crypto/v1/keys.js +105 -0
- package/dist/esm/generated/ts/cometbft/crypto/v1/proof.d.ts +60 -0
- package/dist/esm/generated/ts/cometbft/crypto/v1/proof.js +430 -0
- package/dist/esm/generated/ts/cometbft/types/v1/params.d.ts +179 -0
- package/dist/esm/generated/ts/cometbft/types/v1/params.js +713 -0
- package/dist/esm/generated/ts/cometbft/types/v1/validator.d.ts +61 -0
- package/dist/esm/generated/ts/cometbft/types/v1/validator.js +353 -0
- package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.d.ts +104 -0
- package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.js +218 -0
- package/dist/esm/generated/ts/cosmos/msg/v1/msg.d.ts +1 -0
- package/dist/esm/generated/ts/cosmos/msg/v1/msg.js +8 -0
- package/dist/esm/generated/ts/cosmos_proto/cosmos.d.ts +80 -0
- package/dist/esm/generated/ts/cosmos_proto/cosmos.js +211 -0
- package/dist/esm/generated/ts/gogoproto/gogo.d.ts +1 -0
- package/dist/esm/generated/ts/gogoproto/gogo.js +8 -0
- package/dist/esm/generated/ts/google/api/annotations.d.ts +1 -0
- package/dist/esm/generated/ts/google/api/annotations.js +8 -0
- package/dist/esm/generated/ts/google/api/http.d.ts +371 -0
- package/dist/esm/generated/ts/google/api/http.js +353 -0
- package/dist/esm/generated/ts/google/protobuf/descriptor.d.ts +1228 -0
- package/dist/esm/generated/ts/google/protobuf/descriptor.js +5070 -0
- package/dist/esm/generated/ts/google/protobuf/duration.d.ts +99 -0
- package/dist/esm/generated/ts/google/protobuf/duration.js +90 -0
- package/dist/esm/generated/ts/google/protobuf/timestamp.d.ts +128 -0
- package/dist/esm/generated/ts/google/protobuf/timestamp.js +90 -0
- package/dist/esm/generated/ts/google/protobuf/wrappers.d.ts +111 -0
- package/dist/esm/generated/ts/google/protobuf/wrappers.js +506 -0
- package/dist/esm/generated/ts/inco/abci/v1/types.d.ts +35 -0
- package/dist/esm/generated/ts/inco/abci/v1/types.js +70 -0
- package/dist/esm/generated/ts/inco/fhe/module/v1/module.d.ts +31 -0
- package/dist/esm/generated/ts/inco/fhe/module/v1/module.js +63 -0
- package/dist/esm/generated/ts/inco/fhe/v1/events.d.ts +66 -0
- package/dist/esm/generated/ts/inco/fhe/v1/events.js +187 -0
- package/dist/esm/generated/ts/inco/fhe/v1/genesis.d.ts +117 -0
- package/dist/esm/generated/ts/inco/fhe/v1/genesis.js +711 -0
- package/dist/esm/generated/ts/inco/fhe/v1/query.d.ts +366 -0
- package/dist/esm/generated/ts/inco/fhe/v1/query.js +1391 -0
- package/dist/esm/generated/ts/inco/fhe/v1/tx.d.ts +409 -0
- package/dist/esm/generated/ts/inco/fhe/v1/tx.js +1233 -0
- package/dist/esm/generated/ts/inco/fhe/v1/types.d.ts +225 -0
- package/dist/esm/generated/ts/inco/fhe/v1/types.js +985 -0
- package/dist/esm/generated/ts/inco/originchain/module/v1/module.d.ts +30 -0
- package/dist/esm/generated/ts/inco/originchain/module/v1/module.js +63 -0
- package/dist/esm/generated/ts/inco/originchain/v1/abci.d.ts +80 -0
- package/dist/esm/generated/ts/inco/originchain/v1/abci.js +328 -0
- package/dist/esm/generated/ts/inco/originchain/v1/events.d.ts +60 -0
- package/dist/esm/generated/ts/inco/originchain/v1/events.js +213 -0
- package/dist/esm/generated/ts/inco/originchain/v1/genesis.d.ts +28 -0
- package/dist/esm/generated/ts/inco/originchain/v1/genesis.js +66 -0
- package/dist/esm/generated/ts/inco/originchain/v1/query.d.ts +116 -0
- package/dist/esm/generated/ts/inco/originchain/v1/query.js +277 -0
- package/dist/esm/generated/ts/inco/originchain/v1/tx.d.ts +89 -0
- package/dist/esm/generated/ts/inco/originchain/v1/tx.js +137 -0
- package/dist/esm/generated/ts/inco/originchain/v1/types.d.ts +58 -0
- package/dist/esm/generated/ts/inco/originchain/v1/types.js +200 -0
- package/dist/esm/generated/ts/inco/preflight/module/v1/module.d.ts +31 -0
- package/dist/esm/generated/ts/inco/preflight/module/v1/module.js +63 -0
- package/dist/esm/generated/ts/inco/preflight/v1/genesis.d.ts +41 -0
- package/dist/esm/generated/ts/inco/preflight/v1/genesis.js +182 -0
- package/dist/esm/generated/ts/inco/preflight/v1/query.d.ts +93 -0
- package/dist/esm/generated/ts/inco/preflight/v1/query.js +256 -0
- package/dist/esm/generated/ts/inco/preflight/v1/tx.d.ts +187 -0
- package/dist/esm/generated/ts/inco/preflight/v1/tx.js +445 -0
- package/dist/esm/generated/ts/inco/preflight/v1/types.d.ts +84 -0
- package/dist/esm/generated/ts/inco/preflight/v1/types.js +395 -0
- package/dist/esm/handle.d.ts +41 -0
- package/dist/esm/handle.js +94 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/kms/client.d.ts +8 -0
- package/dist/esm/kms/client.js +35 -0
- package/dist/esm/l1/client.d.ts +35 -0
- package/dist/esm/l1/client.js +93 -0
- package/dist/esm/l1/index.d.ts +2 -0
- package/dist/esm/l1/index.js +3 -0
- package/dist/esm/l1/preflight.d.ts +20 -0
- package/dist/esm/l1/preflight.js +39 -0
- package/dist/esm/lite/attested-decrypt.d.ts +3 -0
- package/dist/esm/lite/attested-decrypt.js +3 -0
- package/dist/esm/lite/deployments.d.ts +6 -0
- package/dist/esm/lite/deployments.js +17 -0
- package/dist/esm/lite/ecies.d.ts +26 -0
- package/dist/esm/lite/ecies.js +124 -0
- package/dist/esm/lite/hadu.d.ts +24 -0
- package/dist/esm/lite/hadu.js +36 -0
- package/dist/esm/lite/index.d.ts +7 -0
- package/dist/esm/lite/index.js +7 -0
- package/dist/esm/lite/lightning.d.ts +124 -0
- package/dist/esm/lite/lightning.js +200 -0
- package/dist/esm/lite/reencrypt.d.ts +24 -0
- package/dist/esm/lite/reencrypt.js +132 -0
- package/dist/esm/local/index.d.ts +1 -0
- package/dist/esm/local/index.js +2 -0
- package/dist/esm/local/local-node.d.ts +19 -0
- package/dist/esm/local/local-node.js +24 -0
- package/dist/esm/reencryption/eip712.d.ts +29 -0
- package/dist/esm/reencryption/eip712.js +81 -0
- package/dist/esm/reencryption/index.d.ts +2 -0
- package/dist/esm/reencryption/index.js +3 -0
- package/dist/esm/reencryption/types.d.ts +25 -0
- package/dist/esm/reencryption/types.js +2 -0
- package/dist/esm/retry.d.ts +15 -0
- package/dist/esm/retry.js +25 -0
- package/dist/esm/schema.d.ts +4 -0
- package/dist/esm/schema.js +15 -0
- package/dist/esm/viem.d.ts +427 -0
- package/dist/esm/viem.js +8 -0
- package/dist/types/attesteddecrypt/attested-decrypt.d.ts +34 -0
- package/dist/types/attesteddecrypt/index.d.ts +2 -0
- package/dist/types/attesteddecrypt/types.d.ts +18 -0
- package/dist/types/binary.d.ts +21 -0
- package/dist/types/chain.d.ts +22 -0
- package/dist/types/encryption/encryption.d.ts +119 -0
- package/dist/types/encryption/index.d.ts +1 -0
- package/dist/types/fhevm/fhe-environment.d.ts +9 -0
- package/dist/types/fhevm/fhevm.d.ts +41 -0
- package/dist/types/fhevm/index.d.ts +1 -0
- package/dist/types/fhevm/reencrypt.d.ts +20 -0
- package/dist/types/fhevm/tfhe.d.ts +74 -0
- package/dist/types/fhevm/types.d.ts +3 -0
- package/dist/types/generated/abis/addTwo.d.ts +83 -0
- package/dist/types/generated/abis/inco-fhevm.d.ts +874 -0
- package/dist/types/generated/abis/index.d.ts +2 -0
- package/dist/types/generated/abis/lightning.d.ts +2226 -0
- package/dist/types/generated/es/cosmos/ics23/v1/proofs_pb.d.ts +593 -0
- package/dist/types/generated/es/cosmos/msg/v1/msg_pb.d.ts +29 -0
- package/dist/types/generated/es/cosmos_proto/cosmos_pb.d.ts +174 -0
- package/dist/types/generated/es/google/api/annotations_pb.d.ts +13 -0
- package/dist/types/generated/es/google/api/http_pb.d.ts +440 -0
- package/dist/types/generated/es/inco/fhe/v1/events_pb.d.ts +79 -0
- package/dist/types/generated/es/inco/fhe/v1/genesis_pb.d.ts +252 -0
- package/dist/types/generated/es/inco/fhe/v1/query_pb.d.ts +569 -0
- package/dist/types/generated/es/inco/fhe/v1/tx_pb.d.ts +494 -0
- package/dist/types/generated/es/inco/fhe/v1/types_pb.d.ts +419 -0
- package/dist/types/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +333 -0
- package/dist/types/generated/es/inco/kms/lite/v1/types_pb.d.ts +212 -0
- package/dist/types/generated/es/inco/preflight/v1/genesis_pb.d.ts +56 -0
- package/dist/types/generated/es/inco/preflight/v1/query_pb.d.ts +100 -0
- package/dist/types/generated/es/inco/preflight/v1/tx_pb.d.ts +193 -0
- package/dist/types/generated/es/inco/preflight/v1/types_pb.d.ts +144 -0
- package/dist/types/generated/es/kms/base_pb.d.ts +765 -0
- package/dist/types/generated/es/sf/ethereum/type/v2/type_pb.d.ts +1736 -0
- package/dist/types/generated/fhe-environments.d.ts +14 -0
- package/dist/types/generated/lightning.d.ts +211 -0
- package/dist/types/generated/local-node.d.ts +23 -0
- package/dist/types/generated/ts/amino/amino.d.ts +1 -0
- package/dist/types/generated/ts/cometbft/abci/v1/types.d.ts +597 -0
- package/dist/types/generated/ts/cometbft/crypto/v1/keys.d.ts +27 -0
- package/dist/types/generated/ts/cometbft/crypto/v1/proof.d.ts +60 -0
- package/dist/types/generated/ts/cometbft/types/v1/params.d.ts +179 -0
- package/dist/types/generated/ts/cometbft/types/v1/validator.d.ts +61 -0
- package/dist/types/generated/ts/cosmos/app/v1alpha1/module.d.ts +104 -0
- package/dist/types/generated/ts/cosmos/msg/v1/msg.d.ts +1 -0
- package/dist/types/generated/ts/cosmos_proto/cosmos.d.ts +80 -0
- package/dist/types/generated/ts/gogoproto/gogo.d.ts +1 -0
- package/dist/types/generated/ts/google/api/annotations.d.ts +1 -0
- package/dist/types/generated/ts/google/api/http.d.ts +371 -0
- package/dist/types/generated/ts/google/protobuf/descriptor.d.ts +1228 -0
- package/dist/types/generated/ts/google/protobuf/duration.d.ts +99 -0
- package/dist/types/generated/ts/google/protobuf/timestamp.d.ts +128 -0
- package/dist/types/generated/ts/google/protobuf/wrappers.d.ts +111 -0
- package/dist/types/generated/ts/inco/abci/v1/types.d.ts +35 -0
- package/dist/types/generated/ts/inco/fhe/module/v1/module.d.ts +31 -0
- package/dist/types/generated/ts/inco/fhe/v1/events.d.ts +66 -0
- package/dist/types/generated/ts/inco/fhe/v1/genesis.d.ts +117 -0
- package/dist/types/generated/ts/inco/fhe/v1/query.d.ts +366 -0
- package/dist/types/generated/ts/inco/fhe/v1/tx.d.ts +409 -0
- package/dist/types/generated/ts/inco/fhe/v1/types.d.ts +225 -0
- package/dist/types/generated/ts/inco/originchain/module/v1/module.d.ts +30 -0
- package/dist/types/generated/ts/inco/originchain/v1/abci.d.ts +80 -0
- package/dist/types/generated/ts/inco/originchain/v1/events.d.ts +60 -0
- package/dist/types/generated/ts/inco/originchain/v1/genesis.d.ts +28 -0
- package/dist/types/generated/ts/inco/originchain/v1/query.d.ts +116 -0
- package/dist/types/generated/ts/inco/originchain/v1/tx.d.ts +89 -0
- package/dist/types/generated/ts/inco/originchain/v1/types.d.ts +58 -0
- package/dist/types/generated/ts/inco/preflight/module/v1/module.d.ts +31 -0
- package/dist/types/generated/ts/inco/preflight/v1/genesis.d.ts +41 -0
- package/dist/types/generated/ts/inco/preflight/v1/query.d.ts +93 -0
- package/dist/types/generated/ts/inco/preflight/v1/tx.d.ts +187 -0
- package/dist/types/generated/ts/inco/preflight/v1/types.d.ts +84 -0
- package/dist/types/handle.d.ts +41 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/kms/client.d.ts +8 -0
- package/dist/types/l1/client.d.ts +35 -0
- package/dist/types/l1/index.d.ts +2 -0
- package/dist/types/l1/preflight.d.ts +20 -0
- package/dist/types/lite/attested-decrypt.d.ts +3 -0
- package/dist/types/lite/deployments.d.ts +6 -0
- package/dist/types/lite/ecies.d.ts +26 -0
- package/dist/types/lite/hadu.d.ts +24 -0
- package/dist/types/lite/index.d.ts +7 -0
- package/dist/types/lite/lightning.d.ts +124 -0
- package/dist/types/lite/reencrypt.d.ts +24 -0
- package/dist/types/local/index.d.ts +1 -0
- package/dist/types/local/local-node.d.ts +19 -0
- package/dist/types/reencryption/eip712.d.ts +29 -0
- package/dist/types/reencryption/index.d.ts +2 -0
- package/dist/types/reencryption/types.d.ts +25 -0
- package/dist/types/retry.d.ts +15 -0
- package/dist/types/schema.d.ts +4 -0
- package/dist/types/viem.d.ts +427 -0
- package/package.json +64 -15
- package/dist/binary.js +0 -82
- package/dist/encryption/encryption.js +0 -109
- package/dist/encryption/index.d.ts +0 -1
- package/dist/fhevm/fhe-environment.js +0 -11
- package/dist/fhevm/fhevm.js +0 -145
- package/dist/fhevm/index.d.ts +0 -1
- package/dist/fhevm/reencrypt.js +0 -127
- package/dist/fhevm/tfhe.js +0 -336
- package/dist/fhevm/types.js +0 -29
- package/dist/generated/local-node.d.ts +0 -7
- package/dist/generated/local-node.js +0 -11
- package/dist/generated/ts/cometbft/crypto/v1/keys.js +0 -108
- package/dist/generated/ts/cometbft/crypto/v1/proof.js +0 -433
- package/dist/generated/ts/cometbft/types/v1/params.js +0 -716
- package/dist/generated/ts/cometbft/types/v1/validator.js +0 -358
- package/dist/generated/ts/cosmos/app/v1alpha1/module.js +0 -221
- package/dist/generated/ts/cosmos_proto/cosmos.js +0 -216
- package/dist/generated/ts/google/api/http.js +0 -356
- package/dist/generated/ts/google/protobuf/duration.js +0 -93
- package/dist/generated/ts/google/protobuf/timestamp.js +0 -93
- package/dist/generated/ts/google/protobuf/wrappers.js +0 -509
- package/dist/generated/ts/inco/abci/v1/types.js +0 -73
- package/dist/generated/ts/inco/fhe/module/v1/module.js +0 -66
- package/dist/generated/ts/inco/fhe/v1/events.js +0 -190
- package/dist/generated/ts/inco/fhe/v1/genesis.js +0 -714
- package/dist/generated/ts/inco/fhe/v1/types.js +0 -990
- package/dist/generated/ts/inco/originchain/module/v1/module.js +0 -66
- package/dist/generated/ts/inco/originchain/v1/abci.js +0 -331
- package/dist/generated/ts/inco/originchain/v1/events.js +0 -216
- package/dist/generated/ts/inco/originchain/v1/genesis.js +0 -69
- package/dist/generated/ts/inco/originchain/v1/query.js +0 -280
- package/dist/generated/ts/inco/originchain/v1/tx.js +0 -140
- package/dist/generated/ts/inco/originchain/v1/types.js +0 -203
- package/dist/generated/ts/inco/preflight/module/v1/module.js +0 -66
- package/dist/generated/ts/inco/preflight/v1/genesis.js +0 -185
- package/dist/generated/ts/inco/preflight/v1/query.js +0 -259
- package/dist/generated/ts/inco/preflight/v1/tx.js +0 -448
- package/dist/generated/ts/inco/preflight/v1/types.js +0 -398
- package/dist/index.d.ts +0 -5
- package/dist/l1/index.d.ts +0 -2
- package/dist/l1/preflight.js +0 -42
- package/dist/lite/deployments.js +0 -21
- package/dist/lite/ecies.js +0 -135
- package/dist/lite/hadu.js +0 -41
- package/dist/lite/index.d.ts +0 -7
- package/dist/lite/index.js +0 -23
- package/dist/lite/lightning.js +0 -183
- package/dist/lite/reencrypt.js +0 -161
- package/dist/local/index.d.ts +0 -1
- package/dist/reencryption/index.d.ts +0 -2
- package/dist/reencryption/index.js +0 -19
- package/dist/viem.js +0 -12
- /package/dist/{binary.d.ts → cjs/binary.d.ts} +0 -0
- /package/dist/{chain.d.ts → cjs/chain.d.ts} +0 -0
- /package/dist/{generated → cjs/generated}/abis/addTwo.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/abis/inco-fhevm.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/abis/index.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/abis/lightning.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/cosmos/ics23/v1/proofs_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/cosmos/msg/v1/msg_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/cosmos_proto/cosmos_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/google/api/annotations_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/google/api/http_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/fhe/v1/events_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/fhe/v1/genesis_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/fhe/v1/query_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/fhe/v1/tx_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/fhe/v1/types_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/kms/lite/v1/types_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/preflight/v1/genesis_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/preflight/v1/query_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/preflight/v1/tx_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/inco/preflight/v1/types_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/kms/base_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/es/sf/ethereum/type/v2/type_pb.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/fhe-environments.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/amino/amino.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cometbft/abci/v1/types.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cometbft/crypto/v1/keys.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cometbft/crypto/v1/proof.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cometbft/types/v1/params.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cometbft/types/v1/validator.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cosmos/app/v1alpha1/module.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cosmos/msg/v1/msg.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/cosmos_proto/cosmos.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/gogoproto/gogo.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/api/annotations.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/api/http.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/protobuf/descriptor.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/protobuf/duration.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/protobuf/timestamp.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/google/protobuf/wrappers.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/abci/v1/types.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/module/v1/module.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/events.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/genesis.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/query.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/tx.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/fhe/v1/types.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/module/v1/module.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/abci.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/events.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/genesis.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/query.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/tx.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/originchain/v1/types.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/preflight/module/v1/module.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/preflight/v1/genesis.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/preflight/v1/query.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/preflight/v1/tx.d.ts +0 -0
- /package/dist/{generated → cjs/generated}/ts/inco/preflight/v1/types.d.ts +0 -0
- /package/dist/{local → cjs/local}/local-node.d.ts +0 -0
- /package/dist/{reencryption → cjs/reencryption}/eip712.d.ts +0 -0
- /package/dist/{schema.d.ts → cjs/schema.d.ts} +0 -0
@@ -0,0 +1,990 @@
|
|
1
|
+
"use strict";
|
2
|
+
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
3
|
+
// versions:
|
4
|
+
// protoc-gen-ts_proto v2.7.0
|
5
|
+
// protoc unknown
|
6
|
+
// source: inco/fhe/v1/types.proto
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
8
|
+
exports.HandleBindingEntry = exports.HandleBinding = exports.BlockTopoStore = exports.BlockTopo = exports.FheEnvBlock = exports.CARoot = exports.IncoLiteAccessControl = exports.ZamaAccessControl = exports.FheEnv = exports.KeysetInfo = exports.Covalidator = exports.TypedCiphertext = exports.FheType = exports.protobufPackage = void 0;
|
9
|
+
exports.fheTypeFromJSON = fheTypeFromJSON;
|
10
|
+
exports.fheTypeToJSON = fheTypeToJSON;
|
11
|
+
/* eslint-disable */
|
12
|
+
const wire_1 = require("@bufbuild/protobuf/wire");
|
13
|
+
exports.protobufPackage = "inco.fhe.v1";
|
14
|
+
/**
|
15
|
+
* FheType represents the type of the plaintext encrypted in either in the FHE
|
16
|
+
* or the TEE ciphertext.
|
17
|
+
* For compatibility with Zama's FheType, we use the same values.
|
18
|
+
* ref: https://github.com/zama-ai/kms-core/blob/fcc54ba0933e6190d8e8091ef495bcf437c06f6a/core/grpc/proto/kms.v1.proto#L32
|
19
|
+
*/
|
20
|
+
var FheType;
|
21
|
+
(function (FheType) {
|
22
|
+
FheType[FheType["FHE_TYPE_EBOOL"] = 0] = "FHE_TYPE_EBOOL";
|
23
|
+
FheType[FheType["FHE_TYPE_EUINT4"] = 1] = "FHE_TYPE_EUINT4";
|
24
|
+
FheType[FheType["FHE_TYPE_EUINT8"] = 2] = "FHE_TYPE_EUINT8";
|
25
|
+
FheType[FheType["FHE_TYPE_EUINT16"] = 3] = "FHE_TYPE_EUINT16";
|
26
|
+
FheType[FheType["FHE_TYPE_EUINT32"] = 4] = "FHE_TYPE_EUINT32";
|
27
|
+
FheType[FheType["FHE_TYPE_EUINT64"] = 5] = "FHE_TYPE_EUINT64";
|
28
|
+
FheType[FheType["FHE_TYPE_EUINT128"] = 6] = "FHE_TYPE_EUINT128";
|
29
|
+
FheType[FheType["FHE_TYPE_EUINT160"] = 7] = "FHE_TYPE_EUINT160";
|
30
|
+
FheType[FheType["FHE_TYPE_EUINT256"] = 8] = "FHE_TYPE_EUINT256";
|
31
|
+
FheType[FheType["FHE_TYPE_EUINT512"] = 9] = "FHE_TYPE_EUINT512";
|
32
|
+
FheType[FheType["FHE_TYPE_EUINT1024"] = 10] = "FHE_TYPE_EUINT1024";
|
33
|
+
FheType[FheType["FHE_TYPE_EUINT2048"] = 11] = "FHE_TYPE_EUINT2048";
|
34
|
+
FheType[FheType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
|
35
|
+
})(FheType || (exports.FheType = FheType = {}));
|
36
|
+
function fheTypeFromJSON(object) {
|
37
|
+
switch (object) {
|
38
|
+
case 0:
|
39
|
+
case "FHE_TYPE_EBOOL":
|
40
|
+
return FheType.FHE_TYPE_EBOOL;
|
41
|
+
case 1:
|
42
|
+
case "FHE_TYPE_EUINT4":
|
43
|
+
return FheType.FHE_TYPE_EUINT4;
|
44
|
+
case 2:
|
45
|
+
case "FHE_TYPE_EUINT8":
|
46
|
+
return FheType.FHE_TYPE_EUINT8;
|
47
|
+
case 3:
|
48
|
+
case "FHE_TYPE_EUINT16":
|
49
|
+
return FheType.FHE_TYPE_EUINT16;
|
50
|
+
case 4:
|
51
|
+
case "FHE_TYPE_EUINT32":
|
52
|
+
return FheType.FHE_TYPE_EUINT32;
|
53
|
+
case 5:
|
54
|
+
case "FHE_TYPE_EUINT64":
|
55
|
+
return FheType.FHE_TYPE_EUINT64;
|
56
|
+
case 6:
|
57
|
+
case "FHE_TYPE_EUINT128":
|
58
|
+
return FheType.FHE_TYPE_EUINT128;
|
59
|
+
case 7:
|
60
|
+
case "FHE_TYPE_EUINT160":
|
61
|
+
return FheType.FHE_TYPE_EUINT160;
|
62
|
+
case 8:
|
63
|
+
case "FHE_TYPE_EUINT256":
|
64
|
+
return FheType.FHE_TYPE_EUINT256;
|
65
|
+
case 9:
|
66
|
+
case "FHE_TYPE_EUINT512":
|
67
|
+
return FheType.FHE_TYPE_EUINT512;
|
68
|
+
case 10:
|
69
|
+
case "FHE_TYPE_EUINT1024":
|
70
|
+
return FheType.FHE_TYPE_EUINT1024;
|
71
|
+
case 11:
|
72
|
+
case "FHE_TYPE_EUINT2048":
|
73
|
+
return FheType.FHE_TYPE_EUINT2048;
|
74
|
+
case -1:
|
75
|
+
case "UNRECOGNIZED":
|
76
|
+
default:
|
77
|
+
return FheType.UNRECOGNIZED;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
function fheTypeToJSON(object) {
|
81
|
+
switch (object) {
|
82
|
+
case FheType.FHE_TYPE_EBOOL:
|
83
|
+
return "FHE_TYPE_EBOOL";
|
84
|
+
case FheType.FHE_TYPE_EUINT4:
|
85
|
+
return "FHE_TYPE_EUINT4";
|
86
|
+
case FheType.FHE_TYPE_EUINT8:
|
87
|
+
return "FHE_TYPE_EUINT8";
|
88
|
+
case FheType.FHE_TYPE_EUINT16:
|
89
|
+
return "FHE_TYPE_EUINT16";
|
90
|
+
case FheType.FHE_TYPE_EUINT32:
|
91
|
+
return "FHE_TYPE_EUINT32";
|
92
|
+
case FheType.FHE_TYPE_EUINT64:
|
93
|
+
return "FHE_TYPE_EUINT64";
|
94
|
+
case FheType.FHE_TYPE_EUINT128:
|
95
|
+
return "FHE_TYPE_EUINT128";
|
96
|
+
case FheType.FHE_TYPE_EUINT160:
|
97
|
+
return "FHE_TYPE_EUINT160";
|
98
|
+
case FheType.FHE_TYPE_EUINT256:
|
99
|
+
return "FHE_TYPE_EUINT256";
|
100
|
+
case FheType.FHE_TYPE_EUINT512:
|
101
|
+
return "FHE_TYPE_EUINT512";
|
102
|
+
case FheType.FHE_TYPE_EUINT1024:
|
103
|
+
return "FHE_TYPE_EUINT1024";
|
104
|
+
case FheType.FHE_TYPE_EUINT2048:
|
105
|
+
return "FHE_TYPE_EUINT2048";
|
106
|
+
case FheType.UNRECOGNIZED:
|
107
|
+
default:
|
108
|
+
return "UNRECOGNIZED";
|
109
|
+
}
|
110
|
+
}
|
111
|
+
function createBaseTypedCiphertext() {
|
112
|
+
return { ciphertext: new Uint8Array(0), fheType: 0, handle: "" };
|
113
|
+
}
|
114
|
+
exports.TypedCiphertext = {
|
115
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
116
|
+
if (message.ciphertext.length !== 0) {
|
117
|
+
writer.uint32(10).bytes(message.ciphertext);
|
118
|
+
}
|
119
|
+
if (message.fheType !== 0) {
|
120
|
+
writer.uint32(16).int32(message.fheType);
|
121
|
+
}
|
122
|
+
if (message.handle !== "") {
|
123
|
+
writer.uint32(26).string(message.handle);
|
124
|
+
}
|
125
|
+
return writer;
|
126
|
+
},
|
127
|
+
decode(input, length) {
|
128
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
129
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
130
|
+
const message = createBaseTypedCiphertext();
|
131
|
+
while (reader.pos < end) {
|
132
|
+
const tag = reader.uint32();
|
133
|
+
switch (tag >>> 3) {
|
134
|
+
case 1: {
|
135
|
+
if (tag !== 10) {
|
136
|
+
break;
|
137
|
+
}
|
138
|
+
message.ciphertext = reader.bytes();
|
139
|
+
continue;
|
140
|
+
}
|
141
|
+
case 2: {
|
142
|
+
if (tag !== 16) {
|
143
|
+
break;
|
144
|
+
}
|
145
|
+
message.fheType = reader.int32();
|
146
|
+
continue;
|
147
|
+
}
|
148
|
+
case 3: {
|
149
|
+
if (tag !== 26) {
|
150
|
+
break;
|
151
|
+
}
|
152
|
+
message.handle = reader.string();
|
153
|
+
continue;
|
154
|
+
}
|
155
|
+
}
|
156
|
+
if ((tag & 7) === 4 || tag === 0) {
|
157
|
+
break;
|
158
|
+
}
|
159
|
+
reader.skip(tag & 7);
|
160
|
+
}
|
161
|
+
return message;
|
162
|
+
},
|
163
|
+
fromJSON(object) {
|
164
|
+
return {
|
165
|
+
ciphertext: isSet(object.ciphertext) ? bytesFromBase64(object.ciphertext) : new Uint8Array(0),
|
166
|
+
fheType: isSet(object.fheType) ? fheTypeFromJSON(object.fheType) : 0,
|
167
|
+
handle: isSet(object.handle) ? globalThis.String(object.handle) : "",
|
168
|
+
};
|
169
|
+
},
|
170
|
+
toJSON(message) {
|
171
|
+
const obj = {};
|
172
|
+
if (message.ciphertext.length !== 0) {
|
173
|
+
obj.ciphertext = base64FromBytes(message.ciphertext);
|
174
|
+
}
|
175
|
+
if (message.fheType !== 0) {
|
176
|
+
obj.fheType = fheTypeToJSON(message.fheType);
|
177
|
+
}
|
178
|
+
if (message.handle !== "") {
|
179
|
+
obj.handle = message.handle;
|
180
|
+
}
|
181
|
+
return obj;
|
182
|
+
},
|
183
|
+
create(base) {
|
184
|
+
return exports.TypedCiphertext.fromPartial(base ?? {});
|
185
|
+
},
|
186
|
+
fromPartial(object) {
|
187
|
+
const message = createBaseTypedCiphertext();
|
188
|
+
message.ciphertext = object.ciphertext ?? new Uint8Array(0);
|
189
|
+
message.fheType = object.fheType ?? 0;
|
190
|
+
message.handle = object.handle ?? "";
|
191
|
+
return message;
|
192
|
+
},
|
193
|
+
};
|
194
|
+
function createBaseCovalidator() {
|
195
|
+
return { incoAddress: "", grpcUrl: "" };
|
196
|
+
}
|
197
|
+
exports.Covalidator = {
|
198
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
199
|
+
if (message.incoAddress !== "") {
|
200
|
+
writer.uint32(10).string(message.incoAddress);
|
201
|
+
}
|
202
|
+
if (message.grpcUrl !== "") {
|
203
|
+
writer.uint32(18).string(message.grpcUrl);
|
204
|
+
}
|
205
|
+
return writer;
|
206
|
+
},
|
207
|
+
decode(input, length) {
|
208
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
209
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
210
|
+
const message = createBaseCovalidator();
|
211
|
+
while (reader.pos < end) {
|
212
|
+
const tag = reader.uint32();
|
213
|
+
switch (tag >>> 3) {
|
214
|
+
case 1: {
|
215
|
+
if (tag !== 10) {
|
216
|
+
break;
|
217
|
+
}
|
218
|
+
message.incoAddress = reader.string();
|
219
|
+
continue;
|
220
|
+
}
|
221
|
+
case 2: {
|
222
|
+
if (tag !== 18) {
|
223
|
+
break;
|
224
|
+
}
|
225
|
+
message.grpcUrl = reader.string();
|
226
|
+
continue;
|
227
|
+
}
|
228
|
+
}
|
229
|
+
if ((tag & 7) === 4 || tag === 0) {
|
230
|
+
break;
|
231
|
+
}
|
232
|
+
reader.skip(tag & 7);
|
233
|
+
}
|
234
|
+
return message;
|
235
|
+
},
|
236
|
+
fromJSON(object) {
|
237
|
+
return {
|
238
|
+
incoAddress: isSet(object.incoAddress) ? globalThis.String(object.incoAddress) : "",
|
239
|
+
grpcUrl: isSet(object.grpcUrl) ? globalThis.String(object.grpcUrl) : "",
|
240
|
+
};
|
241
|
+
},
|
242
|
+
toJSON(message) {
|
243
|
+
const obj = {};
|
244
|
+
if (message.incoAddress !== "") {
|
245
|
+
obj.incoAddress = message.incoAddress;
|
246
|
+
}
|
247
|
+
if (message.grpcUrl !== "") {
|
248
|
+
obj.grpcUrl = message.grpcUrl;
|
249
|
+
}
|
250
|
+
return obj;
|
251
|
+
},
|
252
|
+
create(base) {
|
253
|
+
return exports.Covalidator.fromPartial(base ?? {});
|
254
|
+
},
|
255
|
+
fromPartial(object) {
|
256
|
+
const message = createBaseCovalidator();
|
257
|
+
message.incoAddress = object.incoAddress ?? "";
|
258
|
+
message.grpcUrl = object.grpcUrl ?? "";
|
259
|
+
return message;
|
260
|
+
},
|
261
|
+
};
|
262
|
+
function createBaseKeysetInfo() {
|
263
|
+
return { id: "", kmsGrpcUrl: "" };
|
264
|
+
}
|
265
|
+
exports.KeysetInfo = {
|
266
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
267
|
+
if (message.id !== "") {
|
268
|
+
writer.uint32(10).string(message.id);
|
269
|
+
}
|
270
|
+
if (message.kmsGrpcUrl !== "") {
|
271
|
+
writer.uint32(18).string(message.kmsGrpcUrl);
|
272
|
+
}
|
273
|
+
return writer;
|
274
|
+
},
|
275
|
+
decode(input, length) {
|
276
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
277
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
278
|
+
const message = createBaseKeysetInfo();
|
279
|
+
while (reader.pos < end) {
|
280
|
+
const tag = reader.uint32();
|
281
|
+
switch (tag >>> 3) {
|
282
|
+
case 1: {
|
283
|
+
if (tag !== 10) {
|
284
|
+
break;
|
285
|
+
}
|
286
|
+
message.id = reader.string();
|
287
|
+
continue;
|
288
|
+
}
|
289
|
+
case 2: {
|
290
|
+
if (tag !== 18) {
|
291
|
+
break;
|
292
|
+
}
|
293
|
+
message.kmsGrpcUrl = reader.string();
|
294
|
+
continue;
|
295
|
+
}
|
296
|
+
}
|
297
|
+
if ((tag & 7) === 4 || tag === 0) {
|
298
|
+
break;
|
299
|
+
}
|
300
|
+
reader.skip(tag & 7);
|
301
|
+
}
|
302
|
+
return message;
|
303
|
+
},
|
304
|
+
fromJSON(object) {
|
305
|
+
return {
|
306
|
+
id: isSet(object.id) ? globalThis.String(object.id) : "",
|
307
|
+
kmsGrpcUrl: isSet(object.kmsGrpcUrl) ? globalThis.String(object.kmsGrpcUrl) : "",
|
308
|
+
};
|
309
|
+
},
|
310
|
+
toJSON(message) {
|
311
|
+
const obj = {};
|
312
|
+
if (message.id !== "") {
|
313
|
+
obj.id = message.id;
|
314
|
+
}
|
315
|
+
if (message.kmsGrpcUrl !== "") {
|
316
|
+
obj.kmsGrpcUrl = message.kmsGrpcUrl;
|
317
|
+
}
|
318
|
+
return obj;
|
319
|
+
},
|
320
|
+
create(base) {
|
321
|
+
return exports.KeysetInfo.fromPartial(base ?? {});
|
322
|
+
},
|
323
|
+
fromPartial(object) {
|
324
|
+
const message = createBaseKeysetInfo();
|
325
|
+
message.id = object.id ?? "";
|
326
|
+
message.kmsGrpcUrl = object.kmsGrpcUrl ?? "";
|
327
|
+
return message;
|
328
|
+
},
|
329
|
+
};
|
330
|
+
function createBaseFheEnv() {
|
331
|
+
return { hostChainId: "", keysetId: "", zamaAccessControl: undefined, incoLiteAccessControl: undefined };
|
332
|
+
}
|
333
|
+
exports.FheEnv = {
|
334
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
335
|
+
if (message.hostChainId !== "") {
|
336
|
+
writer.uint32(10).string(message.hostChainId);
|
337
|
+
}
|
338
|
+
if (message.keysetId !== "") {
|
339
|
+
writer.uint32(18).string(message.keysetId);
|
340
|
+
}
|
341
|
+
if (message.zamaAccessControl !== undefined) {
|
342
|
+
exports.ZamaAccessControl.encode(message.zamaAccessControl, writer.uint32(82).fork()).join();
|
343
|
+
}
|
344
|
+
if (message.incoLiteAccessControl !== undefined) {
|
345
|
+
exports.IncoLiteAccessControl.encode(message.incoLiteAccessControl, writer.uint32(90).fork()).join();
|
346
|
+
}
|
347
|
+
return writer;
|
348
|
+
},
|
349
|
+
decode(input, length) {
|
350
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
351
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
352
|
+
const message = createBaseFheEnv();
|
353
|
+
while (reader.pos < end) {
|
354
|
+
const tag = reader.uint32();
|
355
|
+
switch (tag >>> 3) {
|
356
|
+
case 1: {
|
357
|
+
if (tag !== 10) {
|
358
|
+
break;
|
359
|
+
}
|
360
|
+
message.hostChainId = reader.string();
|
361
|
+
continue;
|
362
|
+
}
|
363
|
+
case 2: {
|
364
|
+
if (tag !== 18) {
|
365
|
+
break;
|
366
|
+
}
|
367
|
+
message.keysetId = reader.string();
|
368
|
+
continue;
|
369
|
+
}
|
370
|
+
case 10: {
|
371
|
+
if (tag !== 82) {
|
372
|
+
break;
|
373
|
+
}
|
374
|
+
message.zamaAccessControl = exports.ZamaAccessControl.decode(reader, reader.uint32());
|
375
|
+
continue;
|
376
|
+
}
|
377
|
+
case 11: {
|
378
|
+
if (tag !== 90) {
|
379
|
+
break;
|
380
|
+
}
|
381
|
+
message.incoLiteAccessControl = exports.IncoLiteAccessControl.decode(reader, reader.uint32());
|
382
|
+
continue;
|
383
|
+
}
|
384
|
+
}
|
385
|
+
if ((tag & 7) === 4 || tag === 0) {
|
386
|
+
break;
|
387
|
+
}
|
388
|
+
reader.skip(tag & 7);
|
389
|
+
}
|
390
|
+
return message;
|
391
|
+
},
|
392
|
+
fromJSON(object) {
|
393
|
+
return {
|
394
|
+
hostChainId: isSet(object.hostChainId) ? globalThis.String(object.hostChainId) : "",
|
395
|
+
keysetId: isSet(object.keysetId) ? globalThis.String(object.keysetId) : "",
|
396
|
+
zamaAccessControl: isSet(object.zamaAccessControl)
|
397
|
+
? exports.ZamaAccessControl.fromJSON(object.zamaAccessControl)
|
398
|
+
: undefined,
|
399
|
+
incoLiteAccessControl: isSet(object.incoLiteAccessControl)
|
400
|
+
? exports.IncoLiteAccessControl.fromJSON(object.incoLiteAccessControl)
|
401
|
+
: undefined,
|
402
|
+
};
|
403
|
+
},
|
404
|
+
toJSON(message) {
|
405
|
+
const obj = {};
|
406
|
+
if (message.hostChainId !== "") {
|
407
|
+
obj.hostChainId = message.hostChainId;
|
408
|
+
}
|
409
|
+
if (message.keysetId !== "") {
|
410
|
+
obj.keysetId = message.keysetId;
|
411
|
+
}
|
412
|
+
if (message.zamaAccessControl !== undefined) {
|
413
|
+
obj.zamaAccessControl = exports.ZamaAccessControl.toJSON(message.zamaAccessControl);
|
414
|
+
}
|
415
|
+
if (message.incoLiteAccessControl !== undefined) {
|
416
|
+
obj.incoLiteAccessControl = exports.IncoLiteAccessControl.toJSON(message.incoLiteAccessControl);
|
417
|
+
}
|
418
|
+
return obj;
|
419
|
+
},
|
420
|
+
create(base) {
|
421
|
+
return exports.FheEnv.fromPartial(base ?? {});
|
422
|
+
},
|
423
|
+
fromPartial(object) {
|
424
|
+
const message = createBaseFheEnv();
|
425
|
+
message.hostChainId = object.hostChainId ?? "";
|
426
|
+
message.keysetId = object.keysetId ?? "";
|
427
|
+
message.zamaAccessControl = (object.zamaAccessControl !== undefined && object.zamaAccessControl !== null)
|
428
|
+
? exports.ZamaAccessControl.fromPartial(object.zamaAccessControl)
|
429
|
+
: undefined;
|
430
|
+
message.incoLiteAccessControl =
|
431
|
+
(object.incoLiteAccessControl !== undefined && object.incoLiteAccessControl !== null)
|
432
|
+
? exports.IncoLiteAccessControl.fromPartial(object.incoLiteAccessControl)
|
433
|
+
: undefined;
|
434
|
+
return message;
|
435
|
+
},
|
436
|
+
};
|
437
|
+
function createBaseZamaAccessControl() {
|
438
|
+
return { aclAddress: "", decryptionStorageIndex: "", reencryptionStorageIndex: "", delegationsStorageIndex: "" };
|
439
|
+
}
|
440
|
+
exports.ZamaAccessControl = {
|
441
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
442
|
+
if (message.aclAddress !== "") {
|
443
|
+
writer.uint32(10).string(message.aclAddress);
|
444
|
+
}
|
445
|
+
if (message.decryptionStorageIndex !== "") {
|
446
|
+
writer.uint32(18).string(message.decryptionStorageIndex);
|
447
|
+
}
|
448
|
+
if (message.reencryptionStorageIndex !== "") {
|
449
|
+
writer.uint32(26).string(message.reencryptionStorageIndex);
|
450
|
+
}
|
451
|
+
if (message.delegationsStorageIndex !== "") {
|
452
|
+
writer.uint32(34).string(message.delegationsStorageIndex);
|
453
|
+
}
|
454
|
+
return writer;
|
455
|
+
},
|
456
|
+
decode(input, length) {
|
457
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
458
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
459
|
+
const message = createBaseZamaAccessControl();
|
460
|
+
while (reader.pos < end) {
|
461
|
+
const tag = reader.uint32();
|
462
|
+
switch (tag >>> 3) {
|
463
|
+
case 1: {
|
464
|
+
if (tag !== 10) {
|
465
|
+
break;
|
466
|
+
}
|
467
|
+
message.aclAddress = reader.string();
|
468
|
+
continue;
|
469
|
+
}
|
470
|
+
case 2: {
|
471
|
+
if (tag !== 18) {
|
472
|
+
break;
|
473
|
+
}
|
474
|
+
message.decryptionStorageIndex = reader.string();
|
475
|
+
continue;
|
476
|
+
}
|
477
|
+
case 3: {
|
478
|
+
if (tag !== 26) {
|
479
|
+
break;
|
480
|
+
}
|
481
|
+
message.reencryptionStorageIndex = reader.string();
|
482
|
+
continue;
|
483
|
+
}
|
484
|
+
case 4: {
|
485
|
+
if (tag !== 34) {
|
486
|
+
break;
|
487
|
+
}
|
488
|
+
message.delegationsStorageIndex = reader.string();
|
489
|
+
continue;
|
490
|
+
}
|
491
|
+
}
|
492
|
+
if ((tag & 7) === 4 || tag === 0) {
|
493
|
+
break;
|
494
|
+
}
|
495
|
+
reader.skip(tag & 7);
|
496
|
+
}
|
497
|
+
return message;
|
498
|
+
},
|
499
|
+
fromJSON(object) {
|
500
|
+
return {
|
501
|
+
aclAddress: isSet(object.aclAddress) ? globalThis.String(object.aclAddress) : "",
|
502
|
+
decryptionStorageIndex: isSet(object.decryptionStorageIndex)
|
503
|
+
? globalThis.String(object.decryptionStorageIndex)
|
504
|
+
: "",
|
505
|
+
reencryptionStorageIndex: isSet(object.reencryptionStorageIndex)
|
506
|
+
? globalThis.String(object.reencryptionStorageIndex)
|
507
|
+
: "",
|
508
|
+
delegationsStorageIndex: isSet(object.delegationsStorageIndex)
|
509
|
+
? globalThis.String(object.delegationsStorageIndex)
|
510
|
+
: "",
|
511
|
+
};
|
512
|
+
},
|
513
|
+
toJSON(message) {
|
514
|
+
const obj = {};
|
515
|
+
if (message.aclAddress !== "") {
|
516
|
+
obj.aclAddress = message.aclAddress;
|
517
|
+
}
|
518
|
+
if (message.decryptionStorageIndex !== "") {
|
519
|
+
obj.decryptionStorageIndex = message.decryptionStorageIndex;
|
520
|
+
}
|
521
|
+
if (message.reencryptionStorageIndex !== "") {
|
522
|
+
obj.reencryptionStorageIndex = message.reencryptionStorageIndex;
|
523
|
+
}
|
524
|
+
if (message.delegationsStorageIndex !== "") {
|
525
|
+
obj.delegationsStorageIndex = message.delegationsStorageIndex;
|
526
|
+
}
|
527
|
+
return obj;
|
528
|
+
},
|
529
|
+
create(base) {
|
530
|
+
return exports.ZamaAccessControl.fromPartial(base ?? {});
|
531
|
+
},
|
532
|
+
fromPartial(object) {
|
533
|
+
const message = createBaseZamaAccessControl();
|
534
|
+
message.aclAddress = object.aclAddress ?? "";
|
535
|
+
message.decryptionStorageIndex = object.decryptionStorageIndex ?? "";
|
536
|
+
message.reencryptionStorageIndex = object.reencryptionStorageIndex ?? "";
|
537
|
+
message.delegationsStorageIndex = object.delegationsStorageIndex ?? "";
|
538
|
+
return message;
|
539
|
+
},
|
540
|
+
};
|
541
|
+
function createBaseIncoLiteAccessControl() {
|
542
|
+
return {};
|
543
|
+
}
|
544
|
+
exports.IncoLiteAccessControl = {
|
545
|
+
encode(_, writer = new wire_1.BinaryWriter()) {
|
546
|
+
return writer;
|
547
|
+
},
|
548
|
+
decode(input, length) {
|
549
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
550
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
551
|
+
const message = createBaseIncoLiteAccessControl();
|
552
|
+
while (reader.pos < end) {
|
553
|
+
const tag = reader.uint32();
|
554
|
+
switch (tag >>> 3) {
|
555
|
+
}
|
556
|
+
if ((tag & 7) === 4 || tag === 0) {
|
557
|
+
break;
|
558
|
+
}
|
559
|
+
reader.skip(tag & 7);
|
560
|
+
}
|
561
|
+
return message;
|
562
|
+
},
|
563
|
+
fromJSON(_) {
|
564
|
+
return {};
|
565
|
+
},
|
566
|
+
toJSON(_) {
|
567
|
+
const obj = {};
|
568
|
+
return obj;
|
569
|
+
},
|
570
|
+
create(base) {
|
571
|
+
return exports.IncoLiteAccessControl.fromPartial(base ?? {});
|
572
|
+
},
|
573
|
+
fromPartial(_) {
|
574
|
+
const message = createBaseIncoLiteAccessControl();
|
575
|
+
return message;
|
576
|
+
},
|
577
|
+
};
|
578
|
+
function createBaseCARoot() {
|
579
|
+
return { hash: new Uint8Array(0) };
|
580
|
+
}
|
581
|
+
exports.CARoot = {
|
582
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
583
|
+
if (message.hash.length !== 0) {
|
584
|
+
writer.uint32(10).bytes(message.hash);
|
585
|
+
}
|
586
|
+
return writer;
|
587
|
+
},
|
588
|
+
decode(input, length) {
|
589
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
590
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
591
|
+
const message = createBaseCARoot();
|
592
|
+
while (reader.pos < end) {
|
593
|
+
const tag = reader.uint32();
|
594
|
+
switch (tag >>> 3) {
|
595
|
+
case 1: {
|
596
|
+
if (tag !== 10) {
|
597
|
+
break;
|
598
|
+
}
|
599
|
+
message.hash = reader.bytes();
|
600
|
+
continue;
|
601
|
+
}
|
602
|
+
}
|
603
|
+
if ((tag & 7) === 4 || tag === 0) {
|
604
|
+
break;
|
605
|
+
}
|
606
|
+
reader.skip(tag & 7);
|
607
|
+
}
|
608
|
+
return message;
|
609
|
+
},
|
610
|
+
fromJSON(object) {
|
611
|
+
return { hash: isSet(object.hash) ? bytesFromBase64(object.hash) : new Uint8Array(0) };
|
612
|
+
},
|
613
|
+
toJSON(message) {
|
614
|
+
const obj = {};
|
615
|
+
if (message.hash.length !== 0) {
|
616
|
+
obj.hash = base64FromBytes(message.hash);
|
617
|
+
}
|
618
|
+
return obj;
|
619
|
+
},
|
620
|
+
create(base) {
|
621
|
+
return exports.CARoot.fromPartial(base ?? {});
|
622
|
+
},
|
623
|
+
fromPartial(object) {
|
624
|
+
const message = createBaseCARoot();
|
625
|
+
message.hash = object.hash ?? new Uint8Array(0);
|
626
|
+
return message;
|
627
|
+
},
|
628
|
+
};
|
629
|
+
function createBaseFheEnvBlock() {
|
630
|
+
return { hostChainId: "", keysetId: "", blockHash: "", blockHeight: 0 };
|
631
|
+
}
|
632
|
+
exports.FheEnvBlock = {
|
633
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
634
|
+
if (message.hostChainId !== "") {
|
635
|
+
writer.uint32(10).string(message.hostChainId);
|
636
|
+
}
|
637
|
+
if (message.keysetId !== "") {
|
638
|
+
writer.uint32(18).string(message.keysetId);
|
639
|
+
}
|
640
|
+
if (message.blockHash !== "") {
|
641
|
+
writer.uint32(26).string(message.blockHash);
|
642
|
+
}
|
643
|
+
if (message.blockHeight !== 0) {
|
644
|
+
writer.uint32(32).uint64(message.blockHeight);
|
645
|
+
}
|
646
|
+
return writer;
|
647
|
+
},
|
648
|
+
decode(input, length) {
|
649
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
650
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
651
|
+
const message = createBaseFheEnvBlock();
|
652
|
+
while (reader.pos < end) {
|
653
|
+
const tag = reader.uint32();
|
654
|
+
switch (tag >>> 3) {
|
655
|
+
case 1: {
|
656
|
+
if (tag !== 10) {
|
657
|
+
break;
|
658
|
+
}
|
659
|
+
message.hostChainId = reader.string();
|
660
|
+
continue;
|
661
|
+
}
|
662
|
+
case 2: {
|
663
|
+
if (tag !== 18) {
|
664
|
+
break;
|
665
|
+
}
|
666
|
+
message.keysetId = reader.string();
|
667
|
+
continue;
|
668
|
+
}
|
669
|
+
case 3: {
|
670
|
+
if (tag !== 26) {
|
671
|
+
break;
|
672
|
+
}
|
673
|
+
message.blockHash = reader.string();
|
674
|
+
continue;
|
675
|
+
}
|
676
|
+
case 4: {
|
677
|
+
if (tag !== 32) {
|
678
|
+
break;
|
679
|
+
}
|
680
|
+
message.blockHeight = longToNumber(reader.uint64());
|
681
|
+
continue;
|
682
|
+
}
|
683
|
+
}
|
684
|
+
if ((tag & 7) === 4 || tag === 0) {
|
685
|
+
break;
|
686
|
+
}
|
687
|
+
reader.skip(tag & 7);
|
688
|
+
}
|
689
|
+
return message;
|
690
|
+
},
|
691
|
+
fromJSON(object) {
|
692
|
+
return {
|
693
|
+
hostChainId: isSet(object.hostChainId) ? globalThis.String(object.hostChainId) : "",
|
694
|
+
keysetId: isSet(object.keysetId) ? globalThis.String(object.keysetId) : "",
|
695
|
+
blockHash: isSet(object.blockHash) ? globalThis.String(object.blockHash) : "",
|
696
|
+
blockHeight: isSet(object.blockHeight) ? globalThis.Number(object.blockHeight) : 0,
|
697
|
+
};
|
698
|
+
},
|
699
|
+
toJSON(message) {
|
700
|
+
const obj = {};
|
701
|
+
if (message.hostChainId !== "") {
|
702
|
+
obj.hostChainId = message.hostChainId;
|
703
|
+
}
|
704
|
+
if (message.keysetId !== "") {
|
705
|
+
obj.keysetId = message.keysetId;
|
706
|
+
}
|
707
|
+
if (message.blockHash !== "") {
|
708
|
+
obj.blockHash = message.blockHash;
|
709
|
+
}
|
710
|
+
if (message.blockHeight !== 0) {
|
711
|
+
obj.blockHeight = Math.round(message.blockHeight);
|
712
|
+
}
|
713
|
+
return obj;
|
714
|
+
},
|
715
|
+
create(base) {
|
716
|
+
return exports.FheEnvBlock.fromPartial(base ?? {});
|
717
|
+
},
|
718
|
+
fromPartial(object) {
|
719
|
+
const message = createBaseFheEnvBlock();
|
720
|
+
message.hostChainId = object.hostChainId ?? "";
|
721
|
+
message.keysetId = object.keysetId ?? "";
|
722
|
+
message.blockHash = object.blockHash ?? "";
|
723
|
+
message.blockHeight = object.blockHeight ?? 0;
|
724
|
+
return message;
|
725
|
+
},
|
726
|
+
};
|
727
|
+
function createBaseBlockTopo() {
|
728
|
+
return { parentHash: "" };
|
729
|
+
}
|
730
|
+
exports.BlockTopo = {
|
731
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
732
|
+
if (message.parentHash !== "") {
|
733
|
+
writer.uint32(10).string(message.parentHash);
|
734
|
+
}
|
735
|
+
return writer;
|
736
|
+
},
|
737
|
+
decode(input, length) {
|
738
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
739
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
740
|
+
const message = createBaseBlockTopo();
|
741
|
+
while (reader.pos < end) {
|
742
|
+
const tag = reader.uint32();
|
743
|
+
switch (tag >>> 3) {
|
744
|
+
case 1: {
|
745
|
+
if (tag !== 10) {
|
746
|
+
break;
|
747
|
+
}
|
748
|
+
message.parentHash = reader.string();
|
749
|
+
continue;
|
750
|
+
}
|
751
|
+
}
|
752
|
+
if ((tag & 7) === 4 || tag === 0) {
|
753
|
+
break;
|
754
|
+
}
|
755
|
+
reader.skip(tag & 7);
|
756
|
+
}
|
757
|
+
return message;
|
758
|
+
},
|
759
|
+
fromJSON(object) {
|
760
|
+
return { parentHash: isSet(object.parentHash) ? globalThis.String(object.parentHash) : "" };
|
761
|
+
},
|
762
|
+
toJSON(message) {
|
763
|
+
const obj = {};
|
764
|
+
if (message.parentHash !== "") {
|
765
|
+
obj.parentHash = message.parentHash;
|
766
|
+
}
|
767
|
+
return obj;
|
768
|
+
},
|
769
|
+
create(base) {
|
770
|
+
return exports.BlockTopo.fromPartial(base ?? {});
|
771
|
+
},
|
772
|
+
fromPartial(object) {
|
773
|
+
const message = createBaseBlockTopo();
|
774
|
+
message.parentHash = object.parentHash ?? "";
|
775
|
+
return message;
|
776
|
+
},
|
777
|
+
};
|
778
|
+
function createBaseBlockTopoStore() {
|
779
|
+
return { parentHash: new Uint8Array(0) };
|
780
|
+
}
|
781
|
+
exports.BlockTopoStore = {
|
782
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
783
|
+
if (message.parentHash.length !== 0) {
|
784
|
+
writer.uint32(10).bytes(message.parentHash);
|
785
|
+
}
|
786
|
+
return writer;
|
787
|
+
},
|
788
|
+
decode(input, length) {
|
789
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
790
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
791
|
+
const message = createBaseBlockTopoStore();
|
792
|
+
while (reader.pos < end) {
|
793
|
+
const tag = reader.uint32();
|
794
|
+
switch (tag >>> 3) {
|
795
|
+
case 1: {
|
796
|
+
if (tag !== 10) {
|
797
|
+
break;
|
798
|
+
}
|
799
|
+
message.parentHash = reader.bytes();
|
800
|
+
continue;
|
801
|
+
}
|
802
|
+
}
|
803
|
+
if ((tag & 7) === 4 || tag === 0) {
|
804
|
+
break;
|
805
|
+
}
|
806
|
+
reader.skip(tag & 7);
|
807
|
+
}
|
808
|
+
return message;
|
809
|
+
},
|
810
|
+
fromJSON(object) {
|
811
|
+
return { parentHash: isSet(object.parentHash) ? bytesFromBase64(object.parentHash) : new Uint8Array(0) };
|
812
|
+
},
|
813
|
+
toJSON(message) {
|
814
|
+
const obj = {};
|
815
|
+
if (message.parentHash.length !== 0) {
|
816
|
+
obj.parentHash = base64FromBytes(message.parentHash);
|
817
|
+
}
|
818
|
+
return obj;
|
819
|
+
},
|
820
|
+
create(base) {
|
821
|
+
return exports.BlockTopoStore.fromPartial(base ?? {});
|
822
|
+
},
|
823
|
+
fromPartial(object) {
|
824
|
+
const message = createBaseBlockTopoStore();
|
825
|
+
message.parentHash = object.parentHash ?? new Uint8Array(0);
|
826
|
+
return message;
|
827
|
+
},
|
828
|
+
};
|
829
|
+
function createBaseHandleBinding() {
|
830
|
+
return { ciphertextHash: new Uint8Array(0) };
|
831
|
+
}
|
832
|
+
exports.HandleBinding = {
|
833
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
834
|
+
if (message.ciphertextHash.length !== 0) {
|
835
|
+
writer.uint32(10).bytes(message.ciphertextHash);
|
836
|
+
}
|
837
|
+
return writer;
|
838
|
+
},
|
839
|
+
decode(input, length) {
|
840
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
841
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
842
|
+
const message = createBaseHandleBinding();
|
843
|
+
while (reader.pos < end) {
|
844
|
+
const tag = reader.uint32();
|
845
|
+
switch (tag >>> 3) {
|
846
|
+
case 1: {
|
847
|
+
if (tag !== 10) {
|
848
|
+
break;
|
849
|
+
}
|
850
|
+
message.ciphertextHash = reader.bytes();
|
851
|
+
continue;
|
852
|
+
}
|
853
|
+
}
|
854
|
+
if ((tag & 7) === 4 || tag === 0) {
|
855
|
+
break;
|
856
|
+
}
|
857
|
+
reader.skip(tag & 7);
|
858
|
+
}
|
859
|
+
return message;
|
860
|
+
},
|
861
|
+
fromJSON(object) {
|
862
|
+
return {
|
863
|
+
ciphertextHash: isSet(object.ciphertextHash) ? bytesFromBase64(object.ciphertextHash) : new Uint8Array(0),
|
864
|
+
};
|
865
|
+
},
|
866
|
+
toJSON(message) {
|
867
|
+
const obj = {};
|
868
|
+
if (message.ciphertextHash.length !== 0) {
|
869
|
+
obj.ciphertextHash = base64FromBytes(message.ciphertextHash);
|
870
|
+
}
|
871
|
+
return obj;
|
872
|
+
},
|
873
|
+
create(base) {
|
874
|
+
return exports.HandleBinding.fromPartial(base ?? {});
|
875
|
+
},
|
876
|
+
fromPartial(object) {
|
877
|
+
const message = createBaseHandleBinding();
|
878
|
+
message.ciphertextHash = object.ciphertextHash ?? new Uint8Array(0);
|
879
|
+
return message;
|
880
|
+
},
|
881
|
+
};
|
882
|
+
function createBaseHandleBindingEntry() {
|
883
|
+
return { handle: "", binding: undefined };
|
884
|
+
}
|
885
|
+
exports.HandleBindingEntry = {
|
886
|
+
encode(message, writer = new wire_1.BinaryWriter()) {
|
887
|
+
if (message.handle !== "") {
|
888
|
+
writer.uint32(10).string(message.handle);
|
889
|
+
}
|
890
|
+
if (message.binding !== undefined) {
|
891
|
+
exports.HandleBinding.encode(message.binding, writer.uint32(18).fork()).join();
|
892
|
+
}
|
893
|
+
return writer;
|
894
|
+
},
|
895
|
+
decode(input, length) {
|
896
|
+
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
|
897
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
898
|
+
const message = createBaseHandleBindingEntry();
|
899
|
+
while (reader.pos < end) {
|
900
|
+
const tag = reader.uint32();
|
901
|
+
switch (tag >>> 3) {
|
902
|
+
case 1: {
|
903
|
+
if (tag !== 10) {
|
904
|
+
break;
|
905
|
+
}
|
906
|
+
message.handle = reader.string();
|
907
|
+
continue;
|
908
|
+
}
|
909
|
+
case 2: {
|
910
|
+
if (tag !== 18) {
|
911
|
+
break;
|
912
|
+
}
|
913
|
+
message.binding = exports.HandleBinding.decode(reader, reader.uint32());
|
914
|
+
continue;
|
915
|
+
}
|
916
|
+
}
|
917
|
+
if ((tag & 7) === 4 || tag === 0) {
|
918
|
+
break;
|
919
|
+
}
|
920
|
+
reader.skip(tag & 7);
|
921
|
+
}
|
922
|
+
return message;
|
923
|
+
},
|
924
|
+
fromJSON(object) {
|
925
|
+
return {
|
926
|
+
handle: isSet(object.handle) ? globalThis.String(object.handle) : "",
|
927
|
+
binding: isSet(object.binding) ? exports.HandleBinding.fromJSON(object.binding) : undefined,
|
928
|
+
};
|
929
|
+
},
|
930
|
+
toJSON(message) {
|
931
|
+
const obj = {};
|
932
|
+
if (message.handle !== "") {
|
933
|
+
obj.handle = message.handle;
|
934
|
+
}
|
935
|
+
if (message.binding !== undefined) {
|
936
|
+
obj.binding = exports.HandleBinding.toJSON(message.binding);
|
937
|
+
}
|
938
|
+
return obj;
|
939
|
+
},
|
940
|
+
create(base) {
|
941
|
+
return exports.HandleBindingEntry.fromPartial(base ?? {});
|
942
|
+
},
|
943
|
+
fromPartial(object) {
|
944
|
+
const message = createBaseHandleBindingEntry();
|
945
|
+
message.handle = object.handle ?? "";
|
946
|
+
message.binding = (object.binding !== undefined && object.binding !== null)
|
947
|
+
? exports.HandleBinding.fromPartial(object.binding)
|
948
|
+
: undefined;
|
949
|
+
return message;
|
950
|
+
},
|
951
|
+
};
|
952
|
+
function bytesFromBase64(b64) {
|
953
|
+
if (globalThis.Buffer) {
|
954
|
+
return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
|
955
|
+
}
|
956
|
+
else {
|
957
|
+
const bin = globalThis.atob(b64);
|
958
|
+
const arr = new Uint8Array(bin.length);
|
959
|
+
for (let i = 0; i < bin.length; ++i) {
|
960
|
+
arr[i] = bin.charCodeAt(i);
|
961
|
+
}
|
962
|
+
return arr;
|
963
|
+
}
|
964
|
+
}
|
965
|
+
function base64FromBytes(arr) {
|
966
|
+
if (globalThis.Buffer) {
|
967
|
+
return globalThis.Buffer.from(arr).toString("base64");
|
968
|
+
}
|
969
|
+
else {
|
970
|
+
const bin = [];
|
971
|
+
arr.forEach((byte) => {
|
972
|
+
bin.push(globalThis.String.fromCharCode(byte));
|
973
|
+
});
|
974
|
+
return globalThis.btoa(bin.join(""));
|
975
|
+
}
|
976
|
+
}
|
977
|
+
function longToNumber(int64) {
|
978
|
+
const num = globalThis.Number(int64.toString());
|
979
|
+
if (num > globalThis.Number.MAX_SAFE_INTEGER) {
|
980
|
+
throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
|
981
|
+
}
|
982
|
+
if (num < globalThis.Number.MIN_SAFE_INTEGER) {
|
983
|
+
throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER");
|
984
|
+
}
|
985
|
+
return num;
|
986
|
+
}
|
987
|
+
function isSet(value) {
|
988
|
+
return value !== null && value !== undefined;
|
989
|
+
}
|
990
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL3RzL2luY28vZmhlL3YxL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxzREFBc0Q7QUFDdEQsWUFBWTtBQUNaLGdDQUFnQztBQUNoQyxpQ0FBaUM7QUFDakMsa0NBQWtDOzs7QUE2QmxDLDBDQTJDQztBQUVELHNDQThCQztBQXRHRCxvQkFBb0I7QUFDcEIsa0RBQXFFO0FBRXhELFFBQUEsZUFBZSxHQUFHLGFBQWEsQ0FBQztBQUU3Qzs7Ozs7R0FLRztBQUNILElBQVksT0FjWDtBQWRELFdBQVksT0FBTztJQUNqQix5REFBa0IsQ0FBQTtJQUNsQiwyREFBbUIsQ0FBQTtJQUNuQiwyREFBbUIsQ0FBQTtJQUNuQiw2REFBb0IsQ0FBQTtJQUNwQiw2REFBb0IsQ0FBQTtJQUNwQiw2REFBb0IsQ0FBQTtJQUNwQiwrREFBcUIsQ0FBQTtJQUNyQiwrREFBcUIsQ0FBQTtJQUNyQiwrREFBcUIsQ0FBQTtJQUNyQiwrREFBcUIsQ0FBQTtJQUNyQixrRUFBdUIsQ0FBQTtJQUN2QixrRUFBdUIsQ0FBQTtJQUN2QixzREFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBZFcsT0FBTyx1QkFBUCxPQUFPLFFBY2xCO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLE1BQVc7SUFDekMsUUFBUSxNQUFNLEVBQUUsQ0FBQztRQUNmLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxnQkFBZ0I7WUFDbkIsT0FBTyxPQUFPLENBQUMsY0FBYyxDQUFDO1FBQ2hDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxpQkFBaUI7WUFDcEIsT0FBTyxPQUFPLENBQUMsZUFBZSxDQUFDO1FBQ2pDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxpQkFBaUI7WUFDcEIsT0FBTyxPQUFPLENBQUMsZUFBZSxDQUFDO1FBQ2pDLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxrQkFB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
|