quantumcoin 7.0.2 → 7.0.4

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 (155) hide show
  1. package/.github/workflows/publish-npmjs.yaml +22 -22
  2. package/.gitignore +15 -15
  3. package/LICENSE +21 -21
  4. package/README-SDK.md +756 -756
  5. package/README.md +165 -152
  6. package/SPEC.md +3845 -3845
  7. package/config.d.ts +50 -50
  8. package/config.js +115 -115
  9. package/examples/AllSolidityTypes.sol +184 -184
  10. package/examples/SimpleIERC20.sol +74 -74
  11. package/examples/events.js +41 -35
  12. package/examples/events.ts +35 -0
  13. package/examples/example-generator-sdk-js.js +100 -95
  14. package/examples/example-generator-sdk-js.ts +77 -0
  15. package/examples/example-generator-sdk-ts.js +100 -95
  16. package/examples/example-generator-sdk-ts.ts +77 -0
  17. package/examples/example.js +72 -61
  18. package/examples/example.ts +61 -0
  19. package/examples/offline-signing.js +79 -0
  20. package/examples/offline-signing.ts +66 -0
  21. package/examples/package-lock.json +48 -57
  22. package/examples/package.json +32 -16
  23. package/examples/read-operations.js +32 -27
  24. package/examples/read-operations.ts +31 -0
  25. package/examples/sdk-generator-erc20.inline.json +251 -251
  26. package/examples/solidity-types.ts +43 -43
  27. package/examples/wallet-offline.js +35 -29
  28. package/examples/wallet-offline.ts +34 -0
  29. package/generate-sdk.js +1824 -1383
  30. package/index.js +12 -12
  31. package/package.json +95 -75
  32. package/scripts/copy-declarations.js +31 -0
  33. package/scripts/run-all-one-by-one.js +151 -0
  34. package/src/abi/fragments.d.ts +42 -42
  35. package/src/abi/fragments.js +63 -63
  36. package/src/abi/index.d.ts +13 -13
  37. package/src/abi/index.js +9 -9
  38. package/src/abi/interface.d.ts +128 -132
  39. package/src/abi/interface.js +590 -590
  40. package/src/abi/js-abi-coder.d.ts +8 -0
  41. package/src/abi/js-abi-coder.js +474 -474
  42. package/src/constants.d.ts +66 -61
  43. package/src/constants.js +101 -94
  44. package/src/contract/contract-factory.d.ts +28 -28
  45. package/src/contract/contract-factory.js +105 -105
  46. package/src/contract/contract.d.ts +113 -105
  47. package/src/contract/contract.js +354 -312
  48. package/src/contract/index.d.ts +9 -9
  49. package/src/contract/index.js +9 -9
  50. package/src/errors/index.d.ts +92 -92
  51. package/src/errors/index.js +188 -188
  52. package/src/generator/index.d.ts +74 -0
  53. package/src/generator/index.js +1404 -1201
  54. package/src/index.d.ts +125 -127
  55. package/src/index.js +41 -41
  56. package/src/internal/hex.d.ts +61 -61
  57. package/src/internal/hex.js +144 -144
  58. package/src/providers/extra-providers.d.ts +139 -128
  59. package/src/providers/extra-providers.js +600 -575
  60. package/src/providers/index.d.ts +17 -16
  61. package/src/providers/index.js +10 -10
  62. package/src/providers/json-rpc-provider.d.ts +12 -12
  63. package/src/providers/json-rpc-provider.js +79 -79
  64. package/src/providers/provider.d.ts +207 -196
  65. package/src/providers/provider.js +392 -359
  66. package/src/types/index.d.ts +214 -462
  67. package/src/types/index.js +9 -9
  68. package/src/utils/address.d.ts +72 -72
  69. package/src/utils/address.js +181 -182
  70. package/src/utils/encoding.d.ts +120 -120
  71. package/src/utils/encoding.js +306 -306
  72. package/src/utils/hashing.d.ts +82 -76
  73. package/src/utils/hashing.js +313 -298
  74. package/src/utils/index.d.ts +65 -55
  75. package/src/utils/index.js +13 -13
  76. package/src/utils/result.d.ts +57 -57
  77. package/src/utils/result.js +128 -128
  78. package/src/utils/rlp.d.ts +12 -12
  79. package/src/utils/rlp.js +200 -200
  80. package/src/utils/units.d.ts +29 -29
  81. package/src/utils/units.js +107 -107
  82. package/src/wallet/index.d.ts +10 -10
  83. package/src/wallet/index.js +8 -8
  84. package/src/wallet/wallet.d.ts +160 -160
  85. package/src/wallet/wallet.js +483 -489
  86. package/test/e2e/all-solidity-types.dynamic.test.js +207 -200
  87. package/test/e2e/all-solidity-types.dynamic.test.ts +191 -0
  88. package/test/e2e/all-solidity-types.fixtures.js +231 -231
  89. package/test/e2e/all-solidity-types.generated-sdks.e2e.test.js +387 -361
  90. package/test/e2e/all-solidity-types.generated-sdks.e2e.test.ts +350 -0
  91. package/test/e2e/helpers.js +59 -47
  92. package/test/e2e/signing-context-and-fee.e2e.test.js +137 -0
  93. package/test/e2e/signing-context-and-fee.e2e.test.ts +128 -0
  94. package/test/e2e/simple-erc20.generated-sdks.e2e.test.js +168 -144
  95. package/test/e2e/simple-erc20.generated-sdks.e2e.test.ts +141 -0
  96. package/test/e2e/transactional.test.js +245 -191
  97. package/test/e2e/transactional.test.ts +208 -0
  98. package/test/e2e/typed-generator.e2e.test.js +407 -402
  99. package/test/e2e/typed-generator.e2e.test.ts +337 -0
  100. package/test/fixtures/ConstructorParam.sol +23 -23
  101. package/test/fixtures/MultiContracts.sol +37 -37
  102. package/test/fixtures/SimpleStorage.sol +18 -18
  103. package/test/fixtures/StakingContract.abi.json +1 -1
  104. package/test/integration/ipc-provider.test.js +49 -44
  105. package/test/integration/ipc-provider.test.ts +44 -0
  106. package/test/integration/provider.test.js +88 -72
  107. package/test/integration/provider.test.ts +85 -0
  108. package/test/integration/ws-provider.test.js +41 -33
  109. package/test/integration/ws-provider.test.ts +38 -0
  110. package/test/security/malformed-input.test.js +37 -31
  111. package/test/security/malformed-input.test.ts +35 -0
  112. package/test/unit/_encrypted-output.txt +6 -0
  113. package/test/unit/_log-encrypted-jsons.js +45 -0
  114. package/test/unit/_write-keystore-fixture.js +16 -0
  115. package/test/unit/abi-interface.test.js +103 -98
  116. package/test/unit/abi-interface.test.ts +102 -0
  117. package/test/unit/address-wallet.test.js +355 -257
  118. package/test/unit/address-wallet.test.ts +342 -0
  119. package/test/unit/browser-provider.test.js +85 -82
  120. package/test/unit/browser-provider.test.ts +79 -0
  121. package/test/unit/contract.test.js +85 -82
  122. package/test/unit/contract.test.ts +83 -0
  123. package/test/unit/encoding-units-rlp.test.js +92 -89
  124. package/test/unit/encoding-units-rlp.test.ts +91 -0
  125. package/test/unit/errors.test.js +77 -74
  126. package/test/unit/errors.test.ts +76 -0
  127. package/test/unit/filter-by-blockhash.test.js +55 -52
  128. package/test/unit/filter-by-blockhash.test.ts +54 -0
  129. package/test/unit/fixtures/encrypted-keystores-48-32-36.js +9 -0
  130. package/test/unit/generate-contract-cli.test.js +42 -39
  131. package/test/unit/generate-contract-cli.test.ts +41 -0
  132. package/test/unit/generate-sdk-artifacts-json.test.js +113 -110
  133. package/test/unit/generate-sdk-artifacts-json.test.ts +110 -0
  134. package/test/unit/generator.test.js +102 -98
  135. package/test/unit/generator.test.ts +101 -0
  136. package/test/unit/hashing.test.js +68 -54
  137. package/test/unit/hashing.test.ts +67 -0
  138. package/test/unit/init.test.js +39 -36
  139. package/test/unit/init.test.ts +38 -0
  140. package/test/unit/interface.test.js +56 -53
  141. package/test/unit/interface.test.ts +54 -0
  142. package/test/unit/internal-hex.test.js +50 -47
  143. package/test/unit/internal-hex.test.ts +49 -0
  144. package/test/unit/populate-transaction.test.js +65 -0
  145. package/test/unit/populate-transaction.test.ts +64 -0
  146. package/test/unit/providers.test.js +200 -144
  147. package/test/unit/providers.test.ts +196 -0
  148. package/test/unit/result.test.js +80 -77
  149. package/test/unit/result.test.ts +79 -0
  150. package/test/unit/solidity-types.test.js +49 -46
  151. package/test/unit/solidity-types.test.ts +39 -0
  152. package/test/unit/utils.test.js +57 -54
  153. package/test/unit/utils.test.ts +56 -0
  154. package/test/verbose-logger.js +74 -0
  155. package/tsconfig.build.json +14 -0
@@ -1,76 +1,82 @@
1
- /**
2
- * keccak256 hash of BytesLike.
3
- * @param {string|Uint8Array} data
4
- * @returns {string}
5
- */
6
- export function keccak256(data: string | Uint8Array): string;
7
- /**
8
- * sha256 hash of BytesLike.
9
- * @param {string|Uint8Array} data
10
- * @returns {string}
11
- */
12
- export function sha256(data: string | Uint8Array): string;
13
- /**
14
- * sha512 hash of BytesLike.
15
- * @param {string|Uint8Array} data
16
- * @returns {string}
17
- */
18
- export function sha512(data: string | Uint8Array): string;
19
- /**
20
- * ripemd160 hash of BytesLike.
21
- * @param {string|Uint8Array} data
22
- * @returns {string}
23
- */
24
- export function ripemd160(data: string | Uint8Array): string;
25
- /**
26
- * ethers-style id(text) => keccak256(utf8Bytes(text))
27
- * @param {string} text
28
- * @returns {string}
29
- */
30
- export function id(text: string): string;
31
- /**
32
- * Generate cryptographically strong random bytes.
33
- * @param {number} length
34
- * @returns {Uint8Array}
35
- */
36
- export function randomBytes(length: number): Uint8Array;
37
- /**
38
- * Compute HMAC over data.
39
- * @param {string} algorithm
40
- * @param {string|Uint8Array} key
41
- * @param {string|Uint8Array} data
42
- * @returns {string}
43
- */
44
- export function computeHmac(algorithm: string, key: string | Uint8Array, data: string | Uint8Array): string;
45
- /**
46
- * PBKDF2 (sync) helper returning hex string.
47
- * @param {string|Uint8Array} password
48
- * @param {string|Uint8Array} salt
49
- * @param {number} iterations
50
- * @param {number} keylen
51
- * @param {string=} algorithm
52
- * @returns {string}
53
- */
54
- export function pbkdf2(password: string | Uint8Array, salt: string | Uint8Array, iterations: number, keylen: number, algorithm?: string | undefined): string;
55
- /**
56
- * scrypt (async) helper returning hex string.
57
- * @param {string|Uint8Array} password
58
- * @param {string|Uint8Array} salt
59
- * @param {number} N
60
- * @param {number} r
61
- * @param {number} p
62
- * @param {number} dkLen
63
- * @returns {Promise<string>}
64
- */
65
- export function scrypt(password: string | Uint8Array, salt: string | Uint8Array, N: number, r: number, p: number, dkLen: number): Promise<string>;
66
- /**
67
- * scrypt (sync) helper returning hex string.
68
- * @param {string|Uint8Array} password
69
- * @param {string|Uint8Array} salt
70
- * @param {number} N
71
- * @param {number} r
72
- * @param {number} p
73
- * @param {number} dkLen
74
- * @returns {string}
75
- */
76
- export function scryptSync(password: string | Uint8Array, salt: string | Uint8Array, N: number, r: number, p: number, dkLen: number): string;
1
+ /**
2
+ * keccak256 hash of BytesLike.
3
+ * @param {string|Uint8Array} data
4
+ * @returns {string}
5
+ */
6
+ export function keccak256(data: string | Uint8Array): string;
7
+ /**
8
+ * EIP-191 personal-sign message digest (ethers.js hashMessage pattern).
9
+ * @param {string|Uint8Array} message
10
+ * @returns {string}
11
+ */
12
+ export function hashMessage(message: string | Uint8Array): string;
13
+ /**
14
+ * sha256 hash of BytesLike.
15
+ * @param {string|Uint8Array} data
16
+ * @returns {string}
17
+ */
18
+ export function sha256(data: string | Uint8Array): string;
19
+ /**
20
+ * sha512 hash of BytesLike.
21
+ * @param {string|Uint8Array} data
22
+ * @returns {string}
23
+ */
24
+ export function sha512(data: string | Uint8Array): string;
25
+ /**
26
+ * ripemd160 hash of BytesLike.
27
+ * @param {string|Uint8Array} data
28
+ * @returns {string}
29
+ */
30
+ export function ripemd160(data: string | Uint8Array): string;
31
+ /**
32
+ * ethers-style id(text) => keccak256(utf8Bytes(text))
33
+ * @param {string} text
34
+ * @returns {string}
35
+ */
36
+ export function id(text: string): string;
37
+ /**
38
+ * Generate cryptographically strong random bytes.
39
+ * @param {number} length
40
+ * @returns {Uint8Array}
41
+ */
42
+ export function randomBytes(length: number): Uint8Array;
43
+ /**
44
+ * Compute HMAC over data.
45
+ * @param {string} algorithm
46
+ * @param {string|Uint8Array} key
47
+ * @param {string|Uint8Array} data
48
+ * @returns {string}
49
+ */
50
+ export function computeHmac(algorithm: string, key: string | Uint8Array, data: string | Uint8Array): string;
51
+ /**
52
+ * PBKDF2 (sync) helper returning hex string.
53
+ * @param {string|Uint8Array} password
54
+ * @param {string|Uint8Array} salt
55
+ * @param {number} iterations
56
+ * @param {number} keylen
57
+ * @param {string=} algorithm
58
+ * @returns {string}
59
+ */
60
+ export function pbkdf2(password: string | Uint8Array, salt: string | Uint8Array, iterations: number, keylen: number, algorithm?: string | undefined): string;
61
+ /**
62
+ * scrypt (async) helper returning hex string.
63
+ * @param {string|Uint8Array} password
64
+ * @param {string|Uint8Array} salt
65
+ * @param {number} N
66
+ * @param {number} r
67
+ * @param {number} p
68
+ * @param {number} dkLen
69
+ * @returns {Promise<string>}
70
+ */
71
+ export function scrypt(password: string | Uint8Array, salt: string | Uint8Array, N: number, r: number, p: number, dkLen: number): Promise<string>;
72
+ /**
73
+ * scrypt (sync) helper returning hex string.
74
+ * @param {string|Uint8Array} password
75
+ * @param {string|Uint8Array} salt
76
+ * @param {number} N
77
+ * @param {number} r
78
+ * @param {number} p
79
+ * @param {number} dkLen
80
+ * @returns {string}
81
+ */
82
+ export function scryptSync(password: string | Uint8Array, salt: string | Uint8Array, N: number, r: number, p: number, dkLen: number): string;