@inco/js 0.3.2-alpha.0 → 0.3.2-alpha.3
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/advancedacl/session-key.d.ts +29 -0
- package/dist/cjs/advancedacl/session-key.js +167 -27
- package/dist/cjs/attestedcompute/attested-compute.d.ts +2 -0
- package/dist/cjs/attestedcompute/attested-compute.js +17 -9
- package/dist/cjs/attestedcompute/types.d.ts +3 -2
- package/dist/cjs/attesteddecrypt/attested-decrypt.d.ts +2 -0
- package/dist/cjs/attesteddecrypt/attested-decrypt.js +27 -11
- package/dist/cjs/attesteddecrypt/types.d.ts +3 -2
- package/dist/cjs/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/cjs/attestedreveal/attested-reveal.js +66 -0
- package/dist/cjs/attestedreveal/index.d.ts +1 -0
- package/dist/cjs/{fhevm → attestedreveal}/index.js +2 -2
- package/dist/cjs/attestedreveal/types.d.ts +7 -0
- package/dist/cjs/attestedreveal/types.js +16 -0
- package/dist/cjs/generated/abis/TestElist.d.ts +247 -0
- package/dist/cjs/generated/abis/TestElist.js +152 -0
- package/dist/cjs/generated/abis/addTwo.d.ts +18 -0
- package/dist/cjs/generated/abis/addTwo.js +9 -1
- package/dist/cjs/generated/abis/lightning-preview.d.ts +48 -0
- package/dist/cjs/generated/abis/lightning-preview.js +29 -1
- package/dist/cjs/generated/abis/lightning.d.ts +34 -0
- package/dist/cjs/generated/abis/lightning.js +22 -1
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.js +17 -7
- package/dist/cjs/generated/lightning.d.ts +31 -10
- package/dist/cjs/generated/lightning.js +33 -11
- package/dist/cjs/lite/attested-compute.d.ts +6 -3
- package/dist/cjs/lite/attested-compute.js +7 -1
- package/dist/cjs/lite/attested-decrypt.d.ts +2 -0
- package/dist/cjs/lite/attested-decrypt.js +5 -1
- package/dist/cjs/lite/index.d.ts +4 -1
- package/dist/cjs/lite/index.js +3 -1
- package/dist/cjs/lite/lightning.d.ts +32 -0
- package/dist/cjs/lite/lightning.js +52 -44
- package/dist/cjs/lite/reencrypt.d.ts +0 -1
- package/dist/cjs/lite/reencrypt.js +8 -20
- package/dist/cjs/local/local-node.js +35 -3
- package/dist/cjs/reencryption/types.d.ts +1 -2
- package/dist/esm/advancedacl/session-key.d.ts +29 -0
- package/dist/esm/advancedacl/session-key.js +160 -22
- package/dist/esm/attestedcompute/attested-compute.d.ts +2 -0
- package/dist/esm/attestedcompute/attested-compute.js +14 -7
- package/dist/esm/attestedcompute/types.d.ts +3 -2
- package/dist/esm/attesteddecrypt/attested-decrypt.d.ts +2 -0
- package/dist/esm/attesteddecrypt/attested-decrypt.js +24 -9
- package/dist/esm/attesteddecrypt/types.d.ts +3 -2
- package/dist/esm/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/esm/attestedreveal/attested-reveal.js +63 -0
- package/dist/esm/attestedreveal/index.d.ts +1 -0
- package/dist/esm/attestedreveal/index.js +2 -0
- package/dist/esm/attestedreveal/types.d.ts +7 -0
- package/dist/esm/attestedreveal/types.js +12 -0
- package/dist/esm/generated/abis/TestElist.d.ts +247 -0
- package/dist/esm/generated/abis/TestElist.js +149 -0
- package/dist/esm/generated/abis/addTwo.d.ts +18 -0
- package/dist/esm/generated/abis/addTwo.js +9 -1
- package/dist/esm/generated/abis/lightning-preview.d.ts +48 -0
- package/dist/esm/generated/abis/lightning-preview.js +29 -1
- package/dist/esm/generated/abis/lightning.d.ts +34 -0
- package/dist/esm/generated/abis/lightning.js +22 -1
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.js +16 -6
- package/dist/esm/generated/lightning.d.ts +31 -10
- package/dist/esm/generated/lightning.js +33 -11
- package/dist/esm/lite/attested-compute.d.ts +6 -3
- package/dist/esm/lite/attested-compute.js +4 -2
- package/dist/esm/lite/attested-decrypt.d.ts +2 -0
- package/dist/esm/lite/attested-decrypt.js +3 -2
- package/dist/esm/lite/index.d.ts +4 -1
- package/dist/esm/lite/index.js +3 -1
- package/dist/esm/lite/lightning.d.ts +32 -0
- package/dist/esm/lite/lightning.js +53 -45
- package/dist/esm/lite/reencrypt.d.ts +0 -1
- package/dist/esm/lite/reencrypt.js +9 -20
- package/dist/esm/local/local-node.js +35 -3
- package/dist/esm/reencryption/types.d.ts +1 -2
- package/dist/types/advancedacl/session-key.d.ts +29 -0
- package/dist/types/attestedcompute/attested-compute.d.ts +2 -0
- package/dist/types/attestedcompute/types.d.ts +3 -2
- package/dist/types/attesteddecrypt/attested-decrypt.d.ts +2 -0
- package/dist/types/attesteddecrypt/types.d.ts +3 -2
- package/dist/types/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/types/attestedreveal/index.d.ts +1 -0
- package/dist/types/attestedreveal/types.d.ts +7 -0
- package/dist/types/generated/abis/TestElist.d.ts +247 -0
- package/dist/types/generated/abis/addTwo.d.ts +18 -0
- package/dist/types/generated/abis/lightning-preview.d.ts +48 -0
- package/dist/types/generated/abis/lightning.d.ts +34 -0
- package/dist/types/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
- package/dist/types/generated/lightning.d.ts +31 -10
- package/dist/types/lite/attested-compute.d.ts +6 -3
- package/dist/types/lite/attested-decrypt.d.ts +2 -0
- package/dist/types/lite/index.d.ts +4 -1
- package/dist/types/lite/lightning.d.ts +32 -0
- package/dist/types/lite/reencrypt.d.ts +0 -1
- package/dist/types/reencryption/types.d.ts +1 -2
- package/package.json +28 -17
- package/dist/cjs/fhevm/fhe-environment.d.ts +0 -9
- package/dist/cjs/fhevm/fhe-environment.js +0 -11
- package/dist/cjs/fhevm/fhevm.d.ts +0 -41
- package/dist/cjs/fhevm/fhevm.js +0 -145
- package/dist/cjs/fhevm/index.d.ts +0 -1
- package/dist/cjs/fhevm/reencrypt.d.ts +0 -20
- package/dist/cjs/fhevm/reencrypt.js +0 -127
- package/dist/cjs/fhevm/tfhe.d.ts +0 -74
- package/dist/cjs/fhevm/tfhe.js +0 -336
- package/dist/cjs/fhevm/types.d.ts +0 -3
- package/dist/cjs/fhevm/types.js +0 -29
- package/dist/cjs/generated/abis/inco-fhevm.d.ts +0 -874
- package/dist/cjs/generated/abis/inco-fhevm.js +0 -681
- package/dist/cjs/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
- package/dist/cjs/generated/es/cosmos/msg/v1/msg_pb.js +0 -36
- package/dist/cjs/generated/es/google/api/annotations_pb.d.ts +0 -13
- package/dist/cjs/generated/es/google/api/annotations_pb.js +0 -30
- package/dist/cjs/generated/es/google/api/http_pb.d.ts +0 -440
- package/dist/cjs/generated/es/google/api/http_pb.js +0 -37
- package/dist/cjs/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
- package/dist/cjs/generated/es/inco/fhe/v1/events_pb.js +0 -24
- package/dist/cjs/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
- package/dist/cjs/generated/es/inco/fhe/v1/genesis_pb.js +0 -49
- package/dist/cjs/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
- package/dist/cjs/generated/es/inco/fhe/v1/query_pb.js +0 -111
- package/dist/cjs/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
- package/dist/cjs/generated/es/inco/fhe/v1/tx_pb.js +0 -111
- package/dist/cjs/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
- package/dist/cjs/generated/es/inco/preflight/v1/genesis_pb.js +0 -23
- package/dist/cjs/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
- package/dist/cjs/generated/es/inco/preflight/v1/query_pb.js +0 -41
- package/dist/cjs/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
- package/dist/cjs/generated/es/inco/preflight/v1/tx_pb.js +0 -51
- package/dist/cjs/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
- package/dist/cjs/generated/es/inco/preflight/v1/types_pb.js +0 -37
- package/dist/cjs/generated/fhe-environments.d.ts +0 -14
- package/dist/cjs/generated/fhe-environments.js +0 -18
- package/dist/cjs/generated/ts/amino/amino.d.ts +0 -1
- package/dist/cjs/generated/ts/amino/amino.js +0 -11
- package/dist/cjs/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
- package/dist/cjs/generated/ts/cometbft/abci/v1/types.js +0 -5079
- package/dist/cjs/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
- package/dist/cjs/generated/ts/cometbft/crypto/v1/keys.js +0 -108
- package/dist/cjs/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
- package/dist/cjs/generated/ts/cometbft/crypto/v1/proof.js +0 -433
- package/dist/cjs/generated/ts/cometbft/types/v1/params.d.ts +0 -179
- package/dist/cjs/generated/ts/cometbft/types/v1/params.js +0 -716
- package/dist/cjs/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
- package/dist/cjs/generated/ts/cometbft/types/v1/validator.js +0 -358
- package/dist/cjs/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
- package/dist/cjs/generated/ts/cosmos/app/v1alpha1/module.js +0 -221
- package/dist/cjs/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
- package/dist/cjs/generated/ts/cosmos/msg/v1/msg.js +0 -11
- package/dist/cjs/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
- package/dist/cjs/generated/ts/cosmos_proto/cosmos.js +0 -216
- package/dist/cjs/generated/ts/gogoproto/gogo.d.ts +0 -1
- package/dist/cjs/generated/ts/gogoproto/gogo.js +0 -11
- package/dist/cjs/generated/ts/google/api/annotations.d.ts +0 -1
- package/dist/cjs/generated/ts/google/api/annotations.js +0 -11
- package/dist/cjs/generated/ts/google/api/http.d.ts +0 -371
- package/dist/cjs/generated/ts/google/api/http.js +0 -356
- package/dist/cjs/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
- package/dist/cjs/generated/ts/google/protobuf/descriptor.js +0 -5108
- package/dist/cjs/generated/ts/google/protobuf/duration.d.ts +0 -99
- package/dist/cjs/generated/ts/google/protobuf/duration.js +0 -93
- package/dist/cjs/generated/ts/google/protobuf/timestamp.d.ts +0 -128
- package/dist/cjs/generated/ts/google/protobuf/timestamp.js +0 -93
- package/dist/cjs/generated/ts/google/protobuf/wrappers.d.ts +0 -111
- package/dist/cjs/generated/ts/google/protobuf/wrappers.js +0 -509
- package/dist/cjs/generated/ts/inco/abci/v1/types.d.ts +0 -35
- package/dist/cjs/generated/ts/inco/abci/v1/types.js +0 -73
- package/dist/cjs/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
- package/dist/cjs/generated/ts/inco/fhe/module/v1/module.js +0 -66
- package/dist/cjs/generated/ts/inco/fhe/v1/events.d.ts +0 -66
- package/dist/cjs/generated/ts/inco/fhe/v1/events.js +0 -190
- package/dist/cjs/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
- package/dist/cjs/generated/ts/inco/fhe/v1/genesis.js +0 -714
- package/dist/cjs/generated/ts/inco/fhe/v1/query.d.ts +0 -366
- package/dist/cjs/generated/ts/inco/fhe/v1/query.js +0 -1394
- package/dist/cjs/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
- package/dist/cjs/generated/ts/inco/fhe/v1/tx.js +0 -1236
- package/dist/cjs/generated/ts/inco/fhe/v1/types.d.ts +0 -225
- package/dist/cjs/generated/ts/inco/fhe/v1/types.js +0 -990
- package/dist/cjs/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
- package/dist/cjs/generated/ts/inco/originchain/module/v1/module.js +0 -66
- package/dist/cjs/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
- package/dist/cjs/generated/ts/inco/originchain/v1/abci.js +0 -331
- package/dist/cjs/generated/ts/inco/originchain/v1/events.d.ts +0 -60
- package/dist/cjs/generated/ts/inco/originchain/v1/events.js +0 -216
- package/dist/cjs/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
- package/dist/cjs/generated/ts/inco/originchain/v1/genesis.js +0 -69
- package/dist/cjs/generated/ts/inco/originchain/v1/query.d.ts +0 -116
- package/dist/cjs/generated/ts/inco/originchain/v1/query.js +0 -280
- package/dist/cjs/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
- package/dist/cjs/generated/ts/inco/originchain/v1/tx.js +0 -140
- package/dist/cjs/generated/ts/inco/originchain/v1/types.d.ts +0 -58
- package/dist/cjs/generated/ts/inco/originchain/v1/types.js +0 -203
- package/dist/cjs/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
- package/dist/cjs/generated/ts/inco/preflight/module/v1/module.js +0 -66
- package/dist/cjs/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
- package/dist/cjs/generated/ts/inco/preflight/v1/genesis.js +0 -185
- package/dist/cjs/generated/ts/inco/preflight/v1/query.d.ts +0 -93
- package/dist/cjs/generated/ts/inco/preflight/v1/query.js +0 -259
- package/dist/cjs/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
- package/dist/cjs/generated/ts/inco/preflight/v1/tx.js +0 -448
- package/dist/cjs/generated/ts/inco/preflight/v1/types.d.ts +0 -84
- package/dist/cjs/generated/ts/inco/preflight/v1/types.js +0 -398
- package/dist/cjs/l1/client.d.ts +0 -35
- package/dist/cjs/l1/client.js +0 -97
- package/dist/cjs/l1/index.d.ts +0 -2
- package/dist/cjs/l1/index.js +0 -19
- package/dist/cjs/l1/preflight.d.ts +0 -20
- package/dist/cjs/l1/preflight.js +0 -42
- package/dist/esm/fhevm/fhe-environment.d.ts +0 -9
- package/dist/esm/fhevm/fhe-environment.js +0 -8
- package/dist/esm/fhevm/fhevm.d.ts +0 -41
- package/dist/esm/fhevm/fhevm.js +0 -139
- package/dist/esm/fhevm/index.d.ts +0 -1
- package/dist/esm/fhevm/index.js +0 -2
- package/dist/esm/fhevm/reencrypt.d.ts +0 -20
- package/dist/esm/fhevm/reencrypt.js +0 -123
- package/dist/esm/fhevm/tfhe.d.ts +0 -74
- package/dist/esm/fhevm/tfhe.js +0 -328
- package/dist/esm/fhevm/types.d.ts +0 -3
- package/dist/esm/fhevm/types.js +0 -26
- package/dist/esm/generated/abis/inco-fhevm.d.ts +0 -874
- package/dist/esm/generated/abis/inco-fhevm.js +0 -678
- package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
- package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.js +0 -33
- package/dist/esm/generated/es/google/api/annotations_pb.d.ts +0 -13
- package/dist/esm/generated/es/google/api/annotations_pb.js +0 -27
- package/dist/esm/generated/es/google/api/http_pb.d.ts +0 -440
- package/dist/esm/generated/es/google/api/http_pb.js +0 -34
- package/dist/esm/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
- package/dist/esm/generated/es/inco/fhe/v1/events_pb.js +0 -21
- package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
- package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.js +0 -46
- package/dist/esm/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
- package/dist/esm/generated/es/inco/fhe/v1/query_pb.js +0 -108
- package/dist/esm/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
- package/dist/esm/generated/es/inco/fhe/v1/tx_pb.js +0 -108
- package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
- package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.js +0 -20
- package/dist/esm/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
- package/dist/esm/generated/es/inco/preflight/v1/query_pb.js +0 -38
- package/dist/esm/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
- package/dist/esm/generated/es/inco/preflight/v1/tx_pb.js +0 -48
- package/dist/esm/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
- package/dist/esm/generated/es/inco/preflight/v1/types_pb.js +0 -34
- package/dist/esm/generated/fhe-environments.d.ts +0 -14
- package/dist/esm/generated/fhe-environments.js +0 -15
- package/dist/esm/generated/ts/amino/amino.d.ts +0 -1
- package/dist/esm/generated/ts/amino/amino.js +0 -8
- package/dist/esm/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
- package/dist/esm/generated/ts/cometbft/abci/v1/types.js +0 -5063
- package/dist/esm/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
- package/dist/esm/generated/ts/cometbft/crypto/v1/keys.js +0 -105
- package/dist/esm/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
- package/dist/esm/generated/ts/cometbft/crypto/v1/proof.js +0 -430
- package/dist/esm/generated/ts/cometbft/types/v1/params.d.ts +0 -179
- package/dist/esm/generated/ts/cometbft/types/v1/params.js +0 -713
- package/dist/esm/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
- package/dist/esm/generated/ts/cometbft/types/v1/validator.js +0 -353
- package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
- package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.js +0 -218
- package/dist/esm/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
- package/dist/esm/generated/ts/cosmos/msg/v1/msg.js +0 -8
- package/dist/esm/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
- package/dist/esm/generated/ts/cosmos_proto/cosmos.js +0 -211
- package/dist/esm/generated/ts/gogoproto/gogo.d.ts +0 -1
- package/dist/esm/generated/ts/gogoproto/gogo.js +0 -8
- package/dist/esm/generated/ts/google/api/annotations.d.ts +0 -1
- package/dist/esm/generated/ts/google/api/annotations.js +0 -8
- package/dist/esm/generated/ts/google/api/http.d.ts +0 -371
- package/dist/esm/generated/ts/google/api/http.js +0 -353
- package/dist/esm/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
- package/dist/esm/generated/ts/google/protobuf/descriptor.js +0 -5070
- package/dist/esm/generated/ts/google/protobuf/duration.d.ts +0 -99
- package/dist/esm/generated/ts/google/protobuf/duration.js +0 -90
- package/dist/esm/generated/ts/google/protobuf/timestamp.d.ts +0 -128
- package/dist/esm/generated/ts/google/protobuf/timestamp.js +0 -90
- package/dist/esm/generated/ts/google/protobuf/wrappers.d.ts +0 -111
- package/dist/esm/generated/ts/google/protobuf/wrappers.js +0 -506
- package/dist/esm/generated/ts/inco/abci/v1/types.d.ts +0 -35
- package/dist/esm/generated/ts/inco/abci/v1/types.js +0 -70
- package/dist/esm/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
- package/dist/esm/generated/ts/inco/fhe/module/v1/module.js +0 -63
- package/dist/esm/generated/ts/inco/fhe/v1/events.d.ts +0 -66
- package/dist/esm/generated/ts/inco/fhe/v1/events.js +0 -187
- package/dist/esm/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
- package/dist/esm/generated/ts/inco/fhe/v1/genesis.js +0 -711
- package/dist/esm/generated/ts/inco/fhe/v1/query.d.ts +0 -366
- package/dist/esm/generated/ts/inco/fhe/v1/query.js +0 -1391
- package/dist/esm/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
- package/dist/esm/generated/ts/inco/fhe/v1/tx.js +0 -1233
- package/dist/esm/generated/ts/inco/fhe/v1/types.d.ts +0 -225
- package/dist/esm/generated/ts/inco/fhe/v1/types.js +0 -985
- package/dist/esm/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
- package/dist/esm/generated/ts/inco/originchain/module/v1/module.js +0 -63
- package/dist/esm/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
- package/dist/esm/generated/ts/inco/originchain/v1/abci.js +0 -328
- package/dist/esm/generated/ts/inco/originchain/v1/events.d.ts +0 -60
- package/dist/esm/generated/ts/inco/originchain/v1/events.js +0 -213
- package/dist/esm/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
- package/dist/esm/generated/ts/inco/originchain/v1/genesis.js +0 -66
- package/dist/esm/generated/ts/inco/originchain/v1/query.d.ts +0 -116
- package/dist/esm/generated/ts/inco/originchain/v1/query.js +0 -277
- package/dist/esm/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
- package/dist/esm/generated/ts/inco/originchain/v1/tx.js +0 -137
- package/dist/esm/generated/ts/inco/originchain/v1/types.d.ts +0 -58
- package/dist/esm/generated/ts/inco/originchain/v1/types.js +0 -200
- package/dist/esm/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
- package/dist/esm/generated/ts/inco/preflight/module/v1/module.js +0 -63
- package/dist/esm/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
- package/dist/esm/generated/ts/inco/preflight/v1/genesis.js +0 -182
- package/dist/esm/generated/ts/inco/preflight/v1/query.d.ts +0 -93
- package/dist/esm/generated/ts/inco/preflight/v1/query.js +0 -256
- package/dist/esm/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
- package/dist/esm/generated/ts/inco/preflight/v1/tx.js +0 -445
- package/dist/esm/generated/ts/inco/preflight/v1/types.d.ts +0 -84
- package/dist/esm/generated/ts/inco/preflight/v1/types.js +0 -395
- package/dist/esm/l1/client.d.ts +0 -35
- package/dist/esm/l1/client.js +0 -93
- package/dist/esm/l1/index.d.ts +0 -2
- package/dist/esm/l1/index.js +0 -3
- package/dist/esm/l1/preflight.d.ts +0 -20
- package/dist/esm/l1/preflight.js +0 -39
- package/dist/types/fhevm/fhe-environment.d.ts +0 -9
- package/dist/types/fhevm/fhevm.d.ts +0 -41
- package/dist/types/fhevm/index.d.ts +0 -1
- package/dist/types/fhevm/reencrypt.d.ts +0 -20
- package/dist/types/fhevm/tfhe.d.ts +0 -74
- package/dist/types/fhevm/types.d.ts +0 -3
- package/dist/types/generated/abis/inco-fhevm.d.ts +0 -874
- package/dist/types/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
- package/dist/types/generated/es/google/api/annotations_pb.d.ts +0 -13
- package/dist/types/generated/es/google/api/http_pb.d.ts +0 -440
- package/dist/types/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
- package/dist/types/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
- package/dist/types/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
- package/dist/types/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
- package/dist/types/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
- package/dist/types/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
- package/dist/types/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
- package/dist/types/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
- package/dist/types/generated/fhe-environments.d.ts +0 -14
- package/dist/types/generated/ts/amino/amino.d.ts +0 -1
- package/dist/types/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
- package/dist/types/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
- package/dist/types/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
- package/dist/types/generated/ts/cometbft/types/v1/params.d.ts +0 -179
- package/dist/types/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
- package/dist/types/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
- package/dist/types/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
- package/dist/types/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
- package/dist/types/generated/ts/gogoproto/gogo.d.ts +0 -1
- package/dist/types/generated/ts/google/api/annotations.d.ts +0 -1
- package/dist/types/generated/ts/google/api/http.d.ts +0 -371
- package/dist/types/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
- package/dist/types/generated/ts/google/protobuf/duration.d.ts +0 -99
- package/dist/types/generated/ts/google/protobuf/timestamp.d.ts +0 -128
- package/dist/types/generated/ts/google/protobuf/wrappers.d.ts +0 -111
- package/dist/types/generated/ts/inco/abci/v1/types.d.ts +0 -35
- package/dist/types/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
- package/dist/types/generated/ts/inco/fhe/v1/events.d.ts +0 -66
- package/dist/types/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
- package/dist/types/generated/ts/inco/fhe/v1/query.d.ts +0 -366
- package/dist/types/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
- package/dist/types/generated/ts/inco/fhe/v1/types.d.ts +0 -225
- package/dist/types/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
- package/dist/types/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
- package/dist/types/generated/ts/inco/originchain/v1/events.d.ts +0 -60
- package/dist/types/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
- package/dist/types/generated/ts/inco/originchain/v1/query.d.ts +0 -116
- package/dist/types/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
- package/dist/types/generated/ts/inco/originchain/v1/types.d.ts +0 -58
- package/dist/types/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
- package/dist/types/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
- package/dist/types/generated/ts/inco/preflight/v1/query.d.ts +0 -93
- package/dist/types/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
- package/dist/types/generated/ts/inco/preflight/v1/types.d.ts +0 -84
- package/dist/types/l1/client.d.ts +0 -35
- package/dist/types/l1/index.d.ts +0 -2
- package/dist/types/l1/preflight.d.ts +0 -20
@@ -192,6 +192,21 @@ export declare class Lightning<T extends DeploymentSlice = DeploymentSlice> {
|
|
192
192
|
* ```
|
193
193
|
*/
|
194
194
|
attestedDecrypt(walletClient: WalletClient<Transport, Chain, Account>, handles: HexString[], backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
|
195
|
+
/**
|
196
|
+
* @notice Attested decryption using a session key.
|
197
|
+
* @dev This method is used when you want to perform attested decryption
|
198
|
+
* via an ephemeral session key and an allowance voucher. The session
|
199
|
+
* key setup is typically faster and more flexible than using a wallet.
|
200
|
+
*
|
201
|
+
* @param ephemeralKeypair The ephemeral Secp256k1 keypair used for secure communication.
|
202
|
+
* @param allowanceVoucherWithSig The signed allowance voucher, obtained from
|
203
|
+
* `grantSessionKeyAllowanceVoucher`, proving the session key's decryption rights.
|
204
|
+
* @param handles The encrypted handles to be decrypted.
|
205
|
+
* @param backoffConfig Optional configuration for retry and backoff strategy.
|
206
|
+
*
|
207
|
+
* @returns A promise that resolves to an array of decryption attestations.
|
208
|
+
*/
|
209
|
+
attestedDecrypt(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, handles: HexString[], backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
|
195
210
|
/**
|
196
211
|
* Get an attested compute for the given wallet client.
|
197
212
|
*
|
@@ -213,6 +228,23 @@ export declare class Lightning<T extends DeploymentSlice = DeploymentSlice> {
|
|
213
228
|
* ```
|
214
229
|
*/
|
215
230
|
attestedCompute(walletClient: WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
|
231
|
+
/**
|
232
|
+
* @notice Attested compute using a session key.
|
233
|
+
* @dev This method is used when you want to perform attested compute
|
234
|
+
* via an ephemeral session key and an allowance voucher. The session
|
235
|
+
* key setup is typically faster and more flexible than using a wallet.
|
236
|
+
*
|
237
|
+
* @param ephemeralKeypair The ephemeral Secp256k1 keypair used for secure communication.
|
238
|
+
* @param lhsHandle The handle to compute on
|
239
|
+
* @param op The operation to perform
|
240
|
+
* @param rhsPlaintext The plaintext to compute with
|
241
|
+
* @param allowanceVoucherWithSig The signed allowance voucher, obtained from
|
242
|
+
* `grantSessionKeyAllowanceVoucher`, proving the session key's compute rights.
|
243
|
+
* @param backoffConfig Optional configuration for retry and backoff strategy.
|
244
|
+
*
|
245
|
+
* @returns A promise that resolves to a compute attestation.
|
246
|
+
*/
|
247
|
+
attestedCompute(ephemeralKeypair: Secp256k1Keypair, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, allowanceVoucherWithSig: AllowanceVoucherWithSig, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
|
216
248
|
/**
|
217
249
|
* Get the GRPC endpoint for the covalidator that services this deployment.
|
218
250
|
*/
|
@@ -19,6 +19,5 @@ export declare function incoLiteReencryptor({ kmsConnectRpcEndpointOrClient, cha
|
|
19
19
|
export declare function getKmsClient(kmsConnectRpcEndpointOrClient: string | Client<typeof KmsService>): Client<typeof KmsService>;
|
20
20
|
export declare function decryptGrpcResponse<T extends SupportedFheType>(response: ReencryptResponse, ephemeralKeypair: Secp256k1Keypair, handle: Handle): Promise<PlaintextOf<1, T>>;
|
21
21
|
export declare function defaultCovalidatorGrpc(chain: SupportedChain): string;
|
22
|
-
export declare function pulumiCovalidatorGrpc(chain: SupportedChain): string;
|
23
22
|
export declare function lightningDevnetCovalidatorGrpc(chain: SupportedChain): string;
|
24
23
|
export declare function lightningTestnetCovalidatorGrpc(chain: SupportedChain): string;
|
@@ -1,7 +1,6 @@
|
|
1
1
|
import { Address } from 'viem';
|
2
2
|
import { HexString } from '../binary.js';
|
3
3
|
import { CiphertextOf, EncryptionScheme, PlaintextOf, SupportedFheType } from '../encryption/encryption.js';
|
4
|
-
import type { EphemeralCryptoBoxKeypair } from '../fhevm/reencrypt.js';
|
5
4
|
import { Handle } from '../handle.js';
|
6
5
|
import type { Secp256k1Keypair } from '../lite/ecies.js';
|
7
6
|
import type { BackoffConfig } from '../retry.js';
|
@@ -13,7 +12,7 @@ export type ReencryptFnArgs<S extends EncryptionScheme, T extends SupportedFheTy
|
|
13
12
|
handle: Handle;
|
14
13
|
ciphertext?: CiphertextOf<S, T>;
|
15
14
|
};
|
16
|
-
export type SupportedEphemeralKeypairs =
|
15
|
+
export type SupportedEphemeralKeypairs = Secp256k1Keypair;
|
17
16
|
export interface PubKeyEncodable {
|
18
17
|
encodePublicKey(): Uint8Array;
|
19
18
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@inco/js",
|
3
|
-
"version": "0.3.2-alpha.
|
3
|
+
"version": "0.3.2-alpha.3",
|
4
4
|
"repository": "https://github.com/Inco-fhevm/inco-monorepo",
|
5
5
|
"sideEffects": false,
|
6
6
|
"scripts": {
|
@@ -20,7 +20,7 @@
|
|
20
20
|
"clean": "rm -rf dist",
|
21
21
|
"build": "bun run eslint && bun run clean && bun run build:generate && bun run build:cjs && bun run build:esm && bun run build:declarations",
|
22
22
|
"build:generate": "bun run generate && bun run generate:protos && bun run generate:abis",
|
23
|
-
"generate:protos": "buf generate
|
23
|
+
"generate:protos": "buf generate",
|
24
24
|
"generate:abis": "wagmi generate",
|
25
25
|
"generate:local": "bun generate.ts",
|
26
26
|
"generate": "bun generate:protos && bun generate:abis && bun generate:local",
|
@@ -94,35 +94,46 @@
|
|
94
94
|
"@connectrpc/connect": "^2.0.0",
|
95
95
|
"@connectrpc/connect-node": "^2.0.0",
|
96
96
|
"@connectrpc/connect-web": "^2.0.1",
|
97
|
-
"@
|
98
|
-
"@cosmjs/stargate": "^0.32.4",
|
99
|
-
"@cosmjs/tendermint-rpc": "^0.32.4",
|
100
|
-
"@grpc/grpc-js": "^1.12.2",
|
97
|
+
"@grpc/grpc-js": "^1.13.4",
|
101
98
|
"@types/elliptic": "^6.4.18",
|
102
|
-
"@wagmi/cli": "^2.2.0",
|
103
|
-
"bincode-ts": "^0.1.1",
|
104
99
|
"ecies-geth": "^1.7.5",
|
105
|
-
"effect": "^3.13
|
106
|
-
"eslint-plugin-import": "^2.32.0",
|
100
|
+
"effect": "^3.17.13",
|
107
101
|
"sha3": "^2.1.4",
|
108
102
|
"viem": "^2.23.6"
|
109
103
|
},
|
110
104
|
"devDependencies": {
|
105
|
+
"eslint-plugin-import": "^2.32.0",
|
106
|
+
"@wagmi/cli": "^2.2.0",
|
111
107
|
"@bufbuild/protoc-gen-es": "^2.2.2",
|
112
|
-
"@pulumi/command": "^0.0.1-testwindows.signing",
|
113
|
-
"@types/dedent": "^0.7.2",
|
114
108
|
"@typescript-eslint/parser": "^8.35.1",
|
115
109
|
"@vitest/coverage-istanbul": "3.1.1",
|
116
|
-
"bun-plugin-dts": "^0.3.0",
|
117
|
-
"dedent": "^1.6.0",
|
118
|
-
"@dotenvx/dotenvx": "^1.48.4",
|
119
110
|
"eslint": "^9.30.1",
|
120
|
-
"node-tfhe": "^0.10.0",
|
121
|
-
"node-tkms": "^0.9.0",
|
122
111
|
"prettier": "^3.4.2",
|
123
112
|
"prettier-plugin-organize-imports": "^4.1.0",
|
124
113
|
"ts-proto": "^2.6.1",
|
125
114
|
"typescript": "^5.7.3",
|
126
115
|
"vitest": "^3.0.4"
|
116
|
+
},
|
117
|
+
"overrides": {
|
118
|
+
"ansi-styles": "^6.2.3",
|
119
|
+
"is-core-module": "2.13.1",
|
120
|
+
"error-ex": "1.3.2",
|
121
|
+
"debug": "^4.4.1",
|
122
|
+
"chalk": "^5.6.2",
|
123
|
+
"supports-color": "^10.2.2",
|
124
|
+
"strip-ansi": "^7.1.2",
|
125
|
+
"ansi-regex": "^6.2.2",
|
126
|
+
"wrap-ansi": "^9.0.2",
|
127
|
+
"color-convert": "^3.1.0",
|
128
|
+
"color-name": "^2.0.0",
|
129
|
+
"is-arrayish": "^0.3.2",
|
130
|
+
"slice-ansi": "^7.1.2",
|
131
|
+
"color": "^5.0.0",
|
132
|
+
"color-string": "^2.1.0",
|
133
|
+
"simple-swizzle": "^0.2.2",
|
134
|
+
"supports-hyperlinks": "^4.1.2",
|
135
|
+
"has-ansi": "^6.0.2",
|
136
|
+
"chalk-template": "^1.1.2",
|
137
|
+
"backslash": "^0.2.0"
|
127
138
|
}
|
128
139
|
}
|
@@ -1,9 +0,0 @@
|
|
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;
|
@@ -1,11 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.getFheEnvironment = getFheEnvironment;
|
4
|
-
// Avoid inporting any other dependencies in this file to avoid serialisation issues downstream in infracto
|
5
|
-
const chain_js_1 = require("../chain.js");
|
6
|
-
const fhe_environments_js_1 = require("../generated/fhe-environments.js");
|
7
|
-
function getFheEnvironment(chainId) {
|
8
|
-
const supportedChain = (0, chain_js_1.getSupportedChain)(chainId);
|
9
|
-
return fhe_environments_js_1.FHEEnvironments[supportedChain.name];
|
10
|
-
}
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmhlLWVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZoZXZtL2ZoZS1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWVBLDhDQUdDO0FBbEJELDJHQUEyRztBQUMzRywwQ0FBOEU7QUFDOUUsMEVBQW1FO0FBYW5FLFNBQWdCLGlCQUFpQixDQUFDLE9BQWlCO0lBQ2pELE1BQU0sY0FBYyxHQUFHLElBQUEsNEJBQWlCLEVBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEQsT0FBTyxxQ0FBZSxDQUFDLGNBQWMsQ0FBQyxJQUF1QyxDQUFDLENBQUM7QUFDakYsQ0FBQyJ9
|
@@ -1,41 +0,0 @@
|
|
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>;
|
package/dist/cjs/fhevm/fhevm.js
DELETED
@@ -1,145 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.createPublicWalletClient = createPublicWalletClient;
|
4
|
-
exports.getFhevmDeployerClient = getFhevmDeployerClient;
|
5
|
-
exports.configureFhevmContracts = configureFhevmContracts;
|
6
|
-
exports.ensureFheEnvironmentRegistered = ensureFheEnvironmentRegistered;
|
7
|
-
const connect_1 = require("@connectrpc/connect");
|
8
|
-
const connect_node_1 = require("@connectrpc/connect-node");
|
9
|
-
const viem_1 = require("viem");
|
10
|
-
const accounts_1 = require("viem/accounts");
|
11
|
-
const chains = require("viem/chains");
|
12
|
-
const binary_js_1 = require("../binary.js");
|
13
|
-
const inco_fhevm_js_1 = require("../generated/abis/inco-fhevm.js");
|
14
|
-
const query_pb_js_1 = require("../generated/es/inco/fhe/v1/query_pb.js");
|
15
|
-
const index_js_1 = require("../l1/index.js");
|
16
|
-
const fhe_environment_js_1 = require("./fhe-environment.js");
|
17
|
-
// Create a public and wallet client for the given chain.
|
18
|
-
function createPublicWalletClient({ account, hostChainRpcUrl, chain, }) {
|
19
|
-
const transport = (0, viem_1.http)(hostChainRpcUrl);
|
20
|
-
const publicClient = (0, viem_1.createPublicClient)({
|
21
|
-
chain,
|
22
|
-
transport,
|
23
|
-
});
|
24
|
-
// const privateKey = await shell("cast wallet private-key --account sepolia_deployer --password ''");
|
25
|
-
// const account = privateKeyToAccount(mustBeHex(privateKey));
|
26
|
-
const walletClient = (0, viem_1.createWalletClient)({
|
27
|
-
chain,
|
28
|
-
transport,
|
29
|
-
account,
|
30
|
-
});
|
31
|
-
return { public: publicClient, wallet: walletClient };
|
32
|
-
}
|
33
|
-
function getFhevmDeployerClient({ deployer, hostChainRpcUrl, chain, }) {
|
34
|
-
const viemChain = getViemChain(chain.id);
|
35
|
-
const transport = (0, viem_1.http)(hostChainRpcUrl);
|
36
|
-
const publicClient = (0, viem_1.createPublicClient)({
|
37
|
-
chain: viemChain,
|
38
|
-
transport,
|
39
|
-
});
|
40
|
-
// const privateKey = await shell("cast wallet private-key --account sepolia_deployer --password ''");
|
41
|
-
// const account = privateKeyToAccount(mustBeHex(privateKey));
|
42
|
-
const walletClient = (0, viem_1.createWalletClient)({
|
43
|
-
chain: viemChain,
|
44
|
-
transport,
|
45
|
-
account: deployer,
|
46
|
-
});
|
47
|
-
return { public: publicClient, wallet: walletClient };
|
48
|
-
}
|
49
|
-
async function configureFhevmContracts({ chain, hostChain: { privateKeys, rpcUrl }, }) {
|
50
|
-
const deployer = (0, accounts_1.privateKeyToAccount)((0, binary_js_1.normaliseToHex)(privateKeys.deployer));
|
51
|
-
const relayer = (0, accounts_1.privateKeyToAccount)((0, binary_js_1.normaliseToHex)(privateKeys.relayer));
|
52
|
-
const kmsSigner = (0, accounts_1.privateKeyToAccount)((0, binary_js_1.normaliseToHex)(privateKeys.kmsSigner));
|
53
|
-
console.log(`Configuring FHE environment contracts on ${chain.name} with deployer ${deployer.address}, relayer ${relayer.address}, and KMS signer ${kmsSigner.address}...`);
|
54
|
-
const client = getFhevmDeployerClient({
|
55
|
-
hostChainRpcUrl: rpcUrl,
|
56
|
-
deployer,
|
57
|
-
chain,
|
58
|
-
});
|
59
|
-
const { gatewayAddress, kmsVerifierAddress } = (0, fhe_environment_js_1.getFheEnvironment)(chain.id);
|
60
|
-
const gateway = (0, viem_1.getContract)({
|
61
|
-
address: gatewayAddress,
|
62
|
-
abi: inco_fhevm_js_1.gatewayContractAbi,
|
63
|
-
client,
|
64
|
-
});
|
65
|
-
const kmsVerifier = (0, viem_1.getContract)({
|
66
|
-
address: kmsVerifierAddress,
|
67
|
-
abi: inco_fhevm_js_1.kmsVerifierAbi,
|
68
|
-
client,
|
69
|
-
});
|
70
|
-
console.log(`Adding relayer ${relayer.address}...`);
|
71
|
-
let addRelayerTxReceipt = null;
|
72
|
-
let addKmsSignerTxReceipt = null;
|
73
|
-
const ErrAlreadyRelayer = 'Address is already relayer';
|
74
|
-
try {
|
75
|
-
const addRelayerTxHash = await gateway.write.addRelayer([relayer.address]);
|
76
|
-
addRelayerTxReceipt = await client.public.waitForTransactionReceipt({
|
77
|
-
hash: addRelayerTxHash,
|
78
|
-
});
|
79
|
-
}
|
80
|
-
catch (err) {
|
81
|
-
if (!err.message.includes(ErrAlreadyRelayer)) {
|
82
|
-
throw err;
|
83
|
-
}
|
84
|
-
console.log(`Relayer ${relayer.address} already added`);
|
85
|
-
}
|
86
|
-
console.log(`Adding KMS signer ${kmsSigner.address}...`);
|
87
|
-
const ErrAlreadySigner = 'Address is already a signer';
|
88
|
-
try {
|
89
|
-
const addKmsSignerTxHash = await kmsVerifier.write.addSigner([kmsSigner.address]);
|
90
|
-
addKmsSignerTxReceipt = await client.public.waitForTransactionReceipt({
|
91
|
-
hash: addKmsSignerTxHash,
|
92
|
-
});
|
93
|
-
}
|
94
|
-
catch (err) {
|
95
|
-
if (!err.message.includes(ErrAlreadySigner)) {
|
96
|
-
throw err;
|
97
|
-
}
|
98
|
-
console.log(`KMS signer ${kmsSigner.address} already added`);
|
99
|
-
}
|
100
|
-
return { addRelayerTxReceipt, addKmsSignerTxReceipt };
|
101
|
-
}
|
102
|
-
// Attempts to ensure the given Inco L1 has the FHE environment for the given chain/ACL registered.
|
103
|
-
// based extracting from logs.
|
104
|
-
async function ensureFheEnvironmentRegistered({ l1, chain, }) {
|
105
|
-
console.log(`Ensuring FHE environment is registered on ${l1.grpcEndpoint} ...`);
|
106
|
-
const { aclAddress } = (0, fhe_environment_js_1.getFheEnvironment)(chain.id);
|
107
|
-
const wallet = await (0, index_js_1.createL1Wallet)(l1.mnemonic);
|
108
|
-
const signingClient = await (0, index_js_1.createL1Client)({
|
109
|
-
cometRpcEndpoint: l1.cometRpcEndpoint,
|
110
|
-
grpcEndpoint: l1.grpcEndpoint,
|
111
|
-
wallet,
|
112
|
-
});
|
113
|
-
const transport = (0, connect_node_1.createGrpcTransport)({ baseUrl: l1.grpcEndpoint });
|
114
|
-
const queryClient = (0, connect_1.createClient)(query_pb_js_1.Query, transport);
|
115
|
-
const [signingAccount] = await wallet.getAccounts();
|
116
|
-
const fheEnvArg = {
|
117
|
-
keysetId: aclAddress.slice(2),
|
118
|
-
hostChainId: `evm/${chain.id}`,
|
119
|
-
accessControl: undefined,
|
120
|
-
};
|
121
|
-
const NotFoundErrorMessage = 'collections: not found';
|
122
|
-
try {
|
123
|
-
const { fheEnv } = await queryClient.fheEnv(fheEnvArg);
|
124
|
-
console.log(`FHE environment already registered on ${chain.id} using ACL ${aclAddress} : ${JSON.stringify(fheEnv)} `);
|
125
|
-
}
|
126
|
-
catch (err) {
|
127
|
-
if (String(err).includes(NotFoundErrorMessage)) {
|
128
|
-
const tx = await signingClient.sendTx(signingAccount.address, '/inco.fhe.v1.MsgAddFheEnv', {
|
129
|
-
fheEnv: fheEnvArg,
|
130
|
-
authority: signingAccount.address,
|
131
|
-
});
|
132
|
-
console.log(tx);
|
133
|
-
return;
|
134
|
-
}
|
135
|
-
throw err;
|
136
|
-
}
|
137
|
-
}
|
138
|
-
function getViemChain(chainId) {
|
139
|
-
const found = Object.values(chains).find((chain) => chain.id === chainId);
|
140
|
-
if (!found) {
|
141
|
-
throw new Error(`could not find chain with id ${chainId}`);
|
142
|
-
}
|
143
|
-
return found;
|
144
|
-
}
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmhldm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmhldm0vZmhldm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUE2QkEsNERBdUJDO0FBRUQsd0RBd0JDO0FBYUQsMERBZ0VDO0FBVUQsd0VBd0NDO0FBN01ELGlEQUFtRDtBQUNuRCwyREFBK0Q7QUFDL0QsK0JBV2M7QUFDZCw0Q0FBb0Q7QUFDcEQsc0NBQXNDO0FBQ3RDLDRDQUE4QztBQUU5QyxtRUFBcUY7QUFDckYseUVBQWdFO0FBQ2hFLDZDQUFnRTtBQUNoRSw2REFBeUQ7QUFPekQseURBQXlEO0FBQ3pELFNBQWdCLHdCQUF3QixDQUFDLEVBQ3ZDLE9BQU8sRUFDUCxlQUFlLEVBQ2YsS0FBSyxHQUtOO0lBQ0MsTUFBTSxTQUFTLEdBQUcsSUFBQSxXQUFJLEVBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBQSx5QkFBa0IsRUFBNEI7UUFDakUsS0FBSztRQUNMLFNBQVM7S0FDVixDQUFDLENBQUM7SUFDSCxzR0FBc0c7SUFDdEcsOERBQThEO0lBQzlELE1BQU0sWUFBWSxHQUFHLElBQUEseUJBQWtCLEVBQUM7UUFDdEMsS0FBSztRQUNMLFNBQVM7UUFDVCxPQUFPO0tBQ1IsQ0FBQyxDQUFDO0lBRUgsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQ3hELENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxFQUNyQyxRQUFRLEVBQ1IsZUFBZSxFQUNmLEtBQUssR0FLTjtJQUNDLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekMsTUFBTSxTQUFTLEdBQUcsSUFBQSxXQUFJLEVBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBQSx5QkFBa0IsRUFBNEI7UUFDakUsS0FBSyxFQUFFLFNBQVM7UUFDaEIs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
|
@@ -1 +0,0 @@
|
|
1
|
-
export * from './fhe-environment.js';
|
@@ -1,20 +0,0 @@
|
|
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;
|
@@ -1,127 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.zamaReencryptor = zamaReencryptor;
|
4
|
-
exports.generateCryptoBoxEphemeralKeyPair = generateCryptoBoxEphemeralKeyPair;
|
5
|
-
const effect_1 = require("effect");
|
6
|
-
const node_tkms_1 = require("node-tkms");
|
7
|
-
const viem_1 = require("viem");
|
8
|
-
const binary_js_1 = require("../binary.js");
|
9
|
-
const encryption_js_1 = require("../encryption/encryption.js");
|
10
|
-
const handle_js_1 = require("../handle.js");
|
11
|
-
const index_js_1 = require("../reencryption/index.js");
|
12
|
-
const schema_js_1 = require("../schema.js");
|
13
|
-
// The domain constants that Zama uses for reencrypts.
|
14
|
-
const ZAMA_REENCRYPT_DOMAIN = {
|
15
|
-
name: 'Authorization token',
|
16
|
-
version: '1',
|
17
|
-
salt: undefined,
|
18
|
-
};
|
19
|
-
async function zamaReencryptor({ chainId, gatewayUrl, walletClient, unsafeSkipVerifyKMSSignatures, contractAddress, kmsSigners, userAddress, }) {
|
20
|
-
const ephemeralKeypair = generateCryptoBoxEphemeralKeyPair();
|
21
|
-
// Sign the EIP712 attesting that the user has access to the private key
|
22
|
-
// corresponding to the ephemeral public key.
|
23
|
-
const eip712Payload = (0, index_js_1.createEIP712Payload)({
|
24
|
-
chainId,
|
25
|
-
primaryType: 'ReencryptionRequest',
|
26
|
-
primaryTypeFields: [{ name: 'publicKey', type: 'bytes' }],
|
27
|
-
message: {
|
28
|
-
publicKey: (0, binary_js_1.bytesToHex)(ephemeralKeypair.encodePublicKey()),
|
29
|
-
},
|
30
|
-
domainName: ZAMA_REENCRYPT_DOMAIN.name,
|
31
|
-
domainVersion: ZAMA_REENCRYPT_DOMAIN.version,
|
32
|
-
});
|
33
|
-
// Using browser extensions, this step will prompt the user to sign the
|
34
|
-
// payload.
|
35
|
-
const eip712Signature = await walletClient.signTypedData(eip712Payload);
|
36
|
-
return async function reencrypt({ handle, }) {
|
37
|
-
const handleBigInt = (0, viem_1.hexToBigInt)(handle);
|
38
|
-
const reencryptRequest = {
|
39
|
-
signature: eip712Signature.replace(/^(0x)/, ''),
|
40
|
-
client_address: (0, viem_1.getAddress)(userAddress),
|
41
|
-
enc_key: (0, binary_js_1.bytesToHex)(ephemeralKeypair.encodePublicKey()).replace(/^(0x)/, ''),
|
42
|
-
ciphertext_handle: handleBigInt.toString(16).padStart(64, '0'),
|
43
|
-
eip712_verifying_contract: (0, viem_1.getAddress)(contractAddress),
|
44
|
-
};
|
45
|
-
const reencryptResponse = await makeReencryptRequest(reencryptRequest, gatewayUrl);
|
46
|
-
let pubKey;
|
47
|
-
let privKey;
|
48
|
-
try {
|
49
|
-
pubKey = (0, node_tkms_1.u8vec_to_cryptobox_pk)(ephemeralKeypair.publicKey);
|
50
|
-
privKey = (0, node_tkms_1.u8vec_to_cryptobox_sk)(ephemeralKeypair.privateKey);
|
51
|
-
}
|
52
|
-
catch (e) {
|
53
|
-
throw new Error(`Invalid public or private key: ${JSON.stringify(e)}`);
|
54
|
-
}
|
55
|
-
const client = (0, node_tkms_1.new_client)(kmsSigners, userAddress, 'default');
|
56
|
-
try {
|
57
|
-
const buffer = new ArrayBuffer(32);
|
58
|
-
const view = new DataView(buffer);
|
59
|
-
view.setUint32(28, Number(chainId), false);
|
60
|
-
const chainIdArrayBE = new Uint8Array(buffer);
|
61
|
-
// Duplicate reencryptRequest and replace ciphertext_handle with ciphertext_digest.
|
62
|
-
const { ciphertext_handle, ...p } = reencryptRequest;
|
63
|
-
// TODO (from Zama): check all ciphertext digests are all the same
|
64
|
-
const payloadForVerification = {
|
65
|
-
...p,
|
66
|
-
ciphertext_digest: reencryptResponse.response[0].ciphertext_digest,
|
67
|
-
};
|
68
|
-
const decrypted = (0, node_tkms_1.process_reencryption_resp_from_js)(client, payloadForVerification, {
|
69
|
-
name: eip712Payload.domain.name,
|
70
|
-
version: eip712Payload.domain.version,
|
71
|
-
chain_id: chainIdArrayBE,
|
72
|
-
verifying_contract: eip712Payload.domain.verifyingContract,
|
73
|
-
}, reencryptResponse.response, pubKey, privKey, !unsafeSkipVerifyKMSSignatures);
|
74
|
-
return (0, encryption_js_1.bigintToPlaintext)(encryption_js_1.encryptionSchemes.cryptobox, (0, handle_js_1.getHandleType)(handle), (0, binary_js_1.bytesToBigInt)(decrypted));
|
75
|
-
}
|
76
|
-
catch (e) {
|
77
|
-
console.error(e);
|
78
|
-
throw new Error(`An error occurred during decryption: ${e}`);
|
79
|
-
}
|
80
|
-
};
|
81
|
-
}
|
82
|
-
// Generate a new ephemeral keypair for reencryption.
|
83
|
-
function generateCryptoBoxEphemeralKeyPair() {
|
84
|
-
const keypair = (0, node_tkms_1.cryptobox_keygen)();
|
85
|
-
const publicKey = (0, node_tkms_1.cryptobox_pk_to_u8vec)((0, node_tkms_1.cryptobox_get_pk)(keypair));
|
86
|
-
return {
|
87
|
-
scheme: encryption_js_1.encryptionSchemes.cryptobox,
|
88
|
-
publicKey,
|
89
|
-
privateKey: (0, node_tkms_1.cryptobox_sk_to_u8vec)(keypair),
|
90
|
-
encodePublicKey() {
|
91
|
-
return publicKey;
|
92
|
-
},
|
93
|
-
};
|
94
|
-
}
|
95
|
-
// This is the response type of the reencrypt endpoint, defined on the
|
96
|
-
// server-side in Zama's gateway. The response field is a vector of this struct
|
97
|
-
// in Rust:
|
98
|
-
// https://github.com/zama-ai/kms-core/blob/a3b824b389e87429d04537696e28dee902a3b2d9/blockchain/events/src/kms.rs#L985-L1003
|
99
|
-
const ZamaGatewayReencryptResponse = effect_1.Schema.Struct({
|
100
|
-
status: effect_1.Schema.Union(effect_1.Schema.Literal('success'), effect_1.Schema.Literal('failure')),
|
101
|
-
response: effect_1.Schema.Array(effect_1.Schema.Struct({
|
102
|
-
ciphertext_digest: effect_1.Schema.optional(effect_1.Schema.String),
|
103
|
-
payload: effect_1.Schema.String,
|
104
|
-
signature: effect_1.Schema.String,
|
105
|
-
})),
|
106
|
-
});
|
107
|
-
// Make a HTTP request to the reencrypt endpoint of the gateway.
|
108
|
-
async function makeReencryptRequest(request, gatewayUrl) {
|
109
|
-
const fetchOptions = {
|
110
|
-
method: 'POST',
|
111
|
-
headers: {
|
112
|
-
'Content-Type': 'application/json',
|
113
|
-
},
|
114
|
-
body: JSON.stringify(request),
|
115
|
-
};
|
116
|
-
const response = await fetch(`${gatewayUrl}/reencrypt`, fetchOptions);
|
117
|
-
if (!response.ok) {
|
118
|
-
throw new Error(`Reencrypt failed: gateway respond with HTTP code ${response.status}: ${JSON.stringify(await response.json())}`);
|
119
|
-
}
|
120
|
-
const json = await response.json();
|
121
|
-
const reencryptResponse = (0, schema_js_1.parse)(ZamaGatewayReencryptResponse, json);
|
122
|
-
if (reencryptResponse.status === 'failure') {
|
123
|
-
throw new Error('Reencrypt failed: gateway responded with failure');
|
124
|
-
}
|
125
|
-
return reencryptResponse;
|
126
|
-
}
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVlbmNyeXB0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZoZXZtL3JlZW5jcnlwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWdFQSwwQ0FxRkM7QUFHRCw4RUFXQztBQW5LRCxtQ0FBZ0M7QUFDaEMseUNBU21CO0FBQ25CLCtCQUFpRztBQUNqRyw0Q0FBeUQ7QUFDekQsK0RBTXFDO0FBQ3JDLDRDQUE2QztBQUU3Qyx1REFBK0Q7QUFFL0QsNENBQXFDO0FBaUNyQyxzREFBc0Q7QUFDdEQsTUFBTSxxQkFBcUIsR0FBRztJQUM1QixJQUFJLEVBQUUscUJBQXFCO0lBQzNCLE9BQU8sRUFBRSxHQUFHO0lBQ1osSUFBSSxFQUFFLFNBQVM7Q0FDaEIsQ0FBQztBQUVLLEtBQUssVUFBVSxlQUFlLENBQUMsRUFDcEMsT0FBTyxFQUNQLFVBQVUsRUFDVixZQUFZLEVBQ1osNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixVQUFVLEVBQ1YsV0FBVyxHQUNTO0lBQ3BCLE1BQU0sZ0JBQWdCLEdBQUcsaUNBQWlDLEVBQUUsQ0FBQztJQUU3RCx3RUFBd0U7SUFDeEUsNkNBQTZDO0lBQzdDLE1BQU0sYUFBYSxHQUFHLElBQUEsOEJBQW1CLEVBQUM7UUFDeEMsT0FBTztRQUNQLFdBQVcsRUFBRSxxQkFBcUI7UUFDbEMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3pELE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRSxJQUFBLHNCQUFVLEVBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDMUQ7UUFDRCxVQUFVLEVBQUUscUJBQXFCLENBQUMsSUFBSTtRQUN0QyxhQUFhLEVBQUUscUJBQXFCLENBQUMsT0FBTztLQUM3QyxDQUFDLENBQUM7SUFDSCx1RUFBdUU7SUFDdkUsV0FBVztJQUNYLE1BQU0sZUFBZSxHQUFHLE1BQU0sWUFBWSxDQUFDLGFBQWEs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
|
package/dist/cjs/fhevm/tfhe.d.ts
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
import { RustType } from 'bincode-ts';
|
2
|
-
import { Schema } from 'effect';
|
3
|
-
import { CompactPkePublicParams, TfheCompactPublicKey } from 'node-tfhe';
|
4
|
-
import { Decryptor, Encryptor, Plaintext, TfheScheme } from '../encryption/encryption.js';
|
5
|
-
export declare const SERIALIZED_SIZE_LIMIT_CIPHERTEXT: bigint;
|
6
|
-
export declare const SERIALIZED_SIZE_LIMIT_PK: bigint;
|
7
|
-
export declare const SERIALIZED_SIZE_LIMIT_CRS: bigint;
|
8
|
-
export type TfheEncryptorArgs = {
|
9
|
-
scheme: TfheScheme;
|
10
|
-
publicKey: Buffer;
|
11
|
-
crs2048: Buffer;
|
12
|
-
};
|
13
|
-
export type TfheDecryptorArgs = {
|
14
|
-
scheme: TfheScheme;
|
15
|
-
cks: Buffer;
|
16
|
-
};
|
17
|
-
export type PublicParams<T = CompactPkePublicParams> = {
|
18
|
-
[key in EncryptionTypes]?: {
|
19
|
-
publicParams: T;
|
20
|
-
};
|
21
|
-
};
|
22
|
-
export declare const ENCRYPTION_TYPES: {
|
23
|
-
1: number;
|
24
|
-
4: number;
|
25
|
-
8: number;
|
26
|
-
16: number;
|
27
|
-
32: number;
|
28
|
-
64: number;
|
29
|
-
128: number;
|
30
|
-
160: number;
|
31
|
-
256: number;
|
32
|
-
512: number;
|
33
|
-
1024: number;
|
34
|
-
2048: number;
|
35
|
-
};
|
36
|
-
export type EncryptionTypes = keyof typeof ENCRYPTION_TYPES;
|
37
|
-
export type ZKInput = {
|
38
|
-
addBool: (value: boolean) => ZKInput;
|
39
|
-
add4: (value: number | bigint) => ZKInput;
|
40
|
-
add8: (value: number | bigint) => ZKInput;
|
41
|
-
add16: (value: number | bigint) => ZKInput;
|
42
|
-
add32: (value: number | bigint) => ZKInput;
|
43
|
-
add64: (value: number | bigint) => ZKInput;
|
44
|
-
add128: (value: number | bigint) => ZKInput;
|
45
|
-
add256: (value: number | bigint) => ZKInput;
|
46
|
-
addBytes64: (value: Uint8Array) => ZKInput;
|
47
|
-
addBytes128: (value: Uint8Array) => ZKInput;
|
48
|
-
addBytes256: (value: Uint8Array) => ZKInput;
|
49
|
-
addAddress: (value: string) => ZKInput;
|
50
|
-
getBits: () => number[];
|
51
|
-
encrypt: () => Promise<{
|
52
|
-
prehandles: Uint8Array[];
|
53
|
-
ciphertext: Uint8Array;
|
54
|
-
}>;
|
55
|
-
};
|
56
|
-
export declare function getTfheEncryptor(args: TfheEncryptorArgs): Encryptor<TfheScheme>;
|
57
|
-
export declare function createEncryptedInput(aclContractAddress: string, chainId: bigint, tfheCompactPublicKey: TfheCompactPublicKey, publicParams: PublicParams): (userAddress: string, contractAddress: string) => ZKInput;
|
58
|
-
export declare function addPlaintextInput(input: ZKInput, plaintext: Plaintext): ZKInput;
|
59
|
-
export declare function getTfheDecryptor({ cks }: TfheDecryptorArgs): Decryptor<TfheScheme>;
|
60
|
-
export declare const SerializationHeader: RustType.Type<{
|
61
|
-
[x: string]: {};
|
62
|
-
} & {
|
63
|
-
[x: string]: {};
|
64
|
-
}>;
|
65
|
-
export declare const ProvenCompactCiphertextListTypeName = "high_level_api::ProvenCompactCiphertextList";
|
66
|
-
export declare const FheUintTypeName = "high_level_api::FheUint";
|
67
|
-
export declare const TfheSerialisationTypeName: Schema.Literal<["high_level_api::ProvenCompactCiphertextList", "high_level_api::FheUint"]>;
|
68
|
-
export type TfheSerialisationTypeName = typeof TfheSerialisationTypeName.Type;
|
69
|
-
export declare const TfheSerializationHeader: Schema.Struct<{
|
70
|
-
header_version: typeof Schema.String;
|
71
|
-
name: Schema.Union<[Schema.Literal<["high_level_api::ProvenCompactCiphertextList", "high_level_api::FheUint"]>, typeof Schema.String]>;
|
72
|
-
}>;
|
73
|
-
export type TfheSerializationHeader = typeof TfheSerializationHeader.Type;
|
74
|
-
export declare function decodeTfheSerializationHeader(buffer: Uint8Array): TfheSerializationHeader;
|