phantasma-sdk-ts 0.1.71

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 (478) hide show
  1. package/.eslintignore +13 -0
  2. package/.eslintrc.cjs +15 -0
  3. package/.github/workflows/npm-publish.yml +47 -0
  4. package/.prettierignore +13 -0
  5. package/.prettierrc +8 -0
  6. package/LICENSE +201 -0
  7. package/README.md +842 -0
  8. package/babel.config.js +6 -0
  9. package/core/index.d.ts +10 -0
  10. package/core/index.d.ts.map +1 -0
  11. package/core/index.js +25 -0
  12. package/core/interfaces/IContract.d.ts +27 -0
  13. package/core/interfaces/IContract.d.ts.map +1 -0
  14. package/core/interfaces/IContract.js +25 -0
  15. package/core/interfaces/IKeyPair.d.ts +7 -0
  16. package/core/interfaces/IKeyPair.d.ts.map +1 -0
  17. package/core/interfaces/IKeyPair.js +2 -0
  18. package/core/interfaces/ISerializable.d.ts +6 -0
  19. package/core/interfaces/ISerializable.d.ts.map +1 -0
  20. package/core/interfaces/ISerializable.js +9 -0
  21. package/core/interfaces/IStack.d.ts +7 -0
  22. package/core/interfaces/IStack.d.ts.map +1 -0
  23. package/core/interfaces/IStack.js +2 -0
  24. package/core/interfaces/IToken.d.ts +29 -0
  25. package/core/interfaces/IToken.d.ts.map +1 -0
  26. package/core/interfaces/IToken.js +22 -0
  27. package/core/interfaces/Signature.d.ts +21 -0
  28. package/core/interfaces/Signature.d.ts.map +1 -0
  29. package/core/interfaces/Signature.js +31 -0
  30. package/core/interfaces/index.d.ts +7 -0
  31. package/core/interfaces/index.d.ts.map +1 -0
  32. package/core/interfaces/index.js +22 -0
  33. package/core/ledger/Address-Transcode.d.ts +20 -0
  34. package/core/ledger/Address-Transcode.d.ts.map +1 -0
  35. package/core/ledger/Address-Transcode.js +70 -0
  36. package/core/ledger/Ledger-Commands.d.ts +76 -0
  37. package/core/ledger/Ledger-Commands.d.ts.map +1 -0
  38. package/core/ledger/Ledger-Commands.js +530 -0
  39. package/core/ledger/Ledger-Utils.d.ts +74 -0
  40. package/core/ledger/Ledger-Utils.d.ts.map +1 -0
  41. package/core/ledger/Ledger-Utils.js +609 -0
  42. package/core/ledger/LedgerConfig.d.ts +17 -0
  43. package/core/ledger/LedgerConfig.d.ts.map +1 -0
  44. package/core/ledger/LedgerConfig.js +2 -0
  45. package/core/ledger/Mnemonic.d.ts +35 -0
  46. package/core/ledger/Mnemonic.d.ts.map +1 -0
  47. package/core/ledger/Mnemonic.js +65 -0
  48. package/core/ledger/Transaction-Sign.d.ts +10 -0
  49. package/core/ledger/Transaction-Sign.d.ts.map +1 -0
  50. package/core/ledger/Transaction-Sign.js +149 -0
  51. package/core/ledger/Transaction-Transcode.d.ts +24 -0
  52. package/core/ledger/Transaction-Transcode.d.ts.map +1 -0
  53. package/core/ledger/Transaction-Transcode.js +47 -0
  54. package/core/ledger/index.d.ts +9 -0
  55. package/core/ledger/index.d.ts.map +1 -0
  56. package/core/ledger/index.js +24 -0
  57. package/core/ledger/interfaces/ApplicationNameResponse.d.ts +6 -0
  58. package/core/ledger/interfaces/ApplicationNameResponse.d.ts.map +1 -0
  59. package/core/ledger/interfaces/ApplicationNameResponse.js +2 -0
  60. package/core/ledger/interfaces/Device.d.ts +7 -0
  61. package/core/ledger/interfaces/Device.d.ts.map +1 -0
  62. package/core/ledger/interfaces/Device.js +2 -0
  63. package/core/ledger/interfaces/DeviceResponse.d.ts +7 -0
  64. package/core/ledger/interfaces/DeviceResponse.d.ts.map +1 -0
  65. package/core/ledger/interfaces/DeviceResponse.js +2 -0
  66. package/core/ledger/interfaces/Ledger.d.ts +2 -0
  67. package/core/ledger/interfaces/Ledger.d.ts.map +1 -0
  68. package/core/ledger/interfaces/Ledger.js +2 -0
  69. package/core/ledger/interfaces/LedgerBalanceFromLedgerResponse.d.ts +12 -0
  70. package/core/ledger/interfaces/LedgerBalanceFromLedgerResponse.d.ts.map +1 -0
  71. package/core/ledger/interfaces/LedgerBalanceFromLedgerResponse.js +2 -0
  72. package/core/ledger/interfaces/LedgerConfig.d.ts +17 -0
  73. package/core/ledger/interfaces/LedgerConfig.d.ts.map +1 -0
  74. package/core/ledger/interfaces/LedgerConfig.js +2 -0
  75. package/core/ledger/interfaces/LedgerDeviceInfoResponse.d.ts +7 -0
  76. package/core/ledger/interfaces/LedgerDeviceInfoResponse.d.ts.map +1 -0
  77. package/core/ledger/interfaces/LedgerDeviceInfoResponse.js +2 -0
  78. package/core/ledger/interfaces/LedgerSendTransactionResponse.d.ts +5 -0
  79. package/core/ledger/interfaces/LedgerSendTransactionResponse.d.ts.map +1 -0
  80. package/core/ledger/interfaces/LedgerSendTransactionResponse.js +2 -0
  81. package/core/ledger/interfaces/LedgerSigner.d.ts +6 -0
  82. package/core/ledger/interfaces/LedgerSigner.d.ts.map +1 -0
  83. package/core/ledger/interfaces/LedgerSigner.js +2 -0
  84. package/core/ledger/interfaces/LedgerSignerData.d.ts +8 -0
  85. package/core/ledger/interfaces/LedgerSignerData.d.ts.map +1 -0
  86. package/core/ledger/interfaces/LedgerSignerData.js +2 -0
  87. package/core/ledger/interfaces/PublicKeyResponse.d.ts +6 -0
  88. package/core/ledger/interfaces/PublicKeyResponse.d.ts.map +1 -0
  89. package/core/ledger/interfaces/PublicKeyResponse.js +2 -0
  90. package/core/ledger/interfaces/SignResponse.d.ts +6 -0
  91. package/core/ledger/interfaces/SignResponse.d.ts.map +1 -0
  92. package/core/ledger/interfaces/SignResponse.js +2 -0
  93. package/core/ledger/interfaces/VersionResponse.d.ts +6 -0
  94. package/core/ledger/interfaces/VersionResponse.d.ts.map +1 -0
  95. package/core/ledger/interfaces/VersionResponse.js +2 -0
  96. package/core/ledger/interfaces/index.d.ts +14 -0
  97. package/core/ledger/interfaces/index.d.ts.map +1 -0
  98. package/core/ledger/interfaces/index.js +29 -0
  99. package/core/ledger/ledger-comm.d.ts +85 -0
  100. package/core/ledger/ledger-comm.d.ts.map +1 -0
  101. package/core/ledger/ledger-comm.js +613 -0
  102. package/core/link/easyConnect.d.ts +23 -0
  103. package/core/link/easyConnect.d.ts.map +1 -0
  104. package/core/link/easyConnect.js +237 -0
  105. package/core/link/easyScript.d.ts +13 -0
  106. package/core/link/easyScript.d.ts.map +1 -0
  107. package/core/link/easyScript.js +52 -0
  108. package/core/link/index.d.ts +2 -0
  109. package/core/link/index.d.ts.map +1 -0
  110. package/core/link/index.js +17 -0
  111. package/core/link/interfaces/IAccount.d.ts +13 -0
  112. package/core/link/interfaces/IAccount.d.ts.map +1 -0
  113. package/core/link/interfaces/IAccount.js +2 -0
  114. package/core/link/interfaces/IFile.d.ts +7 -0
  115. package/core/link/interfaces/IFile.d.ts.map +1 -0
  116. package/core/link/interfaces/IFile.js +2 -0
  117. package/core/link/interfaces/ProofOfWork.d.ts +9 -0
  118. package/core/link/interfaces/ProofOfWork.d.ts.map +1 -0
  119. package/core/link/interfaces/ProofOfWork.js +12 -0
  120. package/core/link/interfaces/index.d.ts +4 -0
  121. package/core/link/interfaces/index.d.ts.map +1 -0
  122. package/core/link/interfaces/index.js +19 -0
  123. package/core/link/phantasmaLink.d.ts +41 -0
  124. package/core/link/phantasmaLink.d.ts.map +1 -0
  125. package/core/link/phantasmaLink.js +479 -0
  126. package/core/rpc/index.d.ts +3 -0
  127. package/core/rpc/index.d.ts.map +1 -0
  128. package/core/rpc/index.js +18 -0
  129. package/core/rpc/interfaces/ABIContract.d.ts +6 -0
  130. package/core/rpc/interfaces/ABIContract.d.ts.map +1 -0
  131. package/core/rpc/interfaces/ABIContract.js +2 -0
  132. package/core/rpc/interfaces/ABIEvent.d.ts +7 -0
  133. package/core/rpc/interfaces/ABIEvent.d.ts.map +1 -0
  134. package/core/rpc/interfaces/ABIEvent.js +2 -0
  135. package/core/rpc/interfaces/ABIMethod.d.ts +7 -0
  136. package/core/rpc/interfaces/ABIMethod.d.ts.map +1 -0
  137. package/core/rpc/interfaces/ABIMethod.js +2 -0
  138. package/core/rpc/interfaces/ABIParameter.d.ts +5 -0
  139. package/core/rpc/interfaces/ABIParameter.d.ts.map +1 -0
  140. package/core/rpc/interfaces/ABIParameter.js +2 -0
  141. package/core/rpc/interfaces/Account.d.ts +16 -0
  142. package/core/rpc/interfaces/Account.d.ts.map +1 -0
  143. package/core/rpc/interfaces/Account.js +2 -0
  144. package/core/rpc/interfaces/AccountTransactions.d.ts +6 -0
  145. package/core/rpc/interfaces/AccountTransactions.d.ts.map +1 -0
  146. package/core/rpc/interfaces/AccountTransactions.js +2 -0
  147. package/core/rpc/interfaces/Archive.d.ts +11 -0
  148. package/core/rpc/interfaces/Archive.d.ts.map +1 -0
  149. package/core/rpc/interfaces/Archive.js +2 -0
  150. package/core/rpc/interfaces/Auction.d.ts +13 -0
  151. package/core/rpc/interfaces/Auction.d.ts.map +1 -0
  152. package/core/rpc/interfaces/Auction.js +2 -0
  153. package/core/rpc/interfaces/Balance.d.ts +8 -0
  154. package/core/rpc/interfaces/Balance.d.ts.map +1 -0
  155. package/core/rpc/interfaces/Balance.js +2 -0
  156. package/core/rpc/interfaces/Block.d.ts +17 -0
  157. package/core/rpc/interfaces/Block.d.ts.map +1 -0
  158. package/core/rpc/interfaces/Block.js +2 -0
  159. package/core/rpc/interfaces/Chain.d.ts +10 -0
  160. package/core/rpc/interfaces/Chain.d.ts.map +1 -0
  161. package/core/rpc/interfaces/Chain.js +2 -0
  162. package/core/rpc/interfaces/Channel.d.ts +13 -0
  163. package/core/rpc/interfaces/Channel.d.ts.map +1 -0
  164. package/core/rpc/interfaces/Channel.js +2 -0
  165. package/core/rpc/interfaces/Contract.d.ts +11 -0
  166. package/core/rpc/interfaces/Contract.d.ts.map +1 -0
  167. package/core/rpc/interfaces/Contract.js +2 -0
  168. package/core/rpc/interfaces/Dapp.d.ts +6 -0
  169. package/core/rpc/interfaces/Dapp.d.ts.map +1 -0
  170. package/core/rpc/interfaces/Dapp.js +2 -0
  171. package/core/rpc/interfaces/Event.d.ts +7 -0
  172. package/core/rpc/interfaces/Event.d.ts.map +1 -0
  173. package/core/rpc/interfaces/Event.js +2 -0
  174. package/core/rpc/interfaces/Governance.d.ts +5 -0
  175. package/core/rpc/interfaces/Governance.d.ts.map +1 -0
  176. package/core/rpc/interfaces/Governance.js +2 -0
  177. package/core/rpc/interfaces/Interop.d.ts +5 -0
  178. package/core/rpc/interfaces/Interop.d.ts.map +1 -0
  179. package/core/rpc/interfaces/Interop.js +2 -0
  180. package/core/rpc/interfaces/KeyValue.d.ts +5 -0
  181. package/core/rpc/interfaces/KeyValue.d.ts.map +1 -0
  182. package/core/rpc/interfaces/KeyValue.js +2 -0
  183. package/core/rpc/interfaces/Leaderboard.d.ts +6 -0
  184. package/core/rpc/interfaces/Leaderboard.d.ts.map +1 -0
  185. package/core/rpc/interfaces/Leaderboard.js +2 -0
  186. package/core/rpc/interfaces/LeaderboardRow.d.ts +5 -0
  187. package/core/rpc/interfaces/LeaderboardRow.d.ts.map +1 -0
  188. package/core/rpc/interfaces/LeaderboardRow.js +2 -0
  189. package/core/rpc/interfaces/NFT.d.ts +14 -0
  190. package/core/rpc/interfaces/NFT.d.ts.map +1 -0
  191. package/core/rpc/interfaces/NFT.js +2 -0
  192. package/core/rpc/interfaces/Nexus.d.ts +14 -0
  193. package/core/rpc/interfaces/Nexus.d.ts.map +1 -0
  194. package/core/rpc/interfaces/Nexus.js +2 -0
  195. package/core/rpc/interfaces/Oracle.d.ts +5 -0
  196. package/core/rpc/interfaces/Oracle.d.ts.map +1 -0
  197. package/core/rpc/interfaces/Oracle.js +2 -0
  198. package/core/rpc/interfaces/Organization.d.ts +6 -0
  199. package/core/rpc/interfaces/Organization.d.ts.map +1 -0
  200. package/core/rpc/interfaces/Organization.js +2 -0
  201. package/core/rpc/interfaces/Paginated.d.ts +8 -0
  202. package/core/rpc/interfaces/Paginated.d.ts.map +1 -0
  203. package/core/rpc/interfaces/Paginated.js +2 -0
  204. package/core/rpc/interfaces/Peer.d.ts +8 -0
  205. package/core/rpc/interfaces/Peer.d.ts.map +1 -0
  206. package/core/rpc/interfaces/Peer.js +2 -0
  207. package/core/rpc/interfaces/Platform.d.ts +9 -0
  208. package/core/rpc/interfaces/Platform.d.ts.map +1 -0
  209. package/core/rpc/interfaces/Platform.js +2 -0
  210. package/core/rpc/interfaces/Receipt.d.ts +10 -0
  211. package/core/rpc/interfaces/Receipt.d.ts.map +1 -0
  212. package/core/rpc/interfaces/Receipt.js +2 -0
  213. package/core/rpc/interfaces/Script.d.ts +9 -0
  214. package/core/rpc/interfaces/Script.d.ts.map +1 -0
  215. package/core/rpc/interfaces/Script.js +2 -0
  216. package/core/rpc/interfaces/SendRawTx.d.ts +5 -0
  217. package/core/rpc/interfaces/SendRawTx.d.ts.map +1 -0
  218. package/core/rpc/interfaces/SendRawTx.js +2 -0
  219. package/core/rpc/interfaces/SignatureResult.d.ts +5 -0
  220. package/core/rpc/interfaces/SignatureResult.d.ts.map +1 -0
  221. package/core/rpc/interfaces/SignatureResult.js +2 -0
  222. package/core/rpc/interfaces/Stake.d.ts +6 -0
  223. package/core/rpc/interfaces/Stake.d.ts.map +1 -0
  224. package/core/rpc/interfaces/Stake.js +2 -0
  225. package/core/rpc/interfaces/Storage.d.ts +8 -0
  226. package/core/rpc/interfaces/Storage.d.ts.map +1 -0
  227. package/core/rpc/interfaces/Storage.js +2 -0
  228. package/core/rpc/interfaces/Swap.d.ts +13 -0
  229. package/core/rpc/interfaces/Swap.d.ts.map +1 -0
  230. package/core/rpc/interfaces/Swap.js +2 -0
  231. package/core/rpc/interfaces/Token.d.ts +19 -0
  232. package/core/rpc/interfaces/Token.d.ts.map +1 -0
  233. package/core/rpc/interfaces/Token.js +2 -0
  234. package/core/rpc/interfaces/TokenData.d.ts +13 -0
  235. package/core/rpc/interfaces/TokenData.d.ts.map +1 -0
  236. package/core/rpc/interfaces/TokenData.js +2 -0
  237. package/core/rpc/interfaces/TokenExternal.d.ts +5 -0
  238. package/core/rpc/interfaces/TokenExternal.d.ts.map +1 -0
  239. package/core/rpc/interfaces/TokenExternal.js +2 -0
  240. package/core/rpc/interfaces/TokenPrice.d.ts +8 -0
  241. package/core/rpc/interfaces/TokenPrice.d.ts.map +1 -0
  242. package/core/rpc/interfaces/TokenPrice.js +2 -0
  243. package/core/rpc/interfaces/TokenSeries.d.ts +12 -0
  244. package/core/rpc/interfaces/TokenSeries.d.ts.map +1 -0
  245. package/core/rpc/interfaces/TokenSeries.js +2 -0
  246. package/core/rpc/interfaces/TransactionData.d.ts +23 -0
  247. package/core/rpc/interfaces/TransactionData.d.ts.map +1 -0
  248. package/core/rpc/interfaces/TransactionData.js +2 -0
  249. package/core/rpc/interfaces/Validator.d.ts +5 -0
  250. package/core/rpc/interfaces/Validator.d.ts.map +1 -0
  251. package/core/rpc/interfaces/Validator.js +2 -0
  252. package/core/rpc/interfaces/index.d.ts +42 -0
  253. package/core/rpc/interfaces/index.d.ts.map +1 -0
  254. package/core/rpc/interfaces/index.js +57 -0
  255. package/core/rpc/phantasma.d.ts +89 -0
  256. package/core/rpc/phantasma.d.ts.map +1 -0
  257. package/core/rpc/phantasma.js +900 -0
  258. package/core/tx/SignatureKind.js +9 -0
  259. package/core/tx/Transaction.d.ts +28 -0
  260. package/core/tx/Transaction.d.ts.map +1 -0
  261. package/core/tx/Transaction.js +209 -0
  262. package/core/tx/index.d.ts +3 -0
  263. package/core/tx/index.d.ts.map +1 -0
  264. package/core/tx/index.js +18 -0
  265. package/core/tx/utils.d.ts +10 -0
  266. package/core/tx/utils.d.ts.map +1 -0
  267. package/core/tx/utils.js +147 -0
  268. package/core/types/Address.d.ts +41 -0
  269. package/core/types/Address.d.ts.map +1 -0
  270. package/core/types/Address.js +276 -0
  271. package/core/types/Consensus.d.ts +61 -0
  272. package/core/types/Consensus.d.ts.map +1 -0
  273. package/core/types/Consensus.js +151 -0
  274. package/core/types/Contract.d.ts +60 -0
  275. package/core/types/Contract.d.ts.map +1 -0
  276. package/core/types/Contract.js +342 -0
  277. package/core/types/DomainSettings.d.ts +87 -0
  278. package/core/types/DomainSettings.d.ts.map +1 -0
  279. package/core/types/DomainSettings.js +107 -0
  280. package/core/types/Ed25519Signature.d.ts +16 -0
  281. package/core/types/Ed25519Signature.d.ts.map +1 -0
  282. package/core/types/Ed25519Signature.js +78 -0
  283. package/core/types/Entropy.d.ts +5 -0
  284. package/core/types/Entropy.d.ts.map +1 -0
  285. package/core/types/Entropy.js +24 -0
  286. package/core/types/Extensions/Base16.d.ts +7 -0
  287. package/core/types/Extensions/Base16.d.ts.map +1 -0
  288. package/core/types/Extensions/Base16.js +36 -0
  289. package/core/types/Extensions/BinaryReader.d.ts +17 -0
  290. package/core/types/Extensions/BinaryReader.d.ts.map +1 -0
  291. package/core/types/Extensions/BinaryReader.js +192 -0
  292. package/core/types/Extensions/BinaryWriter.d.ts +25 -0
  293. package/core/types/Extensions/BinaryWriter.d.ts.map +1 -0
  294. package/core/types/Extensions/BinaryWriter.js +191 -0
  295. package/core/types/Extensions/Describer.d.ts +5 -0
  296. package/core/types/Extensions/Describer.d.ts.map +1 -0
  297. package/core/types/Extensions/Describer.js +25 -0
  298. package/core/types/Extensions/PBinaryReader.d.ts +42 -0
  299. package/core/types/Extensions/PBinaryReader.d.ts.map +1 -0
  300. package/core/types/Extensions/PBinaryReader.js +269 -0
  301. package/core/types/Extensions/PBinaryWriter.d.ts +49 -0
  302. package/core/types/Extensions/PBinaryWriter.d.ts.map +1 -0
  303. package/core/types/Extensions/PBinaryWriter.js +250 -0
  304. package/core/types/Extensions/TableColumns.d.ts +5 -0
  305. package/core/types/Extensions/TableColumns.d.ts.map +1 -0
  306. package/core/types/Extensions/TableColumns.js +22 -0
  307. package/core/types/Extensions/index.d.ts +5 -0
  308. package/core/types/Extensions/index.d.ts.map +1 -0
  309. package/core/types/Extensions/index.js +20 -0
  310. package/core/types/PhantasmaKeys.d.ts +19 -0
  311. package/core/types/PhantasmaKeys.d.ts.map +1 -0
  312. package/core/types/PhantasmaKeys.js +92 -0
  313. package/core/types/Serialization.d.ts +22 -0
  314. package/core/types/Serialization.d.ts.map +1 -0
  315. package/core/types/Serialization.js +195 -0
  316. package/core/types/Stack.d.ts +16 -0
  317. package/core/types/Stack.d.ts.map +1 -0
  318. package/core/types/Stack.js +42 -0
  319. package/core/types/Timestamp.d.ts +26 -0
  320. package/core/types/Timestamp.d.ts.map +1 -0
  321. package/core/types/Timestamp.js +74 -0
  322. package/core/types/index.d.ts +12 -0
  323. package/core/types/index.d.ts.map +1 -0
  324. package/core/types/index.js +27 -0
  325. package/core/utils/index.d.ts +25 -0
  326. package/core/utils/index.d.ts.map +1 -0
  327. package/core/utils/index.js +236 -0
  328. package/core/vm/Contracts.d.ts +17 -0
  329. package/core/vm/Contracts.d.ts.map +1 -0
  330. package/core/vm/Contracts.js +20 -0
  331. package/core/vm/Decoder.d.ts +19 -0
  332. package/core/vm/Decoder.d.ts.map +1 -0
  333. package/core/vm/Decoder.js +175 -0
  334. package/core/vm/EventData.d.ts +97 -0
  335. package/core/vm/EventData.d.ts.map +1 -0
  336. package/core/vm/EventData.js +134 -0
  337. package/core/vm/Opcode.d.ts +57 -0
  338. package/core/vm/Opcode.d.ts.map +1 -0
  339. package/core/vm/Opcode.js +69 -0
  340. package/core/vm/ScriptBuilder.d.ts +65 -0
  341. package/core/vm/ScriptBuilder.d.ts.map +1 -0
  342. package/core/vm/ScriptBuilder.js +592 -0
  343. package/core/vm/VMObject.d.ts +55 -0
  344. package/core/vm/VMObject.d.ts.map +1 -0
  345. package/core/vm/VMObject.js +1101 -0
  346. package/core/vm/VMType.d.ts +12 -0
  347. package/core/vm/VMType.d.ts.map +1 -0
  348. package/core/vm/VMType.js +15 -0
  349. package/core/vm/index.d.ts +8 -0
  350. package/core/vm/index.d.ts.map +1 -0
  351. package/core/vm/index.js +23 -0
  352. package/html/TestWebPage.html +187 -0
  353. package/html/phantasma.js +60504 -0
  354. package/index.d.ts +5 -0
  355. package/index.d.ts.map +1 -0
  356. package/index.js +36 -0
  357. package/jest.config.js +5 -0
  358. package/package.json +67 -0
  359. package/src/core/index.ts +9 -0
  360. package/src/core/interfaces/IContract.ts +28 -0
  361. package/src/core/interfaces/IKeyPair.ts +14 -0
  362. package/src/core/interfaces/ISerializable.ts +6 -0
  363. package/src/core/interfaces/IStack.ts +6 -0
  364. package/src/core/interfaces/IToken.ts +31 -0
  365. package/src/core/interfaces/Signature.ts +32 -0
  366. package/src/core/interfaces/index.ts +6 -0
  367. package/src/core/ledger/Address-Transcode.ts +44 -0
  368. package/src/core/ledger/Ledger-Commands.ts +463 -0
  369. package/src/core/ledger/Ledger-Utils.ts +549 -0
  370. package/src/core/ledger/Mnemonic.ts +79 -0
  371. package/src/core/ledger/Transaction-Sign.ts +126 -0
  372. package/src/core/ledger/Transaction-Transcode.ts +56 -0
  373. package/src/core/ledger/index.ts +8 -0
  374. package/src/core/ledger/interfaces/ApplicationNameResponse.ts +5 -0
  375. package/src/core/ledger/interfaces/Device.ts +6 -0
  376. package/src/core/ledger/interfaces/DeviceResponse.ts +6 -0
  377. package/src/core/ledger/interfaces/Ledger.ts +10 -0
  378. package/src/core/ledger/interfaces/LedgerBalanceFromLedgerResponse.ts +9 -0
  379. package/src/core/ledger/interfaces/LedgerConfig.ts +17 -0
  380. package/src/core/ledger/interfaces/LedgerDeviceInfoResponse.ts +7 -0
  381. package/src/core/ledger/interfaces/LedgerSendTransactionResponse.ts +4 -0
  382. package/src/core/ledger/interfaces/LedgerSigner.ts +6 -0
  383. package/src/core/ledger/interfaces/LedgerSignerData.ts +8 -0
  384. package/src/core/ledger/interfaces/PublicKeyResponse.ts +5 -0
  385. package/src/core/ledger/interfaces/SignResponse.ts +5 -0
  386. package/src/core/ledger/interfaces/VersionResponse.ts +5 -0
  387. package/src/core/ledger/interfaces/index.ts +13 -0
  388. package/src/core/link/easyConnect.ts +214 -0
  389. package/src/core/link/easyScript.ts +67 -0
  390. package/src/core/link/index.ts +1 -0
  391. package/src/core/link/interfaces/IAccount.ts +13 -0
  392. package/src/core/link/interfaces/IFile.ts +6 -0
  393. package/src/core/link/interfaces/ProofOfWork.ts +8 -0
  394. package/src/core/link/interfaces/index.ts +3 -0
  395. package/src/core/link/phantasmaLink.ts +561 -0
  396. package/src/core/rpc/index.ts +2 -0
  397. package/src/core/rpc/interfaces/ABIContract.ts +6 -0
  398. package/src/core/rpc/interfaces/ABIEvent.ts +6 -0
  399. package/src/core/rpc/interfaces/ABIMethod.ts +7 -0
  400. package/src/core/rpc/interfaces/ABIParameter.ts +4 -0
  401. package/src/core/rpc/interfaces/Account.ts +16 -0
  402. package/src/core/rpc/interfaces/AccountTransactions.ts +6 -0
  403. package/src/core/rpc/interfaces/Archive.ts +10 -0
  404. package/src/core/rpc/interfaces/Auction.ts +12 -0
  405. package/src/core/rpc/interfaces/Balance.ts +7 -0
  406. package/src/core/rpc/interfaces/Block.ts +17 -0
  407. package/src/core/rpc/interfaces/Chain.ts +9 -0
  408. package/src/core/rpc/interfaces/Channel.ts +12 -0
  409. package/src/core/rpc/interfaces/Contract.ts +11 -0
  410. package/src/core/rpc/interfaces/Dapp.ts +5 -0
  411. package/src/core/rpc/interfaces/Event.ts +6 -0
  412. package/src/core/rpc/interfaces/Governance.ts +4 -0
  413. package/src/core/rpc/interfaces/Interop.ts +4 -0
  414. package/src/core/rpc/interfaces/KeyValue.ts +4 -0
  415. package/src/core/rpc/interfaces/Leaderboard.ts +6 -0
  416. package/src/core/rpc/interfaces/LeaderboardRow.ts +4 -0
  417. package/src/core/rpc/interfaces/NFT.ts +14 -0
  418. package/src/core/rpc/interfaces/Nexus.ts +14 -0
  419. package/src/core/rpc/interfaces/Oracle.ts +4 -0
  420. package/src/core/rpc/interfaces/Organization.ts +5 -0
  421. package/src/core/rpc/interfaces/Paginated.ts +7 -0
  422. package/src/core/rpc/interfaces/Peer.ts +7 -0
  423. package/src/core/rpc/interfaces/Platform.ts +9 -0
  424. package/src/core/rpc/interfaces/Receipt.ts +9 -0
  425. package/src/core/rpc/interfaces/Script.ts +9 -0
  426. package/src/core/rpc/interfaces/SendRawTx.ts +4 -0
  427. package/src/core/rpc/interfaces/SignatureResult.ts +4 -0
  428. package/src/core/rpc/interfaces/Stake.ts +5 -0
  429. package/src/core/rpc/interfaces/Storage.ts +8 -0
  430. package/src/core/rpc/interfaces/Swap.ts +12 -0
  431. package/src/core/rpc/interfaces/Token.ts +19 -0
  432. package/src/core/rpc/interfaces/TokenData.ts +12 -0
  433. package/src/core/rpc/interfaces/TokenExternal.ts +4 -0
  434. package/src/core/rpc/interfaces/TokenPrice.ts +7 -0
  435. package/src/core/rpc/interfaces/TokenSeries.ts +12 -0
  436. package/src/core/rpc/interfaces/TransactionData.ts +23 -0
  437. package/src/core/rpc/interfaces/Validator.ts +4 -0
  438. package/src/core/rpc/interfaces/index.ts +41 -0
  439. package/src/core/rpc/phantasma.ts +466 -0
  440. package/src/core/tx/Transaction.ts +258 -0
  441. package/src/core/tx/index.ts +2 -0
  442. package/src/core/tx/utils.ts +106 -0
  443. package/src/core/types/Address.ts +290 -0
  444. package/src/core/types/Consensus.ts +181 -0
  445. package/src/core/types/Contract.ts +324 -0
  446. package/src/core/types/DomainSettings.ts +128 -0
  447. package/src/core/types/Ed25519Signature.ts +78 -0
  448. package/src/core/types/Entropy.ts +16 -0
  449. package/src/core/types/Extensions/Base16.ts +36 -0
  450. package/src/core/types/Extensions/Describer.ts +17 -0
  451. package/src/core/types/Extensions/PBinaryReader.ts +247 -0
  452. package/src/core/types/Extensions/PBinaryWriter.ts +278 -0
  453. package/src/core/types/Extensions/index.ts +4 -0
  454. package/src/core/types/PhantasmaKeys.ts +119 -0
  455. package/src/core/types/Serialization.ts +211 -0
  456. package/src/core/types/Stack.ts +46 -0
  457. package/src/core/types/Timestamp.ts +93 -0
  458. package/src/core/types/index.ts +11 -0
  459. package/src/core/utils/index.ts +206 -0
  460. package/src/core/vm/Contracts.ts +17 -0
  461. package/src/core/vm/Decoder.ts +162 -0
  462. package/src/core/vm/Disassembler.ts +1 -0
  463. package/src/core/vm/EventData.ts +135 -0
  464. package/src/core/vm/Opcode.ts +74 -0
  465. package/src/core/vm/ScriptBuilder.ts +588 -0
  466. package/src/core/vm/VMObject.ts +1162 -0
  467. package/src/core/vm/VMType.ts +11 -0
  468. package/src/core/vm/index.ts +7 -0
  469. package/src/core/vm/utils/DisasmMethodCall.ts +22 -0
  470. package/src/core/vm/utils/DisasmUtils.ts +89 -0
  471. package/src/core/vm/utils/index.ts +2 -0
  472. package/src/index.ts +7 -0
  473. package/tests/VMObject.test.ts +146 -0
  474. package/tests/ledger/Address-Transacode.test.ts +26 -0
  475. package/tests/tx/Transaction.test.ts +274 -0
  476. package/tests/types/Address.test.ts +26 -0
  477. package/tests/types/Consensus.test.ts +67 -0
  478. package/tsconfig.json +29 -0
@@ -0,0 +1,342 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.ContractEvent = exports.ContractMethod = exports.ContractInterface = exports.ContractParameter = void 0;
31
+ var utils_1 = require("../utils");
32
+ var Extensions_1 = require("./Extensions");
33
+ var ContractParameter = /** @class */ (function () {
34
+ function ContractParameter(name, type) {
35
+ this.name = name;
36
+ this.type = type;
37
+ }
38
+ return ContractParameter;
39
+ }());
40
+ exports.ContractParameter = ContractParameter;
41
+ var ContractInterface = /** @class */ (function () {
42
+ function ContractInterface(methods, events) {
43
+ var e_1, _a;
44
+ this._methods = new Map();
45
+ this.Methods = Array.from(this._methods.values());
46
+ this.MethodCount = this._methods.size;
47
+ try {
48
+ for (var methods_1 = __values(methods), methods_1_1 = methods_1.next(); !methods_1_1.done; methods_1_1 = methods_1.next()) {
49
+ var entry = methods_1_1.value;
50
+ this._methods.set(entry.name, entry);
51
+ }
52
+ }
53
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
54
+ finally {
55
+ try {
56
+ if (methods_1_1 && !methods_1_1.done && (_a = methods_1.return)) _a.call(methods_1);
57
+ }
58
+ finally { if (e_1) throw e_1.error; }
59
+ }
60
+ this._events = events;
61
+ }
62
+ ContractInterface.prototype.Events = function () {
63
+ return this._events;
64
+ };
65
+ ContractInterface.prototype.EventCount = function () {
66
+ return this._events.length;
67
+ };
68
+ ContractInterface.prototype.newEmpty = function () {
69
+ this._methods = new Map();
70
+ this._events = [];
71
+ };
72
+ ContractInterface.prototype.get = function (name) {
73
+ return this.FindMethod(name);
74
+ };
75
+ ContractInterface.prototype.HasMethod = function (name) {
76
+ return this._methods.has(name);
77
+ };
78
+ ContractInterface.prototype.HasTokenTrigger = function (trigger) {
79
+ var strName = trigger.toString();
80
+ var name = strName[0].toLowerCase() + strName.slice(1);
81
+ return this._methods.has(name);
82
+ };
83
+ ContractInterface.prototype.FindMethod = function (name) {
84
+ if (this._methods.has(name)) {
85
+ return this._methods.get(name);
86
+ }
87
+ return null;
88
+ };
89
+ ContractInterface.prototype.FindEvent = function (value) {
90
+ var e_2, _a;
91
+ try {
92
+ for (var _b = __values(this._events), _c = _b.next(); !_c.done; _c = _b.next()) {
93
+ var evt = _c.value;
94
+ if (evt.value === value) {
95
+ return evt;
96
+ }
97
+ }
98
+ }
99
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
100
+ finally {
101
+ try {
102
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
103
+ }
104
+ finally { if (e_2) throw e_2.error; }
105
+ }
106
+ return null;
107
+ };
108
+ ContractInterface.prototype.ImplementsEvent = function (evt) {
109
+ var e_3, _a;
110
+ try {
111
+ for (var _b = __values(this.Events()), _c = _b.next(); !_c.done; _c = _b.next()) {
112
+ var entry = _c.value;
113
+ if (entry.name === evt.name &&
114
+ entry.value === evt.value &&
115
+ entry.returnType === evt.returnType) {
116
+ return true;
117
+ }
118
+ }
119
+ }
120
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
121
+ finally {
122
+ try {
123
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
124
+ }
125
+ finally { if (e_3) throw e_3.error; }
126
+ }
127
+ return false;
128
+ };
129
+ ContractInterface.prototype.ImplementsMethod = function (method) {
130
+ if (!this._methods.has(method.name)) {
131
+ return false;
132
+ }
133
+ var thisMethod = this._methods.get(method.name);
134
+ if (thisMethod.parameters.length !== method.parameters.length) {
135
+ return false;
136
+ }
137
+ for (var i = 0; i < method.parameters.length; i++) {
138
+ if (thisMethod.parameters[i].type !== method.parameters[i].type) {
139
+ return false;
140
+ }
141
+ }
142
+ return true;
143
+ };
144
+ ContractInterface.prototype.ImplementsInterface = function (other) {
145
+ var e_4, _a, e_5, _b;
146
+ try {
147
+ for (var _c = __values(other.Methods), _d = _c.next(); !_d.done; _d = _c.next()) {
148
+ var method = _d.value;
149
+ if (!this.ImplementsMethod(method)) {
150
+ return false;
151
+ }
152
+ }
153
+ }
154
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
155
+ finally {
156
+ try {
157
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
158
+ }
159
+ finally { if (e_4) throw e_4.error; }
160
+ }
161
+ try {
162
+ for (var _e = __values(other.Events()), _f = _e.next(); !_f.done; _f = _e.next()) {
163
+ var evt = _f.value;
164
+ if (!this.ImplementsEvent(evt)) {
165
+ return false;
166
+ }
167
+ }
168
+ }
169
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
170
+ finally {
171
+ try {
172
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
173
+ }
174
+ finally { if (e_5) throw e_5.error; }
175
+ }
176
+ return true;
177
+ };
178
+ ContractInterface.prototype.UnserializeData = function (reader) {
179
+ var len = reader.readByte();
180
+ this._methods.clear();
181
+ for (var i = 0; i < len; i++) {
182
+ var method = ContractMethod.Unserialize(reader);
183
+ this._methods.set(method.name, method);
184
+ }
185
+ var eventLen = reader.readByte();
186
+ this._events = [];
187
+ for (var i = 0; i < eventLen; i++) {
188
+ this._events.push(ContractEvent.Unserialize(reader));
189
+ }
190
+ };
191
+ ContractInterface.prototype.SerializeData = function (writer) {
192
+ var e_6, _a, e_7, _b;
193
+ writer.writeByte(this._methods.size);
194
+ try {
195
+ for (var _c = __values(this._methods), _d = _c.next(); !_d.done; _d = _c.next()) {
196
+ var _e = __read(_d.value, 2), _ = _e[0], value = _e[1];
197
+ value.Serialize(writer);
198
+ }
199
+ }
200
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
201
+ finally {
202
+ try {
203
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
204
+ }
205
+ finally { if (e_6) throw e_6.error; }
206
+ }
207
+ writer.writeByte(this._events.length);
208
+ try {
209
+ for (var _f = __values(this._events), _g = _f.next(); !_g.done; _g = _f.next()) {
210
+ var entry = _g.value;
211
+ entry.Serialize(writer);
212
+ }
213
+ }
214
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
215
+ finally {
216
+ try {
217
+ if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
218
+ }
219
+ finally { if (e_7) throw e_7.error; }
220
+ }
221
+ };
222
+ ContractInterface.Empty = new ContractInterface([], []);
223
+ return ContractInterface;
224
+ }());
225
+ exports.ContractInterface = ContractInterface;
226
+ var ContractMethod = /** @class */ (function () {
227
+ function ContractMethod(name, returnType, offset, parameters) {
228
+ this.name = name;
229
+ this.offset = offset;
230
+ this.returnType = returnType;
231
+ this.parameters = parameters;
232
+ }
233
+ ContractMethod.prototype.SerializeData = function (writer) {
234
+ this.Serialize(writer);
235
+ };
236
+ ContractMethod.prototype.UnserializeData = function (reader) {
237
+ return ContractMethod.Unserialize(reader);
238
+ };
239
+ ContractMethod.prototype.constructorOne = function (name, returnType, labels, parameters) {
240
+ if (!labels.has(name)) {
241
+ throw new Error("Missing offset in label map for method ".concat(name));
242
+ }
243
+ var offset = labels.get(name);
244
+ this.name = name;
245
+ this.offset = offset;
246
+ this.returnType = returnType;
247
+ this.parameters = parameters;
248
+ };
249
+ ContractMethod.prototype.isProperty = function () {
250
+ if (this.name.length >= 4 &&
251
+ this.name.startsWith("get") &&
252
+ this.name[3] === this.name[3].toUpperCase()) {
253
+ return true;
254
+ }
255
+ if (this.name.length >= 3 &&
256
+ this.name.startsWith("is") &&
257
+ this.name[2] === this.name[2].toUpperCase()) {
258
+ return true;
259
+ }
260
+ return false;
261
+ };
262
+ ContractMethod.prototype.isTrigger = function () {
263
+ if (this.name.length >= 3 &&
264
+ this.name.startsWith("on") &&
265
+ this.name[2] === this.name[2].toUpperCase()) {
266
+ return true;
267
+ }
268
+ return false;
269
+ };
270
+ ContractMethod.prototype.toString = function () {
271
+ return "".concat(this.name, " : ").concat(this.returnType);
272
+ };
273
+ ContractMethod.fromBytes = function (bytes) {
274
+ var stream = new Uint8Array(bytes);
275
+ var reader = new Extensions_1.PBinaryReader(stream);
276
+ return ContractMethod.Unserialize(reader);
277
+ };
278
+ ContractMethod.Unserialize = function (reader) {
279
+ var name = reader.readString();
280
+ var returnType = reader.readByte();
281
+ var offset = reader.readInt();
282
+ var len = reader.readByte();
283
+ var parameters = new Array(len);
284
+ for (var i = 0; i < len; i++) {
285
+ var pName = reader.readString();
286
+ var pVMType = reader.readByte();
287
+ parameters[i] = new ContractParameter(pName, pVMType);
288
+ }
289
+ return new ContractMethod(name, returnType, offset, parameters);
290
+ };
291
+ ContractMethod.prototype.Serialize = function (writer) {
292
+ writer.writeString(this.name);
293
+ writer.writeByte(this.returnType);
294
+ writer.writeInt(this.offset);
295
+ writer.writeByte(this.parameters.length);
296
+ this.parameters.forEach(function (entry) {
297
+ writer.writeString(entry.name);
298
+ writer.writeByte(entry.type);
299
+ });
300
+ };
301
+ ContractMethod.prototype.toArray = function () {
302
+ var stream = new Uint8Array();
303
+ var writer = new Extensions_1.PBinaryWriter(stream);
304
+ this.Serialize(writer);
305
+ return stream;
306
+ };
307
+ return ContractMethod;
308
+ }());
309
+ exports.ContractMethod = ContractMethod;
310
+ var ContractEvent = /** @class */ (function () {
311
+ function ContractEvent(value, name, returnType, description) {
312
+ this.value = value;
313
+ this.name = name;
314
+ this.returnType = returnType;
315
+ this.description = description;
316
+ }
317
+ ContractEvent.prototype.SerializeData = function (writer) {
318
+ this.Serialize(writer);
319
+ };
320
+ ContractEvent.prototype.UnserializeData = function (reader) {
321
+ return ContractEvent.Unserialize(reader);
322
+ };
323
+ ContractEvent.prototype.toString = function () {
324
+ return "".concat(this.name, " : ").concat(this.returnType, " => ").concat(this.value);
325
+ };
326
+ ContractEvent.Unserialize = function (reader) {
327
+ var value = reader.readByte();
328
+ var name = reader.readString();
329
+ var returnType = reader.readByte();
330
+ var description = reader.readBytes(reader.readByte());
331
+ return new ContractEvent(value, name, returnType, (0, utils_1.arrayNumberToUint8Array)(description));
332
+ };
333
+ ContractEvent.prototype.Serialize = function (writer) {
334
+ writer.writeByte(this.value);
335
+ writer.writeString(this.name);
336
+ writer.writeByte(this.returnType);
337
+ writer.writeByte(this.description.length);
338
+ writer.writeBytes((0, utils_1.uint8ArrayToNumberArray)(this.description));
339
+ };
340
+ return ContractEvent;
341
+ }());
342
+ exports.ContractEvent = ContractEvent;
@@ -0,0 +1,87 @@
1
+ import { Address } from './Address';
2
+ import { Timestamp } from './Timestamp';
3
+ export declare enum TriggerResult {
4
+ Failure = 0,
5
+ Missing = 1,
6
+ Success = 2
7
+ }
8
+ export declare enum AccountTrigger {
9
+ OnMint = 0,
10
+ OnBurn = 1,
11
+ OnSend = 2,
12
+ OnReceive = 3,
13
+ OnWitness = 4,
14
+ OnUpgrade = 5,
15
+ OnMigrate = 6,
16
+ OnKill = 7
17
+ }
18
+ export declare enum TokenTrigger {
19
+ OnMint = 0,
20
+ OnBurn = 1,
21
+ OnSend = 2,
22
+ OnReceive = 3,
23
+ OnInfuse = 4,
24
+ OnUpgrade = 5,
25
+ OnSeries = 6,
26
+ OnWrite = 7,
27
+ OnMigrate = 8,
28
+ OnKill = 9
29
+ }
30
+ export declare enum OrganizationTrigger {
31
+ OnAdd = 0,
32
+ OnRemove = 1,
33
+ OnUpgrade = 2
34
+ }
35
+ export declare class StakeReward {
36
+ staker: Address;
37
+ date: Timestamp;
38
+ constructor(staker: Address, date: Timestamp);
39
+ }
40
+ export declare class DomainSettings {
41
+ static LatestKnownProtocol: number;
42
+ static Phantasma20Protocol: number;
43
+ static Phantasma30Protocol: number;
44
+ static MaxTxPerBlock: number;
45
+ static MaxOracleEntriesPerBlock: number;
46
+ static MaxEventsPerBlock: number;
47
+ static MaxEventsPerTx: number;
48
+ static MaxTriggerLoop: number;
49
+ static MAX_TOKEN_DECIMALS: number;
50
+ static DefaultMinimumGasFee: number;
51
+ static InitialValidatorCount: number;
52
+ static FuelTokenSymbol: string;
53
+ static FuelTokenName: string;
54
+ static FuelTokenDecimals: number;
55
+ static NexusMainnet: string;
56
+ static NexusTestnet: string;
57
+ static StakingTokenSymbol: string;
58
+ static StakingTokenName: string;
59
+ static StakingTokenDecimals: number;
60
+ static FiatTokenSymbol: string;
61
+ static FiatTokenName: string;
62
+ static FiatTokenDecimals: number;
63
+ static RewardTokenSymbol: string;
64
+ static RewardTokenName: string;
65
+ static LiquidityTokenSymbol: string;
66
+ static LiquidityTokenName: string;
67
+ static LiquidityTokenDecimals: number;
68
+ static FuelPerContractDeployTag: string;
69
+ static FuelPerTokenDeployTag: string;
70
+ static FuelPerOrganizationDeployTag: string;
71
+ static SystemTokens: string[];
72
+ static RootChainName: string;
73
+ static ValidatorsOrganizationName: string;
74
+ static MastersOrganizationName: string;
75
+ static StakersOrganizationName: string;
76
+ static PhantomForceOrganizationName: string;
77
+ static PlatformName: string;
78
+ static ArchiveMinSize: number;
79
+ static ArchiveMaxSize: number;
80
+ static InfusionName: string;
81
+ static NameMaxLength: number;
82
+ static UrlMaxLength: number;
83
+ static ArgsMax: number;
84
+ static AddressMaxSize: number;
85
+ static ScriptMaxSize: number;
86
+ }
87
+ //# sourceMappingURL=DomainSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DomainSettings.d.ts","sourceRoot":"","sources":["../../src/core/types/DomainSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,oBAAY,aAAa;IACvB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,OAAO,IAAA;CACR;AAED,oBAAY,cAAc;IACxB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;IACN,SAAS,IAAA;IACT,SAAS,IAAA;IACT,SAAS,IAAA;IACT,SAAS,IAAA;IACT,MAAM,IAAA;CACP;AAED,oBAAY,YAAY;IACtB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;IACN,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,OAAO,IAAA;IACP,SAAS,IAAA;IACT,MAAM,IAAA;CACP;AAED,oBAAY,mBAAmB;IAC7B,KAAK,IAAA;IACL,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAED,qBAAa,WAAW;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;gBAEJ,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;CAI7C;AAED,qBAAa,cAAc;IACzB,OAAc,mBAAmB,SAAM;IAEvC,OAAc,mBAAmB,SAAK;IACtC,OAAc,mBAAmB,SAAK;IAEtC,OAAc,aAAa,SAAQ;IAEnC,OAAc,wBAAwB,SAAQ;IAE9C,OAAc,iBAAiB,SAAQ;IAEvC,OAAc,cAAc,SAAQ;IAEpC,OAAc,cAAc,SAAK;IAEjC,OAAc,kBAAkB,SAAM;IAEtC,OAAc,oBAAoB,SAAU;IAC5C,OAAc,qBAAqB,SAAK;IAExC,OAAc,eAAe,SAAU;IACvC,OAAc,aAAa,SAAsB;IACjD,OAAc,iBAAiB,SAAM;IAErC,OAAc,YAAY,SAAa;IACvC,OAAc,YAAY,SAAa;IAEvC,OAAc,kBAAkB,SAAU;IAC1C,OAAc,gBAAgB,SAAqB;IACnD,OAAc,oBAAoB,SAAK;IAEvC,OAAc,eAAe,SAAS;IACtC,OAAc,aAAa,SAAa;IACxC,OAAc,iBAAiB,SAAK;IAEpC,OAAc,iBAAiB,SAAW;IAC1C,OAAc,eAAe,SAAqB;IAElD,OAAc,oBAAoB,SAAQ;IAC1C,OAAc,kBAAkB,SAAyB;IACzD,OAAc,sBAAsB,SAAK;IAEzC,OAAc,wBAAwB,SAAyB;IAC/D,OAAc,qBAAqB,SAAsB;IACzD,OAAc,4BAA4B,SAA6B;IAEvE,OAAc,YAAY,WAMxB;IAEF,OAAc,aAAa,SAAU;IAErC,OAAc,0BAA0B,SAAgB;IACxD,OAAc,uBAAuB,SAAa;IAClD,OAAc,uBAAuB,SAAa;IAElD,OAAc,4BAA4B,SAAmB;IAG7D,OAAc,YAAY,SAAe;IAEzC,OAAc,cAAc,SAAM;IAClC,OAAc,cAAc,SAAa;IAGzC,OAAc,YAAY,SAAc;IAGxC,OAAc,aAAa,SAAO;IAClC,OAAc,YAAY,SAAQ;IAClC,OAAc,OAAO,SAAM;IAC3B,OAAc,cAAc,SAAM;IAClC,OAAc,aAAa,SAAS;CACrC"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DomainSettings = exports.StakeReward = exports.OrganizationTrigger = exports.TokenTrigger = exports.AccountTrigger = exports.TriggerResult = void 0;
4
+ var TriggerResult;
5
+ (function (TriggerResult) {
6
+ TriggerResult[TriggerResult["Failure"] = 0] = "Failure";
7
+ TriggerResult[TriggerResult["Missing"] = 1] = "Missing";
8
+ TriggerResult[TriggerResult["Success"] = 2] = "Success";
9
+ })(TriggerResult = exports.TriggerResult || (exports.TriggerResult = {}));
10
+ var AccountTrigger;
11
+ (function (AccountTrigger) {
12
+ AccountTrigger[AccountTrigger["OnMint"] = 0] = "OnMint";
13
+ AccountTrigger[AccountTrigger["OnBurn"] = 1] = "OnBurn";
14
+ AccountTrigger[AccountTrigger["OnSend"] = 2] = "OnSend";
15
+ AccountTrigger[AccountTrigger["OnReceive"] = 3] = "OnReceive";
16
+ AccountTrigger[AccountTrigger["OnWitness"] = 4] = "OnWitness";
17
+ AccountTrigger[AccountTrigger["OnUpgrade"] = 5] = "OnUpgrade";
18
+ AccountTrigger[AccountTrigger["OnMigrate"] = 6] = "OnMigrate";
19
+ AccountTrigger[AccountTrigger["OnKill"] = 7] = "OnKill";
20
+ })(AccountTrigger = exports.AccountTrigger || (exports.AccountTrigger = {}));
21
+ var TokenTrigger;
22
+ (function (TokenTrigger) {
23
+ TokenTrigger[TokenTrigger["OnMint"] = 0] = "OnMint";
24
+ TokenTrigger[TokenTrigger["OnBurn"] = 1] = "OnBurn";
25
+ TokenTrigger[TokenTrigger["OnSend"] = 2] = "OnSend";
26
+ TokenTrigger[TokenTrigger["OnReceive"] = 3] = "OnReceive";
27
+ TokenTrigger[TokenTrigger["OnInfuse"] = 4] = "OnInfuse";
28
+ TokenTrigger[TokenTrigger["OnUpgrade"] = 5] = "OnUpgrade";
29
+ TokenTrigger[TokenTrigger["OnSeries"] = 6] = "OnSeries";
30
+ TokenTrigger[TokenTrigger["OnWrite"] = 7] = "OnWrite";
31
+ TokenTrigger[TokenTrigger["OnMigrate"] = 8] = "OnMigrate";
32
+ TokenTrigger[TokenTrigger["OnKill"] = 9] = "OnKill";
33
+ })(TokenTrigger = exports.TokenTrigger || (exports.TokenTrigger = {}));
34
+ var OrganizationTrigger;
35
+ (function (OrganizationTrigger) {
36
+ OrganizationTrigger[OrganizationTrigger["OnAdd"] = 0] = "OnAdd";
37
+ OrganizationTrigger[OrganizationTrigger["OnRemove"] = 1] = "OnRemove";
38
+ OrganizationTrigger[OrganizationTrigger["OnUpgrade"] = 2] = "OnUpgrade";
39
+ })(OrganizationTrigger = exports.OrganizationTrigger || (exports.OrganizationTrigger = {}));
40
+ var StakeReward = /** @class */ (function () {
41
+ function StakeReward(staker, date) {
42
+ this.staker = staker;
43
+ this.date = date;
44
+ }
45
+ return StakeReward;
46
+ }());
47
+ exports.StakeReward = StakeReward;
48
+ var DomainSettings = /** @class */ (function () {
49
+ function DomainSettings() {
50
+ }
51
+ DomainSettings.LatestKnownProtocol = 18;
52
+ DomainSettings.Phantasma20Protocol = 7;
53
+ DomainSettings.Phantasma30Protocol = 8;
54
+ DomainSettings.MaxTxPerBlock = 1024;
55
+ DomainSettings.MaxOracleEntriesPerBlock = 5120;
56
+ DomainSettings.MaxEventsPerBlock = 2048;
57
+ DomainSettings.MaxEventsPerTx = 8096;
58
+ DomainSettings.MaxTriggerLoop = 5;
59
+ DomainSettings.MAX_TOKEN_DECIMALS = 18;
60
+ DomainSettings.DefaultMinimumGasFee = 100000;
61
+ DomainSettings.InitialValidatorCount = 4;
62
+ DomainSettings.FuelTokenSymbol = 'KCAL';
63
+ DomainSettings.FuelTokenName = 'Phantasma Energy';
64
+ DomainSettings.FuelTokenDecimals = 10;
65
+ DomainSettings.NexusMainnet = 'mainnet';
66
+ DomainSettings.NexusTestnet = 'testnet';
67
+ DomainSettings.StakingTokenSymbol = 'SOUL';
68
+ DomainSettings.StakingTokenName = 'Phantasma Stake';
69
+ DomainSettings.StakingTokenDecimals = 8;
70
+ DomainSettings.FiatTokenSymbol = 'USD';
71
+ DomainSettings.FiatTokenName = 'Dollars';
72
+ DomainSettings.FiatTokenDecimals = 8;
73
+ DomainSettings.RewardTokenSymbol = 'CROWN';
74
+ DomainSettings.RewardTokenName = 'Phantasma Crown';
75
+ DomainSettings.LiquidityTokenSymbol = 'LP';
76
+ DomainSettings.LiquidityTokenName = 'Phantasma Liquidity';
77
+ DomainSettings.LiquidityTokenDecimals = 8;
78
+ DomainSettings.FuelPerContractDeployTag = 'nexus.contract.cost';
79
+ DomainSettings.FuelPerTokenDeployTag = 'nexus.token.cost';
80
+ DomainSettings.FuelPerOrganizationDeployTag = 'nexus.organization.cost';
81
+ DomainSettings.SystemTokens = [
82
+ DomainSettings.FuelTokenSymbol,
83
+ DomainSettings.StakingTokenSymbol,
84
+ DomainSettings.FiatTokenSymbol,
85
+ DomainSettings.RewardTokenSymbol,
86
+ DomainSettings.LiquidityTokenSymbol,
87
+ ];
88
+ DomainSettings.RootChainName = 'main';
89
+ DomainSettings.ValidatorsOrganizationName = 'validators';
90
+ DomainSettings.MastersOrganizationName = 'masters';
91
+ DomainSettings.StakersOrganizationName = 'stakers';
92
+ DomainSettings.PhantomForceOrganizationName = 'phantom_force';
93
+ //public static PlatformSupply = UnitConversion.ToBigInteger(100000000, FuelTokenDecimals);
94
+ DomainSettings.PlatformName = 'phantasma';
95
+ DomainSettings.ArchiveMinSize = 64;
96
+ DomainSettings.ArchiveMaxSize = 104857600;
97
+ //public static ArchiveBlockSize = MerkleTree.ChunkSize;
98
+ DomainSettings.InfusionName = 'infusion';
99
+ //public static InfusionAddress = SmartContract.GetAddressFromContractName(InfusionName);
100
+ DomainSettings.NameMaxLength = 255;
101
+ DomainSettings.UrlMaxLength = 2048;
102
+ DomainSettings.ArgsMax = 64;
103
+ DomainSettings.AddressMaxSize = 34;
104
+ DomainSettings.ScriptMaxSize = 32767;
105
+ return DomainSettings;
106
+ }());
107
+ exports.DomainSettings = DomainSettings;
@@ -0,0 +1,16 @@
1
+ import { IKeyPair } from "../interfaces/IKeyPair";
2
+ import { Signature, SignatureKind } from "../interfaces/Signature";
3
+ import { Address } from "./Address";
4
+ import { PBinaryWriter, PBinaryReader } from "./Extensions";
5
+ export declare class Ed25519Signature implements Signature {
6
+ Bytes: Uint8Array;
7
+ Kind: SignatureKind;
8
+ constructor(bytes?: Uint8Array);
9
+ Verify(message: Uint8Array, address: Address): boolean;
10
+ VerifyMultiple(message: Uint8Array, addresses: Address[]): boolean;
11
+ SerializeData(writer: PBinaryWriter): void;
12
+ UnserializeData(reader: PBinaryReader): void;
13
+ ToByteArray(): Uint8Array;
14
+ static Generate(keypair: IKeyPair, message: Uint8Array): Ed25519Signature;
15
+ }
16
+ //# sourceMappingURL=Ed25519Signature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Ed25519Signature.d.ts","sourceRoot":"","sources":["../../src/core/types/Ed25519Signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI5D,qBAAa,gBAAiB,YAAW,SAAS;IACzC,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,aAAa,CAAyB;gBAEvC,KAAK,CAAC,EAAE,UAAU;IAI9B,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAI/C,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO;IAmBlE,aAAa,CAAC,MAAM,EAAE,aAAa;IAKnC,eAAe,CAAC,MAAM,EAAE,aAAa;IAI5C,WAAW,IAAI,UAAU;WAOX,QAAQ,CACpB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,UAAU,GAClB,gBAAgB;CAYpB"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Ed25519Signature = void 0;
18
+ var Signature_1 = require("../interfaces/Signature");
19
+ var elliptic_1 = __importDefault(require("elliptic"));
20
+ var utils_1 = require("../utils");
21
+ var Extensions_1 = require("./Extensions");
22
+ var eddsa = elliptic_1.default.eddsa;
23
+ var ed25519 = new eddsa("ed25519");
24
+ var Ed25519Signature = /** @class */ (function () {
25
+ function Ed25519Signature(bytes) {
26
+ this.Kind = Signature_1.SignatureKind.Ed25519;
27
+ this.Bytes = bytes;
28
+ }
29
+ Ed25519Signature.prototype.Verify = function (message, address) {
30
+ return this.VerifyMultiple(message, [address]);
31
+ };
32
+ Ed25519Signature.prototype.VerifyMultiple = function (message, addresses) {
33
+ var e_1, _a;
34
+ try {
35
+ for (var addresses_1 = __values(addresses), addresses_1_1 = addresses_1.next(); !addresses_1_1.done; addresses_1_1 = addresses_1.next()) {
36
+ var address = addresses_1_1.value;
37
+ if (!address.IsUser) {
38
+ continue;
39
+ }
40
+ var pubKey = address.ToByteArray().slice(2);
41
+ if (ed25519.verify((0, utils_1.uint8ArrayToString)(this.Bytes), (0, utils_1.uint8ArrayToString)(message), (0, utils_1.uint8ArrayToString)(pubKey))) {
42
+ return true;
43
+ }
44
+ }
45
+ }
46
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
47
+ finally {
48
+ try {
49
+ if (addresses_1_1 && !addresses_1_1.done && (_a = addresses_1.return)) _a.call(addresses_1);
50
+ }
51
+ finally { if (e_1) throw e_1.error; }
52
+ }
53
+ return false;
54
+ };
55
+ Ed25519Signature.prototype.SerializeData = function (writer) {
56
+ //writer.writeString(uint8ArrayToString(this.Bytes));
57
+ writer.writeByteArray(this.Bytes);
58
+ };
59
+ Ed25519Signature.prototype.UnserializeData = function (reader) {
60
+ this.Bytes = (0, utils_1.stringToUint8Array)(reader.readString());
61
+ };
62
+ Ed25519Signature.prototype.ToByteArray = function () {
63
+ var stream = new Uint8Array(64);
64
+ var writer = new Extensions_1.PBinaryWriter(stream);
65
+ this.SerializeData(writer);
66
+ return new Uint8Array(stream);
67
+ };
68
+ Ed25519Signature.Generate = function (keypair, message) {
69
+ var msgHashHex = Buffer.from((0, utils_1.uint8ArrayToHex)(message), "hex");
70
+ //const msgHashHex = uint8ArrayToString(message);
71
+ var privateKeyBuffer = Buffer.from((0, utils_1.uint8ArrayToHex)(keypair.PrivateKey), "hex");
72
+ //const privateKeyBuffer = uint8ArrayToString(keypair.PrivateKey);
73
+ var sign = ed25519.sign(msgHashHex, privateKeyBuffer);
74
+ return new Ed25519Signature(sign.toBytes());
75
+ };
76
+ return Ed25519Signature;
77
+ }());
78
+ exports.Ed25519Signature = Ed25519Signature;
@@ -0,0 +1,5 @@
1
+ /// <reference types="node" />
2
+ export declare class Entropy {
3
+ static GetRandomBytes(targetLength: number): Buffer;
4
+ }
5
+ //# sourceMappingURL=Entropy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Entropy.d.ts","sourceRoot":"","sources":["../../src/core/types/Entropy.ts"],"names":[],"mappings":";AACA,qBAAa,OAAO;WAEJ,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;CAY3D"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Entropy = void 0;
7
+ var crypto_1 = __importDefault(require("crypto"));
8
+ var Entropy = /** @class */ (function () {
9
+ function Entropy() {
10
+ }
11
+ //private static rnd = crypto.randomBytes(24);
12
+ Entropy.GetRandomBytes = function (targetLength) {
13
+ var rnd = new Uint8Array(targetLength);
14
+ var privateKey = Buffer.alloc(rnd.byteLength);
15
+ crypto_1.default.getRandomValues(rnd);
16
+ for (var i = 0; i < 32; ++i) {
17
+ privateKey.writeUInt8(rnd[i], i);
18
+ }
19
+ //let pk = this.ToBuffer(rnd);
20
+ return privateKey;
21
+ };
22
+ return Entropy;
23
+ }());
24
+ exports.Entropy = Entropy;
@@ -0,0 +1,7 @@
1
+ export declare class Base16 {
2
+ static encode(str: string): string;
3
+ static encodeUint8Array(arr: Uint8Array): string;
4
+ static decode(str: string): string;
5
+ static decodeUint8Array(str: string): Uint8Array;
6
+ }
7
+ //# sourceMappingURL=Base16.d.ts.map