@aptos-labs/ts-sdk 6.3.1 → 7.0.1

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 (1405) hide show
  1. package/README.md +125 -24
  2. package/dist/account/AbstractKeylessAccount.d.ts +326 -0
  3. package/dist/account/AbstractKeylessAccount.d.ts.map +1 -0
  4. package/dist/account/AbstractKeylessAccount.js +440 -0
  5. package/dist/account/AbstractKeylessAccount.js.map +1 -0
  6. package/dist/account/AbstractedAccount.d.ts +61 -0
  7. package/dist/account/AbstractedAccount.d.ts.map +1 -0
  8. package/dist/account/AbstractedAccount.js +71 -0
  9. package/dist/account/AbstractedAccount.js.map +1 -0
  10. package/dist/account/Account.d.ts +302 -0
  11. package/dist/account/Account.d.ts.map +1 -0
  12. package/dist/account/Account.js +104 -0
  13. package/dist/account/Account.js.map +1 -0
  14. package/dist/account/AccountUtils.d.ts +25 -0
  15. package/dist/account/AccountUtils.d.ts.map +1 -0
  16. package/dist/account/AccountUtils.js +202 -0
  17. package/dist/account/AccountUtils.js.map +1 -0
  18. package/dist/account/DerivableAbstractedAccount.d.ts +51 -0
  19. package/dist/account/DerivableAbstractedAccount.d.ts.map +1 -0
  20. package/dist/account/DerivableAbstractedAccount.js +61 -0
  21. package/dist/account/DerivableAbstractedAccount.js.map +1 -0
  22. package/dist/account/Ed25519Account.d.ts +161 -0
  23. package/dist/account/Ed25519Account.d.ts.map +1 -0
  24. package/dist/account/Ed25519Account.js +149 -0
  25. package/dist/account/Ed25519Account.js.map +1 -0
  26. package/dist/account/EphemeralKeyPair.d.ts +159 -0
  27. package/dist/account/EphemeralKeyPair.d.ts.map +1 -0
  28. package/dist/account/EphemeralKeyPair.js +246 -0
  29. package/dist/account/EphemeralKeyPair.js.map +1 -0
  30. package/dist/account/FederatedKeylessAccount.d.ts +107 -0
  31. package/dist/account/FederatedKeylessAccount.d.ts.map +1 -0
  32. package/dist/account/FederatedKeylessAccount.js +129 -0
  33. package/dist/account/FederatedKeylessAccount.js.map +1 -0
  34. package/dist/account/KeylessAccount.d.ts +112 -0
  35. package/dist/account/KeylessAccount.d.ts.map +1 -0
  36. package/dist/account/KeylessAccount.js +133 -0
  37. package/dist/account/KeylessAccount.js.map +1 -0
  38. package/dist/account/MultiEd25519Account.d.ts +100 -0
  39. package/dist/account/MultiEd25519Account.d.ts.map +1 -0
  40. package/dist/account/MultiEd25519Account.js +134 -0
  41. package/dist/account/MultiEd25519Account.js.map +1 -0
  42. package/dist/account/MultiKeyAccount.d.ts +197 -0
  43. package/dist/account/MultiKeyAccount.d.ts.map +1 -0
  44. package/dist/account/MultiKeyAccount.js +233 -0
  45. package/dist/account/MultiKeyAccount.js.map +1 -0
  46. package/dist/account/SingleKeyAccount.d.ts +189 -0
  47. package/dist/account/SingleKeyAccount.d.ts.map +1 -0
  48. package/dist/account/SingleKeyAccount.js +182 -0
  49. package/dist/account/SingleKeyAccount.js.map +1 -0
  50. package/dist/account/index.d.ts +9 -0
  51. package/dist/account/index.d.ts.map +1 -0
  52. package/dist/account/index.js +17 -0
  53. package/dist/account/index.js.map +1 -0
  54. package/dist/account/keylessSigner.d.ts +22 -0
  55. package/dist/account/keylessSigner.d.ts.map +1 -0
  56. package/dist/account/keylessSigner.js +9 -0
  57. package/dist/account/keylessSigner.js.map +1 -0
  58. package/dist/account/utils.d.ts +8 -0
  59. package/dist/account/utils.d.ts.map +1 -0
  60. package/dist/account/utils.js +12 -0
  61. package/dist/account/utils.js.map +1 -0
  62. package/dist/api/account/abstraction.d.ts +176 -0
  63. package/dist/api/account/abstraction.d.ts.map +1 -0
  64. package/dist/api/account/abstraction.js +203 -0
  65. package/dist/api/account/abstraction.js.map +1 -0
  66. package/dist/api/account.d.ts +845 -0
  67. package/dist/api/account.d.ts.map +1 -0
  68. package/dist/api/account.js +965 -0
  69. package/dist/api/account.js.map +1 -0
  70. package/dist/api/ans.d.ts +565 -0
  71. package/dist/api/ans.d.ts.map +1 -0
  72. package/dist/api/ans.js +537 -0
  73. package/dist/api/ans.js.map +1 -0
  74. package/dist/api/aptos.d.ts +73 -0
  75. package/dist/api/aptos.d.ts.map +1 -0
  76. package/dist/api/aptos.js +162 -0
  77. package/dist/api/aptos.js.map +1 -0
  78. package/dist/api/aptosConfig.d.ts +215 -0
  79. package/dist/api/aptosConfig.d.ts.map +1 -0
  80. package/dist/api/aptosConfig.js +316 -0
  81. package/dist/api/aptosConfig.js.map +1 -0
  82. package/dist/api/coin.d.ts +77 -0
  83. package/dist/api/coin.d.ts.map +1 -0
  84. package/dist/api/coin.js +73 -0
  85. package/dist/api/coin.js.map +1 -0
  86. package/dist/api/digitalAsset.d.ts +1026 -0
  87. package/dist/api/digitalAsset.d.ts.map +1 -0
  88. package/dist/api/digitalAsset.js +987 -0
  89. package/dist/api/digitalAsset.js.map +1 -0
  90. package/dist/api/faucet.d.ts +74 -0
  91. package/dist/api/faucet.d.ts.map +1 -0
  92. package/dist/api/faucet.js +86 -0
  93. package/dist/api/faucet.js.map +1 -0
  94. package/dist/api/fungibleAsset.d.ts +285 -0
  95. package/dist/api/fungibleAsset.d.ts.map +1 -0
  96. package/dist/api/fungibleAsset.js +314 -0
  97. package/dist/api/fungibleAsset.js.map +1 -0
  98. package/dist/api/general.d.ts +298 -0
  99. package/dist/api/general.d.ts.map +1 -0
  100. package/dist/api/general.js +311 -0
  101. package/dist/api/general.js.map +1 -0
  102. package/dist/api/index.d.ts +3 -0
  103. package/dist/api/index.d.ts.map +1 -0
  104. package/dist/api/index.js +5 -0
  105. package/dist/api/index.js.map +1 -0
  106. package/dist/api/keyless.d.ts +160 -0
  107. package/dist/api/keyless.d.ts.map +1 -0
  108. package/dist/api/keyless.js +176 -0
  109. package/dist/api/keyless.js.map +1 -0
  110. package/dist/api/object.d.ts +74 -0
  111. package/dist/api/object.d.ts.map +1 -0
  112. package/dist/api/object.js +84 -0
  113. package/dist/api/object.js.map +1 -0
  114. package/dist/api/staking.d.ts +128 -0
  115. package/dist/api/staking.d.ts.map +1 -0
  116. package/dist/api/staking.js +143 -0
  117. package/dist/api/staking.js.map +1 -0
  118. package/dist/api/table.d.ts +163 -0
  119. package/dist/api/table.d.ts.map +1 -0
  120. package/dist/api/table.js +171 -0
  121. package/dist/api/table.js.map +1 -0
  122. package/dist/api/transaction.d.ts +672 -0
  123. package/dist/api/transaction.d.ts.map +1 -0
  124. package/dist/api/transaction.js +694 -0
  125. package/dist/api/transaction.js.map +1 -0
  126. package/dist/api/transactionSubmission/build.d.ts +137 -0
  127. package/dist/api/transactionSubmission/build.d.ts.map +1 -0
  128. package/dist/api/transactionSubmission/build.js +130 -0
  129. package/dist/api/transactionSubmission/build.js.map +1 -0
  130. package/dist/api/transactionSubmission/helpers.d.ts +91 -0
  131. package/dist/api/transactionSubmission/helpers.d.ts.map +1 -0
  132. package/dist/api/transactionSubmission/helpers.js +99 -0
  133. package/dist/api/transactionSubmission/helpers.js.map +1 -0
  134. package/dist/api/transactionSubmission/management.d.ts +159 -0
  135. package/dist/api/transactionSubmission/management.d.ts.map +1 -0
  136. package/dist/api/transactionSubmission/management.js +192 -0
  137. package/dist/api/transactionSubmission/management.js.map +1 -0
  138. package/dist/api/transactionSubmission/sign.d.ts +117 -0
  139. package/dist/api/transactionSubmission/sign.d.ts.map +1 -0
  140. package/dist/api/transactionSubmission/sign.js +130 -0
  141. package/dist/api/transactionSubmission/sign.js.map +1 -0
  142. package/dist/api/transactionSubmission/simulate.d.ts +176 -0
  143. package/dist/api/transactionSubmission/simulate.d.ts.map +1 -0
  144. package/dist/api/transactionSubmission/simulate.js +183 -0
  145. package/dist/api/transactionSubmission/simulate.js.map +1 -0
  146. package/dist/api/transactionSubmission/submit.d.ts +136 -0
  147. package/dist/api/transactionSubmission/submit.d.ts.map +1 -0
  148. package/dist/api/transactionSubmission/submit.js +136 -0
  149. package/dist/api/transactionSubmission/submit.js.map +1 -0
  150. package/dist/api/utils.d.ts +39 -0
  151. package/dist/api/utils.d.ts.map +1 -0
  152. package/dist/api/utils.js +41 -0
  153. package/dist/api/utils.js.map +1 -0
  154. package/dist/bcs/consts.d.ts +20 -0
  155. package/dist/bcs/consts.d.ts.map +1 -0
  156. package/dist/bcs/consts.js +24 -0
  157. package/dist/bcs/consts.js.map +1 -0
  158. package/dist/bcs/deserializer.d.ts +365 -0
  159. package/dist/bcs/deserializer.d.ts.map +1 -0
  160. package/dist/bcs/deserializer.js +470 -0
  161. package/dist/bcs/deserializer.js.map +1 -0
  162. package/dist/bcs/index.d.ts +7 -0
  163. package/dist/bcs/index.d.ts.map +1 -0
  164. package/dist/bcs/index.js +9 -0
  165. package/dist/bcs/index.js.map +1 -0
  166. package/dist/bcs/serializable/entryFunctionBytes.d.ts +60 -0
  167. package/dist/bcs/serializable/entryFunctionBytes.d.ts.map +1 -0
  168. package/dist/bcs/serializable/entryFunctionBytes.js +82 -0
  169. package/dist/bcs/serializable/entryFunctionBytes.js.map +1 -0
  170. package/dist/bcs/serializable/fixedBytes.d.ts +86 -0
  171. package/dist/bcs/serializable/fixedBytes.d.ts.map +1 -0
  172. package/dist/bcs/serializable/fixedBytes.js +98 -0
  173. package/dist/bcs/serializable/fixedBytes.js.map +1 -0
  174. package/dist/bcs/serializable/movePrimitives.d.ts +267 -0
  175. package/dist/bcs/serializable/movePrimitives.d.ts.map +1 -0
  176. package/dist/bcs/serializable/movePrimitives.js +448 -0
  177. package/dist/bcs/serializable/movePrimitives.js.map +1 -0
  178. package/dist/bcs/serializable/moveStructs.d.ts +596 -0
  179. package/dist/bcs/serializable/moveStructs.d.ts.map +1 -0
  180. package/dist/bcs/serializable/moveStructs.js +748 -0
  181. package/dist/bcs/serializable/moveStructs.js.map +1 -0
  182. package/dist/bcs/serializer.d.ts +442 -0
  183. package/dist/bcs/serializer.d.ts.map +1 -0
  184. package/dist/bcs/serializer.js +747 -0
  185. package/dist/bcs/serializer.js.map +1 -0
  186. package/dist/cli/index.d.ts +3 -0
  187. package/dist/cli/index.d.ts.map +1 -0
  188. package/dist/cli/index.js +3 -0
  189. package/dist/cli/index.js.map +1 -0
  190. package/dist/cli/localNode.d.ts +65 -0
  191. package/dist/cli/localNode.d.ts.map +1 -0
  192. package/dist/cli/localNode.js +149 -0
  193. package/dist/cli/localNode.js.map +1 -0
  194. package/dist/cli/move.d.ts +250 -0
  195. package/dist/cli/move.d.ts.map +1 -0
  196. package/dist/cli/move.js +364 -0
  197. package/dist/cli/move.js.map +1 -0
  198. package/dist/client/core.d.ts +37 -0
  199. package/dist/client/core.d.ts.map +1 -0
  200. package/dist/client/core.js +116 -0
  201. package/dist/client/core.js.map +1 -0
  202. package/dist/client/get.d.ts +119 -0
  203. package/dist/client/get.d.ts.map +1 -0
  204. package/dist/client/get.js +165 -0
  205. package/dist/client/get.js.map +1 -0
  206. package/dist/client/index.d.ts +4 -0
  207. package/dist/client/index.d.ts.map +1 -0
  208. package/dist/client/index.js +6 -0
  209. package/dist/client/index.js.map +1 -0
  210. package/dist/client/post.d.ts +155 -0
  211. package/dist/client/post.d.ts.map +1 -0
  212. package/dist/client/post.js +151 -0
  213. package/dist/client/post.js.map +1 -0
  214. package/dist/core/account/index.d.ts +2 -0
  215. package/dist/core/account/index.d.ts.map +1 -0
  216. package/dist/core/account/index.js +2 -0
  217. package/dist/core/account/index.js.map +1 -0
  218. package/dist/core/account/utils/address.d.ts +47 -0
  219. package/dist/core/account/utils/address.d.ts.map +1 -0
  220. package/dist/core/account/utils/address.js +68 -0
  221. package/dist/core/account/utils/address.js.map +1 -0
  222. package/dist/core/account/utils/index.d.ts +2 -0
  223. package/dist/core/account/utils/index.d.ts.map +1 -0
  224. package/dist/core/account/utils/index.js +2 -0
  225. package/dist/core/account/utils/index.js.map +1 -0
  226. package/dist/core/accountAddress.d.ts +327 -0
  227. package/dist/core/accountAddress.d.ts.map +1 -0
  228. package/dist/core/accountAddress.js +457 -0
  229. package/dist/core/accountAddress.js.map +1 -0
  230. package/dist/core/authenticationKey.d.ts +129 -0
  231. package/dist/core/authenticationKey.d.ts.map +1 -0
  232. package/dist/core/authenticationKey.js +155 -0
  233. package/dist/core/authenticationKey.js.map +1 -0
  234. package/dist/core/common.d.ts +51 -0
  235. package/dist/core/common.d.ts.map +1 -0
  236. package/dist/core/common.js +30 -0
  237. package/dist/core/common.js.map +1 -0
  238. package/dist/core/crypto/abstraction.d.ts +21 -0
  239. package/dist/core/crypto/abstraction.d.ts.map +1 -0
  240. package/dist/core/crypto/abstraction.js +37 -0
  241. package/dist/core/crypto/abstraction.js.map +1 -0
  242. package/dist/core/crypto/anyKeyRegistry.d.ts +45 -0
  243. package/dist/core/crypto/anyKeyRegistry.d.ts.map +1 -0
  244. package/dist/core/crypto/anyKeyRegistry.js +59 -0
  245. package/dist/core/crypto/anyKeyRegistry.js.map +1 -0
  246. package/dist/core/crypto/deserializationUtils.d.ts +22 -0
  247. package/dist/core/crypto/deserializationUtils.d.ts.map +1 -0
  248. package/dist/core/crypto/deserializationUtils.js +89 -0
  249. package/dist/core/crypto/deserializationUtils.js.map +1 -0
  250. package/dist/core/crypto/ed25519.d.ts +330 -0
  251. package/dist/core/crypto/ed25519.d.ts.map +1 -0
  252. package/dist/core/crypto/ed25519.js +502 -0
  253. package/dist/core/crypto/ed25519.js.map +1 -0
  254. package/dist/core/crypto/encryption/ciphertext.d.ts +49 -0
  255. package/dist/core/crypto/encryption/ciphertext.d.ts.map +1 -0
  256. package/dist/core/crypto/encryption/ciphertext.js +166 -0
  257. package/dist/core/crypto/encryption/ciphertext.js.map +1 -0
  258. package/dist/core/crypto/encryption/curveSerialization.d.ts +17 -0
  259. package/dist/core/crypto/encryption/curveSerialization.d.ts.map +1 -0
  260. package/dist/core/crypto/encryption/curveSerialization.js +38 -0
  261. package/dist/core/crypto/encryption/curveSerialization.js.map +1 -0
  262. package/dist/core/crypto/encryption/fieldSerialization.d.ts +12 -0
  263. package/dist/core/crypto/encryption/fieldSerialization.d.ts.map +1 -0
  264. package/dist/core/crypto/encryption/fieldSerialization.js +70 -0
  265. package/dist/core/crypto/encryption/fieldSerialization.js.map +1 -0
  266. package/dist/core/crypto/encryption/index.d.ts +11 -0
  267. package/dist/core/crypto/encryption/index.d.ts.map +1 -0
  268. package/dist/core/crypto/encryption/index.js +13 -0
  269. package/dist/core/crypto/encryption/index.js.map +1 -0
  270. package/dist/core/crypto/encryption/symmetric.d.ts +38 -0
  271. package/dist/core/crypto/encryption/symmetric.d.ts.map +1 -0
  272. package/dist/core/crypto/encryption/symmetric.js +124 -0
  273. package/dist/core/crypto/encryption/symmetric.js.map +1 -0
  274. package/dist/core/crypto/ephemeral.d.ts +112 -0
  275. package/dist/core/crypto/ephemeral.d.ts.map +1 -0
  276. package/dist/core/crypto/ephemeral.js +170 -0
  277. package/dist/core/crypto/ephemeral.js.map +1 -0
  278. package/dist/core/crypto/federatedKeyless.d.ts +106 -0
  279. package/dist/core/crypto/federatedKeyless.d.ts.map +1 -0
  280. package/dist/core/crypto/federatedKeyless.js +125 -0
  281. package/dist/core/crypto/federatedKeyless.js.map +1 -0
  282. package/dist/core/crypto/hdKey.d.ts +90 -0
  283. package/dist/core/crypto/hdKey.d.ts.map +1 -0
  284. package/dist/core/crypto/hdKey.js +118 -0
  285. package/dist/core/crypto/hdKey.js.map +1 -0
  286. package/dist/core/crypto/index.d.ts +13 -0
  287. package/dist/core/crypto/index.d.ts.map +1 -0
  288. package/dist/core/crypto/index.js +26 -0
  289. package/dist/core/crypto/index.js.map +1 -0
  290. package/dist/core/crypto/keyless.d.ts +788 -0
  291. package/dist/core/crypto/keyless.d.ts.map +1 -0
  292. package/dist/core/crypto/keyless.js +1482 -0
  293. package/dist/core/crypto/keyless.js.map +1 -0
  294. package/dist/core/crypto/keylessRegistration.d.ts +2 -0
  295. package/dist/core/crypto/keylessRegistration.d.ts.map +1 -0
  296. package/dist/core/crypto/keylessRegistration.js +16 -0
  297. package/dist/core/crypto/keylessRegistration.js.map +1 -0
  298. package/dist/core/crypto/multiEd25519.d.ts +228 -0
  299. package/dist/core/crypto/multiEd25519.d.ts.map +1 -0
  300. package/dist/core/crypto/multiEd25519.js +361 -0
  301. package/dist/core/crypto/multiEd25519.js.map +1 -0
  302. package/dist/core/crypto/multiKey.d.ts +248 -0
  303. package/dist/core/crypto/multiKey.d.ts.map +1 -0
  304. package/dist/core/crypto/multiKey.js +417 -0
  305. package/dist/core/crypto/multiKey.js.map +1 -0
  306. package/dist/core/crypto/poseidon.d.ts +58 -0
  307. package/dist/core/crypto/poseidon.d.ts.map +1 -0
  308. package/dist/core/crypto/poseidon.js +196 -0
  309. package/dist/core/crypto/poseidon.js.map +1 -0
  310. package/dist/core/crypto/privateKey.d.ts +64 -0
  311. package/dist/core/crypto/privateKey.d.ts.map +1 -0
  312. package/dist/core/crypto/privateKey.js +74 -0
  313. package/dist/core/crypto/privateKey.js.map +1 -0
  314. package/dist/core/crypto/proof.d.ts +10 -0
  315. package/dist/core/crypto/proof.d.ts.map +1 -0
  316. package/dist/core/crypto/proof.js +10 -0
  317. package/dist/core/crypto/proof.js.map +1 -0
  318. package/dist/core/crypto/publicKey.d.ts +92 -0
  319. package/dist/core/crypto/publicKey.d.ts.map +1 -0
  320. package/dist/core/crypto/publicKey.js +54 -0
  321. package/dist/core/crypto/publicKey.js.map +1 -0
  322. package/dist/core/crypto/secp256k1.d.ts +303 -0
  323. package/dist/core/crypto/secp256k1.d.ts.map +1 -0
  324. package/dist/core/crypto/secp256k1.js +455 -0
  325. package/dist/core/crypto/secp256k1.js.map +1 -0
  326. package/dist/core/crypto/secp256r1.d.ts +304 -0
  327. package/dist/core/crypto/secp256r1.d.ts.map +1 -0
  328. package/dist/core/crypto/secp256r1.js +444 -0
  329. package/dist/core/crypto/secp256r1.js.map +1 -0
  330. package/dist/core/crypto/signature.d.ts +35 -0
  331. package/dist/core/crypto/signature.d.ts.map +1 -0
  332. package/dist/core/crypto/signature.js +55 -0
  333. package/dist/core/crypto/signature.js.map +1 -0
  334. package/dist/core/crypto/singleKey.d.ts +175 -0
  335. package/dist/core/crypto/singleKey.d.ts.map +1 -0
  336. package/dist/core/crypto/singleKey.js +324 -0
  337. package/dist/core/crypto/singleKey.js.map +1 -0
  338. package/dist/core/crypto/types.d.ts +6 -0
  339. package/dist/core/crypto/types.d.ts.map +1 -0
  340. package/dist/core/crypto/types.js +2 -0
  341. package/dist/core/crypto/types.js.map +1 -0
  342. package/dist/core/crypto/utils.d.ts +16 -0
  343. package/dist/core/crypto/utils.d.ts.map +1 -0
  344. package/dist/core/crypto/utils.js +64 -0
  345. package/dist/core/crypto/utils.js.map +1 -0
  346. package/dist/core/hex.d.ts +154 -0
  347. package/dist/core/hex.d.ts.map +1 -0
  348. package/dist/core/hex.js +219 -0
  349. package/dist/core/hex.js.map +1 -0
  350. package/dist/core/index.d.ts +7 -0
  351. package/dist/core/index.d.ts.map +1 -0
  352. package/dist/core/index.js +9 -0
  353. package/dist/core/index.js.map +1 -0
  354. package/dist/errors/index.d.ts +125 -0
  355. package/dist/errors/index.d.ts.map +1 -0
  356. package/dist/errors/index.js +367 -0
  357. package/dist/errors/index.js.map +1 -0
  358. package/dist/functions/abstraction.d.ts +4 -0
  359. package/dist/functions/abstraction.d.ts.map +1 -0
  360. package/dist/functions/abstraction.js +6 -0
  361. package/dist/functions/abstraction.js.map +1 -0
  362. package/dist/functions/account.d.ts +8 -0
  363. package/dist/functions/account.d.ts.map +1 -0
  364. package/dist/functions/account.js +10 -0
  365. package/dist/functions/account.js.map +1 -0
  366. package/dist/functions/ans.d.ts +4 -0
  367. package/dist/functions/ans.d.ts.map +1 -0
  368. package/dist/functions/ans.js +6 -0
  369. package/dist/functions/ans.js.map +1 -0
  370. package/dist/functions/coin.d.ts +4 -0
  371. package/dist/functions/coin.d.ts.map +1 -0
  372. package/dist/functions/coin.js +6 -0
  373. package/dist/functions/coin.js.map +1 -0
  374. package/dist/functions/digitalAsset.d.ts +4 -0
  375. package/dist/functions/digitalAsset.d.ts.map +1 -0
  376. package/dist/functions/digitalAsset.js +6 -0
  377. package/dist/functions/digitalAsset.js.map +1 -0
  378. package/dist/functions/faucet.d.ts +4 -0
  379. package/dist/functions/faucet.d.ts.map +1 -0
  380. package/dist/functions/faucet.js +6 -0
  381. package/dist/functions/faucet.js.map +1 -0
  382. package/dist/functions/fungibleAsset.d.ts +4 -0
  383. package/dist/functions/fungibleAsset.d.ts.map +1 -0
  384. package/dist/functions/fungibleAsset.js +6 -0
  385. package/dist/functions/fungibleAsset.js.map +1 -0
  386. package/dist/functions/general.d.ts +4 -0
  387. package/dist/functions/general.d.ts.map +1 -0
  388. package/dist/functions/general.js +6 -0
  389. package/dist/functions/general.js.map +1 -0
  390. package/dist/functions/index.d.ts +18 -0
  391. package/dist/functions/index.d.ts.map +1 -0
  392. package/dist/functions/index.js +20 -0
  393. package/dist/functions/index.js.map +1 -0
  394. package/dist/functions/keyless.d.ts +16 -0
  395. package/dist/functions/keyless.d.ts.map +1 -0
  396. package/dist/functions/keyless.js +23 -0
  397. package/dist/functions/keyless.js.map +1 -0
  398. package/dist/functions/object.d.ts +4 -0
  399. package/dist/functions/object.d.ts.map +1 -0
  400. package/dist/functions/object.js +6 -0
  401. package/dist/functions/object.js.map +1 -0
  402. package/dist/functions/staking.d.ts +4 -0
  403. package/dist/functions/staking.d.ts.map +1 -0
  404. package/dist/functions/staking.js +6 -0
  405. package/dist/functions/staking.js.map +1 -0
  406. package/dist/functions/table.d.ts +4 -0
  407. package/dist/functions/table.d.ts.map +1 -0
  408. package/dist/functions/table.js +6 -0
  409. package/dist/functions/table.js.map +1 -0
  410. package/dist/functions/transaction.d.ts +5 -0
  411. package/dist/functions/transaction.d.ts.map +1 -0
  412. package/dist/functions/transaction.js +7 -0
  413. package/dist/functions/transaction.js.map +1 -0
  414. package/dist/functions/view.d.ts +3 -0
  415. package/dist/functions/view.d.ts.map +1 -0
  416. package/dist/functions/view.js +5 -0
  417. package/dist/functions/view.js.map +1 -0
  418. package/dist/index.d.ts +12 -0
  419. package/dist/index.d.ts.map +1 -0
  420. package/dist/index.js +29 -0
  421. package/dist/index.js.map +1 -0
  422. package/dist/internal/abstraction.d.ts +22 -0
  423. package/dist/internal/abstraction.d.ts.map +1 -0
  424. package/dist/internal/abstraction.js +54 -0
  425. package/dist/internal/abstraction.js.map +1 -0
  426. package/dist/internal/account.d.ts +457 -0
  427. package/dist/internal/account.d.ts.map +1 -0
  428. package/dist/internal/account.js +1164 -0
  429. package/dist/internal/account.js.map +1 -0
  430. package/dist/internal/ans.d.ts +414 -0
  431. package/dist/internal/ans.d.ts.map +1 -0
  432. package/dist/internal/ans.js +769 -0
  433. package/dist/internal/ans.js.map +1 -0
  434. package/dist/internal/coin.d.ts +27 -0
  435. package/dist/internal/coin.d.ts.map +1 -0
  436. package/dist/internal/coin.js +36 -0
  437. package/dist/internal/coin.js.map +1 -0
  438. package/dist/internal/digitalAsset.d.ts +577 -0
  439. package/dist/internal/digitalAsset.d.ts.map +1 -0
  440. package/dist/internal/digitalAsset.js +900 -0
  441. package/dist/internal/digitalAsset.js.map +1 -0
  442. package/dist/internal/encryptionKey.d.ts +20 -0
  443. package/dist/internal/encryptionKey.d.ts.map +1 -0
  444. package/dist/internal/encryptionKey.js +33 -0
  445. package/dist/internal/encryptionKey.js.map +1 -0
  446. package/dist/internal/faucet.d.ts +35 -0
  447. package/dist/internal/faucet.d.ts.map +1 -0
  448. package/dist/internal/faucet.js +53 -0
  449. package/dist/internal/faucet.js.map +1 -0
  450. package/dist/internal/fungibleAsset.d.ts +108 -0
  451. package/dist/internal/fungibleAsset.d.ts.map +1 -0
  452. package/dist/internal/fungibleAsset.js +155 -0
  453. package/dist/internal/fungibleAsset.js.map +1 -0
  454. package/dist/internal/general.d.ts +87 -0
  455. package/dist/internal/general.d.ts.map +1 -0
  456. package/dist/internal/general.js +136 -0
  457. package/dist/internal/general.js.map +1 -0
  458. package/dist/internal/keyless.d.ts +101 -0
  459. package/dist/internal/keyless.d.ts.map +1 -0
  460. package/dist/internal/keyless.js +191 -0
  461. package/dist/internal/keyless.js.map +1 -0
  462. package/dist/internal/object.d.ts +37 -0
  463. package/dist/internal/object.d.ts.map +1 -0
  464. package/dist/internal/object.js +53 -0
  465. package/dist/internal/object.js.map +1 -0
  466. package/dist/internal/staking.d.ts +53 -0
  467. package/dist/internal/staking.d.ts.map +1 -0
  468. package/dist/internal/staking.js +71 -0
  469. package/dist/internal/staking.js.map +1 -0
  470. package/dist/internal/table.d.ts +60 -0
  471. package/dist/internal/table.d.ts.map +1 -0
  472. package/dist/internal/table.js +86 -0
  473. package/dist/internal/table.js.map +1 -0
  474. package/dist/internal/transaction.d.ts +192 -0
  475. package/dist/internal/transaction.d.ts.map +1 -0
  476. package/dist/internal/transaction.js +399 -0
  477. package/dist/internal/transaction.js.map +1 -0
  478. package/dist/internal/transactionSubmission.d.ts +177 -0
  479. package/dist/internal/transactionSubmission.d.ts.map +1 -0
  480. package/dist/internal/transactionSubmission.js +411 -0
  481. package/dist/internal/transactionSubmission.js.map +1 -0
  482. package/dist/internal/utils/index.d.ts +2 -0
  483. package/dist/internal/utils/index.d.ts.map +1 -0
  484. package/dist/internal/utils/index.js +4 -0
  485. package/dist/internal/utils/index.js.map +1 -0
  486. package/dist/internal/utils/utils.d.ts +35 -0
  487. package/dist/internal/utils/utils.d.ts.map +1 -0
  488. package/dist/internal/utils/utils.js +63 -0
  489. package/dist/internal/utils/utils.js.map +1 -0
  490. package/dist/internal/view.d.ts +14 -0
  491. package/dist/internal/view.d.ts.map +1 -0
  492. package/dist/internal/view.js +41 -0
  493. package/dist/internal/view.js.map +1 -0
  494. package/dist/transactions/authenticator/account.d.ts +193 -0
  495. package/dist/transactions/authenticator/account.d.ts.map +1 -0
  496. package/dist/transactions/authenticator/account.js +346 -0
  497. package/dist/transactions/authenticator/account.js.map +1 -0
  498. package/dist/transactions/authenticator/index.d.ts +3 -0
  499. package/dist/transactions/authenticator/index.d.ts.map +1 -0
  500. package/dist/transactions/authenticator/index.js +5 -0
  501. package/dist/transactions/authenticator/index.js.map +1 -0
  502. package/dist/transactions/authenticator/transaction.d.ts +148 -0
  503. package/dist/transactions/authenticator/transaction.d.ts.map +1 -0
  504. package/dist/transactions/authenticator/transaction.js +239 -0
  505. package/dist/transactions/authenticator/transaction.js.map +1 -0
  506. package/dist/transactions/index.d.ts +7 -0
  507. package/dist/transactions/index.d.ts.map +1 -0
  508. package/dist/transactions/index.js +9 -0
  509. package/dist/transactions/index.js.map +1 -0
  510. package/dist/transactions/instances/chainId.d.ts +39 -0
  511. package/dist/transactions/instances/chainId.d.ts.map +1 -0
  512. package/dist/transactions/instances/chainId.js +48 -0
  513. package/dist/transactions/instances/chainId.js.map +1 -0
  514. package/dist/transactions/instances/encryptedPayload.d.ts +65 -0
  515. package/dist/transactions/instances/encryptedPayload.d.ts.map +1 -0
  516. package/dist/transactions/instances/encryptedPayload.js +122 -0
  517. package/dist/transactions/instances/encryptedPayload.js.map +1 -0
  518. package/dist/transactions/instances/identifier.d.ts +40 -0
  519. package/dist/transactions/instances/identifier.d.ts.map +1 -0
  520. package/dist/transactions/instances/identifier.js +49 -0
  521. package/dist/transactions/instances/identifier.js.map +1 -0
  522. package/dist/transactions/instances/index.d.ts +12 -0
  523. package/dist/transactions/instances/index.d.ts.map +1 -0
  524. package/dist/transactions/instances/index.js +14 -0
  525. package/dist/transactions/instances/index.js.map +1 -0
  526. package/dist/transactions/instances/moduleId.d.ts +52 -0
  527. package/dist/transactions/instances/moduleId.d.ts.map +1 -0
  528. package/dist/transactions/instances/moduleId.js +69 -0
  529. package/dist/transactions/instances/moduleId.js.map +1 -0
  530. package/dist/transactions/instances/multiAgentTransaction.d.ts +50 -0
  531. package/dist/transactions/instances/multiAgentTransaction.d.ts.map +1 -0
  532. package/dist/transactions/instances/multiAgentTransaction.js +75 -0
  533. package/dist/transactions/instances/multiAgentTransaction.js.map +1 -0
  534. package/dist/transactions/instances/rawTransaction.d.ts +142 -0
  535. package/dist/transactions/instances/rawTransaction.d.ts.map +1 -0
  536. package/dist/transactions/instances/rawTransaction.js +202 -0
  537. package/dist/transactions/instances/rawTransaction.js.map +1 -0
  538. package/dist/transactions/instances/rotationProofChallenge.d.ts +54 -0
  539. package/dist/transactions/instances/rotationProofChallenge.d.ts.map +1 -0
  540. package/dist/transactions/instances/rotationProofChallenge.js +70 -0
  541. package/dist/transactions/instances/rotationProofChallenge.js.map +1 -0
  542. package/dist/transactions/instances/signedTransaction.d.ts +53 -0
  543. package/dist/transactions/instances/signedTransaction.d.ts.map +1 -0
  544. package/dist/transactions/instances/signedTransaction.js +65 -0
  545. package/dist/transactions/instances/signedTransaction.js.map +1 -0
  546. package/dist/transactions/instances/simpleTransaction.d.ts +49 -0
  547. package/dist/transactions/instances/simpleTransaction.d.ts.map +1 -0
  548. package/dist/transactions/instances/simpleTransaction.js +73 -0
  549. package/dist/transactions/instances/simpleTransaction.js.map +1 -0
  550. package/dist/transactions/instances/transactionArgument.d.ts +71 -0
  551. package/dist/transactions/instances/transactionArgument.d.ts.map +1 -0
  552. package/dist/transactions/instances/transactionArgument.js +4 -0
  553. package/dist/transactions/instances/transactionArgument.js.map +1 -0
  554. package/dist/transactions/instances/transactionPayload.d.ts +369 -0
  555. package/dist/transactions/instances/transactionPayload.d.ts.map +1 -0
  556. package/dist/transactions/instances/transactionPayload.js +668 -0
  557. package/dist/transactions/instances/transactionPayload.js.map +1 -0
  558. package/dist/transactions/management/accountSequenceNumber.d.ts +114 -0
  559. package/dist/transactions/management/accountSequenceNumber.d.ts.map +1 -0
  560. package/dist/transactions/management/accountSequenceNumber.js +197 -0
  561. package/dist/transactions/management/accountSequenceNumber.js.map +1 -0
  562. package/dist/transactions/management/asyncQueue.d.ts +76 -0
  563. package/dist/transactions/management/asyncQueue.d.ts.map +1 -0
  564. package/dist/transactions/management/asyncQueue.js +105 -0
  565. package/dist/transactions/management/asyncQueue.js.map +1 -0
  566. package/dist/transactions/management/index.d.ts +3 -0
  567. package/dist/transactions/management/index.d.ts.map +1 -0
  568. package/dist/transactions/management/index.js +3 -0
  569. package/dist/transactions/management/index.js.map +1 -0
  570. package/dist/transactions/management/transactionWorker.d.ts +213 -0
  571. package/dist/transactions/management/transactionWorker.d.ts.map +1 -0
  572. package/dist/transactions/management/transactionWorker.js +347 -0
  573. package/dist/transactions/management/transactionWorker.js.map +1 -0
  574. package/dist/transactions/transactionBuilder/encryptPayload.d.ts +21 -0
  575. package/dist/transactions/transactionBuilder/encryptPayload.d.ts.map +1 -0
  576. package/dist/transactions/transactionBuilder/encryptPayload.js +159 -0
  577. package/dist/transactions/transactionBuilder/encryptPayload.js.map +1 -0
  578. package/dist/transactions/transactionBuilder/helpers.d.ts +184 -0
  579. package/dist/transactions/transactionBuilder/helpers.d.ts.map +1 -0
  580. package/dist/transactions/transactionBuilder/helpers.js +344 -0
  581. package/dist/transactions/transactionBuilder/helpers.js.map +1 -0
  582. package/dist/transactions/transactionBuilder/index.d.ts +6 -0
  583. package/dist/transactions/transactionBuilder/index.d.ts.map +1 -0
  584. package/dist/transactions/transactionBuilder/index.js +8 -0
  585. package/dist/transactions/transactionBuilder/index.js.map +1 -0
  586. package/dist/transactions/transactionBuilder/remoteAbi.d.ts +167 -0
  587. package/dist/transactions/transactionBuilder/remoteAbi.d.ts.map +1 -0
  588. package/dist/transactions/transactionBuilder/remoteAbi.js +1088 -0
  589. package/dist/transactions/transactionBuilder/remoteAbi.js.map +1 -0
  590. package/dist/transactions/transactionBuilder/signingMessage.d.ts +55 -0
  591. package/dist/transactions/transactionBuilder/signingMessage.d.ts.map +1 -0
  592. package/dist/transactions/transactionBuilder/signingMessage.js +94 -0
  593. package/dist/transactions/transactionBuilder/signingMessage.js.map +1 -0
  594. package/dist/transactions/transactionBuilder/structEnumParser.d.ts +225 -0
  595. package/dist/transactions/transactionBuilder/structEnumParser.d.ts.map +1 -0
  596. package/dist/transactions/transactionBuilder/structEnumParser.js +690 -0
  597. package/dist/transactions/transactionBuilder/structEnumParser.js.map +1 -0
  598. package/dist/transactions/transactionBuilder/transactionBuilder.d.ts +198 -0
  599. package/dist/transactions/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  600. package/dist/transactions/transactionBuilder/transactionBuilder.js +586 -0
  601. package/dist/transactions/transactionBuilder/transactionBuilder.js.map +1 -0
  602. package/dist/transactions/typeTag/index.d.ts +544 -0
  603. package/dist/transactions/typeTag/index.d.ts.map +1 -0
  604. package/dist/transactions/typeTag/index.js +826 -0
  605. package/dist/transactions/typeTag/index.js.map +1 -0
  606. package/dist/transactions/typeTag/parser.d.ts +73 -0
  607. package/dist/transactions/typeTag/parser.d.ts.map +1 -0
  608. package/dist/transactions/typeTag/parser.js +368 -0
  609. package/dist/transactions/typeTag/parser.js.map +1 -0
  610. package/dist/transactions/types.d.ts +477 -0
  611. package/dist/transactions/types.d.ts.map +1 -0
  612. package/dist/transactions/types.js +4 -0
  613. package/dist/transactions/types.js.map +1 -0
  614. package/dist/types/abstraction.d.ts +14 -0
  615. package/dist/types/abstraction.d.ts.map +1 -0
  616. package/dist/types/abstraction.js +16 -0
  617. package/dist/types/abstraction.js.map +1 -0
  618. package/dist/types/ans.d.ts +113 -0
  619. package/dist/types/ans.d.ts.map +1 -0
  620. package/dist/types/ans.js +36 -0
  621. package/dist/types/ans.js.map +1 -0
  622. package/dist/types/generated/operations.d.ts +702 -0
  623. package/dist/types/generated/operations.d.ts.map +1 -0
  624. package/dist/types/generated/operations.js +2 -0
  625. package/dist/types/generated/operations.js.map +1 -0
  626. package/dist/types/generated/queries.d.ts +64 -0
  627. package/dist/types/generated/queries.d.ts.map +1 -0
  628. package/dist/types/generated/queries.js +729 -0
  629. package/dist/types/generated/queries.js.map +1 -0
  630. package/dist/types/generated/types.d.ts +9678 -0
  631. package/dist/types/generated/types.d.ts.map +1 -0
  632. package/dist/types/generated/types.js +1265 -0
  633. package/dist/types/generated/types.js.map +1 -0
  634. package/dist/types/index.d.ts +4 -0
  635. package/dist/types/index.d.ts.map +1 -0
  636. package/dist/types/index.js +4 -0
  637. package/dist/types/index.js.map +1 -0
  638. package/dist/types/indexer.d.ts +182 -0
  639. package/dist/types/indexer.d.ts.map +1 -0
  640. package/dist/types/indexer.js +4 -0
  641. package/dist/types/indexer.js.map +1 -0
  642. package/dist/types/keyless.d.ts +101 -0
  643. package/dist/types/keyless.d.ts.map +1 -0
  644. package/dist/types/keyless.js +2 -0
  645. package/dist/types/keyless.js.map +1 -0
  646. package/dist/types/types.d.ts +1572 -0
  647. package/dist/types/types.d.ts.map +1 -0
  648. package/dist/types/types.js +464 -0
  649. package/dist/types/types.js.map +1 -0
  650. package/dist/utils/apiEndpoints.d.ts +50 -0
  651. package/dist/utils/apiEndpoints.d.ts.map +1 -0
  652. package/dist/utils/apiEndpoints.js +100 -0
  653. package/dist/utils/apiEndpoints.js.map +1 -0
  654. package/dist/utils/const.d.ts +117 -0
  655. package/dist/utils/const.d.ts.map +1 -0
  656. package/dist/utils/const.js +121 -0
  657. package/dist/utils/const.js.map +1 -0
  658. package/dist/utils/helpers.d.ts +203 -0
  659. package/dist/utils/helpers.d.ts.map +1 -0
  660. package/dist/utils/helpers.js +330 -0
  661. package/dist/utils/helpers.js.map +1 -0
  662. package/dist/utils/index.d.ts +5 -0
  663. package/dist/utils/index.d.ts.map +1 -0
  664. package/dist/utils/index.js +5 -0
  665. package/dist/utils/index.js.map +1 -0
  666. package/dist/utils/memoize.d.ts +47 -0
  667. package/dist/utils/memoize.d.ts.map +1 -0
  668. package/dist/utils/memoize.js +195 -0
  669. package/dist/utils/memoize.js.map +1 -0
  670. package/dist/utils/normalizeBundle.d.ts +27 -0
  671. package/dist/utils/normalizeBundle.d.ts.map +1 -0
  672. package/dist/utils/normalizeBundle.js +18 -0
  673. package/dist/utils/normalizeBundle.js.map +1 -0
  674. package/dist/utils/runtime.d.ts +44 -0
  675. package/dist/utils/runtime.d.ts.map +1 -0
  676. package/dist/utils/runtime.js +71 -0
  677. package/dist/utils/runtime.js.map +1 -0
  678. package/dist/version.d.ts +7 -0
  679. package/dist/version.d.ts.map +1 -0
  680. package/dist/version.js +9 -0
  681. package/dist/version.js.map +1 -0
  682. package/package.json +107 -47
  683. package/src/account/AbstractKeylessAccount.ts +24 -30
  684. package/src/account/AbstractedAccount.ts +18 -16
  685. package/src/account/Account.ts +12 -9
  686. package/src/account/AccountUtils.ts +17 -20
  687. package/src/account/DerivableAbstractedAccount.ts +12 -10
  688. package/src/account/Ed25519Account.ts +8 -8
  689. package/src/account/EphemeralKeyPair.ts +9 -14
  690. package/src/account/FederatedKeylessAccount.ts +7 -7
  691. package/src/account/KeylessAccount.ts +12 -7
  692. package/src/account/MultiEd25519Account.ts +9 -9
  693. package/src/account/MultiKeyAccount.ts +15 -16
  694. package/src/account/SingleKeyAccount.ts +10 -13
  695. package/src/account/index.ts +17 -12
  696. package/src/account/keylessSigner.ts +34 -0
  697. package/src/account/utils.ts +3 -3
  698. package/src/api/account/abstraction.ts +12 -12
  699. package/src/api/account.ts +12 -12
  700. package/src/api/ans.ts +6 -6
  701. package/src/api/aptos.ts +115 -88
  702. package/src/api/aptosConfig.ts +6 -4
  703. package/src/api/coin.ts +6 -6
  704. package/src/api/digitalAsset.ts +9 -9
  705. package/src/api/faucet.ts +6 -6
  706. package/src/api/fungibleAsset.ts +10 -10
  707. package/src/api/general.ts +7 -7
  708. package/src/api/index.ts +2 -2
  709. package/src/api/keyless.ts +11 -7
  710. package/src/api/object.ts +6 -6
  711. package/src/api/staking.ts +11 -6
  712. package/src/api/table.ts +6 -6
  713. package/src/api/transaction.ts +13 -13
  714. package/src/api/transactionSubmission/build.ts +6 -6
  715. package/src/api/transactionSubmission/helpers.ts +2 -2
  716. package/src/api/transactionSubmission/management.ts +9 -5
  717. package/src/api/transactionSubmission/sign.ts +4 -4
  718. package/src/api/transactionSubmission/simulate.ts +6 -6
  719. package/src/api/transactionSubmission/submit.ts +5 -5
  720. package/src/api/utils.ts +4 -4
  721. package/src/bcs/consts.ts +14 -1
  722. package/src/bcs/deserializer.ts +3 -3
  723. package/src/bcs/index.ts +6 -6
  724. package/src/bcs/serializable/entryFunctionBytes.ts +5 -5
  725. package/src/bcs/serializable/fixedBytes.ts +5 -5
  726. package/src/bcs/serializable/movePrimitives.ts +14 -5
  727. package/src/bcs/serializable/moveStructs.ts +8 -8
  728. package/src/bcs/serializer.ts +6 -6
  729. package/src/cli/index.ts +2 -2
  730. package/src/cli/localNode.ts +1 -1
  731. package/src/cli/move.ts +6 -10
  732. package/src/client/core.ts +30 -15
  733. package/src/client/get.ts +6 -8
  734. package/src/client/index.ts +3 -3
  735. package/src/client/post.ts +4 -4
  736. package/src/core/account/index.ts +1 -1
  737. package/src/core/account/utils/address.ts +4 -4
  738. package/src/core/account/utils/index.ts +1 -1
  739. package/src/core/accountAddress.ts +6 -6
  740. package/src/core/authenticationKey.ts +22 -10
  741. package/src/core/crypto/abstraction.ts +7 -7
  742. package/src/core/crypto/anyKeyRegistry.ts +90 -0
  743. package/src/core/crypto/deserializationUtils.ts +11 -19
  744. package/src/core/crypto/ed25519.ts +22 -13
  745. package/src/core/crypto/encryption/ciphertext.ts +210 -0
  746. package/src/core/crypto/encryption/curveSerialization.ts +46 -0
  747. package/src/core/crypto/encryption/fieldSerialization.ts +82 -0
  748. package/src/core/crypto/encryption/index.ts +14 -0
  749. package/src/core/crypto/encryption/symmetric.ts +148 -0
  750. package/src/core/crypto/ephemeral.ts +7 -7
  751. package/src/core/crypto/federatedKeyless.ts +8 -8
  752. package/src/core/crypto/hdKey.ts +7 -3
  753. package/src/core/crypto/index.ts +24 -17
  754. package/src/core/crypto/keyless.ts +33 -33
  755. package/src/core/crypto/keylessRegistration.ts +34 -0
  756. package/src/core/crypto/multiEd25519.ts +7 -7
  757. package/src/core/crypto/multiKey.ts +8 -8
  758. package/src/core/crypto/poseidon.ts +2 -2
  759. package/src/core/crypto/privateKey.ts +5 -5
  760. package/src/core/crypto/proof.ts +1 -1
  761. package/src/core/crypto/publicKey.ts +6 -6
  762. package/src/core/crypto/secp256k1.ts +26 -19
  763. package/src/core/crypto/secp256r1.ts +26 -19
  764. package/src/core/crypto/signature.ts +2 -2
  765. package/src/core/crypto/singleKey.ts +58 -39
  766. package/src/core/crypto/types.ts +4 -4
  767. package/src/core/crypto/utils.ts +16 -12
  768. package/src/core/hex.ts +3 -3
  769. package/src/core/index.ts +6 -6
  770. package/src/errors/index.ts +3 -3
  771. package/src/functions/abstraction.ts +11 -0
  772. package/src/functions/account.ts +38 -0
  773. package/src/functions/ans.ts +26 -0
  774. package/src/functions/coin.ts +7 -0
  775. package/src/functions/digitalAsset.ts +32 -0
  776. package/src/functions/faucet.ts +7 -0
  777. package/src/functions/fungibleAsset.ts +13 -0
  778. package/src/functions/general.ts +14 -0
  779. package/src/functions/index.ts +21 -0
  780. package/src/functions/keyless.ts +42 -0
  781. package/src/functions/object.ts +10 -0
  782. package/src/functions/staking.ts +11 -0
  783. package/src/functions/table.ts +11 -0
  784. package/src/functions/transaction.ts +32 -0
  785. package/src/functions/view.ts +6 -0
  786. package/src/index.ts +36 -10
  787. package/src/internal/abstraction.ts +10 -10
  788. package/src/internal/account.ts +79 -51
  789. package/src/internal/ans.ts +31 -24
  790. package/src/internal/coin.ts +8 -8
  791. package/src/internal/digitalAsset.ts +14 -15
  792. package/src/internal/encryptionKey.ts +53 -0
  793. package/src/internal/faucet.ts +6 -6
  794. package/src/internal/fungibleAsset.ts +11 -11
  795. package/src/internal/general.ts +12 -7
  796. package/src/internal/keyless.ts +21 -18
  797. package/src/internal/object.ts +7 -7
  798. package/src/internal/staking.ts +6 -6
  799. package/src/internal/table.ts +7 -7
  800. package/src/internal/transaction.ts +11 -10
  801. package/src/internal/transactionSubmission.ts +92 -32
  802. package/src/internal/utils/index.ts +1 -1
  803. package/src/internal/utils/utils.ts +5 -5
  804. package/src/internal/view.ts +5 -5
  805. package/src/transactions/authenticator/account.ts +12 -12
  806. package/src/transactions/authenticator/index.ts +2 -2
  807. package/src/transactions/authenticator/transaction.ts +6 -6
  808. package/src/transactions/index.ts +6 -6
  809. package/src/transactions/instances/chainId.ts +2 -2
  810. package/src/transactions/instances/encryptedPayload.ts +149 -0
  811. package/src/transactions/instances/identifier.ts +2 -2
  812. package/src/transactions/instances/index.ts +11 -10
  813. package/src/transactions/instances/moduleId.ts +5 -5
  814. package/src/transactions/instances/multiAgentTransaction.ts +4 -4
  815. package/src/transactions/instances/rawTransaction.ts +6 -6
  816. package/src/transactions/instances/rotationProofChallenge.ts +5 -5
  817. package/src/transactions/instances/signedTransaction.ts +4 -4
  818. package/src/transactions/instances/simpleTransaction.ts +4 -4
  819. package/src/transactions/instances/transactionArgument.ts +2 -2
  820. package/src/transactions/instances/transactionPayload.ts +127 -28
  821. package/src/transactions/management/accountSequenceNumber.ts +13 -14
  822. package/src/transactions/management/index.ts +2 -2
  823. package/src/transactions/management/transactionWorker.ts +10 -10
  824. package/src/transactions/transactionBuilder/encryptPayload.ts +236 -0
  825. package/src/transactions/transactionBuilder/helpers.ts +8 -5
  826. package/src/transactions/transactionBuilder/index.ts +5 -4
  827. package/src/transactions/transactionBuilder/remoteAbi.ts +664 -25
  828. package/src/transactions/transactionBuilder/signingMessage.ts +6 -6
  829. package/src/transactions/transactionBuilder/structEnumParser.ts +848 -0
  830. package/src/transactions/transactionBuilder/transactionBuilder.ts +130 -72
  831. package/src/transactions/typeTag/index.ts +5 -5
  832. package/src/transactions/typeTag/parser.ts +3 -3
  833. package/src/transactions/types.ts +103 -19
  834. package/src/types/ans.ts +13 -5
  835. package/src/types/generated/operations.ts +4 -3
  836. package/src/types/generated/queries.ts +1 -1
  837. package/src/types/index.ts +3 -3
  838. package/src/types/indexer.ts +1 -1
  839. package/src/types/types.ts +74 -6
  840. package/src/utils/const.ts +14 -1
  841. package/src/utils/helpers.ts +58 -18
  842. package/src/utils/index.ts +4 -4
  843. package/src/utils/normalizeBundle.ts +1 -1
  844. package/src/utils/runtime.ts +86 -0
  845. package/src/version.ts +1 -1
  846. package/dist/common/account-2FUAPVPW.d.ts +0 -8167
  847. package/dist/common/chunk-L5DUJTE3.js +0 -4
  848. package/dist/common/chunk-L5DUJTE3.js.map +0 -1
  849. package/dist/common/cli/index.d.ts +0 -316
  850. package/dist/common/cli/index.js +0 -2
  851. package/dist/common/cli/index.js.map +0 -1
  852. package/dist/common/index.d.ts +0 -10912
  853. package/dist/common/index.js +0 -476
  854. package/dist/common/index.js.map +0 -1
  855. package/dist/esm/Ed25519Account-DpZh3fRy.d.mts +0 -628
  856. package/dist/esm/account/AbstractKeylessAccount.d.mts +0 -336
  857. package/dist/esm/account/AbstractKeylessAccount.mjs +0 -2
  858. package/dist/esm/account/AbstractKeylessAccount.mjs.map +0 -1
  859. package/dist/esm/account/AbstractedAccount.d.mts +0 -64
  860. package/dist/esm/account/AbstractedAccount.mjs +0 -2
  861. package/dist/esm/account/AbstractedAccount.mjs.map +0 -1
  862. package/dist/esm/account/Account.d.mts +0 -8
  863. package/dist/esm/account/Account.mjs +0 -2
  864. package/dist/esm/account/Account.mjs.map +0 -1
  865. package/dist/esm/account/AccountUtils.d.mts +0 -38
  866. package/dist/esm/account/AccountUtils.mjs +0 -2
  867. package/dist/esm/account/AccountUtils.mjs.map +0 -1
  868. package/dist/esm/account/DerivableAbstractedAccount.d.mts +0 -59
  869. package/dist/esm/account/DerivableAbstractedAccount.mjs +0 -2
  870. package/dist/esm/account/DerivableAbstractedAccount.mjs.map +0 -1
  871. package/dist/esm/account/Ed25519Account.d.mts +0 -8
  872. package/dist/esm/account/Ed25519Account.mjs +0 -2
  873. package/dist/esm/account/Ed25519Account.mjs.map +0 -1
  874. package/dist/esm/account/EphemeralKeyPair.d.mts +0 -165
  875. package/dist/esm/account/EphemeralKeyPair.mjs +0 -2
  876. package/dist/esm/account/EphemeralKeyPair.mjs.map +0 -1
  877. package/dist/esm/account/FederatedKeylessAccount.d.mts +0 -118
  878. package/dist/esm/account/FederatedKeylessAccount.mjs +0 -2
  879. package/dist/esm/account/FederatedKeylessAccount.mjs.map +0 -1
  880. package/dist/esm/account/KeylessAccount.d.mts +0 -124
  881. package/dist/esm/account/KeylessAccount.mjs +0 -2
  882. package/dist/esm/account/KeylessAccount.mjs.map +0 -1
  883. package/dist/esm/account/MultiEd25519Account.d.mts +0 -102
  884. package/dist/esm/account/MultiEd25519Account.mjs +0 -2
  885. package/dist/esm/account/MultiEd25519Account.mjs.map +0 -1
  886. package/dist/esm/account/MultiKeyAccount.d.mts +0 -206
  887. package/dist/esm/account/MultiKeyAccount.mjs +0 -2
  888. package/dist/esm/account/MultiKeyAccount.mjs.map +0 -1
  889. package/dist/esm/account/SingleKeyAccount.d.mts +0 -8
  890. package/dist/esm/account/SingleKeyAccount.mjs +0 -2
  891. package/dist/esm/account/SingleKeyAccount.mjs.map +0 -1
  892. package/dist/esm/account/index.d.mts +0 -24
  893. package/dist/esm/account/index.mjs +0 -2
  894. package/dist/esm/account/index.mjs.map +0 -1
  895. package/dist/esm/account/utils.d.mts +0 -14
  896. package/dist/esm/account/utils.mjs +0 -2
  897. package/dist/esm/account/utils.mjs.map +0 -1
  898. package/dist/esm/account-sIOs_9XJ.d.mts +0 -7369
  899. package/dist/esm/api/account/abstraction.d.mts +0 -181
  900. package/dist/esm/api/account/abstraction.mjs +0 -2
  901. package/dist/esm/api/account/abstraction.mjs.map +0 -1
  902. package/dist/esm/api/account.d.mts +0 -852
  903. package/dist/esm/api/account.mjs +0 -2
  904. package/dist/esm/api/account.mjs.map +0 -1
  905. package/dist/esm/api/ans.d.mts +0 -570
  906. package/dist/esm/api/ans.mjs +0 -2
  907. package/dist/esm/api/ans.mjs.map +0 -1
  908. package/dist/esm/api/aptos.d.mts +0 -114
  909. package/dist/esm/api/aptos.mjs +0 -2
  910. package/dist/esm/api/aptos.mjs.map +0 -1
  911. package/dist/esm/api/aptosConfig.d.mts +0 -7
  912. package/dist/esm/api/aptosConfig.mjs +0 -2
  913. package/dist/esm/api/aptosConfig.mjs.map +0 -1
  914. package/dist/esm/api/coin.d.mts +0 -81
  915. package/dist/esm/api/coin.mjs +0 -2
  916. package/dist/esm/api/coin.mjs.map +0 -1
  917. package/dist/esm/api/digitalAsset.d.mts +0 -1030
  918. package/dist/esm/api/digitalAsset.mjs +0 -2
  919. package/dist/esm/api/digitalAsset.mjs.map +0 -1
  920. package/dist/esm/api/faucet.d.mts +0 -80
  921. package/dist/esm/api/faucet.mjs +0 -2
  922. package/dist/esm/api/faucet.mjs.map +0 -1
  923. package/dist/esm/api/fungibleAsset.d.mts +0 -288
  924. package/dist/esm/api/fungibleAsset.mjs +0 -2
  925. package/dist/esm/api/fungibleAsset.mjs.map +0 -1
  926. package/dist/esm/api/general.d.mts +0 -303
  927. package/dist/esm/api/general.mjs +0 -2
  928. package/dist/esm/api/general.mjs.map +0 -1
  929. package/dist/esm/api/index.d.mts +0 -47
  930. package/dist/esm/api/index.mjs +0 -2
  931. package/dist/esm/api/index.mjs.map +0 -1
  932. package/dist/esm/api/keyless.d.mts +0 -170
  933. package/dist/esm/api/keyless.mjs +0 -2
  934. package/dist/esm/api/keyless.mjs.map +0 -1
  935. package/dist/esm/api/object.d.mts +0 -80
  936. package/dist/esm/api/object.mjs +0 -2
  937. package/dist/esm/api/object.mjs.map +0 -1
  938. package/dist/esm/api/staking.d.mts +0 -134
  939. package/dist/esm/api/staking.mjs +0 -2
  940. package/dist/esm/api/staking.mjs.map +0 -1
  941. package/dist/esm/api/table.d.mts +0 -169
  942. package/dist/esm/api/table.mjs +0 -2
  943. package/dist/esm/api/table.mjs.map +0 -1
  944. package/dist/esm/api/transaction.d.mts +0 -681
  945. package/dist/esm/api/transaction.mjs +0 -2
  946. package/dist/esm/api/transaction.mjs.map +0 -1
  947. package/dist/esm/api/transactionSubmission/build.d.mts +0 -141
  948. package/dist/esm/api/transactionSubmission/build.mjs +0 -2
  949. package/dist/esm/api/transactionSubmission/build.mjs.map +0 -1
  950. package/dist/esm/api/transactionSubmission/helpers.d.mts +0 -98
  951. package/dist/esm/api/transactionSubmission/helpers.mjs +0 -2
  952. package/dist/esm/api/transactionSubmission/helpers.mjs.map +0 -1
  953. package/dist/esm/api/transactionSubmission/management.d.mts +0 -168
  954. package/dist/esm/api/transactionSubmission/management.mjs +0 -2
  955. package/dist/esm/api/transactionSubmission/management.mjs.map +0 -1
  956. package/dist/esm/api/transactionSubmission/sign.d.mts +0 -124
  957. package/dist/esm/api/transactionSubmission/sign.mjs +0 -2
  958. package/dist/esm/api/transactionSubmission/sign.mjs.map +0 -1
  959. package/dist/esm/api/transactionSubmission/simulate.d.mts +0 -181
  960. package/dist/esm/api/transactionSubmission/simulate.mjs +0 -2
  961. package/dist/esm/api/transactionSubmission/simulate.mjs.map +0 -1
  962. package/dist/esm/api/transactionSubmission/submit.d.mts +0 -142
  963. package/dist/esm/api/transactionSubmission/submit.mjs +0 -2
  964. package/dist/esm/api/transactionSubmission/submit.mjs.map +0 -1
  965. package/dist/esm/api/utils.d.mts +0 -45
  966. package/dist/esm/api/utils.mjs +0 -2
  967. package/dist/esm/api/utils.mjs.map +0 -1
  968. package/dist/esm/bcs/consts.d.mts +0 -28
  969. package/dist/esm/bcs/consts.mjs +0 -2
  970. package/dist/esm/bcs/consts.mjs.map +0 -1
  971. package/dist/esm/bcs/deserializer.d.mts +0 -7
  972. package/dist/esm/bcs/deserializer.mjs +0 -2
  973. package/dist/esm/bcs/deserializer.mjs.map +0 -1
  974. package/dist/esm/bcs/index.d.mts +0 -8
  975. package/dist/esm/bcs/index.mjs +0 -2
  976. package/dist/esm/bcs/index.mjs.map +0 -1
  977. package/dist/esm/bcs/serializable/entryFunctionBytes.d.mts +0 -65
  978. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +0 -2
  979. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs.map +0 -1
  980. package/dist/esm/bcs/serializable/fixedBytes.d.mts +0 -7
  981. package/dist/esm/bcs/serializable/fixedBytes.mjs +0 -2
  982. package/dist/esm/bcs/serializable/fixedBytes.mjs.map +0 -1
  983. package/dist/esm/bcs/serializable/movePrimitives.d.mts +0 -7
  984. package/dist/esm/bcs/serializable/movePrimitives.mjs +0 -2
  985. package/dist/esm/bcs/serializable/movePrimitives.mjs.map +0 -1
  986. package/dist/esm/bcs/serializable/moveStructs.d.mts +0 -7
  987. package/dist/esm/bcs/serializable/moveStructs.mjs +0 -2
  988. package/dist/esm/bcs/serializable/moveStructs.mjs.map +0 -1
  989. package/dist/esm/bcs/serializer.d.mts +0 -7
  990. package/dist/esm/bcs/serializer.mjs +0 -2
  991. package/dist/esm/bcs/serializer.mjs.map +0 -1
  992. package/dist/esm/chunk-226FBOWQ.mjs +0 -2
  993. package/dist/esm/chunk-226FBOWQ.mjs.map +0 -1
  994. package/dist/esm/chunk-2DQRUJUC.mjs +0 -2
  995. package/dist/esm/chunk-2DQRUJUC.mjs.map +0 -1
  996. package/dist/esm/chunk-2EBXCCLB.mjs +0 -2
  997. package/dist/esm/chunk-2EBXCCLB.mjs.map +0 -1
  998. package/dist/esm/chunk-2YA4KQUV.mjs +0 -2
  999. package/dist/esm/chunk-2YA4KQUV.mjs.map +0 -1
  1000. package/dist/esm/chunk-3ZC6F5SJ.mjs +0 -2
  1001. package/dist/esm/chunk-3ZC6F5SJ.mjs.map +0 -1
  1002. package/dist/esm/chunk-44MMFX5F.mjs +0 -2
  1003. package/dist/esm/chunk-44MMFX5F.mjs.map +0 -1
  1004. package/dist/esm/chunk-4KEZEYCV.mjs +0 -2
  1005. package/dist/esm/chunk-4KEZEYCV.mjs.map +0 -1
  1006. package/dist/esm/chunk-4QMXOWHP.mjs +0 -1
  1007. package/dist/esm/chunk-4QMXOWHP.mjs.map +0 -1
  1008. package/dist/esm/chunk-4WPQQPUF.mjs +0 -1
  1009. package/dist/esm/chunk-4WPQQPUF.mjs.map +0 -1
  1010. package/dist/esm/chunk-5HXLZHDW.mjs +0 -1
  1011. package/dist/esm/chunk-5HXLZHDW.mjs.map +0 -1
  1012. package/dist/esm/chunk-6T2OBPIF.mjs +0 -4
  1013. package/dist/esm/chunk-6T2OBPIF.mjs.map +0 -1
  1014. package/dist/esm/chunk-7ECCT6PK.mjs +0 -1
  1015. package/dist/esm/chunk-7ECCT6PK.mjs.map +0 -1
  1016. package/dist/esm/chunk-A5H5VKUI.mjs +0 -2
  1017. package/dist/esm/chunk-A5H5VKUI.mjs.map +0 -1
  1018. package/dist/esm/chunk-A5L76YP7.mjs +0 -2
  1019. package/dist/esm/chunk-A5L76YP7.mjs.map +0 -1
  1020. package/dist/esm/chunk-C3Q23D22.mjs +0 -2
  1021. package/dist/esm/chunk-C3Q23D22.mjs.map +0 -1
  1022. package/dist/esm/chunk-DE5K76I2.mjs +0 -1
  1023. package/dist/esm/chunk-DE5K76I2.mjs.map +0 -1
  1024. package/dist/esm/chunk-DPHBSAZQ.mjs +0 -2
  1025. package/dist/esm/chunk-DPHBSAZQ.mjs.map +0 -1
  1026. package/dist/esm/chunk-F45HI7LU.mjs +0 -2
  1027. package/dist/esm/chunk-F45HI7LU.mjs.map +0 -1
  1028. package/dist/esm/chunk-F4RJMSAW.mjs +0 -2
  1029. package/dist/esm/chunk-F4RJMSAW.mjs.map +0 -1
  1030. package/dist/esm/chunk-FAOLAKLJ.mjs +0 -2
  1031. package/dist/esm/chunk-FAOLAKLJ.mjs.map +0 -1
  1032. package/dist/esm/chunk-FZY4PMEE.mjs +0 -1
  1033. package/dist/esm/chunk-FZY4PMEE.mjs.map +0 -1
  1034. package/dist/esm/chunk-G3MHXDYA.mjs +0 -1
  1035. package/dist/esm/chunk-G3MHXDYA.mjs.map +0 -1
  1036. package/dist/esm/chunk-G5OONGWS.mjs +0 -488
  1037. package/dist/esm/chunk-G5OONGWS.mjs.map +0 -1
  1038. package/dist/esm/chunk-GJYLYE6R.mjs +0 -2
  1039. package/dist/esm/chunk-GJYLYE6R.mjs.map +0 -1
  1040. package/dist/esm/chunk-GYYSHYO5.mjs +0 -2
  1041. package/dist/esm/chunk-GYYSHYO5.mjs.map +0 -1
  1042. package/dist/esm/chunk-HGLO5LDS.mjs +0 -1
  1043. package/dist/esm/chunk-HGLO5LDS.mjs.map +0 -1
  1044. package/dist/esm/chunk-IEW452EO.mjs +0 -7
  1045. package/dist/esm/chunk-IEW452EO.mjs.map +0 -1
  1046. package/dist/esm/chunk-IF4UU2MT.mjs +0 -2
  1047. package/dist/esm/chunk-IF4UU2MT.mjs.map +0 -1
  1048. package/dist/esm/chunk-ITZN23GU.mjs +0 -2
  1049. package/dist/esm/chunk-ITZN23GU.mjs.map +0 -1
  1050. package/dist/esm/chunk-IZF6POVR.mjs +0 -4
  1051. package/dist/esm/chunk-IZF6POVR.mjs.map +0 -1
  1052. package/dist/esm/chunk-KDMSOCZY.mjs +0 -2
  1053. package/dist/esm/chunk-KDMSOCZY.mjs.map +0 -1
  1054. package/dist/esm/chunk-KKPH2JUV.mjs +0 -2
  1055. package/dist/esm/chunk-KKPH2JUV.mjs.map +0 -1
  1056. package/dist/esm/chunk-LVZ7QMUH.mjs +0 -2
  1057. package/dist/esm/chunk-LVZ7QMUH.mjs.map +0 -1
  1058. package/dist/esm/chunk-M65PXVDO.mjs +0 -2
  1059. package/dist/esm/chunk-M65PXVDO.mjs.map +0 -1
  1060. package/dist/esm/chunk-MKTR4U2R.mjs +0 -2
  1061. package/dist/esm/chunk-MKTR4U2R.mjs.map +0 -1
  1062. package/dist/esm/chunk-NECL5FCQ.mjs +0 -1
  1063. package/dist/esm/chunk-NECL5FCQ.mjs.map +0 -1
  1064. package/dist/esm/chunk-NHRPXEUE.mjs +0 -2
  1065. package/dist/esm/chunk-NHRPXEUE.mjs.map +0 -1
  1066. package/dist/esm/chunk-NNXTS2GB.mjs +0 -2
  1067. package/dist/esm/chunk-NNXTS2GB.mjs.map +0 -1
  1068. package/dist/esm/chunk-NP2IAUME.mjs +0 -2
  1069. package/dist/esm/chunk-NP2IAUME.mjs.map +0 -1
  1070. package/dist/esm/chunk-NPWYZVHE.mjs +0 -2
  1071. package/dist/esm/chunk-NPWYZVHE.mjs.map +0 -1
  1072. package/dist/esm/chunk-NTMFADQ7.mjs +0 -2
  1073. package/dist/esm/chunk-NTMFADQ7.mjs.map +0 -1
  1074. package/dist/esm/chunk-ODNZJSOC.mjs +0 -2
  1075. package/dist/esm/chunk-ODNZJSOC.mjs.map +0 -1
  1076. package/dist/esm/chunk-P5HCJN3A.mjs +0 -2
  1077. package/dist/esm/chunk-P5HCJN3A.mjs.map +0 -1
  1078. package/dist/esm/chunk-Q5ESW36C.mjs +0 -2
  1079. package/dist/esm/chunk-Q5ESW36C.mjs.map +0 -1
  1080. package/dist/esm/chunk-QE5MOGUI.mjs +0 -2
  1081. package/dist/esm/chunk-QE5MOGUI.mjs.map +0 -1
  1082. package/dist/esm/chunk-RB2GC7FW.mjs +0 -2
  1083. package/dist/esm/chunk-RB2GC7FW.mjs.map +0 -1
  1084. package/dist/esm/chunk-RUKFK3OC.mjs +0 -2
  1085. package/dist/esm/chunk-RUKFK3OC.mjs.map +0 -1
  1086. package/dist/esm/chunk-RYCI4VKO.mjs +0 -2
  1087. package/dist/esm/chunk-RYCI4VKO.mjs.map +0 -1
  1088. package/dist/esm/chunk-RZNP3WG4.mjs +0 -2
  1089. package/dist/esm/chunk-RZNP3WG4.mjs.map +0 -1
  1090. package/dist/esm/chunk-STY74NUA.mjs +0 -2
  1091. package/dist/esm/chunk-STY74NUA.mjs.map +0 -1
  1092. package/dist/esm/chunk-TAHLOBRG.mjs +0 -2
  1093. package/dist/esm/chunk-TAHLOBRG.mjs.map +0 -1
  1094. package/dist/esm/chunk-TBIK7DML.mjs +0 -2
  1095. package/dist/esm/chunk-TBIK7DML.mjs.map +0 -1
  1096. package/dist/esm/chunk-UVJW4DPP.mjs +0 -2
  1097. package/dist/esm/chunk-UVJW4DPP.mjs.map +0 -1
  1098. package/dist/esm/chunk-UVNAHETD.mjs +0 -2
  1099. package/dist/esm/chunk-UVNAHETD.mjs.map +0 -1
  1100. package/dist/esm/chunk-UYVPNUH3.mjs +0 -1
  1101. package/dist/esm/chunk-UYVPNUH3.mjs.map +0 -1
  1102. package/dist/esm/chunk-V3MBJJTL.mjs +0 -1
  1103. package/dist/esm/chunk-V3MBJJTL.mjs.map +0 -1
  1104. package/dist/esm/chunk-WOPHK7LB.mjs +0 -2
  1105. package/dist/esm/chunk-WOPHK7LB.mjs.map +0 -1
  1106. package/dist/esm/chunk-WZZ7PJ3X.mjs +0 -2
  1107. package/dist/esm/chunk-WZZ7PJ3X.mjs.map +0 -1
  1108. package/dist/esm/chunk-X2TPNKLV.mjs +0 -2
  1109. package/dist/esm/chunk-X2TPNKLV.mjs.map +0 -1
  1110. package/dist/esm/chunk-ZOSOF6ST.mjs +0 -2
  1111. package/dist/esm/chunk-ZOSOF6ST.mjs.map +0 -1
  1112. package/dist/esm/chunk-ZP4DWSQA.mjs +0 -2
  1113. package/dist/esm/chunk-ZP4DWSQA.mjs.map +0 -1
  1114. package/dist/esm/cli/index.d.mts +0 -10
  1115. package/dist/esm/cli/index.mjs +0 -2
  1116. package/dist/esm/cli/index.mjs.map +0 -1
  1117. package/dist/esm/cli/localNode.d.mts +0 -67
  1118. package/dist/esm/cli/localNode.mjs +0 -2
  1119. package/dist/esm/cli/localNode.mjs.map +0 -1
  1120. package/dist/esm/cli/move.d.mts +0 -257
  1121. package/dist/esm/cli/move.mjs +0 -2
  1122. package/dist/esm/cli/move.mjs.map +0 -1
  1123. package/dist/esm/client/core.d.mts +0 -43
  1124. package/dist/esm/client/core.mjs +0 -2
  1125. package/dist/esm/client/core.mjs.map +0 -1
  1126. package/dist/esm/client/get.d.mts +0 -125
  1127. package/dist/esm/client/get.mjs +0 -2
  1128. package/dist/esm/client/get.mjs.map +0 -1
  1129. package/dist/esm/client/index.d.mts +0 -10
  1130. package/dist/esm/client/index.mjs +0 -2
  1131. package/dist/esm/client/index.mjs.map +0 -1
  1132. package/dist/esm/client/post.d.mts +0 -161
  1133. package/dist/esm/client/post.mjs +0 -2
  1134. package/dist/esm/client/post.mjs.map +0 -1
  1135. package/dist/esm/core/account/index.d.mts +0 -8
  1136. package/dist/esm/core/account/index.mjs +0 -2
  1137. package/dist/esm/core/account/index.mjs.map +0 -1
  1138. package/dist/esm/core/account/utils/address.d.mts +0 -55
  1139. package/dist/esm/core/account/utils/address.mjs +0 -2
  1140. package/dist/esm/core/account/utils/address.mjs.map +0 -1
  1141. package/dist/esm/core/account/utils/index.d.mts +0 -8
  1142. package/dist/esm/core/account/utils/index.mjs +0 -2
  1143. package/dist/esm/core/account/utils/index.mjs.map +0 -1
  1144. package/dist/esm/core/accountAddress.d.mts +0 -7
  1145. package/dist/esm/core/accountAddress.mjs +0 -2
  1146. package/dist/esm/core/accountAddress.mjs.map +0 -1
  1147. package/dist/esm/core/authenticationKey.d.mts +0 -7
  1148. package/dist/esm/core/authenticationKey.mjs +0 -2
  1149. package/dist/esm/core/authenticationKey.mjs.map +0 -1
  1150. package/dist/esm/core/common.d.mts +0 -52
  1151. package/dist/esm/core/common.mjs +0 -2
  1152. package/dist/esm/core/common.mjs.map +0 -1
  1153. package/dist/esm/core/crypto/abstraction.d.mts +0 -24
  1154. package/dist/esm/core/crypto/abstraction.mjs +0 -2
  1155. package/dist/esm/core/crypto/abstraction.mjs.map +0 -1
  1156. package/dist/esm/core/crypto/deserializationUtils.d.mts +0 -28
  1157. package/dist/esm/core/crypto/deserializationUtils.mjs +0 -2
  1158. package/dist/esm/core/crypto/deserializationUtils.mjs.map +0 -1
  1159. package/dist/esm/core/crypto/ed25519.d.mts +0 -7
  1160. package/dist/esm/core/crypto/ed25519.mjs +0 -2
  1161. package/dist/esm/core/crypto/ed25519.mjs.map +0 -1
  1162. package/dist/esm/core/crypto/ephemeral.d.mts +0 -116
  1163. package/dist/esm/core/crypto/ephemeral.mjs +0 -2
  1164. package/dist/esm/core/crypto/ephemeral.mjs.map +0 -1
  1165. package/dist/esm/core/crypto/federatedKeyless.d.mts +0 -13
  1166. package/dist/esm/core/crypto/federatedKeyless.mjs +0 -2
  1167. package/dist/esm/core/crypto/federatedKeyless.mjs.map +0 -1
  1168. package/dist/esm/core/crypto/hdKey.d.mts +0 -95
  1169. package/dist/esm/core/crypto/hdKey.mjs +0 -2
  1170. package/dist/esm/core/crypto/hdKey.mjs.map +0 -1
  1171. package/dist/esm/core/crypto/index.d.mts +0 -19
  1172. package/dist/esm/core/crypto/index.mjs +0 -2
  1173. package/dist/esm/core/crypto/index.mjs.map +0 -1
  1174. package/dist/esm/core/crypto/keyless.d.mts +0 -13
  1175. package/dist/esm/core/crypto/keyless.mjs +0 -2
  1176. package/dist/esm/core/crypto/keyless.mjs.map +0 -1
  1177. package/dist/esm/core/crypto/multiEd25519.d.mts +0 -7
  1178. package/dist/esm/core/crypto/multiEd25519.mjs +0 -2
  1179. package/dist/esm/core/crypto/multiEd25519.mjs.map +0 -1
  1180. package/dist/esm/core/crypto/multiKey.d.mts +0 -7
  1181. package/dist/esm/core/crypto/multiKey.mjs +0 -2
  1182. package/dist/esm/core/crypto/multiKey.mjs.map +0 -1
  1183. package/dist/esm/core/crypto/poseidon.d.mts +0 -59
  1184. package/dist/esm/core/crypto/poseidon.mjs +0 -2
  1185. package/dist/esm/core/crypto/poseidon.mjs.map +0 -1
  1186. package/dist/esm/core/crypto/privateKey.d.mts +0 -7
  1187. package/dist/esm/core/crypto/privateKey.mjs +0 -2
  1188. package/dist/esm/core/crypto/privateKey.mjs.map +0 -1
  1189. package/dist/esm/core/crypto/proof.d.mts +0 -18
  1190. package/dist/esm/core/crypto/proof.mjs +0 -2
  1191. package/dist/esm/core/crypto/proof.mjs.map +0 -1
  1192. package/dist/esm/core/crypto/publicKey.d.mts +0 -7
  1193. package/dist/esm/core/crypto/publicKey.mjs +0 -2
  1194. package/dist/esm/core/crypto/publicKey.mjs.map +0 -1
  1195. package/dist/esm/core/crypto/secp256k1.d.mts +0 -7
  1196. package/dist/esm/core/crypto/secp256k1.mjs +0 -2
  1197. package/dist/esm/core/crypto/secp256k1.mjs.map +0 -1
  1198. package/dist/esm/core/crypto/secp256r1.d.mts +0 -306
  1199. package/dist/esm/core/crypto/secp256r1.mjs +0 -2
  1200. package/dist/esm/core/crypto/secp256r1.mjs.map +0 -1
  1201. package/dist/esm/core/crypto/signature.d.mts +0 -7
  1202. package/dist/esm/core/crypto/signature.mjs +0 -2
  1203. package/dist/esm/core/crypto/signature.mjs.map +0 -1
  1204. package/dist/esm/core/crypto/singleKey.d.mts +0 -7
  1205. package/dist/esm/core/crypto/singleKey.mjs +0 -2
  1206. package/dist/esm/core/crypto/singleKey.mjs.map +0 -1
  1207. package/dist/esm/core/crypto/types.d.mts +0 -11
  1208. package/dist/esm/core/crypto/types.mjs +0 -2
  1209. package/dist/esm/core/crypto/types.mjs.map +0 -1
  1210. package/dist/esm/core/crypto/utils.d.mts +0 -23
  1211. package/dist/esm/core/crypto/utils.mjs +0 -2
  1212. package/dist/esm/core/crypto/utils.mjs.map +0 -1
  1213. package/dist/esm/core/hex.d.mts +0 -7
  1214. package/dist/esm/core/hex.mjs +0 -2
  1215. package/dist/esm/core/hex.mjs.map +0 -1
  1216. package/dist/esm/core/index.d.mts +0 -20
  1217. package/dist/esm/core/index.mjs +0 -2
  1218. package/dist/esm/core/index.mjs.map +0 -1
  1219. package/dist/esm/errors/index.d.mts +0 -131
  1220. package/dist/esm/errors/index.mjs +0 -2
  1221. package/dist/esm/errors/index.mjs.map +0 -1
  1222. package/dist/esm/federatedKeyless-Cuo0IGJ6.d.mts +0 -880
  1223. package/dist/esm/index.d.mts +0 -72
  1224. package/dist/esm/index.mjs +0 -2
  1225. package/dist/esm/index.mjs.map +0 -1
  1226. package/dist/esm/internal/abstraction.d.mts +0 -27
  1227. package/dist/esm/internal/abstraction.mjs +0 -2
  1228. package/dist/esm/internal/abstraction.mjs.map +0 -1
  1229. package/dist/esm/internal/account.d.mts +0 -453
  1230. package/dist/esm/internal/account.mjs +0 -2
  1231. package/dist/esm/internal/account.mjs.map +0 -1
  1232. package/dist/esm/internal/ans.d.mts +0 -417
  1233. package/dist/esm/internal/ans.mjs +0 -2
  1234. package/dist/esm/internal/ans.mjs.map +0 -1
  1235. package/dist/esm/internal/coin.d.mts +0 -31
  1236. package/dist/esm/internal/coin.mjs +0 -2
  1237. package/dist/esm/internal/coin.mjs.map +0 -1
  1238. package/dist/esm/internal/digitalAsset.d.mts +0 -580
  1239. package/dist/esm/internal/digitalAsset.mjs +0 -2
  1240. package/dist/esm/internal/digitalAsset.mjs.map +0 -1
  1241. package/dist/esm/internal/faucet.d.mts +0 -42
  1242. package/dist/esm/internal/faucet.mjs +0 -2
  1243. package/dist/esm/internal/faucet.mjs.map +0 -1
  1244. package/dist/esm/internal/fungibleAsset.d.mts +0 -112
  1245. package/dist/esm/internal/fungibleAsset.mjs +0 -2
  1246. package/dist/esm/internal/fungibleAsset.mjs.map +0 -1
  1247. package/dist/esm/internal/general.d.mts +0 -94
  1248. package/dist/esm/internal/general.mjs +0 -2
  1249. package/dist/esm/internal/general.mjs.map +0 -1
  1250. package/dist/esm/internal/keyless.d.mts +0 -111
  1251. package/dist/esm/internal/keyless.mjs +0 -2
  1252. package/dist/esm/internal/keyless.mjs.map +0 -1
  1253. package/dist/esm/internal/object.d.mts +0 -42
  1254. package/dist/esm/internal/object.mjs +0 -2
  1255. package/dist/esm/internal/object.mjs.map +0 -1
  1256. package/dist/esm/internal/staking.d.mts +0 -60
  1257. package/dist/esm/internal/staking.mjs +0 -2
  1258. package/dist/esm/internal/staking.mjs.map +0 -1
  1259. package/dist/esm/internal/table.d.mts +0 -66
  1260. package/dist/esm/internal/table.mjs +0 -2
  1261. package/dist/esm/internal/table.mjs.map +0 -1
  1262. package/dist/esm/internal/transaction.d.mts +0 -199
  1263. package/dist/esm/internal/transaction.mjs +0 -2
  1264. package/dist/esm/internal/transaction.mjs.map +0 -1
  1265. package/dist/esm/internal/transactionSubmission.d.mts +0 -165
  1266. package/dist/esm/internal/transactionSubmission.mjs +0 -2
  1267. package/dist/esm/internal/transactionSubmission.mjs.map +0 -1
  1268. package/dist/esm/internal/utils/index.d.mts +0 -8
  1269. package/dist/esm/internal/utils/index.mjs +0 -2
  1270. package/dist/esm/internal/utils/index.mjs.map +0 -1
  1271. package/dist/esm/internal/utils/utils.d.mts +0 -41
  1272. package/dist/esm/internal/utils/utils.mjs +0 -2
  1273. package/dist/esm/internal/utils/utils.mjs.map +0 -1
  1274. package/dist/esm/internal/view.d.mts +0 -20
  1275. package/dist/esm/internal/view.mjs +0 -2
  1276. package/dist/esm/internal/view.mjs.map +0 -1
  1277. package/dist/esm/transactions/authenticator/account.d.mts +0 -7
  1278. package/dist/esm/transactions/authenticator/account.mjs +0 -2
  1279. package/dist/esm/transactions/authenticator/account.mjs.map +0 -1
  1280. package/dist/esm/transactions/authenticator/index.d.mts +0 -8
  1281. package/dist/esm/transactions/authenticator/index.mjs +0 -2
  1282. package/dist/esm/transactions/authenticator/index.mjs.map +0 -1
  1283. package/dist/esm/transactions/authenticator/transaction.d.mts +0 -152
  1284. package/dist/esm/transactions/authenticator/transaction.mjs +0 -2
  1285. package/dist/esm/transactions/authenticator/transaction.mjs.map +0 -1
  1286. package/dist/esm/transactions/index.d.mts +0 -15
  1287. package/dist/esm/transactions/index.mjs +0 -2
  1288. package/dist/esm/transactions/index.mjs.map +0 -1
  1289. package/dist/esm/transactions/instances/chainId.d.mts +0 -7
  1290. package/dist/esm/transactions/instances/chainId.mjs +0 -2
  1291. package/dist/esm/transactions/instances/chainId.mjs.map +0 -1
  1292. package/dist/esm/transactions/instances/identifier.d.mts +0 -7
  1293. package/dist/esm/transactions/instances/identifier.mjs +0 -2
  1294. package/dist/esm/transactions/instances/identifier.mjs.map +0 -1
  1295. package/dist/esm/transactions/instances/index.d.mts +0 -10
  1296. package/dist/esm/transactions/instances/index.mjs +0 -2
  1297. package/dist/esm/transactions/instances/index.mjs.map +0 -1
  1298. package/dist/esm/transactions/instances/moduleId.d.mts +0 -7
  1299. package/dist/esm/transactions/instances/moduleId.mjs +0 -2
  1300. package/dist/esm/transactions/instances/moduleId.mjs.map +0 -1
  1301. package/dist/esm/transactions/instances/multiAgentTransaction.d.mts +0 -7
  1302. package/dist/esm/transactions/instances/multiAgentTransaction.mjs +0 -2
  1303. package/dist/esm/transactions/instances/multiAgentTransaction.mjs.map +0 -1
  1304. package/dist/esm/transactions/instances/rawTransaction.d.mts +0 -7
  1305. package/dist/esm/transactions/instances/rawTransaction.mjs +0 -2
  1306. package/dist/esm/transactions/instances/rawTransaction.mjs.map +0 -1
  1307. package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +0 -58
  1308. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +0 -2
  1309. package/dist/esm/transactions/instances/rotationProofChallenge.mjs.map +0 -1
  1310. package/dist/esm/transactions/instances/signedTransaction.d.mts +0 -59
  1311. package/dist/esm/transactions/instances/signedTransaction.mjs +0 -2
  1312. package/dist/esm/transactions/instances/signedTransaction.mjs.map +0 -1
  1313. package/dist/esm/transactions/instances/simpleTransaction.d.mts +0 -7
  1314. package/dist/esm/transactions/instances/simpleTransaction.mjs +0 -2
  1315. package/dist/esm/transactions/instances/simpleTransaction.mjs.map +0 -1
  1316. package/dist/esm/transactions/instances/transactionArgument.d.mts +0 -7
  1317. package/dist/esm/transactions/instances/transactionArgument.mjs +0 -2
  1318. package/dist/esm/transactions/instances/transactionArgument.mjs.map +0 -1
  1319. package/dist/esm/transactions/instances/transactionPayload.d.mts +0 -7
  1320. package/dist/esm/transactions/instances/transactionPayload.mjs +0 -2
  1321. package/dist/esm/transactions/instances/transactionPayload.mjs.map +0 -1
  1322. package/dist/esm/transactions/management/accountSequenceNumber.d.mts +0 -123
  1323. package/dist/esm/transactions/management/accountSequenceNumber.mjs +0 -2
  1324. package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +0 -1
  1325. package/dist/esm/transactions/management/asyncQueue.d.mts +0 -77
  1326. package/dist/esm/transactions/management/asyncQueue.mjs +0 -2
  1327. package/dist/esm/transactions/management/asyncQueue.mjs.map +0 -1
  1328. package/dist/esm/transactions/management/index.d.mts +0 -12
  1329. package/dist/esm/transactions/management/index.mjs +0 -2
  1330. package/dist/esm/transactions/management/index.mjs.map +0 -1
  1331. package/dist/esm/transactions/management/transactionWorker.d.mts +0 -218
  1332. package/dist/esm/transactions/management/transactionWorker.mjs +0 -2
  1333. package/dist/esm/transactions/management/transactionWorker.mjs.map +0 -1
  1334. package/dist/esm/transactions/transactionBuilder/helpers.d.mts +0 -189
  1335. package/dist/esm/transactions/transactionBuilder/helpers.mjs +0 -2
  1336. package/dist/esm/transactions/transactionBuilder/helpers.mjs.map +0 -1
  1337. package/dist/esm/transactions/transactionBuilder/index.d.mts +0 -11
  1338. package/dist/esm/transactions/transactionBuilder/index.mjs +0 -2
  1339. package/dist/esm/transactions/transactionBuilder/index.mjs.map +0 -1
  1340. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +0 -105
  1341. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +0 -2
  1342. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs.map +0 -1
  1343. package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +0 -62
  1344. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +0 -2
  1345. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs.map +0 -1
  1346. package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +0 -192
  1347. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +0 -2
  1348. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs.map +0 -1
  1349. package/dist/esm/transactions/typeTag/index.d.mts +0 -7
  1350. package/dist/esm/transactions/typeTag/index.mjs +0 -2
  1351. package/dist/esm/transactions/typeTag/index.mjs.map +0 -1
  1352. package/dist/esm/transactions/typeTag/parser.d.mts +0 -81
  1353. package/dist/esm/transactions/typeTag/parser.mjs +0 -2
  1354. package/dist/esm/transactions/typeTag/parser.mjs.map +0 -1
  1355. package/dist/esm/transactions/types.d.mts +0 -7
  1356. package/dist/esm/transactions/types.mjs +0 -2
  1357. package/dist/esm/transactions/types.mjs.map +0 -1
  1358. package/dist/esm/types/abstraction.d.mts +0 -15
  1359. package/dist/esm/types/abstraction.mjs +0 -2
  1360. package/dist/esm/types/abstraction.mjs.map +0 -1
  1361. package/dist/esm/types/ans.d.mts +0 -109
  1362. package/dist/esm/types/ans.mjs +0 -2
  1363. package/dist/esm/types/ans.mjs.map +0 -1
  1364. package/dist/esm/types/generated/operations.d.mts +0 -703
  1365. package/dist/esm/types/generated/operations.mjs +0 -1
  1366. package/dist/esm/types/generated/operations.mjs.map +0 -1
  1367. package/dist/esm/types/generated/queries.d.mts +0 -66
  1368. package/dist/esm/types/generated/queries.mjs +0 -2
  1369. package/dist/esm/types/generated/queries.mjs.map +0 -1
  1370. package/dist/esm/types/generated/types.d.mts +0 -9679
  1371. package/dist/esm/types/generated/types.mjs +0 -2
  1372. package/dist/esm/types/generated/types.mjs.map +0 -1
  1373. package/dist/esm/types/index.d.mts +0 -8
  1374. package/dist/esm/types/index.mjs +0 -2
  1375. package/dist/esm/types/index.mjs.map +0 -1
  1376. package/dist/esm/types/indexer.d.mts +0 -186
  1377. package/dist/esm/types/indexer.mjs +0 -2
  1378. package/dist/esm/types/indexer.mjs.map +0 -1
  1379. package/dist/esm/types/keyless.d.mts +0 -102
  1380. package/dist/esm/types/keyless.mjs +0 -1
  1381. package/dist/esm/types/keyless.mjs.map +0 -1
  1382. package/dist/esm/types/types.d.mts +0 -7
  1383. package/dist/esm/types/types.mjs +0 -2
  1384. package/dist/esm/types/types.mjs.map +0 -1
  1385. package/dist/esm/utils/apiEndpoints.d.mts +0 -51
  1386. package/dist/esm/utils/apiEndpoints.mjs +0 -2
  1387. package/dist/esm/utils/apiEndpoints.mjs.map +0 -1
  1388. package/dist/esm/utils/const.d.mts +0 -104
  1389. package/dist/esm/utils/const.mjs +0 -2
  1390. package/dist/esm/utils/const.mjs.map +0 -1
  1391. package/dist/esm/utils/helpers.d.mts +0 -193
  1392. package/dist/esm/utils/helpers.mjs +0 -2
  1393. package/dist/esm/utils/helpers.mjs.map +0 -1
  1394. package/dist/esm/utils/index.d.mts +0 -9
  1395. package/dist/esm/utils/index.mjs +0 -2
  1396. package/dist/esm/utils/index.mjs.map +0 -1
  1397. package/dist/esm/utils/memoize.d.mts +0 -48
  1398. package/dist/esm/utils/memoize.mjs +0 -2
  1399. package/dist/esm/utils/memoize.mjs.map +0 -1
  1400. package/dist/esm/utils/normalizeBundle.d.mts +0 -35
  1401. package/dist/esm/utils/normalizeBundle.mjs +0 -2
  1402. package/dist/esm/utils/normalizeBundle.mjs.map +0 -1
  1403. package/dist/esm/version.d.mts +0 -8
  1404. package/dist/esm/version.mjs +0 -2
  1405. package/dist/esm/version.mjs.map +0 -1
@@ -0,0 +1,246 @@
1
+ // Copyright © Aptos Foundation
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { randomBytes } from "@noble/hashes/utils.js";
4
+ import { bytesToBigIntLE, padAndPackBytesWithLen, poseidonHash } from "../core/crypto/poseidon.js";
5
+ import { EphemeralPublicKey, EphemeralSignature } from "../core/crypto/ephemeral.js";
6
+ import { Ed25519PrivateKey } from "../core/crypto/ed25519.js";
7
+ import { Hex } from "../core/hex.js";
8
+ import { EphemeralPublicKeyVariant } from "../types/index.js";
9
+ import { Deserializer, Serializable } from "../bcs/index.js";
10
+ import { floorToWholeHour, nowInSeconds } from "../utils/helpers.js";
11
+ const TWO_WEEKS_IN_SECONDS = 1_209_600;
12
+ /**
13
+ * Represents an ephemeral key pair used for signing transactions via the Keyless authentication scheme.
14
+ * This key pair is temporary and includes an expiration time.
15
+ * For more details on how this class is used, refer to the documentation:
16
+ * https://aptos.dev/guides/keyless-accounts/#1-present-the-user-with-a-sign-in-with-idp-button-on-the-ui
17
+ * @group Implementation
18
+ * @category Account (On-Chain Model)
19
+ */
20
+ export class EphemeralKeyPair extends Serializable {
21
+ static BLINDER_LENGTH = 31;
22
+ /**
23
+ * A byte array of length BLINDER_LENGTH used to obfuscate the public key from the IdP.
24
+ * Used in calculating the nonce passed to the IdP and as a secret witness in proof generation.
25
+ * @group Implementation
26
+ * @category Account (On-Chain Model)
27
+ */
28
+ blinder;
29
+ /**
30
+ * A timestamp in seconds indicating when the ephemeral key pair is expired. After expiry, a new
31
+ * EphemeralKeyPair must be generated and a new JWT needs to be created.
32
+ * @group Implementation
33
+ * @category Account (On-Chain Model)
34
+ */
35
+ expiryDateSecs;
36
+ /**
37
+ * The value passed to the IdP when the user authenticates. It consists of a hash of the
38
+ * ephemeral public key, expiry date, and blinder.
39
+ * @group Implementation
40
+ * @category Account (On-Chain Model)
41
+ */
42
+ nonce;
43
+ /**
44
+ * A private key used to sign transactions. This private key is not tied to any account on the chain as it
45
+ * is ephemeral (not permanent) in nature.
46
+ * @group Implementation
47
+ * @category Account (On-Chain Model)
48
+ */
49
+ privateKey;
50
+ /**
51
+ * A public key used to verify transactions. This public key is not tied to any account on the chain as it
52
+ * is ephemeral (not permanent) in nature.
53
+ * @group Implementation
54
+ * @category Account (On-Chain Model)
55
+ */
56
+ publicKey;
57
+ /**
58
+ * Whether the ephemeral key pair has been cleared from memory.
59
+ * @private
60
+ */
61
+ cleared = false;
62
+ /**
63
+ * Creates an instance of the class with a specified private key, optional expiry date, and optional blinder.
64
+ * This constructor initializes the public key, sets the expiry date to a default value if not provided,
65
+ * generates a blinder if not supplied, and calculates the nonce based on the public key, expiry date, and blinder.
66
+ *
67
+ * @param args - The parameters for constructing the instance.
68
+ * @param args.privateKey - The private key used for creating the instance.
69
+ * @param args.expiryDateSecs - Optional expiry date in seconds from the current time. Defaults to two weeks from now.
70
+ * @param args.blinder - Optional blinder value. If not provided, a new blinder will be generated.
71
+ * @group Implementation
72
+ * @category Account (On-Chain Model)
73
+ */
74
+ constructor(args) {
75
+ super();
76
+ const { privateKey, expiryDateSecs, blinder } = args;
77
+ this.privateKey = privateKey;
78
+ this.publicKey = new EphemeralPublicKey(privateKey.publicKey());
79
+ // By default, we set the expiry date to be two weeks in the future floored to the nearest hour
80
+ this.expiryDateSecs = expiryDateSecs || floorToWholeHour(nowInSeconds() + TWO_WEEKS_IN_SECONDS);
81
+ // Generate the blinder if not provided
82
+ this.blinder = blinder !== undefined ? Hex.fromHexInput(blinder).toUint8Array() : generateBlinder();
83
+ // Calculate the nonce
84
+ const fields = padAndPackBytesWithLen(this.publicKey.bcsToBytes(), 93);
85
+ fields.push(BigInt(this.expiryDateSecs));
86
+ fields.push(bytesToBigIntLE(this.blinder));
87
+ const nonceHash = poseidonHash(fields);
88
+ this.nonce = nonceHash.toString();
89
+ }
90
+ /**
91
+ * Returns the public key of the key pair.
92
+ * @return EphemeralPublicKey
93
+ * @group Implementation
94
+ * @category Account (On-Chain Model)
95
+ */
96
+ getPublicKey() {
97
+ return this.publicKey;
98
+ }
99
+ /**
100
+ * Checks if the current time has surpassed the expiry date of the key pair.
101
+ * @return boolean - Returns true if the key pair is expired, otherwise false.
102
+ * @group Implementation
103
+ * @category Account (On-Chain Model)
104
+ */
105
+ isExpired() {
106
+ const currentTimeSecs = Math.floor(Date.now() / 1000);
107
+ return currentTimeSecs > this.expiryDateSecs;
108
+ }
109
+ /**
110
+ * Clears the ephemeral private key from memory by overwriting it with random bytes.
111
+ * After calling this method, the ephemeral key pair can no longer be used for signing.
112
+ *
113
+ * Note: Due to JavaScript's memory management, this cannot guarantee complete removal of
114
+ * sensitive data from memory, but it significantly reduces the window of exposure.
115
+ *
116
+ * @group Implementation
117
+ * @category Account (On-Chain Model)
118
+ */
119
+ clear() {
120
+ if (!this.cleared) {
121
+ // Clear the underlying private key if it has a clear method
122
+ if ("clear" in this.privateKey && typeof this.privateKey.clear === "function") {
123
+ this.privateKey.clear();
124
+ }
125
+ else {
126
+ // Fallback: multiple overwrite passes for better security
127
+ const keyBytes = this.privateKey.toUint8Array();
128
+ crypto.getRandomValues(keyBytes);
129
+ keyBytes.fill(0xff);
130
+ crypto.getRandomValues(keyBytes);
131
+ keyBytes.fill(0);
132
+ }
133
+ // Also clear the blinder with multiple passes as it's used in nonce calculation
134
+ crypto.getRandomValues(this.blinder);
135
+ this.blinder.fill(0xff);
136
+ crypto.getRandomValues(this.blinder);
137
+ this.blinder.fill(0);
138
+ this.cleared = true;
139
+ }
140
+ }
141
+ /**
142
+ * Returns whether the ephemeral key pair has been cleared from memory.
143
+ *
144
+ * @returns true if the key pair has been cleared, false otherwise
145
+ * @group Implementation
146
+ * @category Account (On-Chain Model)
147
+ */
148
+ isCleared() {
149
+ return this.cleared;
150
+ }
151
+ /**
152
+ * Serializes the object's properties into a format suitable for transmission or storage.
153
+ * This function is essential for preparing the object data for serialization processes.
154
+ *
155
+ * @param serializer - The serializer instance used to serialize the object's properties.
156
+ * @group Implementation
157
+ * @category Account (On-Chain Model)
158
+ */
159
+ serialize(serializer) {
160
+ serializer.serializeU32AsUleb128(this.publicKey.variant);
161
+ serializer.serializeBytes(this.privateKey.toUint8Array());
162
+ serializer.serializeU64(this.expiryDateSecs);
163
+ serializer.serializeFixedBytes(this.blinder);
164
+ }
165
+ /**
166
+ * Deserializes an ephemeral key pair from the provided deserializer.
167
+ * This function helps in reconstructing an ephemeral key pair, which is essential for cryptographic operations.
168
+ *
169
+ * @param deserializer - The deserializer instance used to read the serialized data.
170
+ * @group Implementation
171
+ * @category Account (On-Chain Model)
172
+ */
173
+ static deserialize(deserializer) {
174
+ const variantIndex = deserializer.deserializeUleb128AsU32();
175
+ let privateKey;
176
+ switch (variantIndex) {
177
+ case EphemeralPublicKeyVariant.Ed25519:
178
+ privateKey = Ed25519PrivateKey.deserialize(deserializer);
179
+ break;
180
+ default:
181
+ throw new Error(`Unknown variant index for EphemeralPublicKey: ${variantIndex}`);
182
+ }
183
+ const expiryDateSecs = deserializer.deserializeU64();
184
+ const blinder = deserializer.deserializeFixedBytes(31);
185
+ return new EphemeralKeyPair({ privateKey, expiryDateSecs: Number(expiryDateSecs), blinder });
186
+ }
187
+ /**
188
+ * Deserialize a byte array into an EphemeralKeyPair object.
189
+ * This function allows you to reconstruct an EphemeralKeyPair from its serialized byte representation.
190
+ *
191
+ * @param bytes - The byte array representing the serialized EphemeralKeyPair.
192
+ * @group Implementation
193
+ * @category Account (On-Chain Model)
194
+ */
195
+ static fromBytes(bytes) {
196
+ return EphemeralKeyPair.deserialize(new Deserializer(bytes));
197
+ }
198
+ /**
199
+ * Generates a new ephemeral key pair with an optional expiry date.
200
+ * This function allows you to create a temporary key pair for secure operations.
201
+ *
202
+ * @param args - Optional parameters for key pair generation.
203
+ * @param args.scheme - The type of key pair to use for the EphemeralKeyPair. Only Ed25519 is supported for now.
204
+ * @param args.expiryDateSecs - The date of expiry for the key pair in seconds.
205
+ * @returns An instance of EphemeralKeyPair containing the generated private key and expiry date.
206
+ * @group Implementation
207
+ * @category Account (On-Chain Model)
208
+ */
209
+ static generate(args) {
210
+ let privateKey;
211
+ switch (args?.scheme) {
212
+ default:
213
+ privateKey = Ed25519PrivateKey.generate();
214
+ }
215
+ return new EphemeralKeyPair({ privateKey, expiryDateSecs: args?.expiryDateSecs });
216
+ }
217
+ /**
218
+ * Sign the given data using the private key, returning an ephemeral signature.
219
+ * This function is essential for creating a secure signature that can be used for authentication or verification purposes.
220
+ *
221
+ * @param data - The data to be signed, provided in HexInput format.
222
+ * @returns EphemeralSignature - The resulting ephemeral signature.
223
+ * @throws Error - Throws an error if the EphemeralKeyPair has expired or been cleared from memory.
224
+ * @group Implementation
225
+ * @category Account (On-Chain Model)
226
+ */
227
+ sign(data) {
228
+ if (this.cleared) {
229
+ throw new Error("EphemeralKeyPair has been cleared from memory and can no longer be used");
230
+ }
231
+ if (this.isExpired()) {
232
+ throw new Error("EphemeralKeyPair has expired");
233
+ }
234
+ return new EphemeralSignature(this.privateKey.sign(data));
235
+ }
236
+ }
237
+ /**
238
+ * Generates a random byte array of length EphemeralKeyPair.BLINDER_LENGTH.
239
+ * @returns Uint8Array A random byte array used for blinding.
240
+ * @group Implementation
241
+ * @category Account (On-Chain Model)
242
+ */
243
+ function generateBlinder() {
244
+ return randomBytes(EphemeralKeyPair.BLINDER_LENGTH);
245
+ }
246
+ //# sourceMappingURL=EphemeralKeyPair.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EphemeralKeyPair.js","sourceRoot":"","sources":["../../src/account/EphemeralKeyPair.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ import { HexInput } from "../types/index.js";
2
+ import { AccountAddress, AccountAddressInput } from "../core/accountAddress.js";
3
+ import { Groth16VerificationKey, ZeroKnowledgeSig } from "../core/crypto/keyless.js";
4
+ import { EphemeralKeyPair } from "./EphemeralKeyPair.js";
5
+ import { Deserializer, Serializer } from "../bcs/index.js";
6
+ import { FederatedKeylessPublicKey } from "../core/crypto/federatedKeyless.js";
7
+ import { AbstractKeylessAccount, ProofFetchCallback } from "./AbstractKeylessAccount.js";
8
+ /**
9
+ * Account implementation for the FederatedKeyless authentication scheme.
10
+ *
11
+ * Used to represent a FederatedKeyless based account and sign transactions with it.
12
+ *
13
+ * Use `FederatedKeylessAccount.create()` to instantiate a KeylessAccount with a JSON Web Token (JWT), proof, EphemeralKeyPair and the
14
+ * address the JSON Web Key Set (JWKS) are installed that will be used to verify the JWT.
15
+ *
16
+ * When the proof expires or the JWT becomes invalid, the KeylessAccount must be instantiated again with a new JWT,
17
+ * EphemeralKeyPair, and corresponding proof.
18
+ * @group Implementation
19
+ * @category Account (On-Chain Model)
20
+ */
21
+ export declare class FederatedKeylessAccount extends AbstractKeylessAccount {
22
+ /**
23
+ * The FederatedKeylessPublicKey associated with the account
24
+ * @group Implementation
25
+ * @category Account (On-Chain Model)
26
+ */
27
+ readonly publicKey: FederatedKeylessPublicKey;
28
+ readonly audless: boolean;
29
+ /**
30
+ * Use the static generator `FederatedKeylessAccount.create(...)` instead.
31
+ * Creates a KeylessAccount instance using the provided parameters.
32
+ * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.
33
+ *
34
+ * @param args - The parameters for creating a KeylessAccount.
35
+ * @param args.address - Optional account address associated with the KeylessAccount.
36
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
37
+ * @param args.jwt - A JSON Web Token used for authentication.
38
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
39
+ * @param args.jwkAddress - The address which stores the JSON Web Key Set (JWKS) used to verify the JWT.
40
+ * @param args.uidKey - Optional key for user identification, defaults to "sub".
41
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
42
+ */
43
+ constructor(args: {
44
+ address?: AccountAddress;
45
+ ephemeralKeyPair: EphemeralKeyPair;
46
+ iss: string;
47
+ uidKey: string;
48
+ uidVal: string;
49
+ aud: string;
50
+ pepper: HexInput;
51
+ jwkAddress: AccountAddress;
52
+ proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;
53
+ proofFetchCallback?: ProofFetchCallback;
54
+ jwt: string;
55
+ verificationKeyHash?: HexInput;
56
+ audless?: boolean;
57
+ });
58
+ /**
59
+ * Serializes the transaction data into a format suitable for transmission or storage.
60
+ * This function ensures that both the transaction bytes and the proof are properly serialized.
61
+ *
62
+ * @param serializer - The serializer instance used to convert the transaction data into bytes.
63
+ */
64
+ serialize(serializer: Serializer): void;
65
+ /**
66
+ * Deserializes the provided deserializer to create a KeylessAccount instance.
67
+ * This function extracts necessary components such as the JWT, UID key, pepper, ephemeral key pair, and proof from the deserializer.
68
+ *
69
+ * @param deserializer - The deserializer instance used to retrieve the serialized data.
70
+ * @returns A KeylessAccount instance created from the deserialized data.
71
+ */
72
+ static deserialize(deserializer: Deserializer): FederatedKeylessAccount;
73
+ /**
74
+ * Deserialize bytes using this account's information.
75
+ *
76
+ * @param bytes The bytes being interpreted.
77
+ * @returns
78
+ */
79
+ static fromBytes(bytes: HexInput): FederatedKeylessAccount;
80
+ /**
81
+ * Creates a KeylessAccount instance using the provided parameters.
82
+ * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.
83
+ * This is used instead of the KeylessAccount constructor.
84
+ *
85
+ * @param args - The parameters for creating a KeylessAccount.
86
+ * @param args.address - Optional account address associated with the KeylessAccount.
87
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
88
+ * @param args.jwt - A JSON Web Token used for authentication.
89
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
90
+ * @param args.jwkAddress - The address which stores the JSON Web Key Set (JWKS) used to verify the JWT.
91
+ * @param args.uidKey - Optional key for user identification, defaults to "sub".
92
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
93
+ */
94
+ static create(args: {
95
+ address?: AccountAddress;
96
+ proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;
97
+ jwt: string;
98
+ ephemeralKeyPair: EphemeralKeyPair;
99
+ pepper: HexInput;
100
+ jwkAddress: AccountAddressInput;
101
+ uidKey?: string;
102
+ proofFetchCallback?: ProofFetchCallback;
103
+ verificationKey?: Groth16VerificationKey;
104
+ verificationKeyHash?: Uint8Array;
105
+ }): FederatedKeylessAccount;
106
+ }
107
+ //# sourceMappingURL=FederatedKeylessAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FederatedKeylessAccount.d.ts","sourceRoot":"","sources":["../../src/account/FederatedKeylessAccount.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAsB,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAEzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEzF;;;;;;;;;;;;GAYG;AACH,qBAAa,uBAAwB,SAAQ,sBAAsB;IACjE;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;IAE9C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B;;;;;;;;;;;;;OAaG;gBACS,IAAI,EAAE;QAChB,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,QAAQ,CAAC;QACjB,UAAU,EAAE,cAAc,CAAC;QAC3B,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpD,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,GAAG,EAAE,MAAM,CAAC;QACZ,mBAAmB,CAAC,EAAE,QAAQ,CAAC;QAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB;IAOD;;;;;OAKG;IACH,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAKvC;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,uBAAuB;IAoBvE;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,uBAAuB;IAI1D;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpD,GAAG,EAAE,MAAM,CAAC;QACZ,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,MAAM,EAAE,QAAQ,CAAC;QACjB,UAAU,EAAE,mBAAmB,CAAC;QAChC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,eAAe,CAAC,EAAE,sBAAsB,CAAC;QACzC,mBAAmB,CAAC,EAAE,UAAU,CAAC;KAClC,GAAG,uBAAuB;CAkC5B"}
@@ -0,0 +1,129 @@
1
+ // Copyright © Aptos Foundation
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { AccountAddress } from "../core/accountAddress.js";
4
+ import { getIssAudAndUidVal } from "../core/crypto/keyless.js";
5
+ import { Deserializer } from "../bcs/index.js";
6
+ import { FederatedKeylessPublicKey } from "../core/crypto/federatedKeyless.js";
7
+ import { AbstractKeylessAccount } from "./AbstractKeylessAccount.js";
8
+ /**
9
+ * Account implementation for the FederatedKeyless authentication scheme.
10
+ *
11
+ * Used to represent a FederatedKeyless based account and sign transactions with it.
12
+ *
13
+ * Use `FederatedKeylessAccount.create()` to instantiate a KeylessAccount with a JSON Web Token (JWT), proof, EphemeralKeyPair and the
14
+ * address the JSON Web Key Set (JWKS) are installed that will be used to verify the JWT.
15
+ *
16
+ * When the proof expires or the JWT becomes invalid, the KeylessAccount must be instantiated again with a new JWT,
17
+ * EphemeralKeyPair, and corresponding proof.
18
+ * @group Implementation
19
+ * @category Account (On-Chain Model)
20
+ */
21
+ export class FederatedKeylessAccount extends AbstractKeylessAccount {
22
+ /**
23
+ * The FederatedKeylessPublicKey associated with the account
24
+ * @group Implementation
25
+ * @category Account (On-Chain Model)
26
+ */
27
+ publicKey;
28
+ audless;
29
+ /**
30
+ * Use the static generator `FederatedKeylessAccount.create(...)` instead.
31
+ * Creates a KeylessAccount instance using the provided parameters.
32
+ * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.
33
+ *
34
+ * @param args - The parameters for creating a KeylessAccount.
35
+ * @param args.address - Optional account address associated with the KeylessAccount.
36
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
37
+ * @param args.jwt - A JSON Web Token used for authentication.
38
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
39
+ * @param args.jwkAddress - The address which stores the JSON Web Key Set (JWKS) used to verify the JWT.
40
+ * @param args.uidKey - Optional key for user identification, defaults to "sub".
41
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
42
+ */
43
+ constructor(args) {
44
+ const publicKey = FederatedKeylessPublicKey.create(args);
45
+ super({ publicKey, ...args });
46
+ this.publicKey = publicKey;
47
+ this.audless = args.audless ?? false;
48
+ }
49
+ /**
50
+ * Serializes the transaction data into a format suitable for transmission or storage.
51
+ * This function ensures that both the transaction bytes and the proof are properly serialized.
52
+ *
53
+ * @param serializer - The serializer instance used to convert the transaction data into bytes.
54
+ */
55
+ serialize(serializer) {
56
+ super.serialize(serializer);
57
+ this.publicKey.jwkAddress.serialize(serializer);
58
+ }
59
+ /**
60
+ * Deserializes the provided deserializer to create a KeylessAccount instance.
61
+ * This function extracts necessary components such as the JWT, UID key, pepper, ephemeral key pair, and proof from the deserializer.
62
+ *
63
+ * @param deserializer - The deserializer instance used to retrieve the serialized data.
64
+ * @returns A KeylessAccount instance created from the deserialized data.
65
+ */
66
+ static deserialize(deserializer) {
67
+ const { address, proof, ephemeralKeyPair, jwt, uidKey, pepper, verificationKeyHash } = AbstractKeylessAccount.partialDeserialize(deserializer);
68
+ const jwkAddress = AccountAddress.deserialize(deserializer);
69
+ const { iss, aud, uidVal } = getIssAudAndUidVal({ jwt, uidKey });
70
+ return new FederatedKeylessAccount({
71
+ address,
72
+ proof,
73
+ ephemeralKeyPair,
74
+ iss,
75
+ uidKey,
76
+ uidVal,
77
+ aud,
78
+ pepper,
79
+ jwt,
80
+ verificationKeyHash,
81
+ jwkAddress,
82
+ });
83
+ }
84
+ /**
85
+ * Deserialize bytes using this account's information.
86
+ *
87
+ * @param bytes The bytes being interpreted.
88
+ * @returns
89
+ */
90
+ static fromBytes(bytes) {
91
+ return FederatedKeylessAccount.deserialize(Deserializer.fromHex(bytes));
92
+ }
93
+ /**
94
+ * Creates a KeylessAccount instance using the provided parameters.
95
+ * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.
96
+ * This is used instead of the KeylessAccount constructor.
97
+ *
98
+ * @param args - The parameters for creating a KeylessAccount.
99
+ * @param args.address - Optional account address associated with the KeylessAccount.
100
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
101
+ * @param args.jwt - A JSON Web Token used for authentication.
102
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
103
+ * @param args.jwkAddress - The address which stores the JSON Web Key Set (JWKS) used to verify the JWT.
104
+ * @param args.uidKey - Optional key for user identification, defaults to "sub".
105
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
106
+ */
107
+ static create(args) {
108
+ const { address, proof, jwt, ephemeralKeyPair, pepper, jwkAddress, uidKey = "sub", proofFetchCallback, verificationKey, verificationKeyHash, } = args;
109
+ if (verificationKeyHash && verificationKey) {
110
+ throw new Error("Cannot provide both verificationKey and verificationKeyHash");
111
+ }
112
+ const { iss, aud, uidVal } = getIssAudAndUidVal({ jwt, uidKey });
113
+ return new FederatedKeylessAccount({
114
+ address,
115
+ proof,
116
+ ephemeralKeyPair,
117
+ iss,
118
+ uidKey,
119
+ uidVal,
120
+ aud,
121
+ pepper,
122
+ jwkAddress: AccountAddress.from(jwkAddress),
123
+ jwt,
124
+ proofFetchCallback,
125
+ verificationKeyHash: verificationKeyHash ?? (verificationKey ? verificationKey.hash() : undefined),
126
+ });
127
+ }
128
+ }
129
+ //# sourceMappingURL=FederatedKeylessAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FederatedKeylessAccount.js","sourceRoot":"","sources":["../../src/account/FederatedKeylessAccount.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ import { HexInput } from "../types/index.js";
2
+ import { AccountAddress } from "../core/accountAddress.js";
3
+ import { Groth16VerificationKey, KeylessPublicKey, ZeroKnowledgeSig } from "../core/crypto/keyless.js";
4
+ import { EphemeralKeyPair } from "./EphemeralKeyPair.js";
5
+ import { Deserializer, Serializer } from "../bcs/index.js";
6
+ import { AbstractKeylessAccount, ProofFetchCallback } from "./AbstractKeylessAccount.js";
7
+ /**
8
+ * Account implementation for the Keyless authentication scheme.
9
+ *
10
+ * Used to represent a Keyless based account and sign transactions with it.
11
+ *
12
+ * Use `KeylessAccount.create()` to instantiate a KeylessAccount with a JWT, proof and EphemeralKeyPair.
13
+ *
14
+ * When the proof expires or the JWT becomes invalid, the KeylessAccount must be instantiated again with a new JWT,
15
+ * EphemeralKeyPair, and corresponding proof.
16
+ * @group Implementation
17
+ * @category Account (On-Chain Model)
18
+ */
19
+ export declare class KeylessAccount extends AbstractKeylessAccount {
20
+ /**
21
+ * The KeylessPublicKey associated with the account
22
+ * @group Implementation
23
+ * @category Account (On-Chain Model)
24
+ */
25
+ readonly publicKey: KeylessPublicKey;
26
+ /**
27
+ * Use the static generator `create(...)` instead.
28
+ * Creates an instance of the KeylessAccount with an optional proof.
29
+ *
30
+ * @param args - The parameters for creating a KeylessAccount.
31
+ * @param args.address - Optional account address associated with the KeylessAccount.
32
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
33
+ * @param args.iss - A JWT issuer.
34
+ * @param args.uidKey - The claim on the JWT to identify a user. This is typically 'sub' or 'email'.
35
+ * @param args.uidVal - The unique id for this user, intended to be a stable user identifier.
36
+ * @param args.aud - The value of the 'aud' claim on the JWT, also known as client ID. This is the identifier for the dApp's
37
+ * OIDC registration with the identity provider.
38
+ * @param args.pepper - A hexadecimal input used for additional security.
39
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
40
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
41
+ * @param args.jwt - A JSON Web Token used for authentication.
42
+ * @group Implementation
43
+ * @category Account (On-Chain Model)
44
+ */
45
+ constructor(args: {
46
+ address?: AccountAddress;
47
+ ephemeralKeyPair: EphemeralKeyPair;
48
+ iss: string;
49
+ uidKey: string;
50
+ uidVal: string;
51
+ aud: string;
52
+ pepper: HexInput;
53
+ proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;
54
+ proofFetchCallback?: ProofFetchCallback;
55
+ jwt: string;
56
+ verificationKeyHash?: HexInput;
57
+ });
58
+ /**
59
+ * Serializes the transaction data into a format suitable for transmission or storage.
60
+ * This function ensures that both the transaction bytes and the proof are properly serialized.
61
+ *
62
+ * @param serializer - The serializer instance used to convert the transaction data into bytes.
63
+ * @group Implementation
64
+ * @category Account (On-Chain Model)
65
+ */
66
+ serialize(serializer: Serializer): void;
67
+ /**
68
+ * Deserializes the provided deserializer to create a KeylessAccount instance.
69
+ * This function extracts necessary components such as the JWT, UID key, pepper, ephemeral key pair, and proof from the deserializer.
70
+ *
71
+ * @param deserializer - The deserializer instance used to retrieve the serialized data.
72
+ * @returns A KeylessAccount instance created from the deserialized data.
73
+ * @group Implementation
74
+ * @category Account (On-Chain Model)
75
+ */
76
+ static deserialize(deserializer: Deserializer): KeylessAccount;
77
+ /**
78
+ * Deserialize bytes using this account's information.
79
+ *
80
+ * @param bytes The bytes being interpreted.
81
+ * @returns
82
+ */
83
+ static fromBytes(bytes: HexInput): KeylessAccount;
84
+ /**
85
+ * Creates a KeylessAccount instance using the provided parameters.
86
+ * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.
87
+ * This is used instead of the KeylessAccount constructor.
88
+ *
89
+ * @param args - The parameters for creating a KeylessAccount.
90
+ * @param args.address - Optional account address associated with the KeylessAccount.
91
+ * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.
92
+ * @param args.jwt - A JSON Web Token used for authentication.
93
+ * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.
94
+ * @param args.pepper - A hexadecimal input used for additional security.
95
+ * @param args.uidKey - Optional key for user identification, defaults to "sub".
96
+ * @param args.proofFetchCallback - Optional callback function for fetching proof.
97
+ * @group Implementation
98
+ * @category Account (On-Chain Model)
99
+ */
100
+ static create(args: {
101
+ address?: AccountAddress;
102
+ proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;
103
+ jwt: string;
104
+ ephemeralKeyPair: EphemeralKeyPair;
105
+ pepper: HexInput;
106
+ uidKey?: string;
107
+ proofFetchCallback?: ProofFetchCallback;
108
+ verificationKey?: Groth16VerificationKey;
109
+ verificationKeyHash?: Uint8Array;
110
+ }): KeylessAccount;
111
+ }
112
+ //# sourceMappingURL=KeylessAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeylessAccount.d.ts","sourceRoot":"","sources":["../../src/account/KeylessAccount.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAEL,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGzF;;;;;;;;;;;GAWG;AACH,qBAAa,cAAe,SAAQ,sBAAsB;IACxD;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAIrC;;;;;;;;;;;;;;;;;;OAkBG;gBACS,IAAI,EAAE;QAChB,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,QAAQ,CAAC;QACjB,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpD,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,GAAG,EAAE,MAAM,CAAC;QACZ,mBAAmB,CAAC,EAAE,QAAQ,CAAC;KAChC;IAMD;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAIvC;;;;;;;;OAQG;IACH,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc;IAkB9D;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,cAAc;IAIjD;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpD,GAAG,EAAE,MAAM,CAAC;QACZ,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,MAAM,EAAE,QAAQ,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,eAAe,CAAC,EAAE,sBAAsB,CAAC;QACzC,mBAAmB,CAAC,EAAE,UAAU,CAAC;KAClC,GAAG,cAAc;CAgCnB"}