@bitgo-beta/abstract-eth 1.0.2-beta.235 → 1.0.2-beta.2351

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 (188) hide show
  1. package/dist/src/abstractEthLikeCoin.d.ts +20 -9
  2. package/dist/src/abstractEthLikeCoin.d.ts.map +1 -1
  3. package/dist/src/abstractEthLikeCoin.js +46 -15
  4. package/dist/src/abstractEthLikeNewCoins.d.ts +978 -0
  5. package/dist/src/abstractEthLikeNewCoins.d.ts.map +1 -0
  6. package/dist/src/abstractEthLikeNewCoins.js +3072 -0
  7. package/dist/src/ethLikeToken.d.ts +38 -6
  8. package/dist/src/ethLikeToken.d.ts.map +1 -1
  9. package/dist/src/ethLikeToken.js +293 -10
  10. package/dist/src/index.d.ts +2 -0
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +8 -2
  13. package/dist/src/lib/constants.d.ts +4 -0
  14. package/dist/src/lib/constants.d.ts.map +1 -0
  15. package/dist/src/lib/constants.js +11 -0
  16. package/dist/src/lib/contractCall.d.ts +8 -0
  17. package/dist/src/lib/contractCall.d.ts.map +1 -0
  18. package/dist/src/lib/contractCall.js +17 -0
  19. package/dist/src/lib/decryptionDelegationBuilder.d.ts +90 -0
  20. package/dist/src/lib/decryptionDelegationBuilder.d.ts.map +1 -0
  21. package/dist/src/lib/decryptionDelegationBuilder.js +59 -0
  22. package/dist/src/lib/iface.d.ts +173 -0
  23. package/dist/src/lib/iface.d.ts.map +1 -0
  24. package/dist/src/lib/iface.js +8 -0
  25. package/dist/src/lib/index.d.ts +19 -0
  26. package/dist/src/lib/index.d.ts.map +1 -0
  27. package/dist/src/lib/index.js +60 -0
  28. package/dist/src/lib/keyPair.d.ts +26 -0
  29. package/dist/src/lib/keyPair.d.ts.map +1 -0
  30. package/dist/src/lib/keyPair.js +65 -0
  31. package/dist/src/lib/messages/eip191/eip191Message.d.ts +12 -0
  32. package/dist/src/lib/messages/eip191/eip191Message.d.ts.map +1 -0
  33. package/dist/src/lib/messages/eip191/eip191Message.js +25 -0
  34. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts +19 -0
  35. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
  36. package/dist/src/lib/messages/eip191/eip191MessageBuilder.js +27 -0
  37. package/dist/src/lib/messages/eip191/index.d.ts +3 -0
  38. package/dist/src/lib/messages/eip191/index.d.ts.map +1 -0
  39. package/dist/src/lib/messages/eip191/index.js +19 -0
  40. package/dist/src/lib/messages/eip712/eip712Message.d.ts +6 -0
  41. package/dist/src/lib/messages/eip712/eip712Message.d.ts.map +1 -0
  42. package/dist/src/lib/messages/eip712/eip712Message.js +27 -0
  43. package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts +7 -0
  44. package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts.map +1 -0
  45. package/dist/src/lib/messages/eip712/eip712MessageBuilder.js +15 -0
  46. package/dist/src/lib/messages/eip712/index.d.ts +3 -0
  47. package/dist/src/lib/messages/eip712/index.d.ts.map +1 -0
  48. package/dist/src/lib/messages/eip712/index.js +19 -0
  49. package/dist/src/lib/messages/index.d.ts +4 -0
  50. package/dist/src/lib/messages/index.d.ts.map +1 -0
  51. package/dist/src/lib/messages/index.js +20 -0
  52. package/dist/src/lib/messages/messageBuilderFactory.d.ts +7 -0
  53. package/dist/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
  54. package/dist/src/lib/messages/messageBuilderFactory.js +23 -0
  55. package/dist/src/lib/transaction.d.ts +69 -0
  56. package/dist/src/lib/transaction.d.ts.map +1 -0
  57. package/dist/src/lib/transaction.js +149 -0
  58. package/dist/src/lib/transactionBuilder.d.ts +388 -0
  59. package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
  60. package/dist/src/lib/transactionBuilder.js +1120 -0
  61. package/dist/src/lib/transferBuilder.d.ts +76 -0
  62. package/dist/src/lib/transferBuilder.d.ts.map +1 -0
  63. package/dist/src/lib/transferBuilder.js +307 -0
  64. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts +54 -0
  65. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts.map +1 -0
  66. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.js +120 -0
  67. package/dist/src/lib/transferBuilders/index.d.ts +5 -0
  68. package/dist/src/lib/transferBuilders/index.d.ts.map +1 -0
  69. package/dist/src/lib/transferBuilders/index.js +21 -0
  70. package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts +17 -0
  71. package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts.map +1 -0
  72. package/dist/src/lib/transferBuilders/transferBuilderERC1155.js +96 -0
  73. package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts +21 -0
  74. package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts.map +1 -0
  75. package/dist/src/lib/transferBuilders/transferBuilderERC721.js +91 -0
  76. package/dist/src/lib/transferBuilders/transferBuilderERC7984.d.ts +35 -0
  77. package/dist/src/lib/transferBuilders/transferBuilderERC7984.d.ts.map +1 -0
  78. package/dist/src/lib/transferBuilders/transferBuilderERC7984.js +113 -0
  79. package/dist/src/lib/types.d.ts +40 -0
  80. package/dist/src/lib/types.d.ts.map +1 -0
  81. package/dist/src/lib/types.js +140 -0
  82. package/dist/src/lib/utils.d.ts +386 -0
  83. package/dist/src/lib/utils.d.ts.map +1 -0
  84. package/dist/src/lib/utils.js +1026 -0
  85. package/dist/src/lib/walletUtil.d.ts +46 -0
  86. package/dist/src/lib/walletUtil.d.ts.map +1 -0
  87. package/dist/src/lib/walletUtil.js +53 -0
  88. package/dist/src/lib/zamaUtils.d.ts +257 -0
  89. package/dist/src/lib/zamaUtils.d.ts.map +1 -0
  90. package/dist/src/lib/zamaUtils.js +527 -0
  91. package/dist/src/types.d.ts +9 -0
  92. package/dist/src/types.d.ts.map +1 -0
  93. package/dist/src/types.js +3 -0
  94. package/dist/test/index.d.ts +2 -0
  95. package/dist/test/index.d.ts.map +1 -0
  96. package/dist/test/index.js +18 -0
  97. package/dist/test/unit/coin.d.ts +8 -0
  98. package/dist/test/unit/coin.d.ts.map +1 -0
  99. package/dist/test/unit/coin.js +577 -0
  100. package/dist/test/unit/decryptionDelegationBuilder.d.ts +2 -0
  101. package/dist/test/unit/decryptionDelegationBuilder.d.ts.map +1 -0
  102. package/dist/test/unit/decryptionDelegationBuilder.js +265 -0
  103. package/dist/test/unit/index.d.ts +8 -0
  104. package/dist/test/unit/index.d.ts.map +1 -0
  105. package/dist/test/unit/index.js +24 -0
  106. package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts +3 -0
  107. package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts.map +1 -0
  108. package/dist/test/unit/messages/abstractEthMessageBuilderTests.js +110 -0
  109. package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts +43 -0
  110. package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts.map +1 -0
  111. package/dist/test/unit/messages/abstractEthMessageTestTypes.js +3 -0
  112. package/dist/test/unit/messages/abstractEthMessagesTests.d.ts +3 -0
  113. package/dist/test/unit/messages/abstractEthMessagesTests.d.ts.map +1 -0
  114. package/dist/test/unit/messages/abstractEthMessagesTests.js +129 -0
  115. package/dist/test/unit/messages/eip191/eip191Message.d.ts +2 -0
  116. package/dist/test/unit/messages/eip191/eip191Message.d.ts.map +1 -0
  117. package/dist/test/unit/messages/eip191/eip191Message.js +15 -0
  118. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts +2 -0
  119. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
  120. package/dist/test/unit/messages/eip191/eip191MessageBuilder.js +16 -0
  121. package/dist/test/unit/messages/eip191/fixtures.d.ts +109 -0
  122. package/dist/test/unit/messages/eip191/fixtures.d.ts.map +1 -0
  123. package/dist/test/unit/messages/eip191/fixtures.js +63 -0
  124. package/dist/test/unit/messages/eip712/eip712Message.d.ts +2 -0
  125. package/dist/test/unit/messages/eip712/eip712Message.d.ts.map +1 -0
  126. package/dist/test/unit/messages/eip712/eip712Message.js +15 -0
  127. package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts +2 -0
  128. package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts.map +1 -0
  129. package/dist/test/unit/messages/eip712/eip712MessageBuilder.js +16 -0
  130. package/dist/test/unit/messages/eip712/fixtures.d.ts +76 -0
  131. package/dist/test/unit/messages/eip712/fixtures.d.ts.map +1 -0
  132. package/dist/test/unit/messages/eip712/fixtures.js +120 -0
  133. package/dist/test/unit/messages/index.d.ts +4 -0
  134. package/dist/test/unit/messages/index.d.ts.map +1 -0
  135. package/dist/test/unit/messages/index.js +20 -0
  136. package/dist/test/unit/messages/messageBuilderFactory.d.ts +2 -0
  137. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
  138. package/dist/test/unit/messages/messageBuilderFactory.js +52 -0
  139. package/dist/test/unit/token.d.ts +2 -0
  140. package/dist/test/unit/token.d.ts.map +1 -0
  141. package/dist/test/unit/token.js +37 -0
  142. package/dist/test/unit/transaction.d.ts +3 -0
  143. package/dist/test/unit/transaction.d.ts.map +1 -0
  144. package/dist/test/unit/transaction.js +73 -0
  145. package/dist/test/unit/transactionBuilder/addressInitialization.d.ts +8 -0
  146. package/dist/test/unit/transactionBuilder/addressInitialization.d.ts.map +1 -0
  147. package/dist/test/unit/transactionBuilder/addressInitialization.js +95 -0
  148. package/dist/test/unit/transactionBuilder/decryptionDelegation.d.ts +3 -0
  149. package/dist/test/unit/transactionBuilder/decryptionDelegation.d.ts.map +1 -0
  150. package/dist/test/unit/transactionBuilder/decryptionDelegation.js +161 -0
  151. package/dist/test/unit/transactionBuilder/finalizeUnwrapERC7984.d.ts +3 -0
  152. package/dist/test/unit/transactionBuilder/finalizeUnwrapERC7984.d.ts.map +1 -0
  153. package/dist/test/unit/transactionBuilder/finalizeUnwrapERC7984.js +127 -0
  154. package/dist/test/unit/transactionBuilder/flushERC7984.d.ts +3 -0
  155. package/dist/test/unit/transactionBuilder/flushERC7984.d.ts.map +1 -0
  156. package/dist/test/unit/transactionBuilder/flushERC7984.js +292 -0
  157. package/dist/test/unit/transactionBuilder/flushNft.d.ts +2 -0
  158. package/dist/test/unit/transactionBuilder/flushNft.d.ts.map +1 -0
  159. package/dist/test/unit/transactionBuilder/flushNft.js +381 -0
  160. package/dist/test/unit/transactionBuilder/index.d.ts +10 -0
  161. package/dist/test/unit/transactionBuilder/index.d.ts.map +1 -0
  162. package/dist/test/unit/transactionBuilder/index.js +26 -0
  163. package/dist/test/unit/transactionBuilder/send.d.ts +3 -0
  164. package/dist/test/unit/transactionBuilder/send.d.ts.map +1 -0
  165. package/dist/test/unit/transactionBuilder/send.js +197 -0
  166. package/dist/test/unit/transactionBuilder/unwrapERC7984.d.ts +3 -0
  167. package/dist/test/unit/transactionBuilder/unwrapERC7984.d.ts.map +1 -0
  168. package/dist/test/unit/transactionBuilder/unwrapERC7984.js +134 -0
  169. package/dist/test/unit/transactionBuilder/walletInitialization.d.ts +11 -0
  170. package/dist/test/unit/transactionBuilder/walletInitialization.d.ts.map +1 -0
  171. package/dist/test/unit/transactionBuilder/walletInitialization.js +137 -0
  172. package/dist/test/unit/transactionBuilder/wrapERC7984.d.ts +3 -0
  173. package/dist/test/unit/transactionBuilder/wrapERC7984.d.ts.map +1 -0
  174. package/dist/test/unit/transactionBuilder/wrapERC7984.js +140 -0
  175. package/dist/test/unit/transferBuilder.d.ts +2 -0
  176. package/dist/test/unit/transferBuilder.d.ts.map +1 -0
  177. package/dist/test/unit/transferBuilder.js +76 -0
  178. package/dist/test/unit/utils.d.ts +2 -0
  179. package/dist/test/unit/utils.d.ts.map +1 -0
  180. package/dist/test/unit/utils.js +214 -0
  181. package/dist/test/unit/zamaUtils.d.ts +2 -0
  182. package/dist/test/unit/zamaUtils.d.ts.map +1 -0
  183. package/dist/test/unit/zamaUtils.js +616 -0
  184. package/dist/tsconfig.tsbuildinfo +1 -8442
  185. package/package.json +34 -10
  186. package/.eslintignore +0 -5
  187. package/CHANGELOG.md +0 -178
  188. package/LICENSE +0 -191
@@ -0,0 +1,46 @@
1
+ export declare const sendMultisigMethodId = "0x39125215";
2
+ export declare const sendMultisigTokenMethodId = "0x0dcd7a6c";
3
+ export declare const v1CreateForwarderMethodId = "0xfb90b320";
4
+ export declare const v4CreateForwarderMethodId = "0x13b2f75c";
5
+ export declare const v1WalletInitializationFirstBytes = "0x60806040";
6
+ export declare const v1CreateWalletMethodId = "0x7117f3fa";
7
+ export declare const createForwarderMethodId = "0xa68a76cc";
8
+ export declare const walletInitializationFirstBytes = "0x60606040";
9
+ export declare const recoveryWalletInitializationFirstBytes = "0x60c06040";
10
+ export declare const flushForwarderTokensMethodId = "0x2da03409";
11
+ export declare const flushForwarderTokensMethodIdV4 = "0x3ef13367";
12
+ export declare const flushCoinsMethodId = "0x6b9f96ea";
13
+ export declare const flushERC721ForwarderTokensMethodId = "0x5a953d0a";
14
+ export declare const flushERC721ForwarderTokensMethodIdV4 = "0x159e44d7";
15
+ export declare const flushERC1155ForwarderTokensMethodId = "0xe6bd0aa4";
16
+ export declare const flushERC1155ForwarderTokensMethodIdV4 = "0x8972c17c";
17
+ export declare const ERC721SafeTransferTypeMethodId = "0xb88d4fde";
18
+ export declare const ERC721TransferFromMethodId = "0x23b872dd";
19
+ export declare const ERC1155SafeTransferTypeMethodId = "0xf242432a";
20
+ export declare const ERC1155BatchTransferTypeMethodId = "0x2eb2c2d6";
21
+ export declare const defaultForwarderVersion = 0;
22
+ export declare const defaultWalletVersion = 0;
23
+ export declare const walletSimpleConstructor: string[];
24
+ export declare const createV1WalletTypes: string[];
25
+ export declare const flushTokensTypes: string[];
26
+ export declare const flushTokensTypesv4: string[];
27
+ export declare const flushCoinsTypes: never[];
28
+ export declare const flushERC721TokensTypes: string[];
29
+ export declare const flushERC721TokensTypesv4: string[];
30
+ export declare const flushERC1155TokensTypes: string[];
31
+ export declare const flushERC1155TokensTypesv4: string[];
32
+ export declare const sendMultiSigTypes: string[];
33
+ export declare const sendMultiSigTypesFirstSigner: string[];
34
+ export declare const sendMultiSigTokenTypes: string[];
35
+ export declare const sendMultiSigTokenTypesFirstSigner: string[];
36
+ export declare const ERC721SafeTransferTypes: string[];
37
+ export declare const ERC721TransferFromTypes: string[];
38
+ export declare const ERC1155SafeTransferTypes: string[];
39
+ export declare const ERC1155BatchTransferTypes: string[];
40
+ export declare const createV1ForwarderTypes: string[];
41
+ export declare const createV4ForwarderTypes: string[];
42
+ export declare const confidentialTransferWithProofMethodId = "0x2fb74e62";
43
+ export declare const confidentialTransferNoProofMethodId = "0x5bebed7e";
44
+ export declare const confidentialTransferWithProofTypes: string[];
45
+ export declare const confidentialTransferNoProofTypes: string[];
46
+ //# sourceMappingURL=walletUtil.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walletUtil.d.ts","sourceRoot":"","sources":["../../../src/lib/walletUtil.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,yBAAyB,eAAe,CAAC;AACtD,eAAO,MAAM,yBAAyB,eAAe,CAAC;AACtD,eAAO,MAAM,yBAAyB,eAAe,CAAC;AACtD,eAAO,MAAM,gCAAgC,eAAe,CAAC;AAC7D,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,uBAAuB,eAAe,CAAC;AACpD,eAAO,MAAM,8BAA8B,eAAe,CAAC;AAC3D,eAAO,MAAM,sCAAsC,eAAe,CAAC;AACnE,eAAO,MAAM,4BAA4B,eAAe,CAAC;AACzD,eAAO,MAAM,8BAA8B,eAAe,CAAC;AAC3D,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAC/C,eAAO,MAAM,kCAAkC,eAAe,CAAC;AAC/D,eAAO,MAAM,oCAAoC,eAAe,CAAC;AACjE,eAAO,MAAM,mCAAmC,eAAe,CAAC;AAChE,eAAO,MAAM,qCAAqC,eAAe,CAAC;AAElE,eAAO,MAAM,8BAA8B,eAAe,CAAC;AAC3D,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,+BAA+B,eAAe,CAAC;AAC5D,eAAO,MAAM,gCAAgC,eAAe,CAAC;AAC7D,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,eAAO,MAAM,uBAAuB,UAAgB,CAAC;AACrD,eAAO,MAAM,mBAAmB,UAA2B,CAAC;AAC5D,eAAO,MAAM,gBAAgB,UAAyB,CAAC;AACvD,eAAO,MAAM,kBAAkB,UAAc,CAAC;AAC9C,eAAO,MAAM,eAAe,SAAK,CAAC;AAClC,eAAO,MAAM,sBAAsB,UAAoC,CAAC;AACxE,eAAO,MAAM,wBAAwB,UAAyB,CAAC;AAC/D,eAAO,MAAM,uBAAuB,UAAoC,CAAC;AACzE,eAAO,MAAM,yBAAyB,UAAyB,CAAC;AAEhE,eAAO,MAAM,iBAAiB,UAAwD,CAAC;AACvF,eAAO,MAAM,4BAA4B,UAAyD,CAAC;AAEnG,eAAO,MAAM,sBAAsB,UAA0D,CAAC;AAC9F,eAAO,MAAM,iCAAiC,UAA2D,CAAC;AAE1G,eAAO,MAAM,uBAAuB,UAA6C,CAAC;AAClF,eAAO,MAAM,uBAAuB,UAAoC,CAAC;AAEzE,eAAO,MAAM,wBAAwB,UAAwD,CAAC;AAC9F,eAAO,MAAM,yBAAyB,UAA4D,CAAC;AACnG,eAAO,MAAM,sBAAsB,UAAyB,CAAC;AAC7D,eAAO,MAAM,sBAAsB,UAAoC,CAAC;AAGxE,eAAO,MAAM,qCAAqC,eAAe,CAAC;AAElE,eAAO,MAAM,mCAAmC,eAAe,CAAC;AAEhE,eAAO,MAAM,kCAAkC,UAAkC,CAAC;AAElF,eAAO,MAAM,gCAAgC,UAAyB,CAAC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.confidentialTransferNoProofTypes = exports.confidentialTransferWithProofTypes = exports.confidentialTransferNoProofMethodId = exports.confidentialTransferWithProofMethodId = exports.createV4ForwarderTypes = exports.createV1ForwarderTypes = exports.ERC1155BatchTransferTypes = exports.ERC1155SafeTransferTypes = exports.ERC721TransferFromTypes = exports.ERC721SafeTransferTypes = exports.sendMultiSigTokenTypesFirstSigner = exports.sendMultiSigTokenTypes = exports.sendMultiSigTypesFirstSigner = exports.sendMultiSigTypes = exports.flushERC1155TokensTypesv4 = exports.flushERC1155TokensTypes = exports.flushERC721TokensTypesv4 = exports.flushERC721TokensTypes = exports.flushCoinsTypes = exports.flushTokensTypesv4 = exports.flushTokensTypes = exports.createV1WalletTypes = exports.walletSimpleConstructor = exports.defaultWalletVersion = exports.defaultForwarderVersion = exports.ERC1155BatchTransferTypeMethodId = exports.ERC1155SafeTransferTypeMethodId = exports.ERC721TransferFromMethodId = exports.ERC721SafeTransferTypeMethodId = exports.flushERC1155ForwarderTokensMethodIdV4 = exports.flushERC1155ForwarderTokensMethodId = exports.flushERC721ForwarderTokensMethodIdV4 = exports.flushERC721ForwarderTokensMethodId = exports.flushCoinsMethodId = exports.flushForwarderTokensMethodIdV4 = exports.flushForwarderTokensMethodId = exports.recoveryWalletInitializationFirstBytes = exports.walletInitializationFirstBytes = exports.createForwarderMethodId = exports.v1CreateWalletMethodId = exports.v1WalletInitializationFirstBytes = exports.v4CreateForwarderMethodId = exports.v1CreateForwarderMethodId = exports.sendMultisigTokenMethodId = exports.sendMultisigMethodId = void 0;
4
+ exports.sendMultisigMethodId = '0x39125215';
5
+ exports.sendMultisigTokenMethodId = '0x0dcd7a6c';
6
+ exports.v1CreateForwarderMethodId = '0xfb90b320';
7
+ exports.v4CreateForwarderMethodId = '0x13b2f75c';
8
+ exports.v1WalletInitializationFirstBytes = '0x60806040';
9
+ exports.v1CreateWalletMethodId = '0x7117f3fa';
10
+ exports.createForwarderMethodId = '0xa68a76cc';
11
+ exports.walletInitializationFirstBytes = '0x60606040';
12
+ exports.recoveryWalletInitializationFirstBytes = '0x60c06040';
13
+ exports.flushForwarderTokensMethodId = '0x2da03409';
14
+ exports.flushForwarderTokensMethodIdV4 = '0x3ef13367';
15
+ exports.flushCoinsMethodId = '0x6b9f96ea';
16
+ exports.flushERC721ForwarderTokensMethodId = '0x5a953d0a';
17
+ exports.flushERC721ForwarderTokensMethodIdV4 = '0x159e44d7';
18
+ exports.flushERC1155ForwarderTokensMethodId = '0xe6bd0aa4';
19
+ exports.flushERC1155ForwarderTokensMethodIdV4 = '0x8972c17c';
20
+ exports.ERC721SafeTransferTypeMethodId = '0xb88d4fde';
21
+ exports.ERC721TransferFromMethodId = '0x23b872dd';
22
+ exports.ERC1155SafeTransferTypeMethodId = '0xf242432a';
23
+ exports.ERC1155BatchTransferTypeMethodId = '0x2eb2c2d6';
24
+ exports.defaultForwarderVersion = 0;
25
+ exports.defaultWalletVersion = 0;
26
+ exports.walletSimpleConstructor = ['address[]'];
27
+ exports.createV1WalletTypes = ['address[]', 'bytes32'];
28
+ exports.flushTokensTypes = ['address', 'address'];
29
+ exports.flushTokensTypesv4 = ['address'];
30
+ exports.flushCoinsTypes = [];
31
+ exports.flushERC721TokensTypes = ['address', 'address', 'uint256'];
32
+ exports.flushERC721TokensTypesv4 = ['address', 'uint256'];
33
+ exports.flushERC1155TokensTypes = ['address', 'address', 'uint256'];
34
+ exports.flushERC1155TokensTypesv4 = ['address', 'uint256'];
35
+ exports.sendMultiSigTypes = ['address', 'uint', 'bytes', 'uint', 'uint', 'bytes'];
36
+ exports.sendMultiSigTypesFirstSigner = ['string', 'address', 'uint', 'bytes', 'uint', 'uint'];
37
+ exports.sendMultiSigTokenTypes = ['address', 'uint', 'address', 'uint', 'uint', 'bytes'];
38
+ exports.sendMultiSigTokenTypesFirstSigner = ['string', 'address', 'uint', 'address', 'uint', 'uint'];
39
+ exports.ERC721SafeTransferTypes = ['address', 'address', 'uint256', 'bytes'];
40
+ exports.ERC721TransferFromTypes = ['address', 'address', 'uint256'];
41
+ exports.ERC1155SafeTransferTypes = ['address', 'address', 'uint256', 'uint256', 'bytes'];
42
+ exports.ERC1155BatchTransferTypes = ['address', 'address', 'uint256[]', 'uint256[]', 'bytes'];
43
+ exports.createV1ForwarderTypes = ['address', 'bytes32'];
44
+ exports.createV4ForwarderTypes = ['address', 'address', 'bytes32'];
45
+ // keccak256("confidentialTransfer(address,bytes32,bytes)")[0:4]
46
+ exports.confidentialTransferWithProofMethodId = '0x2fb74e62';
47
+ // keccak256("confidentialTransfer(address,bytes32)")[0:4] — for decoding only
48
+ exports.confidentialTransferNoProofMethodId = '0x5bebed7e';
49
+ // ABI parameter types for the 3-param version
50
+ exports.confidentialTransferWithProofTypes = ['address', 'bytes32', 'bytes'];
51
+ // ABI parameter types for confidentialTransfer(address, bytes32) — no proof version
52
+ exports.confidentialTransferNoProofTypes = ['address', 'bytes32'];
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0VXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvd2FsbGV0VXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLG9CQUFvQixHQUFHLFlBQVksQ0FBQztBQUNwQyxRQUFBLHlCQUF5QixHQUFHLFlBQVksQ0FBQztBQUN6QyxRQUFBLHlCQUF5QixHQUFHLFlBQVksQ0FBQztBQUN6QyxRQUFBLHlCQUF5QixHQUFHLFlBQVksQ0FBQztBQUN6QyxRQUFBLGdDQUFnQyxHQUFHLFlBQVksQ0FBQztBQUNoRCxRQUFBLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUN0QyxRQUFBLHVCQUF1QixHQUFHLFlBQVksQ0FBQztBQUN2QyxRQUFBLDhCQUE4QixHQUFHLFlBQVksQ0FBQztBQUM5QyxRQUFBLHNDQUFzQyxHQUFHLFlBQVksQ0FBQztBQUN0RCxRQUFBLDRCQUE0QixHQUFHLFlBQVksQ0FBQztBQUM1QyxRQUFBLDhCQUE4QixHQUFHLFlBQVksQ0FBQztBQUM5QyxRQUFBLGtCQUFrQixHQUFHLFlBQVksQ0FBQztBQUNsQyxRQUFBLGtDQUFrQyxHQUFHLFlBQVksQ0FBQztBQUNsRCxRQUFBLG9DQUFvQyxHQUFHLFlBQVksQ0FBQztBQUNwRCxRQUFBLG1DQUFtQyxHQUFHLFlBQVksQ0FBQztBQUNuRCxRQUFBLHFDQUFxQyxHQUFHLFlBQVksQ0FBQztBQUVyRCxRQUFBLDhCQUE4QixHQUFHLFlBQVksQ0FBQztBQUM5QyxRQUFBLDBCQUEwQixHQUFHLFlBQVksQ0FBQztBQUMxQyxRQUFBLCtCQUErQixHQUFHLFlBQVksQ0FBQztBQUMvQyxRQUFBLGdDQUFnQyxHQUFHLFlBQVksQ0FBQztBQUNoRCxRQUFBLHVCQUF1QixHQUFHLENBQUMsQ0FBQztBQUM1QixRQUFBLG9CQUFvQixHQUFHLENBQUMsQ0FBQztBQUV6QixRQUFBLHVCQUF1QixHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDeEMsUUFBQSxtQkFBbUIsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUMvQyxRQUFBLGdCQUFnQixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzFDLFFBQUEsa0JBQWtCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUNqQyxRQUFBLGVBQWUsR0FBRyxFQUFFLENBQUM7QUFDckIsUUFBQSxzQkFBc0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDM0QsUUFBQSx3QkFBd0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNsRCxRQUFBLHVCQUF1QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUM1RCxRQUFBLHlCQUF5QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRW5ELFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzFFLFFBQUEsNEJBQTRCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBRXRGLFFBQUEsc0JBQXNCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ2pGLFFBQUEsaUNBQWlDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBRTdGLFFBQUEsdUJBQXVCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNyRSxRQUFBLHVCQUF1QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUU1RCxRQUFBLHdCQUF3QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ2pGLFFBQUEseUJBQXlCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDdEYsUUFBQSxzQkFBc0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNoRCxRQUFBLHNCQUFzQixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUV4RSxnRUFBZ0U7QUFDbkQsUUFBQSxxQ0FBcUMsR0FBRyxZQUFZLENBQUM7QUFDbEUsOEVBQThFO0FBQ2pFLFFBQUEsbUNBQW1DLEdBQUcsWUFBWSxDQUFDO0FBQ2hFLDhDQUE4QztBQUNqQyxRQUFBLGtDQUFrQyxHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNsRixvRkFBb0Y7QUFDdkUsUUFBQSxnQ0FBZ0MsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBzZW5kTXVsdGlzaWdNZXRob2RJZCA9ICcweDM5MTI1MjE1JztcbmV4cG9ydCBjb25zdCBzZW5kTXVsdGlzaWdUb2tlbk1ldGhvZElkID0gJzB4MGRjZDdhNmMnO1xuZXhwb3J0IGNvbnN0IHYxQ3JlYXRlRm9yd2FyZGVyTWV0aG9kSWQgPSAnMHhmYjkwYjMyMCc7XG5leHBvcnQgY29uc3QgdjRDcmVhdGVGb3J3YXJkZXJNZXRob2RJZCA9ICcweDEzYjJmNzVjJztcbmV4cG9ydCBjb25zdCB2MVdhbGxldEluaXRpYWxpemF0aW9uRmlyc3RCeXRlcyA9ICcweDYwODA2MDQwJztcbmV4cG9ydCBjb25zdCB2MUNyZWF0ZVdhbGxldE1ldGhvZElkID0gJzB4NzExN2YzZmEnO1xuZXhwb3J0IGNvbnN0IGNyZWF0ZUZvcndhcmRlck1ldGhvZElkID0gJzB4YTY4YTc2Y2MnO1xuZXhwb3J0IGNvbnN0IHdhbGxldEluaXRpYWxpemF0aW9uRmlyc3RCeXRlcyA9ICcweDYwNjA2MDQwJztcbmV4cG9ydCBjb25zdCByZWNvdmVyeVdhbGxldEluaXRpYWxpemF0aW9uRmlyc3RCeXRlcyA9ICcweDYwYzA2MDQwJztcbmV4cG9ydCBjb25zdCBmbHVzaEZvcndhcmRlclRva2Vuc01ldGhvZElkID0gJzB4MmRhMDM0MDknO1xuZXhwb3J0IGNvbnN0IGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWRWNCA9ICcweDNlZjEzMzY3JztcbmV4cG9ydCBjb25zdCBmbHVzaENvaW5zTWV0aG9kSWQgPSAnMHg2YjlmOTZlYSc7XG5leHBvcnQgY29uc3QgZmx1c2hFUkM3MjFGb3J3YXJkZXJUb2tlbnNNZXRob2RJZCA9ICcweDVhOTUzZDBhJztcbmV4cG9ydCBjb25zdCBmbHVzaEVSQzcyMUZvcndhcmRlclRva2Vuc01ldGhvZElkVjQgPSAnMHgxNTllNDRkNyc7XG5leHBvcnQgY29uc3QgZmx1c2hFUkMxMTU1Rm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQgPSAnMHhlNmJkMGFhNCc7XG5leHBvcnQgY29uc3QgZmx1c2hFUkMxMTU1Rm9yd2FyZGVyVG9rZW5zTWV0aG9kSWRWNCA9ICcweDg5NzJjMTdjJztcblxuZXhwb3J0IGNvbnN0IEVSQzcyMVNhZmVUcmFuc2ZlclR5cGVNZXRob2RJZCA9ICcweGI4OGQ0ZmRlJztcbmV4cG9ydCBjb25zdCBFUkM3MjFUcmFuc2ZlckZyb21NZXRob2RJZCA9ICcweDIzYjg3MmRkJztcbmV4cG9ydCBjb25zdCBFUkMxMTU1U2FmZVRyYW5zZmVyVHlwZU1ldGhvZElkID0gJzB4ZjI0MjQzMmEnO1xuZXhwb3J0IGNvbnN0IEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZU1ldGhvZElkID0gJzB4MmViMmMyZDYnO1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRGb3J3YXJkZXJWZXJzaW9uID0gMDtcbmV4cG9ydCBjb25zdCBkZWZhdWx0V2FsbGV0VmVyc2lvbiA9IDA7XG5cbmV4cG9ydCBjb25zdCB3YWxsZXRTaW1wbGVDb25zdHJ1Y3RvciA9IFsnYWRkcmVzc1tdJ107XG5leHBvcnQgY29uc3QgY3JlYXRlVjFXYWxsZXRUeXBlcyA9IFsnYWRkcmVzc1tdJywgJ2J5dGVzMzInXTtcbmV4cG9ydCBjb25zdCBmbHVzaFRva2Vuc1R5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnXTtcbmV4cG9ydCBjb25zdCBmbHVzaFRva2Vuc1R5cGVzdjQgPSBbJ2FkZHJlc3MnXTtcbmV4cG9ydCBjb25zdCBmbHVzaENvaW5zVHlwZXMgPSBbXTtcbmV4cG9ydCBjb25zdCBmbHVzaEVSQzcyMVRva2Vuc1R5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnLCAndWludDI1NiddO1xuZXhwb3J0IGNvbnN0IGZsdXNoRVJDNzIxVG9rZW5zVHlwZXN2NCA9IFsnYWRkcmVzcycsICd1aW50MjU2J107XG5leHBvcnQgY29uc3QgZmx1c2hFUkMxMTU1VG9rZW5zVHlwZXMgPSBbJ2FkZHJlc3MnLCAnYWRkcmVzcycsICd1aW50MjU2J107XG5leHBvcnQgY29uc3QgZmx1c2hFUkMxMTU1VG9rZW5zVHlwZXN2NCA9IFsnYWRkcmVzcycsICd1aW50MjU2J107XG5cbmV4cG9ydCBjb25zdCBzZW5kTXVsdGlTaWdUeXBlcyA9IFsnYWRkcmVzcycsICd1aW50JywgJ2J5dGVzJywgJ3VpbnQnLCAndWludCcsICdieXRlcyddO1xuZXhwb3J0IGNvbnN0IHNlbmRNdWx0aVNpZ1R5cGVzRmlyc3RTaWduZXIgPSBbJ3N0cmluZycsICdhZGRyZXNzJywgJ3VpbnQnLCAnYnl0ZXMnLCAndWludCcsICd1aW50J107XG5cbmV4cG9ydCBjb25zdCBzZW5kTXVsdGlTaWdUb2tlblR5cGVzID0gWydhZGRyZXNzJywgJ3VpbnQnLCAnYWRkcmVzcycsICd1aW50JywgJ3VpbnQnLCAnYnl0ZXMnXTtcbmV4cG9ydCBjb25zdCBzZW5kTXVsdGlTaWdUb2tlblR5cGVzRmlyc3RTaWduZXIgPSBbJ3N0cmluZycsICdhZGRyZXNzJywgJ3VpbnQnLCAnYWRkcmVzcycsICd1aW50JywgJ3VpbnQnXTtcblxuZXhwb3J0IGNvbnN0IEVSQzcyMVNhZmVUcmFuc2ZlclR5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnLCAndWludDI1NicsICdieXRlcyddO1xuZXhwb3J0IGNvbnN0IEVSQzcyMVRyYW5zZmVyRnJvbVR5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnLCAndWludDI1NiddO1xuXG5leHBvcnQgY29uc3QgRVJDMTE1NVNhZmVUcmFuc2ZlclR5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnLCAndWludDI1NicsICd1aW50MjU2JywgJ2J5dGVzJ107XG5leHBvcnQgY29uc3QgRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlcyA9IFsnYWRkcmVzcycsICdhZGRyZXNzJywgJ3VpbnQyNTZbXScsICd1aW50MjU2W10nLCAnYnl0ZXMnXTtcbmV4cG9ydCBjb25zdCBjcmVhdGVWMUZvcndhcmRlclR5cGVzID0gWydhZGRyZXNzJywgJ2J5dGVzMzInXTtcbmV4cG9ydCBjb25zdCBjcmVhdGVWNEZvcndhcmRlclR5cGVzID0gWydhZGRyZXNzJywgJ2FkZHJlc3MnLCAnYnl0ZXMzMiddO1xuXG4vLyBrZWNjYWsyNTYoXCJjb25maWRlbnRpYWxUcmFuc2ZlcihhZGRyZXNzLGJ5dGVzMzIsYnl0ZXMpXCIpWzA6NF1cbmV4cG9ydCBjb25zdCBjb25maWRlbnRpYWxUcmFuc2ZlcldpdGhQcm9vZk1ldGhvZElkID0gJzB4MmZiNzRlNjInO1xuLy8ga2VjY2FrMjU2KFwiY29uZmlkZW50aWFsVHJhbnNmZXIoYWRkcmVzcyxieXRlczMyKVwiKVswOjRdIOKAlCBmb3IgZGVjb2Rpbmcgb25seVxuZXhwb3J0IGNvbnN0IGNvbmZpZGVudGlhbFRyYW5zZmVyTm9Qcm9vZk1ldGhvZElkID0gJzB4NWJlYmVkN2UnO1xuLy8gQUJJIHBhcmFtZXRlciB0eXBlcyBmb3IgdGhlIDMtcGFyYW0gdmVyc2lvblxuZXhwb3J0IGNvbnN0IGNvbmZpZGVudGlhbFRyYW5zZmVyV2l0aFByb29mVHlwZXMgPSBbJ2FkZHJlc3MnLCAnYnl0ZXMzMicsICdieXRlcyddO1xuLy8gQUJJIHBhcmFtZXRlciB0eXBlcyBmb3IgY29uZmlkZW50aWFsVHJhbnNmZXIoYWRkcmVzcywgYnl0ZXMzMikg4oCUIG5vIHByb29mIHZlcnNpb25cbmV4cG9ydCBjb25zdCBjb25maWRlbnRpYWxUcmFuc2Zlck5vUHJvb2ZUeXBlcyA9IFsnYWRkcmVzcycsICdieXRlczMyJ107XG4iXX0=
@@ -0,0 +1,257 @@
1
+ export declare const delegateForUserDecryptionTypes: readonly ["address", "address", "uint64"];
2
+ export declare const callFromParentTypes: readonly ["address", "uint256", "bytes"];
3
+ export declare const aclMulticallTypes: readonly ["bytes[]"];
4
+ export declare const approveTypes: readonly ["address", "uint256"];
5
+ export declare const wrapTypes: readonly ["address", "uint256"];
6
+ export declare const unwrapTypes: readonly ["address", "address", "bytes32", "bytes"];
7
+ export declare const finalizeUnwrapTypes: readonly ["bytes32", "uint64", "bytes"];
8
+ /** Max value for Solidity `uint64` / ERC-7984 confidential amount domain (`euint64`). */
9
+ export declare const UINT64_MAX = 18446744073709551615n;
10
+ /**
11
+ * Function selector for ACL.delegateForUserDecryption(address,address,uint64)
12
+ * = keccak256('delegateForUserDecryption(address,address,uint64)')[0:4]
13
+ */
14
+ export declare const delegateForUserDecryptionMethodId: string;
15
+ /**
16
+ * Function selector for ACL.multicall(bytes[])
17
+ * = keccak256('multicall(bytes[])')[0:4]
18
+ * ACL inherits OpenZeppelin MulticallUpgradeable — preserves msg.sender via delegatecall.
19
+ */
20
+ export declare const aclMulticallMethodId: string;
21
+ /**
22
+ * Function selector for ForwarderV4.callFromParent(address,uint256,bytes)
23
+ * = keccak256('callFromParent(address,uint256,bytes)')[0:4]
24
+ */
25
+ export declare const callFromParentMethodId: string;
26
+ /**
27
+ * Function selector for ERC-20 approve(address,uint256)
28
+ * = keccak256('approve(address,uint256)')[0:4]
29
+ * Used for exact-amount (and approve(0) reset) approvals of the ERC-7984 wrapper as spender.
30
+ */
31
+ export declare const approveMethodId: string;
32
+ /**
33
+ * Function selector for ERC-7984 wrap(address,uint256)
34
+ * = keccak256('wrap(address,uint256)')[0:4]
35
+ * Locks underlying ERC-20 in the wrapper and mints an encrypted balance to `to`.
36
+ */
37
+ export declare const wrapMethodId: string;
38
+ /**
39
+ * Function selector for ERC-7984 unwrap(address,address,bytes32,bytes)
40
+ * = keccak256('unwrap(address,address,bytes32,bytes)')[0:4]
41
+ * Burns confidential balance and requests release of underlying ERC-20 escrow.
42
+ */
43
+ export declare const unwrapMethodId: string;
44
+ /**
45
+ * Function selector for ERC-7984 finalizeUnwrap(bytes32,uint64,bytes)
46
+ * = keccak256('finalizeUnwrap(bytes32,uint64,bytes)')[0:4]
47
+ * Completes unshield after oracle decryption of the phase-1 unwrap request.
48
+ */
49
+ export declare const finalizeUnwrapMethodId: string;
50
+ /**
51
+ * Asserts that the confidential amount minted by `wrap(to, amount)` fits in uint64 (`euint64`).
52
+ *
53
+ * The wrapper mints `floor(amount / rate())` — `amount` is in underlying-token base units and
54
+ * `rate()` is `10 ** (underlyingDecimals - 6)` (1 when the underlying has <= 6 decimals) — and
55
+ * reverts if that quotient does not fit uint64. For a rate > 1 the underlying amount can therefore
56
+ * be far larger than uint64 (e.g. 1 full 18-decimal token is 1e18 at rate 1e12, minting 1e6).
57
+ *
58
+ * @throws {Error} if amount or rate is invalid, or `floor(amount / rate)` exceeds uint64
59
+ */
60
+ export declare function assertWrapAmountFitsUint64(amount: string | number | bigint, rate: string | number | bigint): void;
61
+ /**
62
+ * Encodes ERC-20 `approve(spender, amount)` calldata for ERC-7984 shield.
63
+ *
64
+ * The spender is the confidential wrapper contract; the resulting calldata is
65
+ * sent to the underlying ERC-20. Exact-amount approve is used for the shield
66
+ * path; `amount = 0` is the USDT-style allowance reset used when
67
+ * `requiresApprovalReset` is set on the wrapper pair.
68
+ *
69
+ * Does not set gasLimit — WP owns gas.
70
+ *
71
+ * @param wrapperAddress ERC-7984 wrapper contract (spender)
72
+ * @param amount Exact allowance to set (base units); `0` for reset
73
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
74
+ * @throws {Error} if the wrapper address is invalid or amount is negative
75
+ */
76
+ export declare function buildApproveCalldata(wrapperAddress: string, amount: string | number | bigint): string;
77
+ /**
78
+ * Decodes ERC-20 `approve(spender, amount)` calldata.
79
+ *
80
+ * @param data ABI-encoded approve calldata (0x-prefixed)
81
+ * @returns `{ spender, amount }` with checksummed `spender` and decimal-string `amount`
82
+ * @throws {Error} if the selector is not `approve` or the arguments cannot be decoded
83
+ */
84
+ export declare function decodeApproveCalldata(data: string): {
85
+ spender: string;
86
+ amount: string;
87
+ };
88
+ /**
89
+ * Encodes ERC-7984 `wrap(to, amount)` calldata for the shield path.
90
+ *
91
+ * Calldata is sent to the confidential wrapper contract. `to` is the recipient of
92
+ * the minted encrypted balance (self-directed shields use the wallet base address).
93
+ * When `rate` is provided, validates that the minted `floor(amount / rate)` fits uint64 (`euint64`).
94
+ * `rate` is not encoded in calldata (deserialize round-trips omit it).
95
+ *
96
+ * Does not set gasLimit — WP owns gas.
97
+ *
98
+ * @param to Recipient of confidential tokens (checksummed / lowercased accepted)
99
+ * @param amount Underlying ERC-20 amount to wrap (base units); must be > 0
100
+ * @param rate Optional on-chain wrapper `rate()` for uint64 validation
101
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
102
+ * @throws {Error} if address/amount/rate is invalid or floor(amount / rate) exceeds uint64
103
+ */
104
+ export declare function buildWrapCalldata(to: string, amount: string | number | bigint, rate?: string | number | bigint): string;
105
+ /**
106
+ * Decodes ERC-7984 `wrap(to, amount)` calldata.
107
+ *
108
+ * @param data ABI-encoded wrap calldata (0x-prefixed)
109
+ * @returns `{ to, amount }` with checksummed `to` and decimal-string `amount`
110
+ */
111
+ export declare function decodeWrapCalldata(data: string): {
112
+ to: string;
113
+ amount: string;
114
+ };
115
+ /**
116
+ * Encodes ERC-7984 `unwrap(from, to, encryptedAmount, inputProof)` calldata for unshield.
117
+ *
118
+ * Calldata is sent to the confidential wrapper. Phase-1 unshield is self-directed:
119
+ * `from` and `to` are both the wallet base address. `encryptedAmount` is the
120
+ * FHE-encrypted burn amount (bytes32 handle) and `inputProof` is the Zama
121
+ * encryption proof — both produced by WP `ZamaRelayerService.encryptAmount`.
122
+ *
123
+ * Does not set gasLimit — WP owns gas.
124
+ *
125
+ * @param from Source of confidential balance (base address)
126
+ * @param to Recipient of released ERC-20 (base address in v1)
127
+ * @param encryptedAmount bytes32 encrypted amount handle (0x-prefixed)
128
+ * @param inputProof Encryption input proof bytes (0x-prefixed)
129
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
130
+ * @throws {Error} if addresses or ciphertext fields are invalid
131
+ */
132
+ export declare function buildUnwrapCalldata(from: string, to: string, encryptedAmount: string, inputProof: string): string;
133
+ /**
134
+ * Decodes ERC-7984 `unwrap(from, to, encryptedAmount, inputProof)` calldata.
135
+ *
136
+ * @param data ABI-encoded unwrap calldata (0x-prefixed)
137
+ */
138
+ export declare function decodeUnwrapCalldata(data: string): {
139
+ from: string;
140
+ to: string;
141
+ encryptedAmount: string;
142
+ inputProof: string;
143
+ };
144
+ /**
145
+ * Encodes ERC-7984 `finalizeUnwrap(requestId, cleartextAmount, decryptionProof)` calldata.
146
+ *
147
+ * Calldata is sent to the confidential wrapper to complete unshield phase-2 after
148
+ * the Zama oracle returns a cleartext amount and decryption proof for the unwrap
149
+ * request created in phase-1.
150
+ *
151
+ * Does not set gasLimit — WP owns gas.
152
+ *
153
+ * @param requestId bytes32 unwrap request id (0x-prefixed)
154
+ * @param cleartextAmount Decrypted confidential amount (uint64 domain); must be > 0
155
+ * @param decryptionProof Oracle decryption proof bytes (0x-prefixed)
156
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
157
+ * @throws {Error} if requestId, amount, or proof is invalid
158
+ */
159
+ export declare function buildFinalizeUnwrapCalldata(requestId: string, cleartextAmount: string | number | bigint, decryptionProof: string): string;
160
+ /**
161
+ * Decodes ERC-7984 `finalizeUnwrap(requestId, cleartextAmount, decryptionProof)` calldata.
162
+ *
163
+ * @param data ABI-encoded finalizeUnwrap calldata (0x-prefixed)
164
+ */
165
+ export declare function decodeFinalizeUnwrapCalldata(data: string): {
166
+ requestId: string;
167
+ cleartextAmount: string;
168
+ decryptionProof: string;
169
+ };
170
+ /**
171
+ * Encodes a single ACL.delegateForUserDecryption() call.
172
+ *
173
+ * Grants `delegateAddress` the right to decrypt ERC-7984 token balances on
174
+ * behalf of the calling address (msg.sender) for the specified token contract.
175
+ *
176
+ * @param delegateAddress BitGo enterprise viewing key address
177
+ * @param tokenContractAddress ERC-7984 token contract address
178
+ * @param expiryTimestamp Unix seconds; recommended: Math.floor(Date.now()/1000) + 365*86400
179
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
180
+ */
181
+ export declare function buildDelegationCalldata(delegateAddress: string, tokenContractAddress: string, expiryTimestamp: number): string;
182
+ /**
183
+ * Encodes N delegateForUserDecryption calls batched inside ACL.multicall().
184
+ *
185
+ * Produces a single TX that grants delegation for all specified token contracts.
186
+ * Requires tokenContractAddresses.length >= 1.
187
+ * Note: DecryptionDelegationBuilder always uses this function (even for a single token)
188
+ * to keep the transaction shape consistent regardless of token count.
189
+ *
190
+ * @param delegateAddress BitGo enterprise viewing key address
191
+ * @param tokenContractAddresses Array of ERC-7984 token contract addresses
192
+ * @param expiryTimestamp Unix seconds
193
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
194
+ */
195
+ export declare function buildMulticallDelegationCalldata(delegateAddress: string, tokenContractAddresses: string[], expiryTimestamp: number): string;
196
+ /**
197
+ * Wraps calldata in a ForwarderV4.callFromParent(target, 0, data) call.
198
+ *
199
+ * Used when a forwarder contract must be msg.sender for an external contract
200
+ * call — for example, when the forwarder itself needs to call
201
+ * ACL.delegateForUserDecryption() so that its own balance can be decrypted.
202
+ *
203
+ * Only the parentAddress (root wallet) is allowed to call callFromParent
204
+ * (enforced by the forwarder's onlyParent modifier).
205
+ *
206
+ * @param targetAddress Address of the contract the forwarder will call (e.g. ACL)
207
+ * @param calldata ABI-encoded inner calldata (e.g. from buildDelegationCalldata)
208
+ * @returns ABI-encoded callFromParent calldata hex string (0x-prefixed)
209
+ */
210
+ export declare function wrapInCallFromParent(targetAddress: string, calldata: string): string;
211
+ /**
212
+ * Decodes token contract addresses from delegation calldata.
213
+ *
214
+ * Handles two shapes of calldata:
215
+ * - Direct ACL.multicall(bytes[]) (root wallet path)
216
+ * - ForwarderV4.callFromParent(address, uint256, bytes) wrapping a multicall (forwarder path)
217
+ *
218
+ * @param calldata ABI-encoded delegation calldata (0x-prefixed or raw hex)
219
+ * @returns Array of token contract addresses (lowercase) found in the delegation calls
220
+ * @throws {Error} if the calldata does not start with a recognised method selector
221
+ */
222
+ export declare function decodeTokenAddressesFromDelegationCalldata(calldata: string): string[];
223
+ /**
224
+ * Encodes confidentialTransfer(address to, bytes32 encryptedHandle) calldata.
225
+ * Uses the no-proof variant (selector 0x5bebed7e) — valid when the caller (forwarder)
226
+ * is already ACL-allowed on the handle from when it received the tokens.
227
+ *
228
+ * @param toAddress Address that will receive the tokens
229
+ * @param encryptedHandle bytes32 encrypted balance handle from confidentialBalanceOf
230
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
231
+ */
232
+ export declare function buildConfidentialTransferByHandleCalldata(toAddress: string, encryptedHandle: string): string;
233
+ /**
234
+ * Encodes the full flush calldata for ERC-7984 forwarder consolidation:
235
+ * callFromParent(tokenContractAddress, 0, confidentialTransfer(parentAddress, encryptedHandle))
236
+ * The forwarder executes the inner confidentialTransfer with msg.sender = forwarder.
237
+ *
238
+ * @param tokenContractAddress ERC-7984 token contract address
239
+ * @param parentAddress Root wallet address (destination of flushed tokens)
240
+ * @param encryptedHandle bytes32 encrypted balance handle from confidentialBalanceOf
241
+ * @returns ABI-encoded calldata hex string (0x-prefixed)
242
+ */
243
+ export declare function buildFlushERC7984ForwarderTokenCalldata(tokenContractAddress: string, parentAddress: string, encryptedHandle: string): string;
244
+ /**
245
+ * Decodes a FlushERC7984ForwarderToken calldata.
246
+ * Strips the outer callFromParent wrapper and the inner confidentialTransfer.
247
+ * Returns { tokenContractAddress, parentAddress, encryptedHandle }.
248
+ *
249
+ * @param data ABI-encoded flush calldata (0x-prefixed)
250
+ * @returns Decoded fields
251
+ */
252
+ export declare function decodeFlushERC7984ForwarderTokenCalldata(data: string): {
253
+ tokenContractAddress: string;
254
+ parentAddress: string;
255
+ encryptedHandle: string;
256
+ };
257
+ //# sourceMappingURL=zamaUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zamaUtils.d.ts","sourceRoot":"","sources":["../../../src/lib/zamaUtils.ts"],"names":[],"mappings":"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"}