@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,22 @@
|
|
|
1
|
+
export declare const supportedChains: {
|
|
2
|
+
readonly baseSepolia: 84532;
|
|
3
|
+
readonly sepolia: 11155111;
|
|
4
|
+
readonly monadTestnet: 10143;
|
|
5
|
+
};
|
|
6
|
+
export declare const fheSupportedChains: {
|
|
7
|
+
readonly baseSepolia: 84532;
|
|
8
|
+
readonly sepolia: 11155111;
|
|
9
|
+
};
|
|
10
|
+
type SupportedChains = typeof supportedChains;
|
|
11
|
+
export type SupportedChainId = SupportedChains[keyof SupportedChains];
|
|
12
|
+
export type SupportedChainName = keyof SupportedChains;
|
|
13
|
+
export type SupportedChain = {
|
|
14
|
+
name: SupportedChainName;
|
|
15
|
+
id: SupportedChainId;
|
|
16
|
+
};
|
|
17
|
+
export type Numberish = number | bigint;
|
|
18
|
+
export type Chainish = {
|
|
19
|
+
id: Numberish;
|
|
20
|
+
} | Numberish | string;
|
|
21
|
+
export declare function getSupportedChain(chainish: Chainish): SupportedChain;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// No imports here to avoid issues with closures and modules across pulumi boundary
|
|
2
|
+
// This file can be seen as mirroring the functionality of viem changes without depending on it directly.
|
|
3
|
+
// It exists as a workaround for some very gnarly issues with code reuse between Pulumi and this module, partly
|
|
4
|
+
// relating to modules but also linked to Pulumi's ability to capture closures and serialise them.
|
|
5
|
+
export const supportedChains = {
|
|
6
|
+
baseSepolia: 84532,
|
|
7
|
+
sepolia: 11155111,
|
|
8
|
+
monadTestnet: 10143,
|
|
9
|
+
};
|
|
10
|
+
export const fheSupportedChains = { baseSepolia: 84532, sepolia: 11155111 };
|
|
11
|
+
// Get supportedChain either by its chain ID or the short name (lower pascal case)
|
|
12
|
+
export function getSupportedChain(chainish) {
|
|
13
|
+
const found = typeof chainish === 'number' || typeof chainish === 'bigint'
|
|
14
|
+
? Object.entries(supportedChains).find(([, id]) => id === Number(chainish))
|
|
15
|
+
: typeof chainish === 'object'
|
|
16
|
+
? Object.entries(supportedChains).find(([, id]) => id === Number(chainish.id))
|
|
17
|
+
: Object.entries(supportedChains).find(([shortName]) => shortName === chainish);
|
|
18
|
+
if (!found) {
|
|
19
|
+
throw new Error(`Supported chain ${JSON.stringify(chainish)} not found`);
|
|
20
|
+
}
|
|
21
|
+
const [name, id] = found;
|
|
22
|
+
return { name: name, id };
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUZBQW1GO0FBRW5GLHlHQUF5RztBQUN6RywrR0FBK0c7QUFDL0csa0dBQWtHO0FBRWxHLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixXQUFXLEVBQUUsS0FBSztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixZQUFZLEVBQUUsS0FBSztDQUNYLENBQUM7QUFFWCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBVyxDQUFDO0FBY3JGLGtGQUFrRjtBQUNsRixNQUFNLFVBQVUsaUJBQWlCLENBQUMsUUFBa0I7SUFDbEQsTUFBTSxLQUFLLEdBQ1QsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDMUQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQyxPQUFPLFFBQVEsS0FBSyxRQUFRO1lBQzVCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDOUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQyxDQUFDO0lBQ3RGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRCxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUN6QixPQUFPLEVBQUUsSUFBSSxFQUFFLElBQTBCLEVBQUUsRUFBRSxFQUFFLENBQUM7QUFDbEQsQ0FBQyJ9
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
import { Bytes32 } from '../binary.js';
|
|
3
|
+
import { InputContext } from '../handle.js';
|
|
4
|
+
export type Encryptor<S extends EncryptionScheme = EncryptionScheme> = <T extends SupportedFheType>(plaintext: PlaintextWithContextOf<S, T>) => Promise<EncryptResultOf<S, T>>;
|
|
5
|
+
export type Decryptor<S extends EncryptionScheme = EncryptionScheme> = <T extends SupportedFheType>(ciphertext: CiphertextOf<S, T>, context?: InputContext) => Promise<PlaintextOf<S, T>>;
|
|
6
|
+
export declare const supportedFheTypes: {
|
|
7
|
+
readonly euint64: 5;
|
|
8
|
+
readonly euint160: 7;
|
|
9
|
+
readonly euint256: 8;
|
|
10
|
+
readonly ebool: 0;
|
|
11
|
+
};
|
|
12
|
+
export declare const SupportedFheTypeName: Schema.SchemaClass<"ebool" | "euint64" | "euint160" | "euint256", "ebool" | "euint64" | "euint160" | "euint256", never>;
|
|
13
|
+
export type SupportedFheTypeName = typeof SupportedFheTypeName.Type;
|
|
14
|
+
export declare const SupportedFheType: Schema.SchemaClass<0 | 5 | 7 | 8, 0 | 5 | 7 | 8, never>;
|
|
15
|
+
export type SupportedFheType = typeof SupportedFheType.Type;
|
|
16
|
+
export declare const encryptionSchemes: {
|
|
17
|
+
readonly tfhe: 0;
|
|
18
|
+
readonly ecies: 1;
|
|
19
|
+
readonly cryptobox: 2;
|
|
20
|
+
};
|
|
21
|
+
export declare function getEncryptionSchemeName(scheme: number): string;
|
|
22
|
+
export type EncryptionSchemes = typeof encryptionSchemes;
|
|
23
|
+
export type EciesScheme = EncryptionSchemes['ecies'];
|
|
24
|
+
export type TfheScheme = EncryptionSchemes['tfhe'];
|
|
25
|
+
export type CryptoboxScheme = EncryptionSchemes['cryptobox'];
|
|
26
|
+
export declare const EncryptionScheme: Schema.Literal<[0, 1, 2]>;
|
|
27
|
+
export type EncryptionScheme = typeof EncryptionScheme.Type;
|
|
28
|
+
type DistType<P, S extends EncryptionScheme, T extends SupportedFheType> = P extends any ? P & {
|
|
29
|
+
scheme: S;
|
|
30
|
+
type: T;
|
|
31
|
+
} : never;
|
|
32
|
+
export declare const ciphertextEnvelopes: {
|
|
33
|
+
readonly none: 0;
|
|
34
|
+
readonly hadu: 1;
|
|
35
|
+
};
|
|
36
|
+
export declare const CiphertextEnvelope: Schema.SchemaClass<0 | 1, 0 | 1, never>;
|
|
37
|
+
export declare const Ciphertext: Schema.Struct<{
|
|
38
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
39
|
+
type: Schema.SchemaClass<0 | 5 | 7 | 8, 0 | 5 | 7 | 8, never>;
|
|
40
|
+
value: Schema.TemplateLiteral<`0x${string}`>;
|
|
41
|
+
envelope: Schema.optional<Schema.SchemaClass<0 | 1, 0 | 1, never>>;
|
|
42
|
+
}>;
|
|
43
|
+
export type Ciphertext = typeof Ciphertext.Type;
|
|
44
|
+
export type CiphertextOf<S extends EncryptionScheme, T extends SupportedFheType> = DistType<Ciphertext, S, T>;
|
|
45
|
+
export declare const CiphertextWithContext: Schema.Struct<{
|
|
46
|
+
ciphertext: Schema.Struct<{
|
|
47
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
48
|
+
type: Schema.SchemaClass<0 | 5 | 7 | 8, 0 | 5 | 7 | 8, never>;
|
|
49
|
+
value: Schema.TemplateLiteral<`0x${string}`>;
|
|
50
|
+
envelope: Schema.optional<Schema.SchemaClass<0 | 1, 0 | 1, never>>;
|
|
51
|
+
}>;
|
|
52
|
+
context: Schema.Struct<{
|
|
53
|
+
hostChainId: typeof Schema.BigInt;
|
|
54
|
+
aclAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
55
|
+
userAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
56
|
+
contractAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
57
|
+
}>;
|
|
58
|
+
}>;
|
|
59
|
+
export type CiphertextWithContext = typeof CiphertextWithContext.Type;
|
|
60
|
+
export type CiphertextWithContextOf<S extends EncryptionScheme, T extends SupportedFheType> = CiphertextWithContext & {
|
|
61
|
+
ciphertext: CiphertextOf<S, T>;
|
|
62
|
+
};
|
|
63
|
+
export declare const EncryptResult: Schema.Struct<{
|
|
64
|
+
ciphertext: Schema.Struct<{
|
|
65
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
66
|
+
type: Schema.SchemaClass<0 | 5 | 7 | 8, 0 | 5 | 7 | 8, never>;
|
|
67
|
+
value: Schema.TemplateLiteral<`0x${string}`>;
|
|
68
|
+
envelope: Schema.optional<Schema.SchemaClass<0 | 1, 0 | 1, never>>;
|
|
69
|
+
}>;
|
|
70
|
+
context: Schema.Struct<{
|
|
71
|
+
hostChainId: typeof Schema.BigInt;
|
|
72
|
+
aclAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
73
|
+
userAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
74
|
+
contractAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
75
|
+
}>;
|
|
76
|
+
prehandle: Schema.brand<Schema.filter<Schema.transformOrFail<Schema.Union<[typeof Schema.String, Schema.refine<object & Uint8Array<ArrayBufferLike>, Schema.Schema<object, object, never>>]>, Schema.TemplateLiteral<`0x${string}`>, never>>, "Bytes32">;
|
|
77
|
+
handle: Schema.brand<Schema.filter<Schema.transformOrFail<Schema.Union<[typeof Schema.String, Schema.refine<object & Uint8Array<ArrayBufferLike>, Schema.Schema<object, object, never>>]>, Schema.TemplateLiteral<`0x${string}`>, never>>, "Bytes32">;
|
|
78
|
+
}>;
|
|
79
|
+
export type EncryptResult = typeof EncryptResult.Type;
|
|
80
|
+
export type EncryptResultOf<S extends EncryptionScheme, T extends SupportedFheType> = EncryptResult & {
|
|
81
|
+
ciphertext: CiphertextOf<S, T>;
|
|
82
|
+
};
|
|
83
|
+
export declare const Plaintext: Schema.Union<[Schema.Struct<{
|
|
84
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
85
|
+
type: Schema.Literal<[5, 7, 8]>;
|
|
86
|
+
value: typeof Schema.BigInt;
|
|
87
|
+
}>, Schema.Struct<{
|
|
88
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
89
|
+
type: Schema.Literal<[0]>;
|
|
90
|
+
value: typeof Schema.Boolean;
|
|
91
|
+
}>]>;
|
|
92
|
+
export type Plaintext = typeof Plaintext.Type;
|
|
93
|
+
export type PlaintextOf<S extends EncryptionScheme, T extends SupportedFheType> = DistType<Plaintext, S, T>;
|
|
94
|
+
export declare const PlaintextWithContext: Schema.Struct<{
|
|
95
|
+
plaintext: Schema.Union<[Schema.Struct<{
|
|
96
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
97
|
+
type: Schema.Literal<[5, 7, 8]>;
|
|
98
|
+
value: typeof Schema.BigInt;
|
|
99
|
+
}>, Schema.Struct<{
|
|
100
|
+
scheme: Schema.Literal<[0, 1, 2]>;
|
|
101
|
+
type: Schema.Literal<[0]>;
|
|
102
|
+
value: typeof Schema.Boolean;
|
|
103
|
+
}>]>;
|
|
104
|
+
context: Schema.Struct<{
|
|
105
|
+
hostChainId: typeof Schema.BigInt;
|
|
106
|
+
aclAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
107
|
+
userAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
108
|
+
contractAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
109
|
+
}>;
|
|
110
|
+
}>;
|
|
111
|
+
export type PlaintextWithContext = typeof PlaintextWithContext.Type;
|
|
112
|
+
export type PlaintextWithContextOf<S extends EncryptionScheme, T extends SupportedFheType> = PlaintextWithContext & {
|
|
113
|
+
plaintext: PlaintextOf<S, T>;
|
|
114
|
+
};
|
|
115
|
+
export declare function bigintToPlaintext<S extends EncryptionScheme, T extends SupportedFheType>(scheme: S, type: T, bigPt: bigint): PlaintextOf<S, T>;
|
|
116
|
+
export declare function plaintextToBigint(plaintext: Plaintext): bigint;
|
|
117
|
+
export declare function plaintextToBytes32(plaintext: Plaintext): Bytes32;
|
|
118
|
+
export declare function bytes32ToPlaintext(plaintext: Bytes32, scheme: EncryptionScheme, type: SupportedFheType): Plaintext;
|
|
119
|
+
export {};
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
import { bigintToBytes32, Bytes32, HexString } from '../binary.js';
|
|
3
|
+
import { handleTypes, InputContext } from '../handle.js';
|
|
4
|
+
export const supportedFheTypes = {
|
|
5
|
+
euint64: handleTypes.euint64,
|
|
6
|
+
euint160: handleTypes.euint160,
|
|
7
|
+
euint256: handleTypes.euint256,
|
|
8
|
+
ebool: handleTypes.ebool,
|
|
9
|
+
};
|
|
10
|
+
const supportedFheTypeNames = Object.keys(supportedFheTypes);
|
|
11
|
+
export const SupportedFheTypeName = Schema.Literal(...supportedFheTypeNames);
|
|
12
|
+
// TODO: extend to all types
|
|
13
|
+
export const SupportedFheType = Schema.Literal(...Object.values(supportedFheTypes));
|
|
14
|
+
export const encryptionSchemes = {
|
|
15
|
+
tfhe: 0,
|
|
16
|
+
ecies: 1,
|
|
17
|
+
cryptobox: 2,
|
|
18
|
+
};
|
|
19
|
+
export function getEncryptionSchemeName(scheme) {
|
|
20
|
+
switch (scheme) {
|
|
21
|
+
case encryptionSchemes.tfhe:
|
|
22
|
+
return 'TFHE';
|
|
23
|
+
case encryptionSchemes.ecies:
|
|
24
|
+
return 'ECIES';
|
|
25
|
+
case encryptionSchemes.cryptobox:
|
|
26
|
+
return 'NACLCryptoBox';
|
|
27
|
+
default:
|
|
28
|
+
throw new Error(`Unknown encryption scheme: ${scheme}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export const EncryptionScheme = Schema.Literal(encryptionSchemes.tfhe, encryptionSchemes.ecies, encryptionSchemes.cryptobox);
|
|
32
|
+
export const ciphertextEnvelopes = {
|
|
33
|
+
none: 0,
|
|
34
|
+
hadu: 1,
|
|
35
|
+
};
|
|
36
|
+
export const CiphertextEnvelope = Schema.Literal(...Object.values(ciphertextEnvelopes));
|
|
37
|
+
export const Ciphertext = Schema.Struct({
|
|
38
|
+
scheme: EncryptionScheme,
|
|
39
|
+
type: SupportedFheType,
|
|
40
|
+
value: HexString,
|
|
41
|
+
envelope: Schema.optional(CiphertextEnvelope),
|
|
42
|
+
});
|
|
43
|
+
export const CiphertextWithContext = Schema.Struct({
|
|
44
|
+
ciphertext: Ciphertext,
|
|
45
|
+
context: InputContext,
|
|
46
|
+
});
|
|
47
|
+
export const EncryptResult = Schema.Struct({
|
|
48
|
+
ciphertext: Ciphertext,
|
|
49
|
+
context: InputContext,
|
|
50
|
+
prehandle: Bytes32,
|
|
51
|
+
handle: Bytes32,
|
|
52
|
+
});
|
|
53
|
+
export const Plaintext = Schema.Union(Schema.Struct({
|
|
54
|
+
scheme: EncryptionScheme,
|
|
55
|
+
type: Schema.Literal(handleTypes.euint64, handleTypes.euint160, handleTypes.euint256),
|
|
56
|
+
value: Schema.BigInt,
|
|
57
|
+
}), Schema.Struct({
|
|
58
|
+
scheme: EncryptionScheme,
|
|
59
|
+
type: Schema.Literal(handleTypes.ebool),
|
|
60
|
+
value: Schema.Boolean,
|
|
61
|
+
}));
|
|
62
|
+
export const PlaintextWithContext = Schema.Struct({
|
|
63
|
+
plaintext: Plaintext,
|
|
64
|
+
context: InputContext,
|
|
65
|
+
});
|
|
66
|
+
export function bigintToPlaintext(scheme, type, bigPt) {
|
|
67
|
+
switch (type) {
|
|
68
|
+
case handleTypes.euint64:
|
|
69
|
+
case handleTypes.euint160:
|
|
70
|
+
case handleTypes.euint256:
|
|
71
|
+
return {
|
|
72
|
+
scheme,
|
|
73
|
+
type,
|
|
74
|
+
value: bigPt,
|
|
75
|
+
};
|
|
76
|
+
case handleTypes.ebool:
|
|
77
|
+
return {
|
|
78
|
+
scheme,
|
|
79
|
+
type,
|
|
80
|
+
value: bigPt !== 0n,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
throw new Error(`Unsupported FHE type: ${type}`);
|
|
84
|
+
}
|
|
85
|
+
export function plaintextToBigint(plaintext) {
|
|
86
|
+
switch (plaintext.type) {
|
|
87
|
+
case handleTypes.euint64:
|
|
88
|
+
case handleTypes.euint160:
|
|
89
|
+
case handleTypes.euint256:
|
|
90
|
+
return plaintext.value;
|
|
91
|
+
case handleTypes.ebool:
|
|
92
|
+
return plaintext.value ? 1n : 0n;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export function plaintextToBytes32(plaintext) {
|
|
96
|
+
return bigintToBytes32(plaintextToBigint(plaintext));
|
|
97
|
+
}
|
|
98
|
+
export function bytes32ToPlaintext(plaintext, scheme, type) {
|
|
99
|
+
return bigintToPlaintext(scheme, type, BigInt(plaintext));
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jcnlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbmNyeXB0aW9uL2VuY3J5cHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFhekQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUc7SUFDL0IsT0FBTyxFQUFFLFdBQVcsQ0FBQyxPQUFPO0lBQzVCLFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUTtJQUM5QixRQUFRLEVBQUUsV0FBVyxDQUFDLFFBQVE7SUFDOUIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO0NBQ2hCLENBQUM7QUFFWCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQXVDLENBQUM7QUFFbkcsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLHFCQUFxQixDQUFDLENBQUM7QUFJN0UsNEJBQTRCO0FBQzVCLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztBQUlwRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRztJQUMvQixJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxDQUFDO0lBQ1IsU0FBUyxFQUFFLENBQUM7Q0FDSixDQUFDO0FBRVgsTUFBTSxVQUFVLHVCQUF1QixDQUFDLE1BQWM7SUFDcEQsUUFBUSxNQUFNLEVBQUUsQ0FBQztRQUNmLEtBQUssaUJBQWlCLENBQUMsSUFBSTtZQUN6QixPQUFPLE1BQU0s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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './encryption.js';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Chainish } from '../chain.js';
|
|
2
|
+
export type Address = `0x${string}`;
|
|
3
|
+
export type FheEnvironment = {
|
|
4
|
+
aclAddress: Address;
|
|
5
|
+
thfeExecutorAddress: Address;
|
|
6
|
+
gatewayAddress: Address;
|
|
7
|
+
kmsVerifierAddress: Address;
|
|
8
|
+
};
|
|
9
|
+
export declare function getFheEnvironment(chainId: Chainish): FheEnvironment;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Avoid inporting any other dependencies in this file to avoid serialisation issues downstream in infracto
|
|
2
|
+
import { getSupportedChain } from '../chain.js';
|
|
3
|
+
import { FHEEnvironments } from '../generated/fhe-environments.js';
|
|
4
|
+
export function getFheEnvironment(chainId) {
|
|
5
|
+
const supportedChain = getSupportedChain(chainId);
|
|
6
|
+
return FHEEnvironments[supportedChain.name];
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmhlLWVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZoZXZtL2ZoZS1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyR0FBMkc7QUFDM0csT0FBTyxFQUFnQyxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFhbkUsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQWlCO0lBQ2pELE1BQU0sY0FBYyxHQUFHLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xELE9BQU8sZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUF1QyxDQUFDLENBQUM7QUFDakYsQ0FBQyJ9
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Account, Chain, PublicClient, TransactionReceipt, Transport, WalletClient } from 'viem';
|
|
2
|
+
import { SupportedChain } from '../chain.js';
|
|
3
|
+
export type PublicWalletClient = {
|
|
4
|
+
public: PublicClient<Transport, Chain, Account>;
|
|
5
|
+
wallet: WalletClient<Transport, Chain, Account>;
|
|
6
|
+
};
|
|
7
|
+
export declare function createPublicWalletClient({ account, hostChainRpcUrl, chain, }: {
|
|
8
|
+
account: Account;
|
|
9
|
+
hostChainRpcUrl: string;
|
|
10
|
+
chain: Chain;
|
|
11
|
+
}): PublicWalletClient;
|
|
12
|
+
export declare function getFhevmDeployerClient({ deployer, hostChainRpcUrl, chain, }: {
|
|
13
|
+
deployer: Account;
|
|
14
|
+
hostChainRpcUrl: string;
|
|
15
|
+
chain: SupportedChain;
|
|
16
|
+
}): PublicWalletClient;
|
|
17
|
+
export type PrivateKeys = {
|
|
18
|
+
relayer: string;
|
|
19
|
+
kmsSigner: string;
|
|
20
|
+
deployer: string;
|
|
21
|
+
};
|
|
22
|
+
export type HostChainConfig = {
|
|
23
|
+
privateKeys: PrivateKeys;
|
|
24
|
+
rpcUrl: string;
|
|
25
|
+
};
|
|
26
|
+
export declare function configureFhevmContracts({ chain, hostChain: { privateKeys, rpcUrl }, }: {
|
|
27
|
+
hostChain: HostChainConfig;
|
|
28
|
+
chain: SupportedChain;
|
|
29
|
+
}): Promise<{
|
|
30
|
+
addRelayerTxReceipt: TransactionReceipt | null;
|
|
31
|
+
addKmsSignerTxReceipt: TransactionReceipt | null;
|
|
32
|
+
}>;
|
|
33
|
+
export type L1Config = {
|
|
34
|
+
cometRpcEndpoint: string;
|
|
35
|
+
mnemonic: string;
|
|
36
|
+
grpcEndpoint: string;
|
|
37
|
+
};
|
|
38
|
+
export declare function ensureFheEnvironmentRegistered({ l1, chain, }: {
|
|
39
|
+
l1: L1Config;
|
|
40
|
+
chain: SupportedChain;
|
|
41
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { createClient } from '@connectrpc/connect';
|
|
2
|
+
import { createGrpcTransport } from '@connectrpc/connect-node';
|
|
3
|
+
import { createPublicClient, createWalletClient, getContract, http, } from 'viem';
|
|
4
|
+
import { privateKeyToAccount } from 'viem/accounts';
|
|
5
|
+
import * as chains from 'viem/chains';
|
|
6
|
+
import { normaliseToHex } from '../binary.js';
|
|
7
|
+
import { gatewayContractAbi, kmsVerifierAbi } from '../generated/abis/inco-fhevm.js';
|
|
8
|
+
import { Query } from '../generated/es/inco/fhe/v1/query_pb.js';
|
|
9
|
+
import { createL1Client, createL1Wallet } from '../l1/index.js';
|
|
10
|
+
import { getFheEnvironment } from './fhe-environment.js';
|
|
11
|
+
// Create a public and wallet client for the given chain.
|
|
12
|
+
export function createPublicWalletClient({ account, hostChainRpcUrl, chain, }) {
|
|
13
|
+
const transport = http(hostChainRpcUrl);
|
|
14
|
+
const publicClient = createPublicClient({
|
|
15
|
+
chain,
|
|
16
|
+
transport,
|
|
17
|
+
});
|
|
18
|
+
// const privateKey = await shell("cast wallet private-key --account sepolia_deployer --password ''");
|
|
19
|
+
// const account = privateKeyToAccount(mustBeHex(privateKey));
|
|
20
|
+
const walletClient = createWalletClient({
|
|
21
|
+
chain,
|
|
22
|
+
transport,
|
|
23
|
+
account,
|
|
24
|
+
});
|
|
25
|
+
return { public: publicClient, wallet: walletClient };
|
|
26
|
+
}
|
|
27
|
+
export function getFhevmDeployerClient({ deployer, hostChainRpcUrl, chain, }) {
|
|
28
|
+
const viemChain = getViemChain(chain.id);
|
|
29
|
+
const transport = http(hostChainRpcUrl);
|
|
30
|
+
const publicClient = createPublicClient({
|
|
31
|
+
chain: viemChain,
|
|
32
|
+
transport,
|
|
33
|
+
});
|
|
34
|
+
// const privateKey = await shell("cast wallet private-key --account sepolia_deployer --password ''");
|
|
35
|
+
// const account = privateKeyToAccount(mustBeHex(privateKey));
|
|
36
|
+
const walletClient = createWalletClient({
|
|
37
|
+
chain: viemChain,
|
|
38
|
+
transport,
|
|
39
|
+
account: deployer,
|
|
40
|
+
});
|
|
41
|
+
return { public: publicClient, wallet: walletClient };
|
|
42
|
+
}
|
|
43
|
+
export async function configureFhevmContracts({ chain, hostChain: { privateKeys, rpcUrl }, }) {
|
|
44
|
+
const deployer = privateKeyToAccount(normaliseToHex(privateKeys.deployer));
|
|
45
|
+
const relayer = privateKeyToAccount(normaliseToHex(privateKeys.relayer));
|
|
46
|
+
const kmsSigner = privateKeyToAccount(normaliseToHex(privateKeys.kmsSigner));
|
|
47
|
+
console.log(`Configuring FHE environment contracts on ${chain.name} with deployer ${deployer.address}, relayer ${relayer.address}, and KMS signer ${kmsSigner.address}...`);
|
|
48
|
+
const client = getFhevmDeployerClient({
|
|
49
|
+
hostChainRpcUrl: rpcUrl,
|
|
50
|
+
deployer,
|
|
51
|
+
chain,
|
|
52
|
+
});
|
|
53
|
+
const { gatewayAddress, kmsVerifierAddress } = getFheEnvironment(chain.id);
|
|
54
|
+
const gateway = getContract({
|
|
55
|
+
address: gatewayAddress,
|
|
56
|
+
abi: gatewayContractAbi,
|
|
57
|
+
client,
|
|
58
|
+
});
|
|
59
|
+
const kmsVerifier = getContract({
|
|
60
|
+
address: kmsVerifierAddress,
|
|
61
|
+
abi: kmsVerifierAbi,
|
|
62
|
+
client,
|
|
63
|
+
});
|
|
64
|
+
console.log(`Adding relayer ${relayer.address}...`);
|
|
65
|
+
let addRelayerTxReceipt = null;
|
|
66
|
+
let addKmsSignerTxReceipt = null;
|
|
67
|
+
const ErrAlreadyRelayer = 'Address is already relayer';
|
|
68
|
+
try {
|
|
69
|
+
const addRelayerTxHash = await gateway.write.addRelayer([relayer.address]);
|
|
70
|
+
addRelayerTxReceipt = await client.public.waitForTransactionReceipt({
|
|
71
|
+
hash: addRelayerTxHash,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
if (!err.message.includes(ErrAlreadyRelayer)) {
|
|
76
|
+
throw err;
|
|
77
|
+
}
|
|
78
|
+
console.log(`Relayer ${relayer.address} already added`);
|
|
79
|
+
}
|
|
80
|
+
console.log(`Adding KMS signer ${kmsSigner.address}...`);
|
|
81
|
+
const ErrAlreadySigner = 'Address is already a signer';
|
|
82
|
+
try {
|
|
83
|
+
const addKmsSignerTxHash = await kmsVerifier.write.addSigner([kmsSigner.address]);
|
|
84
|
+
addKmsSignerTxReceipt = await client.public.waitForTransactionReceipt({
|
|
85
|
+
hash: addKmsSignerTxHash,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
if (!err.message.includes(ErrAlreadySigner)) {
|
|
90
|
+
throw err;
|
|
91
|
+
}
|
|
92
|
+
console.log(`KMS signer ${kmsSigner.address} already added`);
|
|
93
|
+
}
|
|
94
|
+
return { addRelayerTxReceipt, addKmsSignerTxReceipt };
|
|
95
|
+
}
|
|
96
|
+
// Attempts to ensure the given Inco L1 has the FHE environment for the given chain/ACL registered.
|
|
97
|
+
// based extracting from logs.
|
|
98
|
+
export async function ensureFheEnvironmentRegistered({ l1, chain, }) {
|
|
99
|
+
console.log(`Ensuring FHE environment is registered on ${l1.grpcEndpoint} ...`);
|
|
100
|
+
const { aclAddress } = getFheEnvironment(chain.id);
|
|
101
|
+
const wallet = await createL1Wallet(l1.mnemonic);
|
|
102
|
+
const signingClient = await createL1Client({
|
|
103
|
+
cometRpcEndpoint: l1.cometRpcEndpoint,
|
|
104
|
+
grpcEndpoint: l1.grpcEndpoint,
|
|
105
|
+
wallet,
|
|
106
|
+
});
|
|
107
|
+
const transport = createGrpcTransport({ baseUrl: l1.grpcEndpoint });
|
|
108
|
+
const queryClient = createClient(Query, transport);
|
|
109
|
+
const [signingAccount] = await wallet.getAccounts();
|
|
110
|
+
const fheEnvArg = {
|
|
111
|
+
keysetId: aclAddress.slice(2),
|
|
112
|
+
hostChainId: `evm/${chain.id}`,
|
|
113
|
+
accessControl: undefined,
|
|
114
|
+
};
|
|
115
|
+
const NotFoundErrorMessage = 'collections: not found';
|
|
116
|
+
try {
|
|
117
|
+
const { fheEnv } = await queryClient.fheEnv(fheEnvArg);
|
|
118
|
+
console.log(`FHE environment already registered on ${chain.id} using ACL ${aclAddress} : ${JSON.stringify(fheEnv)} `);
|
|
119
|
+
}
|
|
120
|
+
catch (err) {
|
|
121
|
+
if (String(err).includes(NotFoundErrorMessage)) {
|
|
122
|
+
const tx = await signingClient.sendTx(signingAccount.address, '/inco.fhe.v1.MsgAddFheEnv', {
|
|
123
|
+
fheEnv: fheEnvArg,
|
|
124
|
+
authority: signingAccount.address,
|
|
125
|
+
});
|
|
126
|
+
console.log(tx);
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
throw err;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
function getViemChain(chainId) {
|
|
133
|
+
const found = Object.values(chains).find((chain) => chain.id === chainId);
|
|
134
|
+
if (!found) {
|
|
135
|
+
throw new Error(`could not find chain with id ${chainId}`);
|
|
136
|
+
}
|
|
137
|
+
return found;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmhldm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmhldm0vZmhldm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFHTCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLFdBQVcsRUFDWCxJQUFJLEdBS0wsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFDdEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFPekQseURBQXlEO0FBQ3pELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxFQUN2QyxPQUFPLEVBQ1AsZUFBZSxFQUNmLEtBQUssR0FLTjtJQUNDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4QyxNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBNEI7UUFDakUsS0FBSztRQUNMLFNBQVM7S0FDVixDQUFDLENBQUM7SUFDSCxzR0FBc0c7SUFDdEcsOERBQThEO0lBQzlELE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDO1FBQ3RDLEtBQUs7UUFDTCxTQUFTO1FBQ1QsT0FBTztLQUNSLENBQUMsQ0FBQztJQUVILE9BQU8sRUFB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './fhe-environment.js';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Account, Address, Chain, Transport, WalletClient } from 'viem';
|
|
2
|
+
import { CryptoboxScheme } from '../encryption/encryption.js';
|
|
3
|
+
import type { Reencryptor, ReencryptorArgs } from '../reencryption/index.js';
|
|
4
|
+
import type { PubKeyEncodable } from '../reencryption/types.js';
|
|
5
|
+
export interface EphemeralCryptoBoxKeypair extends PubKeyEncodable {
|
|
6
|
+
scheme: CryptoboxScheme;
|
|
7
|
+
publicKey: Uint8Array;
|
|
8
|
+
privateKey: Uint8Array;
|
|
9
|
+
}
|
|
10
|
+
export interface ZamaReencryptorArgs extends ReencryptorArgs {
|
|
11
|
+
gatewayUrl: string;
|
|
12
|
+
unsafeSkipVerifyKMSSignatures?: boolean;
|
|
13
|
+
walletClient: WalletClient<Transport, Chain, Account>;
|
|
14
|
+
contractAddress: Address;
|
|
15
|
+
chainId: bigint;
|
|
16
|
+
kmsSigners: Address[];
|
|
17
|
+
userAddress: Address;
|
|
18
|
+
}
|
|
19
|
+
export declare function zamaReencryptor({ chainId, gatewayUrl, walletClient, unsafeSkipVerifyKMSSignatures, contractAddress, kmsSigners, userAddress, }: ZamaReencryptorArgs): Promise<Reencryptor<CryptoboxScheme>>;
|
|
20
|
+
export declare function generateCryptoBoxEphemeralKeyPair(): EphemeralCryptoBoxKeypair;
|