@inco/js 0.1.35 → 0.1.37

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.
Files changed (108) hide show
  1. package/README.md +20 -0
  2. package/dist/binary.js +32 -47
  3. package/dist/chain.js +7 -11
  4. package/dist/encryption/encryption.js +54 -62
  5. package/dist/encryption/index.cjs +24706 -0
  6. package/dist/encryption/index.js +2 -18
  7. package/dist/encryption/index.mjs +25787 -0
  8. package/dist/fhevm/fhe-environment.js +6 -9
  9. package/dist/fhevm/fhevm.js +34 -40
  10. package/dist/fhevm/index.cjs +87 -0
  11. package/dist/fhevm/index.js +2 -18
  12. package/dist/fhevm/index.mjs +90 -0
  13. package/dist/fhevm/reencrypt.js +33 -37
  14. package/dist/fhevm/tfhe.js +79 -87
  15. package/dist/fhevm/types.js +13 -16
  16. package/dist/generated/abis/addTwo.js +2 -5
  17. package/dist/generated/abis/inco-fhevm.js +47 -50
  18. package/dist/generated/abis/index.cjs +12493 -0
  19. package/dist/generated/abis/index.js +3 -19
  20. package/dist/generated/abis/index.mjs +12496 -0
  21. package/dist/generated/abis/lightning.d.ts +1361 -115
  22. package/dist/generated/abis/lightning.js +1043 -140
  23. package/dist/generated/es/cosmos/ics23/v1/proofs_pb.js +22 -25
  24. package/dist/generated/es/cosmos/msg/v1/msg_pb.js +6 -9
  25. package/dist/generated/es/cosmos_proto/cosmos_pb.js +18 -21
  26. package/dist/generated/es/google/api/annotations_pb.js +6 -9
  27. package/dist/generated/es/google/api/http_pb.js +6 -9
  28. package/dist/generated/es/inco/fhe/v1/events_pb.js +7 -10
  29. package/dist/generated/es/inco/fhe/v1/genesis_pb.js +12 -15
  30. package/dist/generated/es/inco/fhe/v1/query_pb.js +25 -28
  31. package/dist/generated/es/inco/fhe/v1/tx_pb.js +25 -28
  32. package/dist/generated/es/inco/fhe/v1/types_pb.js +19 -22
  33. package/dist/generated/es/inco/kms/lite/v1/kms_service_pb.js +11 -14
  34. package/dist/generated/es/inco/kms/lite/v1/types_pb.js +10 -13
  35. package/dist/generated/es/inco/preflight/v1/genesis_pb.js +6 -9
  36. package/dist/generated/es/inco/preflight/v1/query_pb.js +11 -14
  37. package/dist/generated/es/inco/preflight/v1/tx_pb.js +13 -16
  38. package/dist/generated/es/inco/preflight/v1/types_pb.js +8 -11
  39. package/dist/generated/es/kms/base_pb.js +35 -38
  40. package/dist/generated/es/sf/ethereum/type/v2/type_pb.js +43 -46
  41. package/dist/generated/fhe-environments.js +2 -5
  42. package/dist/generated/lightning.d.ts +21 -0
  43. package/dist/generated/lightning.js +24 -5
  44. package/dist/generated/local-node.js +2 -5
  45. package/dist/generated/ts/amino/amino.js +2 -5
  46. package/dist/generated/ts/cometbft/abci/v1/types.js +547 -563
  47. package/dist/generated/ts/cometbft/crypto/v1/keys.js +7 -10
  48. package/dist/generated/ts/cometbft/crypto/v1/proof.js +33 -36
  49. package/dist/generated/ts/cometbft/types/v1/params.js +95 -98
  50. package/dist/generated/ts/cometbft/types/v1/validator.js +40 -45
  51. package/dist/generated/ts/cosmos/app/v1alpha1/module.js +25 -28
  52. package/dist/generated/ts/cosmos/msg/v1/msg.js +2 -5
  53. package/dist/generated/ts/cosmos_proto/cosmos.js +15 -20
  54. package/dist/generated/ts/gogoproto/gogo.js +2 -5
  55. package/dist/generated/ts/google/api/annotations.js +2 -5
  56. package/dist/generated/ts/google/api/http.js +30 -33
  57. package/dist/generated/ts/google/protobuf/descriptor.js +468 -506
  58. package/dist/generated/ts/google/protobuf/duration.js +7 -10
  59. package/dist/generated/ts/google/protobuf/timestamp.js +7 -10
  60. package/dist/generated/ts/google/protobuf/wrappers.js +39 -42
  61. package/dist/generated/ts/inco/abci/v1/types.js +13 -16
  62. package/dist/generated/ts/inco/fhe/module/v1/module.js +7 -10
  63. package/dist/generated/ts/inco/fhe/v1/events.js +32 -35
  64. package/dist/generated/ts/inco/fhe/v1/genesis.js +127 -130
  65. package/dist/generated/ts/inco/fhe/v1/query.js +160 -163
  66. package/dist/generated/ts/inco/fhe/v1/tx.js +150 -153
  67. package/dist/generated/ts/inco/fhe/v1/types.js +70 -75
  68. package/dist/generated/ts/inco/originchain/module/v1/module.js +7 -10
  69. package/dist/generated/ts/inco/originchain/v1/abci.js +34 -37
  70. package/dist/generated/ts/inco/originchain/v1/events.js +11 -14
  71. package/dist/generated/ts/inco/originchain/v1/genesis.js +13 -16
  72. package/dist/generated/ts/inco/originchain/v1/query.js +41 -44
  73. package/dist/generated/ts/inco/originchain/v1/tx.js +24 -27
  74. package/dist/generated/ts/inco/originchain/v1/types.js +11 -14
  75. package/dist/generated/ts/inco/preflight/module/v1/module.js +7 -10
  76. package/dist/generated/ts/inco/preflight/v1/genesis.js +27 -30
  77. package/dist/generated/ts/inco/preflight/v1/query.js +41 -44
  78. package/dist/generated/ts/inco/preflight/v1/tx.js +53 -56
  79. package/dist/generated/ts/inco/preflight/v1/types.js +38 -41
  80. package/dist/handle.js +26 -33
  81. package/dist/index.cjs +24883 -0
  82. package/dist/index.js +6 -22
  83. package/dist/index.mjs +25964 -0
  84. package/dist/l1/client.js +19 -23
  85. package/dist/l1/index.js +3 -19
  86. package/dist/l1/preflight.js +13 -16
  87. package/dist/lite/deployments.js +9 -13
  88. package/dist/lite/ecies.js +37 -48
  89. package/dist/lite/hadu.js +21 -26
  90. package/dist/lite/index.cjs +52789 -0
  91. package/dist/lite/index.js +7 -23
  92. package/dist/lite/index.mjs +71691 -0
  93. package/dist/lite/lightning.js +31 -35
  94. package/dist/lite/reencrypt.d.ts +4 -4
  95. package/dist/lite/reencrypt.js +33 -44
  96. package/dist/local/index.cjs +24479 -0
  97. package/dist/local/index.js +2 -18
  98. package/dist/local/index.mjs +42864 -0
  99. package/dist/local/local-node.js +21 -25
  100. package/dist/reencryption/eip712.js +18 -21
  101. package/dist/reencryption/index.cjs +24681 -0
  102. package/dist/reencryption/index.js +3 -19
  103. package/dist/reencryption/index.mjs +24684 -0
  104. package/dist/reencryption/types.d.ts +6 -1
  105. package/dist/reencryption/types.js +1 -2
  106. package/dist/schema.js +6 -10
  107. package/dist/viem.js +7 -11
  108. package/package.json +1 -1
package/README.md CHANGED
@@ -72,6 +72,26 @@ const resultPlaintext = await reencryptor({ handle: resultHandle });
72
72
  console.log(resultPlaintext.value); // The decrypted value
73
73
  ```
74
74
 
75
+ Handles are processed asynchronously so you may need to wait for our covalidators to catch and compute the value. If you request a reencrypt before it has been processed you will get an error. To help ameliorate this the `reencryptor` has built-in retries, you can further customise by passing a `BackoffConfig` as a second argument:
76
+
77
+ ```ts
78
+ type BackoffConfig = {
79
+ maxRetries: number;
80
+ baseDelayInMs: number;
81
+ backoffFactor: number;
82
+ };
83
+
84
+ const resultHandle = "0x..." as Hex;
85
+ const reencryptor = await zap.getReencryptor(walletClient);
86
+ // Default backoff config shown for reference
87
+ const backoffConfig: BackoffConfig = {
88
+ maxRetries: 10,
89
+ baseDelayInMs: 1000,
90
+ backoffFactor: 1.5,
91
+ };
92
+ const resultPlaintext = await reencryptor({ handle: resultHandle }, backoffConfig);
93
+ ```
94
+
75
95
  ## License
76
96
 
77
97
  See the [LICENSE](./LICENSE) file.
package/dist/binary.js CHANGED
@@ -1,36 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Address = exports.Bytes32 = exports.HexString = void 0;
4
- exports.bytesToBigInt = bytesToBigInt;
5
- exports.bufferToBigInt = bufferToBigInt;
6
- exports.bigintToBytes32 = bigintToBytes32;
7
- exports.padLeft = padLeft;
8
- exports.bytes32ToBigint = bytes32ToBigint;
9
- exports.bytesFromHexString = bytesFromHexString;
10
- exports.mustBeHex = mustBeHex;
11
- exports.normaliseToHex = normaliseToHex;
12
- exports.bytesToHex = bytesToHex;
13
- exports.asBytes32 = asBytes32;
14
- exports.parseAddress = parseAddress;
15
- exports.parseHex = parseHex;
16
- const effect_1 = require("effect");
17
- const viem_1 = require("viem");
18
- const schema_1 = require("./schema");
19
- exports.HexString = effect_1.Schema.TemplateLiteral('0x', effect_1.Schema.String);
20
- function bytesToBigInt(byteArray) {
1
+ import { ParseResult, Schema } from 'effect';
2
+ import { isHex } from 'viem';
3
+ import { parse } from './schema';
4
+ export const HexString = Schema.TemplateLiteral('0x', Schema.String);
5
+ export function bytesToBigInt(byteArray) {
21
6
  // Ugly but better than bigint-buffer that insists on writing junk to stderr if it doesn't have native bindings
22
7
  return !byteArray?.length ? BigInt(0) : BigInt('0x' + Buffer.from(byteArray).toString('hex'));
23
8
  }
24
- function bufferToBigInt(buffer) {
9
+ export function bufferToBigInt(buffer) {
25
10
  return bytesToBigInt(Uint8Array.from(buffer));
26
11
  }
27
12
  // Convert a bigint to a 32-byte array, left-padded if necessary. Note: it is
28
13
  // caller's responsibility to ensure that the bigint is not too large to fit in
29
14
  // 32 bytes, or else the result will be truncated.
30
- function bigintToBytes32(value) {
31
- return (0, schema_1.parse)(exports.Bytes32, Buffer.from(value.toString(16).padStart(64, '0'), 'hex').toString('hex'));
15
+ export function bigintToBytes32(value) {
16
+ return parse(Bytes32, Buffer.from(value.toString(16).padStart(64, '0'), 'hex').toString('hex'));
32
17
  }
33
- function padLeft(bs, n) {
18
+ export function padLeft(bs, n) {
34
19
  if (bs.length > n) {
35
20
  throw new Error(`Cannot pad ${bs.length} bytes to ${n} - would truncate`);
36
21
  }
@@ -38,45 +23,45 @@ function padLeft(bs, n) {
38
23
  buf.set(bs, n - bs.length);
39
24
  return buf;
40
25
  }
41
- function bytes32ToBigint(bs) {
26
+ export function bytes32ToBigint(bs) {
42
27
  const bytes32 = asBytes32(bs);
43
28
  return BigInt(bytes32);
44
29
  }
45
- function bytesFromHexString(hexString) {
30
+ export function bytesFromHexString(hexString) {
46
31
  return Buffer.from(hexString.startsWith('0x') ? hexString.slice(2) : hexString, 'hex');
47
32
  }
48
- function mustBeHex(value) {
49
- if (!(0, viem_1.isHex)(value)) {
33
+ export function mustBeHex(value) {
34
+ if (!isHex(value)) {
50
35
  throw new Error(`Expected hex string, got: ${value}`);
51
36
  }
52
37
  return value;
53
38
  }
54
- function normaliseToHex(value) {
39
+ export function normaliseToHex(value) {
55
40
  return mustBeHex(value.startsWith('0x') ? value : `0x${value}`);
56
41
  }
57
- function bytesToHex(bs) {
42
+ export function bytesToHex(bs) {
58
43
  return ('0x' + Buffer.from(bs).toString('hex'));
59
44
  }
60
- const ByteArray = effect_1.Schema.Object.pipe(effect_1.Schema.filter((x) => x instanceof Uint8Array));
61
- const BytesToHex = effect_1.Schema.transformOrFail(effect_1.Schema.Union(effect_1.Schema.String, ByteArray), exports.HexString, {
45
+ const ByteArray = Schema.Object.pipe(Schema.filter((x) => x instanceof Uint8Array));
46
+ const BytesToHex = Schema.transformOrFail(Schema.Union(Schema.String, ByteArray), HexString, {
62
47
  strict: true,
63
- encode: effect_1.ParseResult.succeed,
48
+ encode: ParseResult.succeed,
64
49
  decode: (x) => x instanceof Uint8Array
65
- ? effect_1.ParseResult.succeed(bytesToHex(x))
66
- : ((y) => (0, viem_1.isHex)(y)
67
- ? effect_1.ParseResult.succeed(y)
68
- : effect_1.ParseResult.fail(new effect_1.ParseResult.Unexpected(y, `'${y}' is not a hex string`)))(normaliseToHex(x)),
50
+ ? ParseResult.succeed(bytesToHex(x))
51
+ : ((y) => isHex(y)
52
+ ? ParseResult.succeed(y)
53
+ : ParseResult.fail(new ParseResult.Unexpected(y, `'${y}' is not a hex string`)))(normaliseToHex(x)),
69
54
  });
70
- exports.Bytes32 = BytesToHex.pipe(effect_1.Schema.filter((x) => x.length === 66 ||
71
- `Expected 32-byte hex string (66 characters with 0x prefix) but got ${x.length} character string`), effect_1.Schema.brand('Bytes32'));
72
- function asBytes32(x) {
73
- return (0, schema_1.parse)(exports.Bytes32, x);
55
+ export const Bytes32 = BytesToHex.pipe(Schema.filter((x) => x.length === 66 ||
56
+ `Expected 32-byte hex string (66 characters with 0x prefix) but got ${x.length} character string`), Schema.brand('Bytes32'));
57
+ export function asBytes32(x) {
58
+ return parse(Bytes32, x);
74
59
  }
75
- exports.Address = exports.HexString.pipe(effect_1.Schema.filter((s) => s.length === 42 || `Address must be a 20-byte '0x'-prefixed hex string, but got: ${s}`), effect_1.Schema.brand('Address'));
76
- function parseAddress(address) {
77
- return (0, schema_1.parse)(exports.Address, address);
60
+ export const Address = HexString.pipe(Schema.filter((s) => s.length === 42 || `Address must be a 20-byte '0x'-prefixed hex string, but got: ${s}`), Schema.brand('Address'));
61
+ export function parseAddress(address) {
62
+ return parse(Address, address);
78
63
  }
79
- function parseHex(hex) {
80
- return (0, schema_1.parse)(exports.HexString, hex);
64
+ export function parseHex(hex) {
65
+ return parse(HexString, hex);
81
66
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFVQSxzQ0FHQztBQUVELHdDQUVDO0FBS0QsMENBRUM7QUFFRCwwQkFPQztBQUVELDBDQUdDO0FBRUQsZ0RBRUM7QUFFRCw4QkFLQztBQUVELHdDQUVDO0FBRUQsZ0NBRUM7QUF5QkQsOEJBRUM7QUFXRCxvQ0FFQztBQUVELDRCQUVDO0FBckdELG1DQUE2QztBQUM3QywrQkFBa0M7QUFDbEMscUNBQWlDO0FBRXBCLFFBQUEsU0FBUyxHQUFHLGVBQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLGVBQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQU1yRSxTQUFnQixhQUFhLENBQUMsU0FBcUI7SUFDakQsK0dBQStHO0lBQy9HLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNoRyxDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLE1BQWM7SUFDM0MsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFFRCw2RUFBNkU7QUFDN0UsK0VBQStFO0FBQy9FLGtEQUFrRDtBQUNsRCxTQUFnQixlQUFlLENBQUMsS0FBYTtJQUMzQyxPQUFPLElBQUEsY0FBSyxFQUFDLGVBQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMs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
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM3QyxPQUFPLEVBQU8sS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFakMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQU1yRSxNQUFNLFVBQVUsYUFBYSxDQUFDLFNBQXFCO0lBQ2pELCtHQUErRztJQUMvRyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDaEcsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsTUFBYztJQUMzQyxPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDaEQsQ0FBQztBQUVELDZFQUE2RTtBQUM3RSwrRUFBK0U7QUFDL0Usa0RBQWtEO0FBQ2xELE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBYTtJQUMzQyxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDbEcsQ0FBQztBQUVELE1BQU0s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
package/dist/chain.js CHANGED
@@ -1,28 +1,24 @@
1
- "use strict";
2
1
  // No imports here to avoid issues with closures and modules across pulumi boundary
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.fheSupportedChains = exports.supportedChains = void 0;
5
- exports.getSupportedChain = getSupportedChain;
6
2
  // This file can be seen as mirroring the functionality of viem changes without depending on it directly.
7
3
  // It exists as a workaround for some very gnarly issues with code reuse between Pulumi and this module, partly
8
4
  // relating to modules but also linked to Pulumi's ability to capture closures and serialise them.
9
- exports.supportedChains = {
5
+ export const supportedChains = {
10
6
  baseSepolia: 84532,
11
7
  sepolia: 11155111,
12
8
  monadTestnet: 10143,
13
9
  };
14
- exports.fheSupportedChains = { baseSepolia: 84532, sepolia: 11155111 };
10
+ export const fheSupportedChains = { baseSepolia: 84532, sepolia: 11155111 };
15
11
  // Get supportedChain either by its chain ID or the short name (lower pascal case)
16
- function getSupportedChain(chainish) {
12
+ export function getSupportedChain(chainish) {
17
13
  const found = typeof chainish === 'number' || typeof chainish === 'bigint'
18
- ? Object.entries(exports.supportedChains).find(([, id]) => id === Number(chainish))
14
+ ? Object.entries(supportedChains).find(([, id]) => id === Number(chainish))
19
15
  : typeof chainish === 'object'
20
- ? Object.entries(exports.supportedChains).find(([, id]) => id === Number(chainish.id))
21
- : Object.entries(exports.supportedChains).find(([shortName]) => shortName === chainish);
16
+ ? Object.entries(supportedChains).find(([, id]) => id === Number(chainish.id))
17
+ : Object.entries(supportedChains).find(([shortName]) => shortName === chainish);
22
18
  if (!found) {
23
19
  throw new Error(`Supported chain ${JSON.stringify(chainish)} not found`);
24
20
  }
25
21
  const [name, id] = found;
26
22
  return { name: name, id };
27
23
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG1GQUFtRjs7O0FBMkJuRiw4Q0FZQztBQXJDRCx5R0FBeUc7QUFDekcsK0dBQStHO0FBQy9HLGtHQUFrRztBQUVyRixRQUFBLGVBQWUsR0FBRztJQUM3QixXQUFXLEVBQUUsS0FBSztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixZQUFZLEVBQUUsS0FBSztDQUNYLENBQUM7QUFFRSxRQUFBLGtCQUFrQixHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFXLENBQUM7QUFjckYsa0ZBQWtGO0FBQ2xGLFNBQWdCLGlCQUFpQixDQUFDLFFBQWtCO0lBQ2xELE1BQU0sS0FBSyxHQUNULE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRO1FBQzFELENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLHVCQUFlLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0UsQ0FBQyxDQUFDLE9BQU8sUUFBUSxLQUFLLFFBQVE7WUFDNUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsdUJBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDOUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsdUJBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDLFNBQVMsS0FBSyxRQUFRLENBQUMsQ0FBQztJQUN0RixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDekIsT0FBTyxFQUFFLElBQUksRUFBRSxJQUEwQixFQUFFLEVBQUUsRUFBRSxDQUFDO0FBQ2xELENBQUMifQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUZBQW1GO0FBRW5GLHlHQUF5RztBQUN6RywrR0FBK0c7QUFDL0csa0dBQWtHO0FBRWxHLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixXQUFXLEVBQUUsS0FBSztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixZQUFZLEVBQUUsS0FBSztDQUNYLENBQUM7QUFFWCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBVyxDQUFDO0FBY3JGLGtGQUFrRjtBQUNsRixNQUFNLFVBQVUsaUJBQWlCLENBQUMsUUFBa0I7SUFDbEQsTUFBTSxLQUFLLEdBQ1QsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDMUQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQyxPQUFPLFFBQVEsS0FBSyxRQUFRO1lBQzVCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDOUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQyxDQUFDO0lBQ3RGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRCxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUN6QixPQUFPLEVBQUUsSUFBSSxFQUFFLElBQTBCLEVBQUUsRUFBRSxFQUFFLENBQUM7QUFDbEQsQ0FBQyJ9
@@ -1,85 +1,77 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlaintextWithContext = exports.Plaintext = exports.EncryptResult = exports.CiphertextWithContext = exports.Ciphertext = exports.CiphertextEnvelope = exports.ciphertextEnvelopes = exports.EncryptionScheme = exports.encryptionSchemes = exports.SupportedFheType = exports.SupportedFheTypeName = exports.supportedFheTypes = void 0;
4
- exports.getEncryptionSchemeName = getEncryptionSchemeName;
5
- exports.bigintToPlaintext = bigintToPlaintext;
6
- exports.plaintextToBigint = plaintextToBigint;
7
- exports.plaintextToBytes32 = plaintextToBytes32;
8
- exports.bytes32ToPlaintext = bytes32ToPlaintext;
9
- const effect_1 = require("effect");
10
- const binary_1 = require("../binary");
11
- const handle_1 = require("../handle");
12
- exports.supportedFheTypes = {
13
- euint64: handle_1.handleTypes.euint64,
14
- euint256: handle_1.handleTypes.euint256,
15
- ebool: handle_1.handleTypes.ebool,
1
+ import { Schema } from 'effect';
2
+ import { bigintToBytes32, Bytes32, HexString } from '../binary';
3
+ import { handleTypes, InputContext } from '../handle';
4
+ export const supportedFheTypes = {
5
+ euint64: handleTypes.euint64,
6
+ euint256: handleTypes.euint256,
7
+ ebool: handleTypes.ebool,
16
8
  };
17
- const supportedFheTypeNames = Object.keys(exports.supportedFheTypes);
18
- exports.SupportedFheTypeName = effect_1.Schema.Literal(...supportedFheTypeNames);
9
+ const supportedFheTypeNames = Object.keys(supportedFheTypes);
10
+ export const SupportedFheTypeName = Schema.Literal(...supportedFheTypeNames);
19
11
  // TODO: extend to all types
20
- exports.SupportedFheType = effect_1.Schema.Literal(...Object.values(exports.supportedFheTypes));
21
- exports.encryptionSchemes = {
12
+ export const SupportedFheType = Schema.Literal(...Object.values(supportedFheTypes));
13
+ export const encryptionSchemes = {
22
14
  tfhe: 0,
23
15
  ecies: 1,
24
16
  cryptobox: 2,
25
17
  };
26
- function getEncryptionSchemeName(scheme) {
18
+ export function getEncryptionSchemeName(scheme) {
27
19
  switch (scheme) {
28
- case exports.encryptionSchemes.tfhe:
20
+ case encryptionSchemes.tfhe:
29
21
  return 'TFHE';
30
- case exports.encryptionSchemes.ecies:
22
+ case encryptionSchemes.ecies:
31
23
  return 'ECIES';
32
- case exports.encryptionSchemes.cryptobox:
24
+ case encryptionSchemes.cryptobox:
33
25
  return 'NACLCryptoBox';
34
26
  default:
35
27
  throw new Error(`Unknown encryption scheme: ${scheme}`);
36
28
  }
37
29
  }
38
- exports.EncryptionScheme = effect_1.Schema.Literal(exports.encryptionSchemes.tfhe, exports.encryptionSchemes.ecies, exports.encryptionSchemes.cryptobox);
39
- exports.ciphertextEnvelopes = {
30
+ export const EncryptionScheme = Schema.Literal(encryptionSchemes.tfhe, encryptionSchemes.ecies, encryptionSchemes.cryptobox);
31
+ export const ciphertextEnvelopes = {
40
32
  none: 0,
41
33
  hadu: 1,
42
34
  };
43
- exports.CiphertextEnvelope = effect_1.Schema.Literal(...Object.values(exports.ciphertextEnvelopes));
44
- exports.Ciphertext = effect_1.Schema.Struct({
45
- scheme: exports.EncryptionScheme,
46
- type: exports.SupportedFheType,
47
- value: binary_1.HexString,
48
- envelope: effect_1.Schema.optional(exports.CiphertextEnvelope),
35
+ export const CiphertextEnvelope = Schema.Literal(...Object.values(ciphertextEnvelopes));
36
+ export const Ciphertext = Schema.Struct({
37
+ scheme: EncryptionScheme,
38
+ type: SupportedFheType,
39
+ value: HexString,
40
+ envelope: Schema.optional(CiphertextEnvelope),
49
41
  });
50
- exports.CiphertextWithContext = effect_1.Schema.Struct({
51
- ciphertext: exports.Ciphertext,
52
- context: handle_1.InputContext,
42
+ export const CiphertextWithContext = Schema.Struct({
43
+ ciphertext: Ciphertext,
44
+ context: InputContext,
53
45
  });
54
- exports.EncryptResult = effect_1.Schema.Struct({
55
- ciphertext: exports.Ciphertext,
56
- context: handle_1.InputContext,
57
- prehandle: binary_1.Bytes32,
58
- handle: binary_1.Bytes32,
46
+ export const EncryptResult = Schema.Struct({
47
+ ciphertext: Ciphertext,
48
+ context: InputContext,
49
+ prehandle: Bytes32,
50
+ handle: Bytes32,
59
51
  });
60
- exports.Plaintext = effect_1.Schema.Union(effect_1.Schema.Struct({
61
- scheme: exports.EncryptionScheme,
62
- type: effect_1.Schema.Literal(handle_1.handleTypes.euint64, handle_1.handleTypes.euint256),
63
- value: effect_1.Schema.BigInt,
64
- }), effect_1.Schema.Struct({
65
- scheme: exports.EncryptionScheme,
66
- type: effect_1.Schema.Literal(handle_1.handleTypes.ebool),
67
- value: effect_1.Schema.Boolean,
52
+ export const Plaintext = Schema.Union(Schema.Struct({
53
+ scheme: EncryptionScheme,
54
+ type: Schema.Literal(handleTypes.euint64, handleTypes.euint256),
55
+ value: Schema.BigInt,
56
+ }), Schema.Struct({
57
+ scheme: EncryptionScheme,
58
+ type: Schema.Literal(handleTypes.ebool),
59
+ value: Schema.Boolean,
68
60
  }));
69
- exports.PlaintextWithContext = effect_1.Schema.Struct({
70
- plaintext: exports.Plaintext,
71
- context: handle_1.InputContext,
61
+ export const PlaintextWithContext = Schema.Struct({
62
+ plaintext: Plaintext,
63
+ context: InputContext,
72
64
  });
73
- function bigintToPlaintext(scheme, type, bigPt) {
65
+ export function bigintToPlaintext(scheme, type, bigPt) {
74
66
  switch (type) {
75
- case handle_1.handleTypes.euint64:
76
- case handle_1.handleTypes.euint256:
67
+ case handleTypes.euint64:
68
+ case handleTypes.euint256:
77
69
  return {
78
70
  scheme,
79
71
  type,
80
72
  value: bigPt,
81
73
  };
82
- case handle_1.handleTypes.ebool:
74
+ case handleTypes.ebool:
83
75
  return {
84
76
  scheme,
85
77
  type,
@@ -88,19 +80,19 @@ function bigintToPlaintext(scheme, type, bigPt) {
88
80
  }
89
81
  throw new Error(`Unsupported FHE type: ${type}`);
90
82
  }
91
- function plaintextToBigint(plaintext) {
83
+ export function plaintextToBigint(plaintext) {
92
84
  switch (plaintext.type) {
93
- case handle_1.handleTypes.euint64:
94
- case handle_1.handleTypes.euint256:
85
+ case handleTypes.euint64:
86
+ case handleTypes.euint256:
95
87
  return plaintext.value;
96
- case handle_1.handleTypes.ebool:
88
+ case handleTypes.ebool:
97
89
  return plaintext.value ? 1n : 0n;
98
90
  }
99
91
  }
100
- function plaintextToBytes32(plaintext) {
101
- return (0, binary_1.bigintToBytes32)(plaintextToBigint(plaintext));
92
+ export function plaintextToBytes32(plaintext) {
93
+ return bigintToBytes32(plaintextToBigint(plaintext));
102
94
  }
103
- function bytes32ToPlaintext(plaintext, scheme, type) {
95
+ export function bytes32ToPlaintext(plaintext, scheme, type) {
104
96
  return bigintToPlaintext(scheme, type, BigInt(plaintext));
105
97
  }
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jcnlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbmNyeXB0aW9uL2VuY3J5cHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBc0NBLDBEQVdDO0FBNkZELDhDQXFCQztBQUVELDhDQVFDO0FBRUQsZ0RBRUM7QUFFRCxnREFFQztBQXJMRCxtQ0FBZ0M7QUFDaEMsc0NBQWdFO0FBQ2hFLHNDQUFzRDtBQWF6QyxRQUFBLGlCQUFpQixHQUFHO0lBQy9CLE9BQU8sRUFBRSxvQkFBVyxDQUFDLE9BQU87SUFDNUIsUUFBUSxFQUFFLG9CQUFXLENBQUMsUUFBUTtJQUM5QixLQUFLLEVBQUUsb0JBQVcsQ0FBQyxLQUFLO0NBQ2hCLENBQUM7QUFFWCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQWlCLENBQXVDLENBQUM7QUFFdEYsUUFBQSxvQkFBb0IsR0FBRyxlQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcscUJBQXFCLENBQUMsQ0FBQztBQUk3RSw0QkFBNEI7QUFDZixRQUFBLGdCQUFnQixHQUFHLGVBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLHlCQUFpQixDQUFDLENBQUMsQ0FBQztBQUl2RSxRQUFBLGlCQUFpQixHQUFHO0lBQy9CLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLENBQUM7SUFDUixTQUFTLEVBQUUsQ0FBQztDQUNKLENBQUM7QUFFWCxTQUFnQix1QkFBdUIsQ0FBQyxNQUFjO0lBQ3BELFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDZixLQUFLLHlCQUFpQixDQUFDLElBQUk7WUFDekIsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyx5QkFBaUIsQ0FBQyxLQUFLO1lBQzFCLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUsseUJBQWlCLENBQUMsU0FBUztZQUM5QixPQUFPLGVBQWUsQ0FBQztRQUN6QjtZQUNFLE1BQU0sSUFBSSxLQUFL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
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jcnlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbmNyeXB0aW9uL2VuY3J5cHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFhdEQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUc7SUFDL0IsT0FBTyxFQUFFLFdBQVcsQ0FBQyxPQUFPO0lBQzVCLFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUTtJQUM5QixLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUs7Q0FDaEIsQ0FBQztBQUVYLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBdUMsQ0FBQztBQUVuRyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcscUJBQXFCLENBQUMsQ0FBQztBQUk3RSw0QkFBNEI7QUFDNUIsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0FBSXBGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQy9CLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLENBQUM7SUFDUixTQUFTLEVBQUUsQ0FBQztDQUNKLENBQUM7QUFFWCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsTUFBYztJQUNwRCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxpQkFBaUIsQ0FBQyxJQUFJO1lBQ3pCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssaUJBQWlCLENBQUMsS0FBSztZ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