@haneullabs/haneul 0.1.0

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 (1175) hide show
  1. package/CHANGELOG.md +1723 -0
  2. package/LICENSE +201 -0
  3. package/README.md +449 -0
  4. package/bcs/package.json +6 -0
  5. package/client/package.json +6 -0
  6. package/cryptography/package.json +6 -0
  7. package/dist/cjs/bcs/bcs.d.ts +1973 -0
  8. package/dist/cjs/bcs/bcs.js +328 -0
  9. package/dist/cjs/bcs/bcs.js.map +7 -0
  10. package/dist/cjs/bcs/effects.d.ts +579 -0
  11. package/dist/cjs/bcs/effects.js +210 -0
  12. package/dist/cjs/bcs/effects.js.map +7 -0
  13. package/dist/cjs/bcs/index.d.ts +2589 -0
  14. package/dist/cjs/bcs/index.js +80 -0
  15. package/dist/cjs/bcs/index.js.map +7 -0
  16. package/dist/cjs/bcs/pure.d.ts +22 -0
  17. package/dist/cjs/bcs/pure.js +59 -0
  18. package/dist/cjs/bcs/pure.js.map +7 -0
  19. package/dist/cjs/bcs/type-tag-serializer.d.ts +7 -0
  20. package/dist/cjs/bcs/type-tag-serializer.js +117 -0
  21. package/dist/cjs/bcs/type-tag-serializer.js.map +7 -0
  22. package/dist/cjs/bcs/types.d.ts +114 -0
  23. package/dist/cjs/bcs/types.js +27 -0
  24. package/dist/cjs/bcs/types.js.map +7 -0
  25. package/dist/cjs/client/index.d.ts +5 -0
  26. package/dist/cjs/client/index.js +34 -0
  27. package/dist/cjs/client/index.js.map +7 -0
  28. package/dist/cjs/client/network.d.ts +1 -0
  29. package/dist/cjs/client/network.js +38 -0
  30. package/dist/cjs/client/network.js.map +7 -0
  31. package/dist/cjs/cryptography/index.d.ts +7 -0
  32. package/dist/cjs/cryptography/index.js +47 -0
  33. package/dist/cjs/cryptography/index.js.map +7 -0
  34. package/dist/cjs/cryptography/intent.d.ts +6 -0
  35. package/dist/cjs/cryptography/intent.js +35 -0
  36. package/dist/cjs/cryptography/intent.js.map +7 -0
  37. package/dist/cjs/cryptography/keypair.d.ts +72 -0
  38. package/dist/cjs/cryptography/keypair.js +118 -0
  39. package/dist/cjs/cryptography/keypair.js.map +7 -0
  40. package/dist/cjs/cryptography/mnemonics.d.ts +27 -0
  41. package/dist/cjs/cryptography/mnemonics.js +47 -0
  42. package/dist/cjs/cryptography/mnemonics.js.map +7 -0
  43. package/dist/cjs/cryptography/publickey.d.ts +67 -0
  44. package/dist/cjs/cryptography/publickey.js +140 -0
  45. package/dist/cjs/cryptography/publickey.js.map +7 -0
  46. package/dist/cjs/cryptography/signature-scheme.d.ts +24 -0
  47. package/dist/cjs/cryptography/signature-scheme.js +48 -0
  48. package/dist/cjs/cryptography/signature-scheme.js.map +7 -0
  49. package/dist/cjs/cryptography/signature.d.ts +65 -0
  50. package/dist/cjs/cryptography/signature.js +71 -0
  51. package/dist/cjs/cryptography/signature.js.map +7 -0
  52. package/dist/cjs/experimental/cache.d.ts +12 -0
  53. package/dist/cjs/experimental/cache.js +88 -0
  54. package/dist/cjs/experimental/cache.js.map +7 -0
  55. package/dist/cjs/experimental/client.d.ts +12 -0
  56. package/dist/cjs/experimental/client.js +46 -0
  57. package/dist/cjs/experimental/client.js.map +7 -0
  58. package/dist/cjs/experimental/core.d.ts +37 -0
  59. package/dist/cjs/experimental/core.js +114 -0
  60. package/dist/cjs/experimental/core.js.map +7 -0
  61. package/dist/cjs/experimental/errors.d.ts +8 -0
  62. package/dist/cjs/experimental/errors.js +54 -0
  63. package/dist/cjs/experimental/errors.js.map +7 -0
  64. package/dist/cjs/experimental/index.d.ts +7 -0
  65. package/dist/cjs/experimental/index.js +32 -0
  66. package/dist/cjs/experimental/index.js.map +7 -0
  67. package/dist/cjs/experimental/mvr.d.ts +42 -0
  68. package/dist/cjs/experimental/mvr.js +365 -0
  69. package/dist/cjs/experimental/mvr.js.map +7 -0
  70. package/dist/cjs/experimental/transports/utils.d.ts +3 -0
  71. package/dist/cjs/experimental/transports/utils.js +101 -0
  72. package/dist/cjs/experimental/transports/utils.js.map +7 -0
  73. package/dist/cjs/experimental/types.d.ts +434 -0
  74. package/dist/cjs/experimental/types.js +17 -0
  75. package/dist/cjs/experimental/types.js.map +7 -0
  76. package/dist/cjs/faucet/faucet.d.ts +65 -0
  77. package/dist/cjs/faucet/faucet.js +130 -0
  78. package/dist/cjs/faucet/faucet.js.map +7 -0
  79. package/dist/cjs/faucet/index.d.ts +1 -0
  80. package/dist/cjs/faucet/index.js +30 -0
  81. package/dist/cjs/faucet/index.js.map +7 -0
  82. package/dist/cjs/graphql/client.d.ts +50 -0
  83. package/dist/cjs/graphql/client.js +94 -0
  84. package/dist/cjs/graphql/client.js.map +7 -0
  85. package/dist/cjs/graphql/core.d.ts +32 -0
  86. package/dist/cjs/graphql/core.js +471 -0
  87. package/dist/cjs/graphql/core.js.map +7 -0
  88. package/dist/cjs/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  89. package/dist/cjs/graphql/generated/2024.1/tada-env.js +13142 -0
  90. package/dist/cjs/graphql/generated/2024.1/tada-env.js.map +7 -0
  91. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +12 -0
  92. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
  93. package/dist/cjs/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  94. package/dist/cjs/graphql/generated/2024.4/tada-env.js +13288 -0
  95. package/dist/cjs/graphql/generated/2024.4/tada-env.js.map +7 -0
  96. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +12 -0
  97. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
  98. package/dist/cjs/graphql/generated/latest/tada-env.d.ts +11128 -0
  99. package/dist/cjs/graphql/generated/latest/tada-env.js +12926 -0
  100. package/dist/cjs/graphql/generated/latest/tada-env.js.map +7 -0
  101. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js +12 -0
  102. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js.map +7 -0
  103. package/dist/cjs/graphql/generated/queries.d.ts +4980 -0
  104. package/dist/cjs/graphql/generated/queries.js +803 -0
  105. package/dist/cjs/graphql/generated/queries.js.map +7 -0
  106. package/dist/cjs/graphql/index.d.ts +1 -0
  107. package/dist/cjs/graphql/index.js +26 -0
  108. package/dist/cjs/graphql/index.js.map +7 -0
  109. package/dist/cjs/graphql/schemas/2024.1/index.d.ts +10 -0
  110. package/dist/cjs/graphql/schemas/2024.1/index.js +29 -0
  111. package/dist/cjs/graphql/schemas/2024.1/index.js.map +7 -0
  112. package/dist/cjs/graphql/schemas/2024.4/index.d.ts +10 -0
  113. package/dist/cjs/graphql/schemas/2024.4/index.js +29 -0
  114. package/dist/cjs/graphql/schemas/2024.4/index.js.map +7 -0
  115. package/dist/cjs/graphql/schemas/latest/index.d.ts +10 -0
  116. package/dist/cjs/graphql/schemas/latest/index.js +29 -0
  117. package/dist/cjs/graphql/schemas/latest/index.js.map +7 -0
  118. package/dist/cjs/graphql/types.d.ts +71 -0
  119. package/dist/cjs/graphql/types.js +17 -0
  120. package/dist/cjs/graphql/types.js.map +7 -0
  121. package/dist/cjs/grpc/client.d.ts +33 -0
  122. package/dist/cjs/grpc/client.js +53 -0
  123. package/dist/cjs/grpc/client.js.map +7 -0
  124. package/dist/cjs/grpc/core.d.ts +30 -0
  125. package/dist/cjs/grpc/core.js +651 -0
  126. package/dist/cjs/grpc/core.js.map +7 -0
  127. package/dist/cjs/grpc/index.d.ts +4 -0
  128. package/dist/cjs/grpc/index.js +27 -0
  129. package/dist/cjs/grpc/index.js.map +7 -0
  130. package/dist/cjs/grpc/proto/google/protobuf/any.d.ts +173 -0
  131. package/dist/cjs/grpc/proto/google/protobuf/any.js +139 -0
  132. package/dist/cjs/grpc/proto/google/protobuf/any.js.map +7 -0
  133. package/dist/cjs/grpc/proto/google/protobuf/duration.d.ts +104 -0
  134. package/dist/cjs/grpc/proto/google/protobuf/duration.js +88 -0
  135. package/dist/cjs/grpc/proto/google/protobuf/duration.js.map +7 -0
  136. package/dist/cjs/grpc/proto/google/protobuf/empty.d.ts +25 -0
  137. package/dist/cjs/grpc/proto/google/protobuf/empty.js +31 -0
  138. package/dist/cjs/grpc/proto/google/protobuf/empty.js.map +7 -0
  139. package/dist/cjs/grpc/proto/google/protobuf/field_mask.d.ts +231 -0
  140. package/dist/cjs/grpc/proto/google/protobuf/field_mask.js +73 -0
  141. package/dist/cjs/grpc/proto/google/protobuf/field_mask.js.map +7 -0
  142. package/dist/cjs/grpc/proto/google/protobuf/struct.d.ts +169 -0
  143. package/dist/cjs/grpc/proto/google/protobuf/struct.js +199 -0
  144. package/dist/cjs/grpc/proto/google/protobuf/struct.js.map +7 -0
  145. package/dist/cjs/grpc/proto/google/protobuf/timestamp.d.ts +145 -0
  146. package/dist/cjs/grpc/proto/google/protobuf/timestamp.js +123 -0
  147. package/dist/cjs/grpc/proto/google/protobuf/timestamp.js.map +7 -0
  148. package/dist/cjs/grpc/proto/google/rpc/error_details.d.ts +525 -0
  149. package/dist/cjs/grpc/proto/google/rpc/error_details.js +332 -0
  150. package/dist/cjs/grpc/proto/google/rpc/error_details.js.map +7 -0
  151. package/dist/cjs/grpc/proto/google/rpc/status.d.ts +46 -0
  152. package/dist/cjs/grpc/proto/google/rpc/status.js +48 -0
  153. package/dist/cjs/grpc/proto/google/rpc/status.js.map +7 -0
  154. package/dist/cjs/grpc/proto/haneul/rpc/v2/argument.d.ts +66 -0
  155. package/dist/cjs/grpc/proto/haneul/rpc/v2/argument.js +71 -0
  156. package/dist/cjs/grpc/proto/haneul/rpc/v2/argument.js.map +7 -0
  157. package/dist/cjs/grpc/proto/haneul/rpc/v2/balance_change.d.ts +34 -0
  158. package/dist/cjs/grpc/proto/haneul/rpc/v2/balance_change.js +56 -0
  159. package/dist/cjs/grpc/proto/haneul/rpc/v2/balance_change.js.map +7 -0
  160. package/dist/cjs/grpc/proto/haneul/rpc/v2/bcs.d.ts +30 -0
  161. package/dist/cjs/grpc/proto/haneul/rpc/v2/bcs.js +48 -0
  162. package/dist/cjs/grpc/proto/haneul/rpc/v2/bcs.js.map +7 -0
  163. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint.d.ts +68 -0
  164. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint.js +64 -0
  165. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint.js.map +7 -0
  166. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_contents.d.ts +74 -0
  167. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_contents.js +89 -0
  168. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_contents.js.map +7 -0
  169. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_summary.d.ts +195 -0
  170. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_summary.js +165 -0
  171. package/dist/cjs/grpc/proto/haneul/rpc/v2/checkpoint_summary.js.map +7 -0
  172. package/dist/cjs/grpc/proto/haneul/rpc/v2/effects.d.ts +338 -0
  173. package/dist/cjs/grpc/proto/haneul/rpc/v2/effects.js +294 -0
  174. package/dist/cjs/grpc/proto/haneul/rpc/v2/effects.js.map +7 -0
  175. package/dist/cjs/grpc/proto/haneul/rpc/v2/epoch.d.ts +62 -0
  176. package/dist/cjs/grpc/proto/haneul/rpc/v2/epoch.js +73 -0
  177. package/dist/cjs/grpc/proto/haneul/rpc/v2/epoch.js.map +7 -0
  178. package/dist/cjs/grpc/proto/haneul/rpc/v2/error_reason.d.ts +17 -0
  179. package/dist/cjs/grpc/proto/haneul/rpc/v2/error_reason.js +30 -0
  180. package/dist/cjs/grpc/proto/haneul/rpc/v2/error_reason.js.map +7 -0
  181. package/dist/cjs/grpc/proto/haneul/rpc/v2/event.d.ts +88 -0
  182. package/dist/cjs/grpc/proto/haneul/rpc/v2/event.js +86 -0
  183. package/dist/cjs/grpc/proto/haneul/rpc/v2/event.js.map +7 -0
  184. package/dist/cjs/grpc/proto/haneul/rpc/v2/executed_transaction.d.ts +80 -0
  185. package/dist/cjs/grpc/proto/haneul/rpc/v2/executed_transaction.js +74 -0
  186. package/dist/cjs/grpc/proto/haneul/rpc/v2/executed_transaction.js.map +7 -0
  187. package/dist/cjs/grpc/proto/haneul/rpc/v2/execution_status.d.ts +843 -0
  188. package/dist/cjs/grpc/proto/haneul/rpc/v2/execution_status.js +513 -0
  189. package/dist/cjs/grpc/proto/haneul/rpc/v2/execution_status.js.map +7 -0
  190. package/dist/cjs/grpc/proto/haneul/rpc/v2/gas_cost_summary.d.ts +41 -0
  191. package/dist/cjs/grpc/proto/haneul/rpc/v2/gas_cost_summary.js +64 -0
  192. package/dist/cjs/grpc/proto/haneul/rpc/v2/gas_cost_summary.js.map +7 -0
  193. package/dist/cjs/grpc/proto/haneul/rpc/v2/input.d.ts +98 -0
  194. package/dist/cjs/grpc/proto/haneul/rpc/v2/input.js +90 -0
  195. package/dist/cjs/grpc/proto/haneul/rpc/v2/input.js.map +7 -0
  196. package/dist/cjs/grpc/proto/haneul/rpc/v2/jwk.d.ts +70 -0
  197. package/dist/cjs/grpc/proto/haneul/rpc/v2/jwk.js +88 -0
  198. package/dist/cjs/grpc/proto/haneul/rpc/v2/jwk.js.map +7 -0
  199. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.client.d.ts +95 -0
  200. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.client.js +127 -0
  201. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.client.js.map +7 -0
  202. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.d.ts +420 -0
  203. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.js +327 -0
  204. package/dist/cjs/grpc/proto/haneul/rpc/v2/ledger_service.js.map +7 -0
  205. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package.d.ts +579 -0
  206. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package.js +480 -0
  207. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package.js.map +7 -0
  208. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.client.d.ts +61 -0
  209. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.client.js +86 -0
  210. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.client.js.map +7 -0
  211. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.d.ts +229 -0
  212. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.js +226 -0
  213. package/dist/cjs/grpc/proto/haneul/rpc/v2/move_package_service.js.map +7 -0
  214. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.client.d.ts +41 -0
  215. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.client.js +60 -0
  216. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.client.js.map +7 -0
  217. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.d.ts +144 -0
  218. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.js +138 -0
  219. package/dist/cjs/grpc/proto/haneul/rpc/v2/name_service.js.map +7 -0
  220. package/dist/cjs/grpc/proto/haneul/rpc/v2/object.d.ts +127 -0
  221. package/dist/cjs/grpc/proto/haneul/rpc/v2/object.js +113 -0
  222. package/dist/cjs/grpc/proto/haneul/rpc/v2/object.js.map +7 -0
  223. package/dist/cjs/grpc/proto/haneul/rpc/v2/object_reference.d.ts +34 -0
  224. package/dist/cjs/grpc/proto/haneul/rpc/v2/object_reference.js +56 -0
  225. package/dist/cjs/grpc/proto/haneul/rpc/v2/object_reference.js.map +7 -0
  226. package/dist/cjs/grpc/proto/haneul/rpc/v2/owner.d.ts +61 -0
  227. package/dist/cjs/grpc/proto/haneul/rpc/v2/owner.js +65 -0
  228. package/dist/cjs/grpc/proto/haneul/rpc/v2/owner.js.map +7 -0
  229. package/dist/cjs/grpc/proto/haneul/rpc/v2/protocol_config.d.ts +30 -0
  230. package/dist/cjs/grpc/proto/haneul/rpc/v2/protocol_config.js +62 -0
  231. package/dist/cjs/grpc/proto/haneul/rpc/v2/protocol_config.js.map +7 -0
  232. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature.d.ts +630 -0
  233. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature.js +514 -0
  234. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature.js.map +7 -0
  235. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_scheme.d.ts +40 -0
  236. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_scheme.js +34 -0
  237. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_scheme.js.map +7 -0
  238. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.client.d.ts +35 -0
  239. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.client.js +49 -0
  240. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.client.js.map +7 -0
  241. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.d.ts +79 -0
  242. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.js +76 -0
  243. package/dist/cjs/grpc/proto/haneul/rpc/v2/signature_verification_service.js.map +7 -0
  244. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.client.d.ts +71 -0
  245. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.client.js +99 -0
  246. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.client.js.map +7 -0
  247. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.d.ts +690 -0
  248. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.js +546 -0
  249. package/dist/cjs/grpc/proto/haneul/rpc/v2/state_service.js.map +7 -0
  250. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.client.d.ts +55 -0
  251. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.client.js +59 -0
  252. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.client.js.map +7 -0
  253. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.d.ts +57 -0
  254. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.js +63 -0
  255. package/dist/cjs/grpc/proto/haneul/rpc/v2/subscription_service.js.map +7 -0
  256. package/dist/cjs/grpc/proto/haneul/rpc/v2/system_state.d.ts +684 -0
  257. package/dist/cjs/grpc/proto/haneul/rpc/v2/system_state.js +674 -0
  258. package/dist/cjs/grpc/proto/haneul/rpc/v2/system_state.js.map +7 -0
  259. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction.d.ts +1321 -0
  260. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction.js +931 -0
  261. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction.js.map +7 -0
  262. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.d.ts +41 -0
  263. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.js +60 -0
  264. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.js.map +7 -0
  265. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.d.ts +184 -0
  266. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.js +159 -0
  267. package/dist/cjs/grpc/proto/haneul/rpc/v2/transaction_execution_service.js.map +7 -0
  268. package/dist/cjs/jsonRpc/client.d.ts +264 -0
  269. package/dist/cjs/jsonRpc/client.js +832 -0
  270. package/dist/cjs/jsonRpc/client.js.map +7 -0
  271. package/dist/cjs/jsonRpc/core.d.ts +93 -0
  272. package/dist/cjs/jsonRpc/core.js +644 -0
  273. package/dist/cjs/jsonRpc/core.js.map +7 -0
  274. package/dist/cjs/jsonRpc/errors.d.ts +12 -0
  275. package/dist/cjs/jsonRpc/errors.js +60 -0
  276. package/dist/cjs/jsonRpc/errors.js.map +7 -0
  277. package/dist/cjs/jsonRpc/http-transport.d.ts +42 -0
  278. package/dist/cjs/jsonRpc/http-transport.js +119 -0
  279. package/dist/cjs/jsonRpc/http-transport.js.map +7 -0
  280. package/dist/cjs/jsonRpc/index.d.ts +4 -0
  281. package/dist/cjs/jsonRpc/index.js +32 -0
  282. package/dist/cjs/jsonRpc/index.js.map +7 -0
  283. package/dist/cjs/jsonRpc/json-rpc-resolver.d.ts +4 -0
  284. package/dist/cjs/jsonRpc/json-rpc-resolver.js +311 -0
  285. package/dist/cjs/jsonRpc/json-rpc-resolver.js.map +7 -0
  286. package/dist/cjs/jsonRpc/rpc-websocket-client.d.ts +43 -0
  287. package/dist/cjs/jsonRpc/rpc-websocket-client.js +194 -0
  288. package/dist/cjs/jsonRpc/rpc-websocket-client.js.map +7 -0
  289. package/dist/cjs/jsonRpc/types/chain.d.ts +99 -0
  290. package/dist/cjs/jsonRpc/types/chain.js +17 -0
  291. package/dist/cjs/jsonRpc/types/chain.js.map +7 -0
  292. package/dist/cjs/jsonRpc/types/changes.d.ts +19 -0
  293. package/dist/cjs/jsonRpc/types/changes.js +17 -0
  294. package/dist/cjs/jsonRpc/types/changes.js.map +7 -0
  295. package/dist/cjs/jsonRpc/types/coins.d.ts +6 -0
  296. package/dist/cjs/jsonRpc/types/coins.js +17 -0
  297. package/dist/cjs/jsonRpc/types/coins.js.map +7 -0
  298. package/dist/cjs/jsonRpc/types/common.d.ts +2 -0
  299. package/dist/cjs/jsonRpc/types/common.js +17 -0
  300. package/dist/cjs/jsonRpc/types/common.js.map +7 -0
  301. package/dist/cjs/jsonRpc/types/generated.d.ts +1492 -0
  302. package/dist/cjs/jsonRpc/types/generated.js +17 -0
  303. package/dist/cjs/jsonRpc/types/generated.js.map +7 -0
  304. package/dist/cjs/jsonRpc/types/index.d.ts +6 -0
  305. package/dist/cjs/jsonRpc/types/index.js +17 -0
  306. package/dist/cjs/jsonRpc/types/index.js.map +7 -0
  307. package/dist/cjs/jsonRpc/types/params.d.ts +656 -0
  308. package/dist/cjs/jsonRpc/types/params.js +17 -0
  309. package/dist/cjs/jsonRpc/types/params.js.map +7 -0
  310. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.d.ts +8 -0
  311. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +77 -0
  312. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
  313. package/dist/cjs/keypairs/ed25519/index.d.ts +2 -0
  314. package/dist/cjs/keypairs/ed25519/index.js +28 -0
  315. package/dist/cjs/keypairs/ed25519/index.js.map +7 -0
  316. package/dist/cjs/keypairs/ed25519/keypair.d.ts +74 -0
  317. package/dist/cjs/keypairs/ed25519/keypair.js +162 -0
  318. package/dist/cjs/keypairs/ed25519/keypair.js.map +7 -0
  319. package/dist/cjs/keypairs/ed25519/publickey.d.ts +30 -0
  320. package/dist/cjs/keypairs/ed25519/publickey.js +88 -0
  321. package/dist/cjs/keypairs/ed25519/publickey.js.map +7 -0
  322. package/dist/cjs/keypairs/passkey/index.d.ts +3 -0
  323. package/dist/cjs/keypairs/passkey/index.js +29 -0
  324. package/dist/cjs/keypairs/passkey/index.js.map +7 -0
  325. package/dist/cjs/keypairs/passkey/keypair.d.ts +113 -0
  326. package/dist/cjs/keypairs/passkey/keypair.js +251 -0
  327. package/dist/cjs/keypairs/passkey/keypair.js.map +7 -0
  328. package/dist/cjs/keypairs/passkey/publickey.d.ts +72 -0
  329. package/dist/cjs/keypairs/passkey/publickey.js +168 -0
  330. package/dist/cjs/keypairs/passkey/publickey.js.map +7 -0
  331. package/dist/cjs/keypairs/passkey/types.d.ts +12 -0
  332. package/dist/cjs/keypairs/passkey/types.js +17 -0
  333. package/dist/cjs/keypairs/passkey/types.js.map +7 -0
  334. package/dist/cjs/keypairs/secp256k1/index.d.ts +2 -0
  335. package/dist/cjs/keypairs/secp256k1/index.js +28 -0
  336. package/dist/cjs/keypairs/secp256k1/index.js.map +7 -0
  337. package/dist/cjs/keypairs/secp256k1/keypair.d.ts +73 -0
  338. package/dist/cjs/keypairs/secp256k1/keypair.js +150 -0
  339. package/dist/cjs/keypairs/secp256k1/keypair.js.map +7 -0
  340. package/dist/cjs/keypairs/secp256k1/publickey.d.ts +30 -0
  341. package/dist/cjs/keypairs/secp256k1/publickey.js +93 -0
  342. package/dist/cjs/keypairs/secp256k1/publickey.js.map +7 -0
  343. package/dist/cjs/keypairs/secp256r1/index.d.ts +2 -0
  344. package/dist/cjs/keypairs/secp256r1/index.js +28 -0
  345. package/dist/cjs/keypairs/secp256r1/index.js.map +7 -0
  346. package/dist/cjs/keypairs/secp256r1/keypair.d.ts +73 -0
  347. package/dist/cjs/keypairs/secp256r1/keypair.js +144 -0
  348. package/dist/cjs/keypairs/secp256r1/keypair.js.map +7 -0
  349. package/dist/cjs/keypairs/secp256r1/publickey.d.ts +30 -0
  350. package/dist/cjs/keypairs/secp256r1/publickey.js +94 -0
  351. package/dist/cjs/keypairs/secp256r1/publickey.js.map +7 -0
  352. package/dist/cjs/multisig/index.d.ts +2 -0
  353. package/dist/cjs/multisig/index.js +28 -0
  354. package/dist/cjs/multisig/index.js.map +7 -0
  355. package/dist/cjs/multisig/publickey.d.ts +114 -0
  356. package/dist/cjs/multisig/publickey.js +260 -0
  357. package/dist/cjs/multisig/publickey.js.map +7 -0
  358. package/dist/cjs/multisig/signer.d.ts +20 -0
  359. package/dist/cjs/multisig/signer.js +105 -0
  360. package/dist/cjs/multisig/signer.js.map +7 -0
  361. package/dist/cjs/package.json +5 -0
  362. package/dist/cjs/transactions/Arguments.d.ts +49 -0
  363. package/dist/cjs/transactions/Arguments.js +33 -0
  364. package/dist/cjs/transactions/Arguments.js.map +7 -0
  365. package/dist/cjs/transactions/Commands.d.ts +57 -0
  366. package/dist/cjs/transactions/Commands.js +140 -0
  367. package/dist/cjs/transactions/Commands.js.map +7 -0
  368. package/dist/cjs/transactions/Inputs.d.ts +22 -0
  369. package/dist/cjs/transactions/Inputs.js +80 -0
  370. package/dist/cjs/transactions/Inputs.js.map +7 -0
  371. package/dist/cjs/transactions/ObjectCache.d.ts +83 -0
  372. package/dist/cjs/transactions/ObjectCache.js +241 -0
  373. package/dist/cjs/transactions/ObjectCache.js.map +7 -0
  374. package/dist/cjs/transactions/Transaction.d.ts +710 -0
  375. package/dist/cjs/transactions/Transaction.js +683 -0
  376. package/dist/cjs/transactions/Transaction.js.map +7 -0
  377. package/dist/cjs/transactions/TransactionData.d.ts +73 -0
  378. package/dist/cjs/transactions/TransactionData.js +433 -0
  379. package/dist/cjs/transactions/TransactionData.js.map +7 -0
  380. package/dist/cjs/transactions/__tests__/Transaction.test.d.ts +1 -0
  381. package/dist/cjs/transactions/__tests__/bcs.test.d.ts +1 -0
  382. package/dist/cjs/transactions/data/internal.d.ts +1010 -0
  383. package/dist/cjs/transactions/data/internal.js +216 -0
  384. package/dist/cjs/transactions/data/internal.js.map +7 -0
  385. package/dist/cjs/transactions/data/v1.d.ts +312 -0
  386. package/dist/cjs/transactions/data/v1.js +482 -0
  387. package/dist/cjs/transactions/data/v1.js.map +7 -0
  388. package/dist/cjs/transactions/data/v2.d.ts +153 -0
  389. package/dist/cjs/transactions/data/v2.js +125 -0
  390. package/dist/cjs/transactions/data/v2.js.map +7 -0
  391. package/dist/cjs/transactions/executor/caching.d.ts +31 -0
  392. package/dist/cjs/transactions/executor/caching.js +114 -0
  393. package/dist/cjs/transactions/executor/caching.js.map +7 -0
  394. package/dist/cjs/transactions/executor/parallel.d.ts +37 -0
  395. package/dist/cjs/transactions/executor/parallel.js +380 -0
  396. package/dist/cjs/transactions/executor/parallel.js.map +7 -0
  397. package/dist/cjs/transactions/executor/queue.d.ts +11 -0
  398. package/dist/cjs/transactions/executor/queue.js +85 -0
  399. package/dist/cjs/transactions/executor/queue.js.map +7 -0
  400. package/dist/cjs/transactions/executor/serial.d.ts +31 -0
  401. package/dist/cjs/transactions/executor/serial.js +137 -0
  402. package/dist/cjs/transactions/executor/serial.js.map +7 -0
  403. package/dist/cjs/transactions/hash.d.ts +7 -0
  404. package/dist/cjs/transactions/hash.js +32 -0
  405. package/dist/cjs/transactions/hash.js.map +7 -0
  406. package/dist/cjs/transactions/index.d.ts +21 -0
  407. package/dist/cjs/transactions/index.js +51 -0
  408. package/dist/cjs/transactions/index.js.map +7 -0
  409. package/dist/cjs/transactions/intents/CoinWithBalance.d.ts +9 -0
  410. package/dist/cjs/transactions/intents/CoinWithBalance.js +188 -0
  411. package/dist/cjs/transactions/intents/CoinWithBalance.js.map +7 -0
  412. package/dist/cjs/transactions/object.d.ts +16 -0
  413. package/dist/cjs/transactions/object.js +78 -0
  414. package/dist/cjs/transactions/object.js.map +7 -0
  415. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.d.ts +48 -0
  416. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js +67 -0
  417. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js.map +7 -0
  418. package/dist/cjs/transactions/pure.d.ts +20 -0
  419. package/dist/cjs/transactions/pure.js +57 -0
  420. package/dist/cjs/transactions/pure.js.map +7 -0
  421. package/dist/cjs/transactions/resolve.d.ts +13 -0
  422. package/dist/cjs/transactions/resolve.js +98 -0
  423. package/dist/cjs/transactions/resolve.js.map +7 -0
  424. package/dist/cjs/transactions/serializer.d.ts +7 -0
  425. package/dist/cjs/transactions/serializer.js +182 -0
  426. package/dist/cjs/transactions/serializer.js.map +7 -0
  427. package/dist/cjs/transactions/utils.d.ts +10 -0
  428. package/dist/cjs/transactions/utils.js +135 -0
  429. package/dist/cjs/transactions/utils.js.map +7 -0
  430. package/dist/cjs/utils/constants.d.ts +10 -0
  431. package/dist/cjs/utils/constants.js +44 -0
  432. package/dist/cjs/utils/constants.js.map +7 -0
  433. package/dist/cjs/utils/derived-objects.d.ts +5 -0
  434. package/dist/cjs/utils/derived-objects.js +34 -0
  435. package/dist/cjs/utils/derived-objects.js.map +7 -0
  436. package/dist/cjs/utils/dynamic-fields.d.ts +2 -0
  437. package/dist/cjs/utils/dynamic-fields.js +41 -0
  438. package/dist/cjs/utils/dynamic-fields.js.map +7 -0
  439. package/dist/cjs/utils/format.d.ts +2 -0
  440. package/dist/cjs/utils/format.js +36 -0
  441. package/dist/cjs/utils/format.js.map +7 -0
  442. package/dist/cjs/utils/haneul-types.d.ts +26 -0
  443. package/dist/cjs/utils/haneul-types.js +91 -0
  444. package/dist/cjs/utils/haneul-types.js.map +7 -0
  445. package/dist/cjs/utils/haneulns.d.ts +2 -0
  446. package/dist/cjs/utils/haneulns.js +57 -0
  447. package/dist/cjs/utils/haneulns.js.map +7 -0
  448. package/dist/cjs/utils/index.d.ts +9 -0
  449. package/dist/cjs/utils/index.js +69 -0
  450. package/dist/cjs/utils/index.js.map +7 -0
  451. package/dist/cjs/utils/move-registry.d.ts +6 -0
  452. package/dist/cjs/utils/move-registry.js +45 -0
  453. package/dist/cjs/utils/move-registry.js.map +7 -0
  454. package/dist/cjs/verify/index.d.ts +1 -0
  455. package/dist/cjs/verify/index.js +29 -0
  456. package/dist/cjs/verify/index.js.map +7 -0
  457. package/dist/cjs/verify/verify.d.ts +21 -0
  458. package/dist/cjs/verify/verify.js +124 -0
  459. package/dist/cjs/verify/verify.js.map +7 -0
  460. package/dist/cjs/version.d.ts +2 -0
  461. package/dist/cjs/version.js +27 -0
  462. package/dist/cjs/version.js.map +7 -0
  463. package/dist/cjs/zklogin/address.d.ts +16 -0
  464. package/dist/cjs/zklogin/address.js +87 -0
  465. package/dist/cjs/zklogin/address.js.map +7 -0
  466. package/dist/cjs/zklogin/bcs.d.ts +28 -0
  467. package/dist/cjs/zklogin/bcs.js +42 -0
  468. package/dist/cjs/zklogin/bcs.js.map +7 -0
  469. package/dist/cjs/zklogin/index.d.ts +9 -0
  470. package/dist/cjs/zklogin/index.js +46 -0
  471. package/dist/cjs/zklogin/index.js.map +7 -0
  472. package/dist/cjs/zklogin/jwt-decode.d.ts +47 -0
  473. package/dist/cjs/zklogin/jwt-decode.js +85 -0
  474. package/dist/cjs/zklogin/jwt-decode.js.map +7 -0
  475. package/dist/cjs/zklogin/jwt-utils.d.ts +12 -0
  476. package/dist/cjs/zklogin/jwt-utils.js +121 -0
  477. package/dist/cjs/zklogin/jwt-utils.js.map +7 -0
  478. package/dist/cjs/zklogin/nonce.d.ts +4 -0
  479. package/dist/cjs/zklogin/nonce.js +54 -0
  480. package/dist/cjs/zklogin/nonce.js.map +7 -0
  481. package/dist/cjs/zklogin/poseidon.d.ts +2 -0
  482. package/dist/cjs/zklogin/poseidon.js +63 -0
  483. package/dist/cjs/zklogin/poseidon.js.map +7 -0
  484. package/dist/cjs/zklogin/publickey.d.ts +87 -0
  485. package/dist/cjs/zklogin/publickey.js +257 -0
  486. package/dist/cjs/zklogin/publickey.js.map +7 -0
  487. package/dist/cjs/zklogin/signature.d.ts +23 -0
  488. package/dist/cjs/zklogin/signature.js +48 -0
  489. package/dist/cjs/zklogin/signature.js.map +7 -0
  490. package/dist/cjs/zklogin/utils.d.ts +16 -0
  491. package/dist/cjs/zklogin/utils.js +97 -0
  492. package/dist/cjs/zklogin/utils.js.map +7 -0
  493. package/dist/esm/bcs/bcs.d.ts +1973 -0
  494. package/dist/esm/bcs/bcs.js +308 -0
  495. package/dist/esm/bcs/bcs.js.map +7 -0
  496. package/dist/esm/bcs/effects.d.ts +579 -0
  497. package/dist/esm/bcs/effects.js +190 -0
  498. package/dist/esm/bcs/effects.js.map +7 -0
  499. package/dist/esm/bcs/index.d.ts +2589 -0
  500. package/dist/esm/bcs/index.js +94 -0
  501. package/dist/esm/bcs/index.js.map +7 -0
  502. package/dist/esm/bcs/pure.d.ts +22 -0
  503. package/dist/esm/bcs/pure.js +39 -0
  504. package/dist/esm/bcs/pure.js.map +7 -0
  505. package/dist/esm/bcs/type-tag-serializer.d.ts +7 -0
  506. package/dist/esm/bcs/type-tag-serializer.js +97 -0
  507. package/dist/esm/bcs/type-tag-serializer.js.map +7 -0
  508. package/dist/esm/bcs/types.d.ts +114 -0
  509. package/dist/esm/bcs/types.js +7 -0
  510. package/dist/esm/bcs/types.js.map +7 -0
  511. package/dist/esm/client/index.d.ts +5 -0
  512. package/dist/esm/client/index.js +19 -0
  513. package/dist/esm/client/index.js.map +7 -0
  514. package/dist/esm/client/network.d.ts +1 -0
  515. package/dist/esm/client/network.js +18 -0
  516. package/dist/esm/client/network.js.map +7 -0
  517. package/dist/esm/cryptography/index.d.ts +7 -0
  518. package/dist/esm/cryptography/index.js +47 -0
  519. package/dist/esm/cryptography/index.js.map +7 -0
  520. package/dist/esm/cryptography/intent.d.ts +6 -0
  521. package/dist/esm/cryptography/intent.js +15 -0
  522. package/dist/esm/cryptography/intent.js.map +7 -0
  523. package/dist/esm/cryptography/keypair.d.ts +72 -0
  524. package/dist/esm/cryptography/keypair.js +98 -0
  525. package/dist/esm/cryptography/keypair.js.map +7 -0
  526. package/dist/esm/cryptography/mnemonics.d.ts +27 -0
  527. package/dist/esm/cryptography/mnemonics.js +27 -0
  528. package/dist/esm/cryptography/mnemonics.js.map +7 -0
  529. package/dist/esm/cryptography/publickey.d.ts +67 -0
  530. package/dist/esm/cryptography/publickey.js +120 -0
  531. package/dist/esm/cryptography/publickey.js.map +7 -0
  532. package/dist/esm/cryptography/signature-scheme.d.ts +24 -0
  533. package/dist/esm/cryptography/signature-scheme.js +28 -0
  534. package/dist/esm/cryptography/signature-scheme.js.map +7 -0
  535. package/dist/esm/cryptography/signature.d.ts +65 -0
  536. package/dist/esm/cryptography/signature.js +51 -0
  537. package/dist/esm/cryptography/signature.js.map +7 -0
  538. package/dist/esm/experimental/cache.d.ts +12 -0
  539. package/dist/esm/experimental/cache.js +68 -0
  540. package/dist/esm/experimental/cache.js.map +7 -0
  541. package/dist/esm/experimental/client.d.ts +12 -0
  542. package/dist/esm/experimental/client.js +26 -0
  543. package/dist/esm/experimental/client.js.map +7 -0
  544. package/dist/esm/experimental/core.d.ts +37 -0
  545. package/dist/esm/experimental/core.js +94 -0
  546. package/dist/esm/experimental/core.js.map +7 -0
  547. package/dist/esm/experimental/errors.d.ts +8 -0
  548. package/dist/esm/experimental/errors.js +34 -0
  549. package/dist/esm/experimental/errors.js.map +7 -0
  550. package/dist/esm/experimental/index.d.ts +7 -0
  551. package/dist/esm/experimental/index.js +12 -0
  552. package/dist/esm/experimental/index.js.map +7 -0
  553. package/dist/esm/experimental/mvr.d.ts +42 -0
  554. package/dist/esm/experimental/mvr.js +350 -0
  555. package/dist/esm/experimental/mvr.js.map +7 -0
  556. package/dist/esm/experimental/transports/utils.d.ts +3 -0
  557. package/dist/esm/experimental/transports/utils.js +81 -0
  558. package/dist/esm/experimental/transports/utils.js.map +7 -0
  559. package/dist/esm/experimental/types.d.ts +434 -0
  560. package/dist/esm/experimental/types.js +1 -0
  561. package/dist/esm/experimental/types.js.map +7 -0
  562. package/dist/esm/faucet/faucet.d.ts +65 -0
  563. package/dist/esm/faucet/faucet.js +110 -0
  564. package/dist/esm/faucet/faucet.js.map +7 -0
  565. package/dist/esm/faucet/index.d.ts +1 -0
  566. package/dist/esm/faucet/index.js +17 -0
  567. package/dist/esm/faucet/index.js.map +7 -0
  568. package/dist/esm/graphql/client.d.ts +50 -0
  569. package/dist/esm/graphql/client.js +74 -0
  570. package/dist/esm/graphql/client.js.map +7 -0
  571. package/dist/esm/graphql/core.d.ts +32 -0
  572. package/dist/esm/graphql/core.js +469 -0
  573. package/dist/esm/graphql/core.js.map +7 -0
  574. package/dist/esm/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  575. package/dist/esm/graphql/generated/2024.1/tada-env.js +13122 -0
  576. package/dist/esm/graphql/generated/2024.1/tada-env.js.map +7 -0
  577. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +17 -0
  578. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
  579. package/dist/esm/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  580. package/dist/esm/graphql/generated/2024.4/tada-env.js +13268 -0
  581. package/dist/esm/graphql/generated/2024.4/tada-env.js.map +7 -0
  582. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +17 -0
  583. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
  584. package/dist/esm/graphql/generated/latest/tada-env.d.ts +11128 -0
  585. package/dist/esm/graphql/generated/latest/tada-env.js +12906 -0
  586. package/dist/esm/graphql/generated/latest/tada-env.js.map +7 -0
  587. package/dist/esm/graphql/generated/latest/tsconfig.tada.js +17 -0
  588. package/dist/esm/graphql/generated/latest/tsconfig.tada.js.map +7 -0
  589. package/dist/esm/graphql/generated/queries.d.ts +4980 -0
  590. package/dist/esm/graphql/generated/queries.js +783 -0
  591. package/dist/esm/graphql/generated/queries.js.map +7 -0
  592. package/dist/esm/graphql/index.d.ts +1 -0
  593. package/dist/esm/graphql/index.js +9 -0
  594. package/dist/esm/graphql/index.js.map +7 -0
  595. package/dist/esm/graphql/schemas/2024.1/index.d.ts +10 -0
  596. package/dist/esm/graphql/schemas/2024.1/index.js +9 -0
  597. package/dist/esm/graphql/schemas/2024.1/index.js.map +7 -0
  598. package/dist/esm/graphql/schemas/2024.4/index.d.ts +10 -0
  599. package/dist/esm/graphql/schemas/2024.4/index.js +9 -0
  600. package/dist/esm/graphql/schemas/2024.4/index.js.map +7 -0
  601. package/dist/esm/graphql/schemas/latest/index.d.ts +10 -0
  602. package/dist/esm/graphql/schemas/latest/index.js +9 -0
  603. package/dist/esm/graphql/schemas/latest/index.js.map +7 -0
  604. package/dist/esm/graphql/types.d.ts +71 -0
  605. package/dist/esm/graphql/types.js +1 -0
  606. package/dist/esm/graphql/types.js.map +7 -0
  607. package/dist/esm/grpc/client.d.ts +33 -0
  608. package/dist/esm/grpc/client.js +33 -0
  609. package/dist/esm/grpc/client.js.map +7 -0
  610. package/dist/esm/grpc/core.d.ts +30 -0
  611. package/dist/esm/grpc/core.js +640 -0
  612. package/dist/esm/grpc/core.js.map +7 -0
  613. package/dist/esm/grpc/index.d.ts +4 -0
  614. package/dist/esm/grpc/index.js +7 -0
  615. package/dist/esm/grpc/index.js.map +7 -0
  616. package/dist/esm/grpc/proto/google/protobuf/any.d.ts +173 -0
  617. package/dist/esm/grpc/proto/google/protobuf/any.js +119 -0
  618. package/dist/esm/grpc/proto/google/protobuf/any.js.map +7 -0
  619. package/dist/esm/grpc/proto/google/protobuf/duration.d.ts +104 -0
  620. package/dist/esm/grpc/proto/google/protobuf/duration.js +68 -0
  621. package/dist/esm/grpc/proto/google/protobuf/duration.js.map +7 -0
  622. package/dist/esm/grpc/proto/google/protobuf/empty.d.ts +25 -0
  623. package/dist/esm/grpc/proto/google/protobuf/empty.js +11 -0
  624. package/dist/esm/grpc/proto/google/protobuf/empty.js.map +7 -0
  625. package/dist/esm/grpc/proto/google/protobuf/field_mask.d.ts +231 -0
  626. package/dist/esm/grpc/proto/google/protobuf/field_mask.js +53 -0
  627. package/dist/esm/grpc/proto/google/protobuf/field_mask.js.map +7 -0
  628. package/dist/esm/grpc/proto/google/protobuf/struct.d.ts +169 -0
  629. package/dist/esm/grpc/proto/google/protobuf/struct.js +179 -0
  630. package/dist/esm/grpc/proto/google/protobuf/struct.js.map +7 -0
  631. package/dist/esm/grpc/proto/google/protobuf/timestamp.d.ts +145 -0
  632. package/dist/esm/grpc/proto/google/protobuf/timestamp.js +103 -0
  633. package/dist/esm/grpc/proto/google/protobuf/timestamp.js.map +7 -0
  634. package/dist/esm/grpc/proto/google/rpc/error_details.d.ts +525 -0
  635. package/dist/esm/grpc/proto/google/rpc/error_details.js +312 -0
  636. package/dist/esm/grpc/proto/google/rpc/error_details.js.map +7 -0
  637. package/dist/esm/grpc/proto/google/rpc/status.d.ts +46 -0
  638. package/dist/esm/grpc/proto/google/rpc/status.js +28 -0
  639. package/dist/esm/grpc/proto/google/rpc/status.js.map +7 -0
  640. package/dist/esm/grpc/proto/haneul/rpc/v2/argument.d.ts +66 -0
  641. package/dist/esm/grpc/proto/haneul/rpc/v2/argument.js +51 -0
  642. package/dist/esm/grpc/proto/haneul/rpc/v2/argument.js.map +7 -0
  643. package/dist/esm/grpc/proto/haneul/rpc/v2/balance_change.d.ts +34 -0
  644. package/dist/esm/grpc/proto/haneul/rpc/v2/balance_change.js +36 -0
  645. package/dist/esm/grpc/proto/haneul/rpc/v2/balance_change.js.map +7 -0
  646. package/dist/esm/grpc/proto/haneul/rpc/v2/bcs.d.ts +30 -0
  647. package/dist/esm/grpc/proto/haneul/rpc/v2/bcs.js +28 -0
  648. package/dist/esm/grpc/proto/haneul/rpc/v2/bcs.js.map +7 -0
  649. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint.d.ts +68 -0
  650. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint.js +44 -0
  651. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint.js.map +7 -0
  652. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_contents.d.ts +74 -0
  653. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_contents.js +69 -0
  654. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_contents.js.map +7 -0
  655. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_summary.d.ts +195 -0
  656. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_summary.js +145 -0
  657. package/dist/esm/grpc/proto/haneul/rpc/v2/checkpoint_summary.js.map +7 -0
  658. package/dist/esm/grpc/proto/haneul/rpc/v2/effects.d.ts +338 -0
  659. package/dist/esm/grpc/proto/haneul/rpc/v2/effects.js +274 -0
  660. package/dist/esm/grpc/proto/haneul/rpc/v2/effects.js.map +7 -0
  661. package/dist/esm/grpc/proto/haneul/rpc/v2/epoch.d.ts +62 -0
  662. package/dist/esm/grpc/proto/haneul/rpc/v2/epoch.js +53 -0
  663. package/dist/esm/grpc/proto/haneul/rpc/v2/epoch.js.map +7 -0
  664. package/dist/esm/grpc/proto/haneul/rpc/v2/error_reason.d.ts +17 -0
  665. package/dist/esm/grpc/proto/haneul/rpc/v2/error_reason.js +10 -0
  666. package/dist/esm/grpc/proto/haneul/rpc/v2/error_reason.js.map +7 -0
  667. package/dist/esm/grpc/proto/haneul/rpc/v2/event.d.ts +88 -0
  668. package/dist/esm/grpc/proto/haneul/rpc/v2/event.js +66 -0
  669. package/dist/esm/grpc/proto/haneul/rpc/v2/event.js.map +7 -0
  670. package/dist/esm/grpc/proto/haneul/rpc/v2/executed_transaction.d.ts +80 -0
  671. package/dist/esm/grpc/proto/haneul/rpc/v2/executed_transaction.js +54 -0
  672. package/dist/esm/grpc/proto/haneul/rpc/v2/executed_transaction.js.map +7 -0
  673. package/dist/esm/grpc/proto/haneul/rpc/v2/execution_status.d.ts +843 -0
  674. package/dist/esm/grpc/proto/haneul/rpc/v2/execution_status.js +493 -0
  675. package/dist/esm/grpc/proto/haneul/rpc/v2/execution_status.js.map +7 -0
  676. package/dist/esm/grpc/proto/haneul/rpc/v2/gas_cost_summary.d.ts +41 -0
  677. package/dist/esm/grpc/proto/haneul/rpc/v2/gas_cost_summary.js +44 -0
  678. package/dist/esm/grpc/proto/haneul/rpc/v2/gas_cost_summary.js.map +7 -0
  679. package/dist/esm/grpc/proto/haneul/rpc/v2/input.d.ts +98 -0
  680. package/dist/esm/grpc/proto/haneul/rpc/v2/input.js +70 -0
  681. package/dist/esm/grpc/proto/haneul/rpc/v2/input.js.map +7 -0
  682. package/dist/esm/grpc/proto/haneul/rpc/v2/jwk.d.ts +70 -0
  683. package/dist/esm/grpc/proto/haneul/rpc/v2/jwk.js +68 -0
  684. package/dist/esm/grpc/proto/haneul/rpc/v2/jwk.js.map +7 -0
  685. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.client.d.ts +95 -0
  686. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.client.js +107 -0
  687. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.client.js.map +7 -0
  688. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.d.ts +420 -0
  689. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.js +307 -0
  690. package/dist/esm/grpc/proto/haneul/rpc/v2/ledger_service.js.map +7 -0
  691. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package.d.ts +579 -0
  692. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package.js +460 -0
  693. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package.js.map +7 -0
  694. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.client.d.ts +61 -0
  695. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.client.js +66 -0
  696. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.client.js.map +7 -0
  697. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.d.ts +229 -0
  698. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.js +206 -0
  699. package/dist/esm/grpc/proto/haneul/rpc/v2/move_package_service.js.map +7 -0
  700. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.client.d.ts +41 -0
  701. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.client.js +40 -0
  702. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.client.js.map +7 -0
  703. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.d.ts +144 -0
  704. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.js +118 -0
  705. package/dist/esm/grpc/proto/haneul/rpc/v2/name_service.js.map +7 -0
  706. package/dist/esm/grpc/proto/haneul/rpc/v2/object.d.ts +127 -0
  707. package/dist/esm/grpc/proto/haneul/rpc/v2/object.js +93 -0
  708. package/dist/esm/grpc/proto/haneul/rpc/v2/object.js.map +7 -0
  709. package/dist/esm/grpc/proto/haneul/rpc/v2/object_reference.d.ts +34 -0
  710. package/dist/esm/grpc/proto/haneul/rpc/v2/object_reference.js +36 -0
  711. package/dist/esm/grpc/proto/haneul/rpc/v2/object_reference.js.map +7 -0
  712. package/dist/esm/grpc/proto/haneul/rpc/v2/owner.d.ts +61 -0
  713. package/dist/esm/grpc/proto/haneul/rpc/v2/owner.js +45 -0
  714. package/dist/esm/grpc/proto/haneul/rpc/v2/owner.js.map +7 -0
  715. package/dist/esm/grpc/proto/haneul/rpc/v2/protocol_config.d.ts +30 -0
  716. package/dist/esm/grpc/proto/haneul/rpc/v2/protocol_config.js +42 -0
  717. package/dist/esm/grpc/proto/haneul/rpc/v2/protocol_config.js.map +7 -0
  718. package/dist/esm/grpc/proto/haneul/rpc/v2/signature.d.ts +630 -0
  719. package/dist/esm/grpc/proto/haneul/rpc/v2/signature.js +494 -0
  720. package/dist/esm/grpc/proto/haneul/rpc/v2/signature.js.map +7 -0
  721. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_scheme.d.ts +40 -0
  722. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_scheme.js +14 -0
  723. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_scheme.js.map +7 -0
  724. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.client.d.ts +35 -0
  725. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.client.js +29 -0
  726. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.client.js.map +7 -0
  727. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.d.ts +79 -0
  728. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.js +56 -0
  729. package/dist/esm/grpc/proto/haneul/rpc/v2/signature_verification_service.js.map +7 -0
  730. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.client.d.ts +71 -0
  731. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.client.js +79 -0
  732. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.client.js.map +7 -0
  733. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.d.ts +690 -0
  734. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.js +526 -0
  735. package/dist/esm/grpc/proto/haneul/rpc/v2/state_service.js.map +7 -0
  736. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.client.d.ts +55 -0
  737. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.client.js +39 -0
  738. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.client.js.map +7 -0
  739. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.d.ts +57 -0
  740. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.js +43 -0
  741. package/dist/esm/grpc/proto/haneul/rpc/v2/subscription_service.js.map +7 -0
  742. package/dist/esm/grpc/proto/haneul/rpc/v2/system_state.d.ts +684 -0
  743. package/dist/esm/grpc/proto/haneul/rpc/v2/system_state.js +654 -0
  744. package/dist/esm/grpc/proto/haneul/rpc/v2/system_state.js.map +7 -0
  745. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction.d.ts +1321 -0
  746. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction.js +911 -0
  747. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction.js.map +7 -0
  748. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.d.ts +41 -0
  749. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.js +40 -0
  750. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.js.map +7 -0
  751. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.d.ts +184 -0
  752. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.js +139 -0
  753. package/dist/esm/grpc/proto/haneul/rpc/v2/transaction_execution_service.js.map +7 -0
  754. package/dist/esm/jsonRpc/client.d.ts +264 -0
  755. package/dist/esm/jsonRpc/client.js +818 -0
  756. package/dist/esm/jsonRpc/client.js.map +7 -0
  757. package/dist/esm/jsonRpc/core.d.ts +93 -0
  758. package/dist/esm/jsonRpc/core.js +624 -0
  759. package/dist/esm/jsonRpc/core.js.map +7 -0
  760. package/dist/esm/jsonRpc/errors.d.ts +12 -0
  761. package/dist/esm/jsonRpc/errors.js +40 -0
  762. package/dist/esm/jsonRpc/errors.js.map +7 -0
  763. package/dist/esm/jsonRpc/http-transport.d.ts +42 -0
  764. package/dist/esm/jsonRpc/http-transport.js +99 -0
  765. package/dist/esm/jsonRpc/http-transport.js.map +7 -0
  766. package/dist/esm/jsonRpc/index.d.ts +4 -0
  767. package/dist/esm/jsonRpc/index.js +17 -0
  768. package/dist/esm/jsonRpc/index.js.map +7 -0
  769. package/dist/esm/jsonRpc/json-rpc-resolver.d.ts +4 -0
  770. package/dist/esm/jsonRpc/json-rpc-resolver.js +295 -0
  771. package/dist/esm/jsonRpc/json-rpc-resolver.js.map +7 -0
  772. package/dist/esm/jsonRpc/rpc-websocket-client.d.ts +43 -0
  773. package/dist/esm/jsonRpc/rpc-websocket-client.js +174 -0
  774. package/dist/esm/jsonRpc/rpc-websocket-client.js.map +7 -0
  775. package/dist/esm/jsonRpc/types/chain.d.ts +99 -0
  776. package/dist/esm/jsonRpc/types/chain.js +1 -0
  777. package/dist/esm/jsonRpc/types/chain.js.map +7 -0
  778. package/dist/esm/jsonRpc/types/changes.d.ts +19 -0
  779. package/dist/esm/jsonRpc/types/changes.js +1 -0
  780. package/dist/esm/jsonRpc/types/changes.js.map +7 -0
  781. package/dist/esm/jsonRpc/types/coins.d.ts +6 -0
  782. package/dist/esm/jsonRpc/types/coins.js +1 -0
  783. package/dist/esm/jsonRpc/types/coins.js.map +7 -0
  784. package/dist/esm/jsonRpc/types/common.d.ts +2 -0
  785. package/dist/esm/jsonRpc/types/common.js +1 -0
  786. package/dist/esm/jsonRpc/types/common.js.map +7 -0
  787. package/dist/esm/jsonRpc/types/generated.d.ts +1492 -0
  788. package/dist/esm/jsonRpc/types/generated.js +1 -0
  789. package/dist/esm/jsonRpc/types/generated.js.map +7 -0
  790. package/dist/esm/jsonRpc/types/index.d.ts +6 -0
  791. package/dist/esm/jsonRpc/types/index.js +1 -0
  792. package/dist/esm/jsonRpc/types/index.js.map +7 -0
  793. package/dist/esm/jsonRpc/types/params.d.ts +656 -0
  794. package/dist/esm/jsonRpc/types/params.js +1 -0
  795. package/dist/esm/jsonRpc/types/params.js.map +7 -0
  796. package/dist/esm/keypairs/ed25519/ed25519-hd-key.d.ts +8 -0
  797. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +57 -0
  798. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
  799. package/dist/esm/keypairs/ed25519/index.d.ts +2 -0
  800. package/dist/esm/keypairs/ed25519/index.js +11 -0
  801. package/dist/esm/keypairs/ed25519/index.js.map +7 -0
  802. package/dist/esm/keypairs/ed25519/keypair.d.ts +74 -0
  803. package/dist/esm/keypairs/ed25519/keypair.js +147 -0
  804. package/dist/esm/keypairs/ed25519/keypair.js.map +7 -0
  805. package/dist/esm/keypairs/ed25519/publickey.d.ts +30 -0
  806. package/dist/esm/keypairs/ed25519/publickey.js +72 -0
  807. package/dist/esm/keypairs/ed25519/publickey.js.map +7 -0
  808. package/dist/esm/keypairs/passkey/index.d.ts +3 -0
  809. package/dist/esm/keypairs/passkey/index.js +9 -0
  810. package/dist/esm/keypairs/passkey/index.js.map +7 -0
  811. package/dist/esm/keypairs/passkey/keypair.d.ts +113 -0
  812. package/dist/esm/keypairs/passkey/keypair.js +236 -0
  813. package/dist/esm/keypairs/passkey/keypair.js.map +7 -0
  814. package/dist/esm/keypairs/passkey/publickey.d.ts +72 -0
  815. package/dist/esm/keypairs/passkey/publickey.js +148 -0
  816. package/dist/esm/keypairs/passkey/publickey.js.map +7 -0
  817. package/dist/esm/keypairs/passkey/types.d.ts +12 -0
  818. package/dist/esm/keypairs/passkey/types.js +1 -0
  819. package/dist/esm/keypairs/passkey/types.js.map +7 -0
  820. package/dist/esm/keypairs/secp256k1/index.d.ts +2 -0
  821. package/dist/esm/keypairs/secp256k1/index.js +11 -0
  822. package/dist/esm/keypairs/secp256k1/index.js.map +7 -0
  823. package/dist/esm/keypairs/secp256k1/keypair.d.ts +73 -0
  824. package/dist/esm/keypairs/secp256k1/keypair.js +130 -0
  825. package/dist/esm/keypairs/secp256k1/keypair.js.map +7 -0
  826. package/dist/esm/keypairs/secp256k1/publickey.d.ts +30 -0
  827. package/dist/esm/keypairs/secp256k1/publickey.js +77 -0
  828. package/dist/esm/keypairs/secp256k1/publickey.js.map +7 -0
  829. package/dist/esm/keypairs/secp256r1/index.d.ts +2 -0
  830. package/dist/esm/keypairs/secp256r1/index.js +11 -0
  831. package/dist/esm/keypairs/secp256r1/index.js.map +7 -0
  832. package/dist/esm/keypairs/secp256r1/keypair.d.ts +73 -0
  833. package/dist/esm/keypairs/secp256r1/keypair.js +124 -0
  834. package/dist/esm/keypairs/secp256r1/keypair.js.map +7 -0
  835. package/dist/esm/keypairs/secp256r1/publickey.d.ts +30 -0
  836. package/dist/esm/keypairs/secp256r1/publickey.js +74 -0
  837. package/dist/esm/keypairs/secp256r1/publickey.js.map +7 -0
  838. package/dist/esm/multisig/index.d.ts +2 -0
  839. package/dist/esm/multisig/index.js +8 -0
  840. package/dist/esm/multisig/index.js.map +7 -0
  841. package/dist/esm/multisig/publickey.d.ts +114 -0
  842. package/dist/esm/multisig/publickey.js +243 -0
  843. package/dist/esm/multisig/publickey.js.map +7 -0
  844. package/dist/esm/multisig/signer.d.ts +20 -0
  845. package/dist/esm/multisig/signer.js +85 -0
  846. package/dist/esm/multisig/signer.js.map +7 -0
  847. package/dist/esm/package.json +5 -0
  848. package/dist/esm/transactions/Arguments.d.ts +49 -0
  849. package/dist/esm/transactions/Arguments.js +13 -0
  850. package/dist/esm/transactions/Arguments.js.map +7 -0
  851. package/dist/esm/transactions/Commands.d.ts +57 -0
  852. package/dist/esm/transactions/Commands.js +120 -0
  853. package/dist/esm/transactions/Commands.js.map +7 -0
  854. package/dist/esm/transactions/Inputs.d.ts +22 -0
  855. package/dist/esm/transactions/Inputs.js +60 -0
  856. package/dist/esm/transactions/Inputs.js.map +7 -0
  857. package/dist/esm/transactions/ObjectCache.d.ts +83 -0
  858. package/dist/esm/transactions/ObjectCache.js +221 -0
  859. package/dist/esm/transactions/ObjectCache.js.map +7 -0
  860. package/dist/esm/transactions/Transaction.d.ts +710 -0
  861. package/dist/esm/transactions/Transaction.js +668 -0
  862. package/dist/esm/transactions/Transaction.js.map +7 -0
  863. package/dist/esm/transactions/TransactionData.d.ts +73 -0
  864. package/dist/esm/transactions/TransactionData.js +413 -0
  865. package/dist/esm/transactions/TransactionData.js.map +7 -0
  866. package/dist/esm/transactions/__tests__/Transaction.test.d.ts +1 -0
  867. package/dist/esm/transactions/__tests__/bcs.test.d.ts +1 -0
  868. package/dist/esm/transactions/data/internal.d.ts +1010 -0
  869. package/dist/esm/transactions/data/internal.js +215 -0
  870. package/dist/esm/transactions/data/internal.js.map +7 -0
  871. package/dist/esm/transactions/data/v1.d.ts +312 -0
  872. package/dist/esm/transactions/data/v1.js +481 -0
  873. package/dist/esm/transactions/data/v1.js.map +7 -0
  874. package/dist/esm/transactions/data/v2.d.ts +153 -0
  875. package/dist/esm/transactions/data/v2.js +121 -0
  876. package/dist/esm/transactions/data/v2.js.map +7 -0
  877. package/dist/esm/transactions/executor/caching.d.ts +31 -0
  878. package/dist/esm/transactions/executor/caching.js +94 -0
  879. package/dist/esm/transactions/executor/caching.js.map +7 -0
  880. package/dist/esm/transactions/executor/parallel.d.ts +37 -0
  881. package/dist/esm/transactions/executor/parallel.js +360 -0
  882. package/dist/esm/transactions/executor/parallel.js.map +7 -0
  883. package/dist/esm/transactions/executor/queue.d.ts +11 -0
  884. package/dist/esm/transactions/executor/queue.js +65 -0
  885. package/dist/esm/transactions/executor/queue.js.map +7 -0
  886. package/dist/esm/transactions/executor/serial.d.ts +31 -0
  887. package/dist/esm/transactions/executor/serial.js +117 -0
  888. package/dist/esm/transactions/executor/serial.js.map +7 -0
  889. package/dist/esm/transactions/hash.d.ts +7 -0
  890. package/dist/esm/transactions/hash.js +12 -0
  891. package/dist/esm/transactions/hash.js.map +7 -0
  892. package/dist/esm/transactions/index.d.ts +21 -0
  893. package/dist/esm/transactions/index.js +39 -0
  894. package/dist/esm/transactions/index.js.map +7 -0
  895. package/dist/esm/transactions/intents/CoinWithBalance.d.ts +9 -0
  896. package/dist/esm/transactions/intents/CoinWithBalance.js +168 -0
  897. package/dist/esm/transactions/intents/CoinWithBalance.js.map +7 -0
  898. package/dist/esm/transactions/object.d.ts +16 -0
  899. package/dist/esm/transactions/object.js +58 -0
  900. package/dist/esm/transactions/object.js.map +7 -0
  901. package/dist/esm/transactions/plugins/NamedPackagesPlugin.d.ts +48 -0
  902. package/dist/esm/transactions/plugins/NamedPackagesPlugin.js +47 -0
  903. package/dist/esm/transactions/plugins/NamedPackagesPlugin.js.map +7 -0
  904. package/dist/esm/transactions/pure.d.ts +20 -0
  905. package/dist/esm/transactions/pure.js +37 -0
  906. package/dist/esm/transactions/pure.js.map +7 -0
  907. package/dist/esm/transactions/resolve.d.ts +13 -0
  908. package/dist/esm/transactions/resolve.js +78 -0
  909. package/dist/esm/transactions/resolve.js.map +7 -0
  910. package/dist/esm/transactions/serializer.d.ts +7 -0
  911. package/dist/esm/transactions/serializer.js +162 -0
  912. package/dist/esm/transactions/serializer.js.map +7 -0
  913. package/dist/esm/transactions/utils.d.ts +10 -0
  914. package/dist/esm/transactions/utils.js +115 -0
  915. package/dist/esm/transactions/utils.js.map +7 -0
  916. package/dist/esm/utils/constants.d.ts +10 -0
  917. package/dist/esm/utils/constants.js +24 -0
  918. package/dist/esm/utils/constants.js.map +7 -0
  919. package/dist/esm/utils/derived-objects.d.ts +5 -0
  920. package/dist/esm/utils/derived-objects.js +14 -0
  921. package/dist/esm/utils/derived-objects.js.map +7 -0
  922. package/dist/esm/utils/dynamic-fields.d.ts +2 -0
  923. package/dist/esm/utils/dynamic-fields.js +21 -0
  924. package/dist/esm/utils/dynamic-fields.js.map +7 -0
  925. package/dist/esm/utils/format.d.ts +2 -0
  926. package/dist/esm/utils/format.js +16 -0
  927. package/dist/esm/utils/format.js.map +7 -0
  928. package/dist/esm/utils/haneul-types.d.ts +26 -0
  929. package/dist/esm/utils/haneul-types.js +71 -0
  930. package/dist/esm/utils/haneul-types.js.map +7 -0
  931. package/dist/esm/utils/haneulns.d.ts +2 -0
  932. package/dist/esm/utils/haneulns.js +37 -0
  933. package/dist/esm/utils/haneulns.js.map +7 -0
  934. package/dist/esm/utils/index.d.ts +9 -0
  935. package/dist/esm/utils/index.js +80 -0
  936. package/dist/esm/utils/index.js.map +7 -0
  937. package/dist/esm/utils/move-registry.d.ts +6 -0
  938. package/dist/esm/utils/move-registry.js +25 -0
  939. package/dist/esm/utils/move-registry.js.map +7 -0
  940. package/dist/esm/verify/index.d.ts +1 -0
  941. package/dist/esm/verify/index.js +15 -0
  942. package/dist/esm/verify/index.js.map +7 -0
  943. package/dist/esm/verify/verify.d.ts +21 -0
  944. package/dist/esm/verify/verify.js +104 -0
  945. package/dist/esm/verify/verify.js.map +7 -0
  946. package/dist/esm/version.d.ts +2 -0
  947. package/dist/esm/version.js +7 -0
  948. package/dist/esm/version.js.map +7 -0
  949. package/dist/esm/zklogin/address.d.ts +16 -0
  950. package/dist/esm/zklogin/address.js +72 -0
  951. package/dist/esm/zklogin/address.js.map +7 -0
  952. package/dist/esm/zklogin/bcs.d.ts +28 -0
  953. package/dist/esm/zklogin/bcs.js +22 -0
  954. package/dist/esm/zklogin/bcs.js.map +7 -0
  955. package/dist/esm/zklogin/index.d.ts +9 -0
  956. package/dist/esm/zklogin/index.js +35 -0
  957. package/dist/esm/zklogin/index.js.map +7 -0
  958. package/dist/esm/zklogin/jwt-decode.d.ts +47 -0
  959. package/dist/esm/zklogin/jwt-decode.js +65 -0
  960. package/dist/esm/zklogin/jwt-decode.js.map +7 -0
  961. package/dist/esm/zklogin/jwt-utils.d.ts +12 -0
  962. package/dist/esm/zklogin/jwt-utils.js +101 -0
  963. package/dist/esm/zklogin/jwt-utils.js.map +7 -0
  964. package/dist/esm/zklogin/nonce.d.ts +4 -0
  965. package/dist/esm/zklogin/nonce.js +34 -0
  966. package/dist/esm/zklogin/nonce.js.map +7 -0
  967. package/dist/esm/zklogin/poseidon.d.ts +2 -0
  968. package/dist/esm/zklogin/poseidon.js +60 -0
  969. package/dist/esm/zklogin/poseidon.js.map +7 -0
  970. package/dist/esm/zklogin/publickey.d.ts +87 -0
  971. package/dist/esm/zklogin/publickey.js +237 -0
  972. package/dist/esm/zklogin/publickey.js.map +7 -0
  973. package/dist/esm/zklogin/signature.d.ts +23 -0
  974. package/dist/esm/zklogin/signature.js +28 -0
  975. package/dist/esm/zklogin/signature.js.map +7 -0
  976. package/dist/esm/zklogin/utils.d.ts +16 -0
  977. package/dist/esm/zklogin/utils.js +77 -0
  978. package/dist/esm/zklogin/utils.js.map +7 -0
  979. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  980. package/dist/tsconfig.tsbuildinfo +1 -0
  981. package/experimental/package.json +6 -0
  982. package/faucet/package.json +6 -0
  983. package/graphql/package.json +6 -0
  984. package/graphql/schemas/2024.1/package.json +6 -0
  985. package/graphql/schemas/2024.4/package.json +6 -0
  986. package/graphql/schemas/latest/package.json +6 -0
  987. package/grpc/package.json +6 -0
  988. package/jsonRpc/package.json +6 -0
  989. package/keypairs/ed25519/package.json +6 -0
  990. package/keypairs/passkey/package.json +6 -0
  991. package/keypairs/secp256k1/package.json +6 -0
  992. package/keypairs/secp256r1/package.json +6 -0
  993. package/multisig/package.json +6 -0
  994. package/package.json +196 -0
  995. package/src/bcs/bcs.ts +321 -0
  996. package/src/bcs/effects.ts +206 -0
  997. package/src/bcs/index.ts +96 -0
  998. package/src/bcs/pure.ts +92 -0
  999. package/src/bcs/type-tag-serializer.ts +110 -0
  1000. package/src/bcs/types.ts +113 -0
  1001. package/src/client/index.ts +21 -0
  1002. package/src/client/network.ts +17 -0
  1003. package/src/cryptography/index.ts +36 -0
  1004. package/src/cryptography/intent.ts +22 -0
  1005. package/src/cryptography/keypair.ts +157 -0
  1006. package/src/cryptography/mnemonics.ts +49 -0
  1007. package/src/cryptography/publickey.ts +168 -0
  1008. package/src/cryptography/signature-scheme.ts +37 -0
  1009. package/src/cryptography/signature.ts +76 -0
  1010. package/src/experimental/cache.ts +78 -0
  1011. package/src/experimental/client.ts +60 -0
  1012. package/src/experimental/core.ts +197 -0
  1013. package/src/experimental/errors.ts +37 -0
  1014. package/src/experimental/index.ts +24 -0
  1015. package/src/experimental/mvr.ts +488 -0
  1016. package/src/experimental/transports/utils.ts +117 -0
  1017. package/src/experimental/types.ts +569 -0
  1018. package/src/faucet/faucet.ts +189 -0
  1019. package/src/faucet/index.ts +11 -0
  1020. package/src/graphql/client.ts +134 -0
  1021. package/src/graphql/core.ts +629 -0
  1022. package/src/graphql/generated/2024.1/schema.graphql +4182 -0
  1023. package/src/graphql/generated/2024.1/tada-env.ts +13144 -0
  1024. package/src/graphql/generated/2024.1/tsconfig.tada.json +11 -0
  1025. package/src/graphql/generated/2024.4/schema.graphql +4211 -0
  1026. package/src/graphql/generated/2024.4/tada-env.ts +13290 -0
  1027. package/src/graphql/generated/2024.4/tsconfig.tada.json +11 -0
  1028. package/src/graphql/generated/latest/schema.graphql +4312 -0
  1029. package/src/graphql/generated/latest/tada-env.ts +12928 -0
  1030. package/src/graphql/generated/latest/tsconfig.tada.json +11 -0
  1031. package/src/graphql/generated/queries.ts +5391 -0
  1032. package/src/graphql/index.ts +12 -0
  1033. package/src/graphql/queries/getAllBalances.graphql +19 -0
  1034. package/src/graphql/queries/getBalance.graphql +13 -0
  1035. package/src/graphql/queries/getCoins.graphql +37 -0
  1036. package/src/graphql/queries/getDynamicFields.graphql +36 -0
  1037. package/src/graphql/queries/getMoveFunction.graphql +20 -0
  1038. package/src/graphql/queries/getReferenceGasPrice.graphql +8 -0
  1039. package/src/graphql/queries/nameService.graphql +8 -0
  1040. package/src/graphql/queries/objects.graphql +83 -0
  1041. package/src/graphql/queries/transactions.graphql +101 -0
  1042. package/src/graphql/queries/verifyZkLoginSignature.graphql +16 -0
  1043. package/src/graphql/schemas/2024.1/index.ts +17 -0
  1044. package/src/graphql/schemas/2024.4/index.ts +17 -0
  1045. package/src/graphql/schemas/latest/index.ts +17 -0
  1046. package/src/graphql/types.ts +87 -0
  1047. package/src/grpc/client.ts +62 -0
  1048. package/src/grpc/core.ts +757 -0
  1049. package/src/grpc/index.ts +7 -0
  1050. package/src/grpc/proto/google/protobuf/any.ts +296 -0
  1051. package/src/grpc/proto/google/protobuf/duration.ts +187 -0
  1052. package/src/grpc/proto/google/protobuf/empty.ts +64 -0
  1053. package/src/grpc/proto/google/protobuf/field_mask.ts +309 -0
  1054. package/src/grpc/proto/google/protobuf/struct.ts +327 -0
  1055. package/src/grpc/proto/google/protobuf/timestamp.ts +260 -0
  1056. package/src/grpc/proto/google/rpc/error_details.ts +667 -0
  1057. package/src/grpc/proto/google/rpc/status.ts +74 -0
  1058. package/src/grpc/proto/haneul/rpc/v2/argument.ts +90 -0
  1059. package/src/grpc/proto/haneul/rpc/v2/balance_change.ts +51 -0
  1060. package/src/grpc/proto/haneul/rpc/v2/bcs.ts +46 -0
  1061. package/src/grpc/proto/haneul/rpc/v2/checkpoint.ts +102 -0
  1062. package/src/grpc/proto/haneul/rpc/v2/checkpoint_contents.ts +111 -0
  1063. package/src/grpc/proto/haneul/rpc/v2/checkpoint_summary.ts +295 -0
  1064. package/src/grpc/proto/haneul/rpc/v2/effects.ts +491 -0
  1065. package/src/grpc/proto/haneul/rpc/v2/epoch.ts +113 -0
  1066. package/src/grpc/proto/haneul/rpc/v2/error_reason.ts +28 -0
  1067. package/src/grpc/proto/haneul/rpc/v2/event.ts +115 -0
  1068. package/src/grpc/proto/haneul/rpc/v2/executed_transaction.ts +122 -0
  1069. package/src/grpc/proto/haneul/rpc/v2/execution_status.ts +1079 -0
  1070. package/src/grpc/proto/haneul/rpc/v2/gas_cost_summary.ts +87 -0
  1071. package/src/grpc/proto/haneul/rpc/v2/input.ts +132 -0
  1072. package/src/grpc/proto/haneul/rpc/v2/jwk.ts +94 -0
  1073. package/src/grpc/proto/haneul/rpc/v2/ledger_service.client.ts +217 -0
  1074. package/src/grpc/proto/haneul/rpc/v2/ledger_service.ts +625 -0
  1075. package/src/grpc/proto/haneul/rpc/v2/move_package.ts +800 -0
  1076. package/src/grpc/proto/haneul/rpc/v2/move_package_service.client.ts +135 -0
  1077. package/src/grpc/proto/haneul/rpc/v2/move_package_service.ts +315 -0
  1078. package/src/grpc/proto/haneul/rpc/v2/name_service.client.ts +83 -0
  1079. package/src/grpc/proto/haneul/rpc/v2/name_service.ts +198 -0
  1080. package/src/grpc/proto/haneul/rpc/v2/object.ts +186 -0
  1081. package/src/grpc/proto/haneul/rpc/v2/object_reference.ts +58 -0
  1082. package/src/grpc/proto/haneul/rpc/v2/owner.ts +91 -0
  1083. package/src/grpc/proto/haneul/rpc/v2/protocol_config.ts +66 -0
  1084. package/src/grpc/proto/haneul/rpc/v2/signature.ts +864 -0
  1085. package/src/grpc/proto/haneul/rpc/v2/signature_scheme.ts +51 -0
  1086. package/src/grpc/proto/haneul/rpc/v2/signature_verification_service.client.ts +63 -0
  1087. package/src/grpc/proto/haneul/rpc/v2/signature_verification_service.ts +106 -0
  1088. package/src/grpc/proto/haneul/rpc/v2/state_service.client.ts +161 -0
  1089. package/src/grpc/proto/haneul/rpc/v2/state_service.ts +889 -0
  1090. package/src/grpc/proto/haneul/rpc/v2/subscription_service.client.ts +81 -0
  1091. package/src/grpc/proto/haneul/rpc/v2/subscription_service.ts +93 -0
  1092. package/src/grpc/proto/haneul/rpc/v2/system_state.ts +1184 -0
  1093. package/src/grpc/proto/haneul/rpc/v2/transaction.ts +1974 -0
  1094. package/src/grpc/proto/haneul/rpc/v2/transaction_execution_service.client.ts +85 -0
  1095. package/src/grpc/proto/haneul/rpc/v2/transaction_execution_service.ts +282 -0
  1096. package/src/jsonRpc/client.ts +1120 -0
  1097. package/src/jsonRpc/core.ts +711 -0
  1098. package/src/jsonRpc/errors.ts +45 -0
  1099. package/src/jsonRpc/http-transport.ts +143 -0
  1100. package/src/jsonRpc/index.ts +20 -0
  1101. package/src/jsonRpc/json-rpc-resolver.ts +420 -0
  1102. package/src/jsonRpc/rpc-websocket-client.ts +241 -0
  1103. package/src/jsonRpc/types/chain.ts +122 -0
  1104. package/src/jsonRpc/types/changes.ts +11 -0
  1105. package/src/jsonRpc/types/coins.ts +9 -0
  1106. package/src/jsonRpc/types/common.ts +5 -0
  1107. package/src/jsonRpc/types/generated.ts +1639 -0
  1108. package/src/jsonRpc/types/index.ts +9 -0
  1109. package/src/jsonRpc/types/params.ts +660 -0
  1110. package/src/keypairs/ed25519/ed25519-hd-key.ts +83 -0
  1111. package/src/keypairs/ed25519/index.ts +9 -0
  1112. package/src/keypairs/ed25519/keypair.ts +181 -0
  1113. package/src/keypairs/ed25519/publickey.ts +89 -0
  1114. package/src/keypairs/passkey/index.ts +5 -0
  1115. package/src/keypairs/passkey/keypair.ts +306 -0
  1116. package/src/keypairs/passkey/publickey.ts +188 -0
  1117. package/src/keypairs/passkey/types.ts +16 -0
  1118. package/src/keypairs/secp256k1/index.ts +9 -0
  1119. package/src/keypairs/secp256k1/keypair.ts +161 -0
  1120. package/src/keypairs/secp256k1/publickey.ts +94 -0
  1121. package/src/keypairs/secp256r1/index.ts +9 -0
  1122. package/src/keypairs/secp256r1/keypair.ts +157 -0
  1123. package/src/keypairs/secp256r1/publickey.ts +91 -0
  1124. package/src/multisig/index.ts +5 -0
  1125. package/src/multisig/publickey.ts +358 -0
  1126. package/src/multisig/signer.ts +93 -0
  1127. package/src/transactions/Arguments.ts +27 -0
  1128. package/src/transactions/Commands.ts +184 -0
  1129. package/src/transactions/Inputs.ts +68 -0
  1130. package/src/transactions/ObjectCache.ts +300 -0
  1131. package/src/transactions/Transaction.ts +927 -0
  1132. package/src/transactions/TransactionData.ts +560 -0
  1133. package/src/transactions/__tests__/Transaction.test.ts +184 -0
  1134. package/src/transactions/__tests__/bcs.test.ts +205 -0
  1135. package/src/transactions/data/internal.ts +334 -0
  1136. package/src/transactions/data/v1.ts +548 -0
  1137. package/src/transactions/data/v2.ts +148 -0
  1138. package/src/transactions/executor/caching.ts +111 -0
  1139. package/src/transactions/executor/parallel.ts +459 -0
  1140. package/src/transactions/executor/queue.ts +65 -0
  1141. package/src/transactions/executor/serial.ts +145 -0
  1142. package/src/transactions/hash.ts +20 -0
  1143. package/src/transactions/index.ts +62 -0
  1144. package/src/transactions/intents/CoinWithBalance.ts +230 -0
  1145. package/src/transactions/object.ts +68 -0
  1146. package/src/transactions/plugins/NamedPackagesPlugin.ts +111 -0
  1147. package/src/transactions/pure.ts +66 -0
  1148. package/src/transactions/resolve.ts +124 -0
  1149. package/src/transactions/serializer.ts +212 -0
  1150. package/src/transactions/utils.ts +142 -0
  1151. package/src/utils/constants.ts +16 -0
  1152. package/src/utils/derived-objects.ts +22 -0
  1153. package/src/utils/dynamic-fields.ts +30 -0
  1154. package/src/utils/format.ts +19 -0
  1155. package/src/utils/haneul-types.ts +114 -0
  1156. package/src/utils/haneulns.ts +43 -0
  1157. package/src/utils/index.ts +48 -0
  1158. package/src/utils/move-registry.ts +43 -0
  1159. package/src/verify/index.ts +11 -0
  1160. package/src/verify/verify.ts +149 -0
  1161. package/src/version.ts +7 -0
  1162. package/src/zklogin/address.ts +101 -0
  1163. package/src/zklogin/bcs.ts +26 -0
  1164. package/src/zklogin/index.ts +22 -0
  1165. package/src/zklogin/jwt-decode.ts +127 -0
  1166. package/src/zklogin/jwt-utils.ts +142 -0
  1167. package/src/zklogin/nonce.ts +39 -0
  1168. package/src/zklogin/poseidon.ts +64 -0
  1169. package/src/zklogin/publickey.ts +286 -0
  1170. package/src/zklogin/signature.ts +38 -0
  1171. package/src/zklogin/utils.ts +112 -0
  1172. package/transactions/package.json +6 -0
  1173. package/utils/package.json +6 -0
  1174. package/verify/package.json +6 -0
  1175. package/zklogin/package.json +6 -0
@@ -0,0 +1,236 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ var _name, _options;
9
+ import { toBase64 } from "@haneullabs/bcs";
10
+ import { secp256r1 } from "@noble/curves/p256";
11
+ import { blake2b } from "@noble/hashes/blake2b";
12
+ import { sha256 } from "@noble/hashes/sha256";
13
+ import { randomBytes } from "@noble/hashes/utils";
14
+ import { PasskeyAuthenticator } from "../../bcs/bcs.js";
15
+ import { messageWithIntent, SIGNATURE_SCHEME_TO_FLAG, Signer } from "../../cryptography/index.js";
16
+ import {
17
+ parseDerSPKI,
18
+ PASSKEY_PUBLIC_KEY_SIZE,
19
+ PASSKEY_SIGNATURE_SIZE,
20
+ PasskeyPublicKey
21
+ } from "./publickey.js";
22
+ class BrowserPasskeyProvider {
23
+ constructor(name, options) {
24
+ __privateAdd(this, _name);
25
+ __privateAdd(this, _options);
26
+ __privateSet(this, _name, name);
27
+ __privateSet(this, _options, options);
28
+ }
29
+ async create() {
30
+ return await navigator.credentials.create({
31
+ publicKey: {
32
+ timeout: __privateGet(this, _options).timeout ?? 6e4,
33
+ ...__privateGet(this, _options),
34
+ rp: {
35
+ name: __privateGet(this, _name),
36
+ ...__privateGet(this, _options).rp
37
+ },
38
+ user: {
39
+ name: __privateGet(this, _name),
40
+ displayName: __privateGet(this, _name),
41
+ ...__privateGet(this, _options).user,
42
+ id: randomBytes(10)
43
+ },
44
+ challenge: new TextEncoder().encode("Create passkey wallet on Haneul"),
45
+ pubKeyCredParams: [{ alg: -7, type: "public-key" }],
46
+ authenticatorSelection: {
47
+ authenticatorAttachment: "cross-platform",
48
+ residentKey: "required",
49
+ requireResidentKey: true,
50
+ userVerification: "required",
51
+ ...__privateGet(this, _options).authenticatorSelection
52
+ }
53
+ }
54
+ });
55
+ }
56
+ async get(challenge) {
57
+ return await navigator.credentials.get({
58
+ publicKey: {
59
+ challenge,
60
+ userVerification: __privateGet(this, _options).authenticatorSelection?.userVerification || "required",
61
+ timeout: __privateGet(this, _options).timeout ?? 6e4
62
+ }
63
+ });
64
+ }
65
+ }
66
+ _name = new WeakMap();
67
+ _options = new WeakMap();
68
+ class PasskeyKeypair extends Signer {
69
+ /**
70
+ * Get the key scheme of passkey,
71
+ */
72
+ getKeyScheme() {
73
+ return "Passkey";
74
+ }
75
+ /**
76
+ * Creates an instance of Passkey signer. If no passkey wallet had created before,
77
+ * use `getPasskeyInstance`. For example:
78
+ * ```
79
+ * let provider = new BrowserPasskeyProvider('Sui Passkey Example',{
80
+ * rpName: 'Sui Passkey Example',
81
+ * rpId: window.location.hostname,
82
+ * } as BrowserPasswordProviderOptions);
83
+ * const signer = await PasskeyKeypair.getPasskeyInstance(provider);
84
+ * ```
85
+ *
86
+ * If there are existing passkey wallet, use `signAndRecover` to identify the correct
87
+ * public key and then initialize the instance. See usage in `signAndRecover`.
88
+ */
89
+ constructor(publicKey, provider) {
90
+ super();
91
+ this.publicKey = publicKey;
92
+ this.provider = provider;
93
+ }
94
+ /**
95
+ * Creates an instance of Passkey signer invoking the passkey from navigator.
96
+ * Note that this will invoke the passkey device to create a fresh credential.
97
+ * Should only be called if passkey wallet is created for the first time.
98
+ *
99
+ * @param provider - the passkey provider.
100
+ * @returns the passkey instance.
101
+ */
102
+ static async getPasskeyInstance(provider) {
103
+ const credential = await provider.create();
104
+ if (!credential.response.getPublicKey()) {
105
+ throw new Error("Invalid credential create response");
106
+ } else {
107
+ const derSPKI = credential.response.getPublicKey();
108
+ const pubkeyUncompressed = parseDerSPKI(new Uint8Array(derSPKI));
109
+ const pubkey = secp256r1.ProjectivePoint.fromHex(pubkeyUncompressed);
110
+ const pubkeyCompressed = pubkey.toRawBytes(true);
111
+ return new PasskeyKeypair(pubkeyCompressed, provider);
112
+ }
113
+ }
114
+ /**
115
+ * Return the public key for this passkey.
116
+ */
117
+ getPublicKey() {
118
+ return new PasskeyPublicKey(this.publicKey);
119
+ }
120
+ /**
121
+ * Return the signature for the provided data (i.e. blake2b(intent_message)).
122
+ * This is sent to passkey as the challenge field.
123
+ */
124
+ async sign(data) {
125
+ const credential = await this.provider.get(data);
126
+ const authenticatorData = new Uint8Array(credential.response.authenticatorData);
127
+ const clientDataJSON = new Uint8Array(credential.response.clientDataJSON);
128
+ const decoder = new TextDecoder();
129
+ const clientDataJSONString = decoder.decode(clientDataJSON);
130
+ const sig = secp256r1.Signature.fromDER(new Uint8Array(credential.response.signature));
131
+ const normalized = sig.normalizeS().toCompactRawBytes();
132
+ if (normalized.length !== PASSKEY_SIGNATURE_SIZE || this.publicKey.length !== PASSKEY_PUBLIC_KEY_SIZE) {
133
+ throw new Error("Invalid signature or public key length");
134
+ }
135
+ const arr = new Uint8Array(1 + normalized.length + this.publicKey.length);
136
+ arr.set([SIGNATURE_SCHEME_TO_FLAG["Secp256r1"]]);
137
+ arr.set(normalized, 1);
138
+ arr.set(this.publicKey, 1 + normalized.length);
139
+ return PasskeyAuthenticator.serialize({
140
+ authenticatorData,
141
+ clientDataJson: clientDataJSONString,
142
+ userSignature: arr
143
+ }).toBytes();
144
+ }
145
+ /**
146
+ * This overrides the base class implementation that accepts the raw bytes and signs its
147
+ * digest of the intent message, then serialize it with the passkey flag.
148
+ */
149
+ async signWithIntent(bytes, intent) {
150
+ const intentMessage = messageWithIntent(intent, bytes);
151
+ const digest = blake2b(intentMessage, { dkLen: 32 });
152
+ const signature = await this.sign(digest);
153
+ const serializedSignature = new Uint8Array(1 + signature.length);
154
+ serializedSignature.set([SIGNATURE_SCHEME_TO_FLAG[this.getKeyScheme()]]);
155
+ serializedSignature.set(signature, 1);
156
+ return {
157
+ signature: toBase64(serializedSignature),
158
+ bytes: toBase64(bytes)
159
+ };
160
+ }
161
+ /**
162
+ * Given a message, asks the passkey device to sign it and return all (up to 4) possible public keys.
163
+ * See: https://bitcoin.stackexchange.com/questions/81232/how-is-public-key-extracted-from-message-digital-signature-address
164
+ *
165
+ * This is useful if the user previously created passkey wallet with the origin, but the wallet session
166
+ * does not have the public key / address. By calling this method twice with two different messages, the
167
+ * wallet can compare the returned public keys and uniquely identify the previously created passkey wallet
168
+ * using `findCommonPublicKey`.
169
+ *
170
+ * Alternatively, one call can be made and all possible public keys should be checked onchain to see if
171
+ * there is any assets.
172
+ *
173
+ * Once the correct public key is identified, a passkey instance can then be initialized with this public key.
174
+ *
175
+ * Example usage to recover wallet with two signing calls:
176
+ * ```
177
+ * let provider = new BrowserPasskeyProvider('Sui Passkey Example',{
178
+ * rpName: 'Sui Passkey Example',
179
+ * rpId: window.location.hostname,
180
+ * } as BrowserPasswordProviderOptions);
181
+ * const testMessage = new TextEncoder().encode('Hello world!');
182
+ * const possiblePks = await PasskeyKeypair.signAndRecover(provider, testMessage);
183
+ * const testMessage2 = new TextEncoder().encode('Hello world 2!');
184
+ * const possiblePks2 = await PasskeyKeypair.signAndRecover(provider, testMessage2);
185
+ * const commonPk = findCommonPublicKey(possiblePks, possiblePks2);
186
+ * const signer = new PasskeyKeypair(provider, commonPk.toRawBytes());
187
+ * ```
188
+ *
189
+ * @param provider - the passkey provider.
190
+ * @param message - the message to sign.
191
+ * @returns all possible public keys.
192
+ */
193
+ static async signAndRecover(provider, message) {
194
+ const credential = await provider.get(message);
195
+ const fullMessage = messageFromAssertionResponse(credential.response);
196
+ const sig = secp256r1.Signature.fromDER(new Uint8Array(credential.response.signature));
197
+ const res = [];
198
+ for (let i = 0; i < 4; i++) {
199
+ const s = sig.addRecoveryBit(i);
200
+ try {
201
+ const pubkey = s.recoverPublicKey(sha256(fullMessage));
202
+ const pk = new PasskeyPublicKey(pubkey.toRawBytes(true));
203
+ res.push(pk);
204
+ } catch {
205
+ continue;
206
+ }
207
+ }
208
+ return res;
209
+ }
210
+ }
211
+ function findCommonPublicKey(arr1, arr2) {
212
+ const matchingPubkeys = [];
213
+ for (const pubkey1 of arr1) {
214
+ for (const pubkey2 of arr2) {
215
+ if (pubkey1.equals(pubkey2)) {
216
+ matchingPubkeys.push(pubkey1);
217
+ }
218
+ }
219
+ }
220
+ if (matchingPubkeys.length !== 1) {
221
+ throw new Error("No unique public key found");
222
+ }
223
+ return matchingPubkeys[0];
224
+ }
225
+ function messageFromAssertionResponse(response) {
226
+ const authenticatorData = new Uint8Array(response.authenticatorData);
227
+ const clientDataJSON = new Uint8Array(response.clientDataJSON);
228
+ const clientDataJSONDigest = sha256(clientDataJSON);
229
+ return new Uint8Array([...authenticatorData, ...clientDataJSONDigest]);
230
+ }
231
+ export {
232
+ BrowserPasskeyProvider,
233
+ PasskeyKeypair,
234
+ findCommonPublicKey
235
+ };
236
+ //# sourceMappingURL=keypair.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/keypairs/passkey/keypair.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { toBase64 } from '@haneullabs/bcs';\nimport { secp256r1 } from '@noble/curves/p256';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { sha256 } from '@noble/hashes/sha256';\nimport { randomBytes } from '@noble/hashes/utils';\n\nimport { PasskeyAuthenticator } from '../../bcs/bcs.js';\nimport type { IntentScope, SignatureWithBytes } from '../../cryptography/index.js';\nimport { messageWithIntent, SIGNATURE_SCHEME_TO_FLAG, Signer } from '../../cryptography/index.js';\nimport type { PublicKey } from '../../cryptography/publickey.js';\nimport type { SignatureScheme } from '../../cryptography/signature-scheme.js';\nimport {\n\tparseDerSPKI,\n\tPASSKEY_PUBLIC_KEY_SIZE,\n\tPASSKEY_SIGNATURE_SIZE,\n\tPasskeyPublicKey,\n} from './publickey.js';\nimport type { AuthenticationCredential, RegistrationCredential } from './types.js';\n\ntype DeepPartialConfigKeys = 'rp' | 'user' | 'authenticatorSelection';\n\ntype DeepPartial<T> = T extends object\n\t? {\n\t\t\t[P in keyof T]?: DeepPartial<T[P]>;\n\t\t}\n\t: T;\n\nexport type BrowserPasswordProviderOptions = Pick<\n\tDeepPartial<PublicKeyCredentialCreationOptions>,\n\tDeepPartialConfigKeys\n> &\n\tOmit<\n\t\tPartial<PublicKeyCredentialCreationOptions>,\n\t\tDeepPartialConfigKeys | 'pubKeyCredParams' | 'challenge'\n\t>;\n\nexport interface PasskeyProvider {\n\tcreate(): Promise<RegistrationCredential>;\n\tget(challenge: Uint8Array): Promise<AuthenticationCredential>;\n}\n\n// Default browser implementation\nexport class BrowserPasskeyProvider implements PasskeyProvider {\n\t#name: string;\n\t#options: BrowserPasswordProviderOptions;\n\n\tconstructor(name: string, options: BrowserPasswordProviderOptions) {\n\t\tthis.#name = name;\n\t\tthis.#options = options;\n\t}\n\n\tasync create(): Promise<RegistrationCredential> {\n\t\treturn (await navigator.credentials.create({\n\t\t\tpublicKey: {\n\t\t\t\ttimeout: this.#options.timeout ?? 60000,\n\t\t\t\t...this.#options,\n\t\t\t\trp: {\n\t\t\t\t\tname: this.#name,\n\t\t\t\t\t...this.#options.rp,\n\t\t\t\t},\n\t\t\t\tuser: {\n\t\t\t\t\tname: this.#name,\n\t\t\t\t\tdisplayName: this.#name,\n\t\t\t\t\t...this.#options.user,\n\t\t\t\t\tid: randomBytes(10) as BufferSource,\n\t\t\t\t},\n\t\t\t\tchallenge: new TextEncoder().encode('Create passkey wallet on Haneul'),\n\t\t\t\tpubKeyCredParams: [{ alg: -7, type: 'public-key' }],\n\t\t\t\tauthenticatorSelection: {\n\t\t\t\t\tauthenticatorAttachment: 'cross-platform',\n\t\t\t\t\tresidentKey: 'required',\n\t\t\t\t\trequireResidentKey: true,\n\t\t\t\t\tuserVerification: 'required',\n\t\t\t\t\t...this.#options.authenticatorSelection,\n\t\t\t\t},\n\t\t\t},\n\t\t})) as RegistrationCredential;\n\t}\n\n\tasync get(challenge: Uint8Array): Promise<AuthenticationCredential> {\n\t\treturn (await navigator.credentials.get({\n\t\t\tpublicKey: {\n\t\t\t\tchallenge: challenge as BufferSource,\n\t\t\t\tuserVerification: this.#options.authenticatorSelection?.userVerification || 'required',\n\t\t\t\ttimeout: this.#options.timeout ?? 60000,\n\t\t\t},\n\t\t})) as AuthenticationCredential;\n\t}\n}\n\n/**\n * @experimental\n * A passkey signer used for signing transactions. This is a client side implementation for [SIP-9](https://github.com/sui-foundation/sips/blob/main/sips/sip-9.md).\n */\nexport class PasskeyKeypair extends Signer {\n\tprivate publicKey: Uint8Array;\n\tprivate provider: PasskeyProvider;\n\n\t/**\n\t * Get the key scheme of passkey,\n\t */\n\tgetKeyScheme(): SignatureScheme {\n\t\treturn 'Passkey';\n\t}\n\n\t/**\n\t * Creates an instance of Passkey signer. If no passkey wallet had created before,\n\t * use `getPasskeyInstance`. For example:\n\t * ```\n\t * let provider = new BrowserPasskeyProvider('Sui Passkey Example',{\n\t * \t rpName: 'Sui Passkey Example',\n\t * \t rpId: window.location.hostname,\n\t * } as BrowserPasswordProviderOptions);\n\t * const signer = await PasskeyKeypair.getPasskeyInstance(provider);\n\t * ```\n\t *\n\t * If there are existing passkey wallet, use `signAndRecover` to identify the correct\n\t * public key and then initialize the instance. See usage in `signAndRecover`.\n\t */\n\tconstructor(publicKey: Uint8Array, provider: PasskeyProvider) {\n\t\tsuper();\n\t\tthis.publicKey = publicKey;\n\t\tthis.provider = provider;\n\t}\n\n\t/**\n\t * Creates an instance of Passkey signer invoking the passkey from navigator.\n\t * Note that this will invoke the passkey device to create a fresh credential.\n\t * Should only be called if passkey wallet is created for the first time.\n\t *\n\t * @param provider - the passkey provider.\n\t * @returns the passkey instance.\n\t */\n\tstatic async getPasskeyInstance(provider: PasskeyProvider): Promise<PasskeyKeypair> {\n\t\t// create a passkey secp256r1 with the provider.\n\t\tconst credential = await provider.create();\n\n\t\tif (!credential.response.getPublicKey()) {\n\t\t\tthrow new Error('Invalid credential create response');\n\t\t} else {\n\t\t\tconst derSPKI = credential.response.getPublicKey()!;\n\t\t\tconst pubkeyUncompressed = parseDerSPKI(new Uint8Array(derSPKI));\n\t\t\tconst pubkey = secp256r1.ProjectivePoint.fromHex(pubkeyUncompressed);\n\t\t\tconst pubkeyCompressed = pubkey.toRawBytes(true);\n\t\t\treturn new PasskeyKeypair(pubkeyCompressed, provider);\n\t\t}\n\t}\n\n\t/**\n\t * Return the public key for this passkey.\n\t */\n\tgetPublicKey(): PublicKey {\n\t\treturn new PasskeyPublicKey(this.publicKey);\n\t}\n\n\t/**\n\t * Return the signature for the provided data (i.e. blake2b(intent_message)).\n\t * This is sent to passkey as the challenge field.\n\t */\n\tasync sign(data: Uint8Array) {\n\t\t// asks the passkey to sign over challenge as the data.\n\t\tconst credential = await this.provider.get(data);\n\n\t\t// parse authenticatorData (as bytes), clientDataJSON (decoded as string).\n\t\tconst authenticatorData = new Uint8Array(credential.response.authenticatorData);\n\t\tconst clientDataJSON = new Uint8Array(credential.response.clientDataJSON); // response.clientDataJSON is already UTF-8 encoded JSON\n\t\tconst decoder = new TextDecoder();\n\t\tconst clientDataJSONString: string = decoder.decode(clientDataJSON);\n\n\t\t// parse the signature from DER format, normalize and convert to compressed format (33 bytes).\n\t\tconst sig = secp256r1.Signature.fromDER(new Uint8Array(credential.response.signature));\n\t\tconst normalized = sig.normalizeS().toCompactRawBytes();\n\n\t\tif (\n\t\t\tnormalized.length !== PASSKEY_SIGNATURE_SIZE ||\n\t\t\tthis.publicKey.length !== PASSKEY_PUBLIC_KEY_SIZE\n\t\t) {\n\t\t\tthrow new Error('Invalid signature or public key length');\n\t\t}\n\n\t\t// construct userSignature as flag || sig || pubkey for the secp256r1 signature.\n\t\tconst arr = new Uint8Array(1 + normalized.length + this.publicKey.length);\n\t\tarr.set([SIGNATURE_SCHEME_TO_FLAG['Secp256r1']]);\n\t\tarr.set(normalized, 1);\n\t\tarr.set(this.publicKey, 1 + normalized.length);\n\n\t\t// serialize all fields into a passkey signature according to https://github.com/sui-foundation/sips/blob/main/sips/sip-9.md#signature-encoding\n\t\treturn PasskeyAuthenticator.serialize({\n\t\t\tauthenticatorData: authenticatorData,\n\t\t\tclientDataJson: clientDataJSONString,\n\t\t\tuserSignature: arr,\n\t\t}).toBytes();\n\t}\n\n\t/**\n\t * This overrides the base class implementation that accepts the raw bytes and signs its\n\t * digest of the intent message, then serialize it with the passkey flag.\n\t */\n\tasync signWithIntent(bytes: Uint8Array, intent: IntentScope): Promise<SignatureWithBytes> {\n\t\t// prepend it into an intent message and computes the digest.\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\t// sign the digest.\n\t\tconst signature = await this.sign(digest);\n\n\t\t// prepend with the passkey flag.\n\t\tconst serializedSignature = new Uint8Array(1 + signature.length);\n\t\tserializedSignature.set([SIGNATURE_SCHEME_TO_FLAG[this.getKeyScheme()]]);\n\t\tserializedSignature.set(signature, 1);\n\t\treturn {\n\t\t\tsignature: toBase64(serializedSignature),\n\t\t\tbytes: toBase64(bytes),\n\t\t};\n\t}\n\n\t/**\n\t * Given a message, asks the passkey device to sign it and return all (up to 4) possible public keys.\n\t * See: https://bitcoin.stackexchange.com/questions/81232/how-is-public-key-extracted-from-message-digital-signature-address\n\t *\n\t * This is useful if the user previously created passkey wallet with the origin, but the wallet session\n\t * does not have the public key / address. By calling this method twice with two different messages, the\n\t * wallet can compare the returned public keys and uniquely identify the previously created passkey wallet\n\t * using `findCommonPublicKey`.\n\t *\n\t * Alternatively, one call can be made and all possible public keys should be checked onchain to see if\n\t * there is any assets.\n\t *\n\t * Once the correct public key is identified, a passkey instance can then be initialized with this public key.\n\t *\n\t * Example usage to recover wallet with two signing calls:\n\t * ```\n\t * let provider = new BrowserPasskeyProvider('Sui Passkey Example',{\n\t * rpName: 'Sui Passkey Example',\n\t * \t rpId: window.location.hostname,\n\t * } as BrowserPasswordProviderOptions);\n\t * const testMessage = new TextEncoder().encode('Hello world!');\n\t * const possiblePks = await PasskeyKeypair.signAndRecover(provider, testMessage);\n\t * const testMessage2 = new TextEncoder().encode('Hello world 2!');\n\t * const possiblePks2 = await PasskeyKeypair.signAndRecover(provider, testMessage2);\n\t * const commonPk = findCommonPublicKey(possiblePks, possiblePks2);\n\t * const signer = new PasskeyKeypair(provider, commonPk.toRawBytes());\n\t * ```\n\t *\n\t * @param provider - the passkey provider.\n\t * @param message - the message to sign.\n\t * @returns all possible public keys.\n\t */\n\tstatic async signAndRecover(\n\t\tprovider: PasskeyProvider,\n\t\tmessage: Uint8Array,\n\t): Promise<PublicKey[]> {\n\t\tconst credential = await provider.get(message);\n\t\tconst fullMessage = messageFromAssertionResponse(credential.response);\n\t\tconst sig = secp256r1.Signature.fromDER(new Uint8Array(credential.response.signature));\n\n\t\tconst res = [];\n\t\tfor (let i = 0; i < 4; i++) {\n\t\t\tconst s = sig.addRecoveryBit(i);\n\t\t\ttry {\n\t\t\t\tconst pubkey = s.recoverPublicKey(sha256(fullMessage));\n\t\t\t\tconst pk = new PasskeyPublicKey(pubkey.toRawBytes(true));\n\t\t\t\tres.push(pk);\n\t\t\t} catch {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\treturn res;\n\t}\n}\n\n/**\n * Finds the unique public key that exists in both arrays, throws error if the common\n * pubkey does not equal to one.\n *\n * @param arr1 - The first pubkeys array.\n * @param arr2 - The second pubkeys array.\n * @returns The only common pubkey in both arrays.\n */\nexport function findCommonPublicKey(arr1: PublicKey[], arr2: PublicKey[]): PublicKey {\n\tconst matchingPubkeys: PublicKey[] = [];\n\tfor (const pubkey1 of arr1) {\n\t\tfor (const pubkey2 of arr2) {\n\t\t\tif (pubkey1.equals(pubkey2)) {\n\t\t\t\tmatchingPubkeys.push(pubkey1);\n\t\t\t}\n\t\t}\n\t}\n\tif (matchingPubkeys.length !== 1) {\n\t\tthrow new Error('No unique public key found');\n\t}\n\treturn matchingPubkeys[0];\n}\n\n/**\n * Constructs the message that the passkey signature is produced over as authenticatorData || sha256(clientDataJSON).\n */\nfunction messageFromAssertionResponse(response: AuthenticatorAssertionResponse): Uint8Array {\n\tconst authenticatorData = new Uint8Array(response.authenticatorData);\n\tconst clientDataJSON = new Uint8Array(response.clientDataJSON);\n\tconst clientDataJSONDigest = sha256(clientDataJSON);\n\treturn new Uint8Array([...authenticatorData, ...clientDataJSONDigest]);\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,72 @@
1
+ import { PublicKey } from '../../cryptography/publickey.js';
2
+ import type { PublicKeyInitData } from '../../cryptography/publickey.js';
3
+ export declare const PASSKEY_PUBLIC_KEY_SIZE = 33;
4
+ export declare const PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE = 65;
5
+ export declare const PASSKEY_SIGNATURE_SIZE = 64;
6
+ /** Fixed DER header for secp256r1 SubjectPublicKeyInfo
7
+ DER structure for P-256 SPKI:
8
+ 30 -- SEQUENCE
9
+ 59 -- length (89 bytes)
10
+ 30 -- SEQUENCE
11
+ 13 -- length (19 bytes)
12
+ 06 -- OBJECT IDENTIFIER
13
+ 07 -- length
14
+ 2A 86 48 CE 3D 02 01 -- id-ecPublicKey
15
+ 06 -- OBJECT IDENTIFIER
16
+ 08 -- length
17
+ 2A 86 48 CE 3D 03 01 07 -- secp256r1/prime256v1
18
+ 03 -- BIT STRING
19
+ 42 -- length (66 bytes)
20
+ 00 -- padding
21
+ ===== above bytes are considered header =====
22
+ 04 || x || y -- uncompressed point (65 bytes: 0x04 || 32-byte x || 32-byte y)
23
+ */
24
+ export declare const SECP256R1_SPKI_HEADER: Uint8Array<ArrayBuffer>;
25
+ /**
26
+ * A passkey public key
27
+ */
28
+ export declare class PasskeyPublicKey extends PublicKey {
29
+ static SIZE: number;
30
+ private data;
31
+ /**
32
+ * Create a new PasskeyPublicKey object
33
+ * @param value passkey public key as buffer or base-64 encoded string
34
+ */
35
+ constructor(value: PublicKeyInitData);
36
+ /**
37
+ * Checks if two passkey public keys are equal
38
+ */
39
+ equals(publicKey: PasskeyPublicKey): boolean;
40
+ /**
41
+ * Return the byte array representation of the Secp256r1 public key
42
+ */
43
+ toRawBytes(): Uint8Array<ArrayBuffer>;
44
+ /**
45
+ * Return the Haneul address associated with this Secp256r1 public key
46
+ */
47
+ flag(): number;
48
+ /**
49
+ * Verifies that the signature is valid for for the provided message
50
+ */
51
+ verify(message: Uint8Array, signature: Uint8Array | string): Promise<boolean>;
52
+ }
53
+ /**
54
+ * Parses a DER SubjectPublicKeyInfo into an uncompressed public key. This also verifies
55
+ * that the curve used is P-256 (secp256r1).
56
+ *
57
+ * @param data: DER SubjectPublicKeyInfo
58
+ * @returns uncompressed public key (`0x04 || x || y`)
59
+ */
60
+ export declare function parseDerSPKI(derBytes: Uint8Array): Uint8Array;
61
+ /**
62
+ * Parse signature from bytes or base64 string into the following fields.
63
+ */
64
+ export declare function parseSerializedPasskeySignature(signature: Uint8Array | string): {
65
+ signatureScheme: "Passkey";
66
+ serializedSignature: string;
67
+ signature: Uint8Array<ArrayBufferLike>;
68
+ authenticatorData: Uint8Array<ArrayBufferLike>;
69
+ clientDataJson: string;
70
+ userSignature: Uint8Array<ArrayBuffer>;
71
+ publicKey: Uint8Array<ArrayBuffer>;
72
+ };
@@ -0,0 +1,148 @@
1
+ import { fromBase64, toBase64 } from "@haneullabs/bcs";
2
+ import { secp256r1 } from "@noble/curves/p256";
3
+ import { sha256 } from "@noble/hashes/sha256";
4
+ import { PasskeyAuthenticator } from "../../bcs/bcs.js";
5
+ import { bytesEqual, PublicKey } from "../../cryptography/publickey.js";
6
+ import { SIGNATURE_SCHEME_TO_FLAG } from "../../cryptography/signature-scheme.js";
7
+ const PASSKEY_PUBLIC_KEY_SIZE = 33;
8
+ const PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE = 65;
9
+ const PASSKEY_SIGNATURE_SIZE = 64;
10
+ const SECP256R1_SPKI_HEADER = new Uint8Array([
11
+ 48,
12
+ 89,
13
+ // SEQUENCE, length 89
14
+ 48,
15
+ 19,
16
+ // SEQUENCE, length 19
17
+ 6,
18
+ 7,
19
+ // OID, length 7
20
+ 42,
21
+ 134,
22
+ 72,
23
+ 206,
24
+ 61,
25
+ 2,
26
+ 1,
27
+ // OID: 1.2.840.10045.2.1 (ecPublicKey)
28
+ 6,
29
+ 8,
30
+ // OID, length 8
31
+ 42,
32
+ 134,
33
+ 72,
34
+ 206,
35
+ 61,
36
+ 3,
37
+ 1,
38
+ 7,
39
+ // OID: 1.2.840.10045.3.1.7 (prime256v1/secp256r1)
40
+ 3,
41
+ 66,
42
+ // BIT STRING, length 66
43
+ 0
44
+ // no unused bits
45
+ ]);
46
+ class PasskeyPublicKey extends PublicKey {
47
+ /**
48
+ * Create a new PasskeyPublicKey object
49
+ * @param value passkey public key as buffer or base-64 encoded string
50
+ */
51
+ constructor(value) {
52
+ super();
53
+ if (typeof value === "string") {
54
+ this.data = fromBase64(value);
55
+ } else if (value instanceof Uint8Array) {
56
+ this.data = value;
57
+ } else {
58
+ this.data = Uint8Array.from(value);
59
+ }
60
+ if (this.data.length !== PASSKEY_PUBLIC_KEY_SIZE) {
61
+ throw new Error(
62
+ `Invalid public key input. Expected ${PASSKEY_PUBLIC_KEY_SIZE} bytes, got ${this.data.length}`
63
+ );
64
+ }
65
+ }
66
+ /**
67
+ * Checks if two passkey public keys are equal
68
+ */
69
+ equals(publicKey) {
70
+ return super.equals(publicKey);
71
+ }
72
+ /**
73
+ * Return the byte array representation of the Secp256r1 public key
74
+ */
75
+ toRawBytes() {
76
+ return this.data;
77
+ }
78
+ /**
79
+ * Return the Haneul address associated with this Secp256r1 public key
80
+ */
81
+ flag() {
82
+ return SIGNATURE_SCHEME_TO_FLAG["Passkey"];
83
+ }
84
+ /**
85
+ * Verifies that the signature is valid for for the provided message
86
+ */
87
+ async verify(message, signature) {
88
+ const parsed = parseSerializedPasskeySignature(signature);
89
+ const clientDataJSON = JSON.parse(parsed.clientDataJson);
90
+ if (clientDataJSON.type !== "webauthn.get") {
91
+ return false;
92
+ }
93
+ const parsedChallenge = fromBase64(
94
+ clientDataJSON.challenge.replace(/-/g, "+").replace(/_/g, "/")
95
+ );
96
+ if (!bytesEqual(message, parsedChallenge)) {
97
+ return false;
98
+ }
99
+ const pk = parsed.userSignature.slice(1 + PASSKEY_SIGNATURE_SIZE);
100
+ if (!bytesEqual(this.toRawBytes(), pk)) {
101
+ return false;
102
+ }
103
+ const payload = new Uint8Array([...parsed.authenticatorData, ...sha256(parsed.clientDataJson)]);
104
+ const sig = parsed.userSignature.slice(1, PASSKEY_SIGNATURE_SIZE + 1);
105
+ return secp256r1.verify(sig, sha256(payload), pk);
106
+ }
107
+ }
108
+ PasskeyPublicKey.SIZE = PASSKEY_PUBLIC_KEY_SIZE;
109
+ function parseDerSPKI(derBytes) {
110
+ if (derBytes.length !== SECP256R1_SPKI_HEADER.length + PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE) {
111
+ throw new Error("Invalid DER length");
112
+ }
113
+ for (let i = 0; i < SECP256R1_SPKI_HEADER.length; i++) {
114
+ if (derBytes[i] !== SECP256R1_SPKI_HEADER[i]) {
115
+ throw new Error("Invalid spki header");
116
+ }
117
+ }
118
+ if (derBytes[SECP256R1_SPKI_HEADER.length] !== 4) {
119
+ throw new Error("Invalid point marker");
120
+ }
121
+ return derBytes.slice(SECP256R1_SPKI_HEADER.length);
122
+ }
123
+ function parseSerializedPasskeySignature(signature) {
124
+ const bytes = typeof signature === "string" ? fromBase64(signature) : signature;
125
+ if (bytes[0] !== SIGNATURE_SCHEME_TO_FLAG.Passkey) {
126
+ throw new Error("Invalid signature scheme");
127
+ }
128
+ const dec = PasskeyAuthenticator.parse(bytes.slice(1));
129
+ return {
130
+ signatureScheme: "Passkey",
131
+ serializedSignature: toBase64(bytes),
132
+ signature: bytes,
133
+ authenticatorData: dec.authenticatorData,
134
+ clientDataJson: dec.clientDataJson,
135
+ userSignature: new Uint8Array(dec.userSignature),
136
+ publicKey: new Uint8Array(dec.userSignature.slice(1 + PASSKEY_SIGNATURE_SIZE))
137
+ };
138
+ }
139
+ export {
140
+ PASSKEY_PUBLIC_KEY_SIZE,
141
+ PASSKEY_SIGNATURE_SIZE,
142
+ PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE,
143
+ PasskeyPublicKey,
144
+ SECP256R1_SPKI_HEADER,
145
+ parseDerSPKI,
146
+ parseSerializedPasskeySignature
147
+ };
148
+ //# sourceMappingURL=publickey.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/keypairs/passkey/publickey.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { fromBase64, toBase64 } from '@haneullabs/bcs';\nimport { secp256r1 } from '@noble/curves/p256';\nimport { sha256 } from '@noble/hashes/sha256';\n\nimport { PasskeyAuthenticator } from '../../bcs/bcs.js';\nimport { bytesEqual, PublicKey } from '../../cryptography/publickey.js';\nimport type { PublicKeyInitData } from '../../cryptography/publickey.js';\nimport { SIGNATURE_SCHEME_TO_FLAG } from '../../cryptography/signature-scheme.js';\n\nexport const PASSKEY_PUBLIC_KEY_SIZE = 33;\nexport const PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE = 65;\nexport const PASSKEY_SIGNATURE_SIZE = 64;\n/** Fixed DER header for secp256r1 SubjectPublicKeyInfo\nDER structure for P-256 SPKI:\n30 -- SEQUENCE\n 59 -- length (89 bytes)\n 30 -- SEQUENCE\n 13 -- length (19 bytes)\n 06 -- OBJECT IDENTIFIER\n 07 -- length\n 2A 86 48 CE 3D 02 01 -- id-ecPublicKey\n 06 -- OBJECT IDENTIFIER\n 08 -- length\n 2A 86 48 CE 3D 03 01 07 -- secp256r1/prime256v1\n 03 -- BIT STRING\n 42 -- length (66 bytes)\n 00 -- padding\n\t===== above bytes are considered header =====\n 04 || x || y -- uncompressed point (65 bytes: 0x04 || 32-byte x || 32-byte y)\n*/\nexport const SECP256R1_SPKI_HEADER = new Uint8Array([\n\t0x30,\n\t0x59, // SEQUENCE, length 89\n\t0x30,\n\t0x13, // SEQUENCE, length 19\n\t0x06,\n\t0x07, // OID, length 7\n\t0x2a,\n\t0x86,\n\t0x48,\n\t0xce,\n\t0x3d,\n\t0x02,\n\t0x01, // OID: 1.2.840.10045.2.1 (ecPublicKey)\n\t0x06,\n\t0x08, // OID, length 8\n\t0x2a,\n\t0x86,\n\t0x48,\n\t0xce,\n\t0x3d,\n\t0x03,\n\t0x01,\n\t0x07, // OID: 1.2.840.10045.3.1.7 (prime256v1/secp256r1)\n\t0x03,\n\t0x42, // BIT STRING, length 66\n\t0x00, // no unused bits\n] as const);\n\n/**\n * A passkey public key\n */\nexport class PasskeyPublicKey extends PublicKey {\n\tstatic SIZE = PASSKEY_PUBLIC_KEY_SIZE;\n\tprivate data: Uint8Array<ArrayBuffer>;\n\n\t/**\n\t * Create a new PasskeyPublicKey object\n\t * @param value passkey public key as buffer or base-64 encoded string\n\t */\n\tconstructor(value: PublicKeyInitData) {\n\t\tsuper();\n\n\t\tif (typeof value === 'string') {\n\t\t\tthis.data = fromBase64(value);\n\t\t} else if (value instanceof Uint8Array) {\n\t\t\tthis.data = value as Uint8Array<ArrayBuffer>;\n\t\t} else {\n\t\t\tthis.data = Uint8Array.from(value);\n\t\t}\n\n\t\tif (this.data.length !== PASSKEY_PUBLIC_KEY_SIZE) {\n\t\t\tthrow new Error(\n\t\t\t\t`Invalid public key input. Expected ${PASSKEY_PUBLIC_KEY_SIZE} bytes, got ${this.data.length}`,\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Checks if two passkey public keys are equal\n\t */\n\toverride equals(publicKey: PasskeyPublicKey): boolean {\n\t\treturn super.equals(publicKey);\n\t}\n\n\t/**\n\t * Return the byte array representation of the Secp256r1 public key\n\t */\n\ttoRawBytes(): Uint8Array<ArrayBuffer> {\n\t\treturn this.data;\n\t}\n\n\t/**\n\t * Return the Haneul address associated with this Secp256r1 public key\n\t */\n\tflag(): number {\n\t\treturn SIGNATURE_SCHEME_TO_FLAG['Passkey'];\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided message\n\t */\n\tasync verify(message: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\tconst parsed = parseSerializedPasskeySignature(signature);\n\t\tconst clientDataJSON = JSON.parse(parsed.clientDataJson);\n\n\t\tif (clientDataJSON.type !== 'webauthn.get') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// parse challenge from base64 url\n\t\tconst parsedChallenge = fromBase64(\n\t\t\tclientDataJSON.challenge.replace(/-/g, '+').replace(/_/g, '/'),\n\t\t);\n\t\tif (!bytesEqual(message, parsedChallenge)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst pk = parsed.userSignature.slice(1 + PASSKEY_SIGNATURE_SIZE);\n\t\tif (!bytesEqual(this.toRawBytes(), pk)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst payload = new Uint8Array([...parsed.authenticatorData, ...sha256(parsed.clientDataJson)]);\n\t\tconst sig = parsed.userSignature.slice(1, PASSKEY_SIGNATURE_SIZE + 1);\n\t\treturn secp256r1.verify(sig, sha256(payload), pk);\n\t}\n}\n\n/**\n * Parses a DER SubjectPublicKeyInfo into an uncompressed public key. This also verifies\n * that the curve used is P-256 (secp256r1).\n *\n * @param data: DER SubjectPublicKeyInfo\n * @returns uncompressed public key (`0x04 || x || y`)\n */\nexport function parseDerSPKI(derBytes: Uint8Array): Uint8Array {\n\t// Verify length and header bytes are expected\n\tif (derBytes.length !== SECP256R1_SPKI_HEADER.length + PASSKEY_UNCOMPRESSED_PUBLIC_KEY_SIZE) {\n\t\tthrow new Error('Invalid DER length');\n\t}\n\tfor (let i = 0; i < SECP256R1_SPKI_HEADER.length; i++) {\n\t\tif (derBytes[i] !== SECP256R1_SPKI_HEADER[i]) {\n\t\t\tthrow new Error('Invalid spki header');\n\t\t}\n\t}\n\n\tif (derBytes[SECP256R1_SPKI_HEADER.length] !== 0x04) {\n\t\tthrow new Error('Invalid point marker');\n\t}\n\n\t// Returns the last 65 bytes `04 || x || y`\n\treturn derBytes.slice(SECP256R1_SPKI_HEADER.length);\n}\n\n/**\n * Parse signature from bytes or base64 string into the following fields.\n */\nexport function parseSerializedPasskeySignature(signature: Uint8Array | string) {\n\tconst bytes = typeof signature === 'string' ? fromBase64(signature) : signature;\n\n\tif (bytes[0] !== SIGNATURE_SCHEME_TO_FLAG.Passkey) {\n\t\tthrow new Error('Invalid signature scheme');\n\t}\n\tconst dec = PasskeyAuthenticator.parse(bytes.slice(1));\n\treturn {\n\t\tsignatureScheme: 'Passkey' as const,\n\t\tserializedSignature: toBase64(bytes),\n\t\tsignature: bytes,\n\t\tauthenticatorData: dec.authenticatorData,\n\t\tclientDataJson: dec.clientDataJson,\n\t\tuserSignature: new Uint8Array(dec.userSignature),\n\t\tpublicKey: new Uint8Array(dec.userSignature.slice(1 + PASSKEY_SIGNATURE_SIZE)),\n\t};\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * The value returned from navigator.credentials.get()
3
+ */
4
+ export interface AuthenticationCredential extends PublicKeyCredential {
5
+ response: AuthenticatorAssertionResponse;
6
+ }
7
+ /**
8
+ * The value returned from navigator.credentials.create()
9
+ */
10
+ export interface RegistrationCredential extends PublicKeyCredential {
11
+ response: AuthenticatorAttestationResponse;
12
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,2 @@
1
+ export { DEFAULT_SECP256K1_DERIVATION_PATH, Secp256k1Keypair, type Secp256k1KeypairData, } from './keypair.js';
2
+ export { Secp256k1PublicKey } from './publickey.js';
@@ -0,0 +1,11 @@
1
+ import {
2
+ DEFAULT_SECP256K1_DERIVATION_PATH,
3
+ Secp256k1Keypair
4
+ } from "./keypair.js";
5
+ import { Secp256k1PublicKey } from "./publickey.js";
6
+ export {
7
+ DEFAULT_SECP256K1_DERIVATION_PATH,
8
+ Secp256k1Keypair,
9
+ Secp256k1PublicKey
10
+ };
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/keypairs/secp256k1/index.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nexport {\n\tDEFAULT_SECP256K1_DERIVATION_PATH,\n\tSecp256k1Keypair,\n\ttype Secp256k1KeypairData,\n} from './keypair.js';\nexport { Secp256k1PublicKey } from './publickey.js';\n"],
5
+ "mappings": "AAGA;AAAA,EACC;AAAA,EACA;AAAA,OAEM;AACP,SAAS,0BAA0B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,73 @@
1
+ import { Keypair } from '../../cryptography/keypair.js';
2
+ import type { PublicKey } from '../../cryptography/publickey.js';
3
+ import type { SignatureScheme } from '../../cryptography/signature-scheme.js';
4
+ export declare const DEFAULT_SECP256K1_DERIVATION_PATH = "m/54'/784'/0'/0/0";
5
+ /**
6
+ * Secp256k1 Keypair data
7
+ */
8
+ export interface Secp256k1KeypairData {
9
+ publicKey: Uint8Array;
10
+ secretKey: Uint8Array;
11
+ }
12
+ /**
13
+ * An Secp256k1 Keypair used for signing transactions.
14
+ */
15
+ export declare class Secp256k1Keypair extends Keypair {
16
+ private keypair;
17
+ /**
18
+ * Create a new keypair instance.
19
+ * Generate random keypair if no {@link Secp256k1Keypair} is provided.
20
+ *
21
+ * @param keypair secp256k1 keypair
22
+ */
23
+ constructor(keypair?: Secp256k1KeypairData);
24
+ /**
25
+ * Get the key scheme of the keypair Secp256k1
26
+ */
27
+ getKeyScheme(): SignatureScheme;
28
+ /**
29
+ * Generate a new random keypair
30
+ */
31
+ static generate(): Secp256k1Keypair;
32
+ /**
33
+ * Create a keypair from a raw secret key byte array.
34
+ *
35
+ * This method should only be used to recreate a keypair from a previously
36
+ * generated secret key. Generating keypairs from a random seed should be done
37
+ * with the {@link Keypair.fromSeed} method.
38
+ *
39
+ * @throws error if the provided secret key is invalid and validation is not skipped.
40
+ *
41
+ * @param secretKey secret key byte array or Bech32 secret key string
42
+ * @param options: skip secret key validation
43
+ */
44
+ static fromSecretKey(secretKey: Uint8Array | string, options?: {
45
+ skipValidation?: boolean;
46
+ }): Secp256k1Keypair;
47
+ /**
48
+ * Generate a keypair from a 32 byte seed.
49
+ *
50
+ * @param seed seed byte array
51
+ */
52
+ static fromSeed(seed: Uint8Array): Secp256k1Keypair;
53
+ /**
54
+ * The public key for this keypair
55
+ */
56
+ getPublicKey(): PublicKey;
57
+ /**
58
+ * The Bech32 secret key string for this Secp256k1 keypair
59
+ */
60
+ getSecretKey(): string;
61
+ /**
62
+ * Return the signature for the provided data.
63
+ */
64
+ sign(data: Uint8Array): Promise<Uint8Array<ArrayBuffer>>;
65
+ /**
66
+ * Derive Secp256k1 keypair from mnemonics and path. The mnemonics must be normalized
67
+ * and validated against the english wordlist.
68
+ *
69
+ * If path is none, it will default to m/54'/784'/0'/0/0, otherwise the path must
70
+ * be compliant to BIP-32 in form m/54'/784'/{account_index}'/{change_index}/{address_index}.
71
+ */
72
+ static deriveKeypair(mnemonics: string, path?: string): Secp256k1Keypair;
73
+ }