@pezkuwi/api-contract 16.5.6 → 16.5.8

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 (384) hide show
  1. package/build/Abi/index.d.ts +31 -0
  2. package/build/Abi/index.js +359 -0
  3. package/build/Abi/toLatestCompatible.d.ts +15 -0
  4. package/build/Abi/toLatestCompatible.js +30 -0
  5. package/build/Abi/toV1.d.ts +3 -0
  6. package/build/Abi/toV1.js +21 -0
  7. package/build/Abi/toV2.d.ts +3 -0
  8. package/build/Abi/toV2.js +27 -0
  9. package/build/Abi/toV3.d.ts +3 -0
  10. package/build/Abi/toV3.js +10 -0
  11. package/build/Abi/toV4.d.ts +3 -0
  12. package/build/Abi/toV4.js +10 -0
  13. package/build/LICENSE +201 -0
  14. package/build/README.md +3 -0
  15. package/build/augment.d.ts +1 -0
  16. package/build/augment.js +1 -0
  17. package/build/base/Base.d.ts +13 -0
  18. package/build/base/Base.js +40 -0
  19. package/build/base/Blueprint.d.ts +24 -0
  20. package/build/base/Blueprint.js +51 -0
  21. package/build/base/Code.d.ts +22 -0
  22. package/build/base/Code.js +74 -0
  23. package/build/base/Contract.d.ts +25 -0
  24. package/build/base/Contract.js +127 -0
  25. package/build/base/index.d.ts +3 -0
  26. package/build/base/index.js +3 -0
  27. package/build/base/mock.d.ts +3 -0
  28. package/build/base/mock.js +38 -0
  29. package/build/base/types.d.ts +25 -0
  30. package/build/base/types.js +1 -0
  31. package/build/base/util.d.ts +16 -0
  32. package/build/base/util.js +33 -0
  33. package/build/bundle-pezkuwi-api-contract.js +1238 -0
  34. package/build/bundle.d.ts +4 -0
  35. package/build/bundle.js +4 -0
  36. package/build/cjs/Abi/index.d.ts +31 -0
  37. package/build/cjs/Abi/index.js +363 -0
  38. package/build/cjs/Abi/toLatestCompatible.d.ts +15 -0
  39. package/build/cjs/Abi/toLatestCompatible.js +36 -0
  40. package/build/cjs/Abi/toV1.d.ts +3 -0
  41. package/build/cjs/Abi/toV1.js +24 -0
  42. package/build/cjs/Abi/toV2.d.ts +3 -0
  43. package/build/cjs/Abi/toV2.js +30 -0
  44. package/build/cjs/Abi/toV3.d.ts +3 -0
  45. package/build/cjs/Abi/toV3.js +13 -0
  46. package/build/cjs/Abi/toV4.d.ts +3 -0
  47. package/build/cjs/Abi/toV4.js +13 -0
  48. package/build/cjs/augment.d.ts +1 -0
  49. package/build/cjs/augment.js +3 -0
  50. package/build/cjs/base/Base.d.ts +13 -0
  51. package/build/cjs/base/Base.js +44 -0
  52. package/build/cjs/base/Blueprint.d.ts +24 -0
  53. package/build/cjs/base/Blueprint.js +57 -0
  54. package/build/cjs/base/Code.d.ts +22 -0
  55. package/build/cjs/base/Code.js +80 -0
  56. package/build/cjs/base/Contract.d.ts +25 -0
  57. package/build/cjs/base/Contract.js +133 -0
  58. package/build/cjs/base/index.d.ts +3 -0
  59. package/build/cjs/base/index.js +14 -0
  60. package/build/cjs/base/mock.d.ts +3 -0
  61. package/build/cjs/base/mock.js +41 -0
  62. package/build/cjs/base/types.d.ts +25 -0
  63. package/build/cjs/base/types.js +2 -0
  64. package/build/cjs/base/util.d.ts +16 -0
  65. package/build/cjs/base/util.js +42 -0
  66. package/build/cjs/bundle.d.ts +4 -0
  67. package/build/cjs/bundle.js +10 -0
  68. package/build/cjs/index.d.ts +2 -0
  69. package/build/cjs/index.js +5 -0
  70. package/build/cjs/package.json +3 -0
  71. package/build/cjs/packageDetect.d.ts +1 -0
  72. package/build/cjs/packageDetect.js +7 -0
  73. package/build/cjs/packageInfo.d.ts +6 -0
  74. package/build/cjs/packageInfo.js +4 -0
  75. package/build/cjs/promise/index.d.ts +13 -0
  76. package/build/cjs/promise/index.js +23 -0
  77. package/build/cjs/promise/types.d.ts +3 -0
  78. package/build/cjs/promise/types.js +2 -0
  79. package/build/cjs/rx/index.d.ts +13 -0
  80. package/build/cjs/rx/index.js +23 -0
  81. package/build/cjs/rx/types.d.ts +3 -0
  82. package/build/cjs/rx/types.js +2 -0
  83. package/build/cjs/types.d.ts +79 -0
  84. package/build/cjs/types.js +2 -0
  85. package/build/cjs/util.d.ts +5 -0
  86. package/build/cjs/util.js +13 -0
  87. package/build/index.d.ts +2 -0
  88. package/build/index.js +2 -0
  89. package/build/package.json +408 -0
  90. package/build/packageDetect.d.ts +1 -0
  91. package/build/packageDetect.js +5 -0
  92. package/build/packageInfo.d.ts +6 -0
  93. package/build/packageInfo.js +1 -0
  94. package/build/promise/index.d.ts +13 -0
  95. package/build/promise/index.js +17 -0
  96. package/build/promise/types.d.ts +3 -0
  97. package/build/promise/types.js +1 -0
  98. package/build/rx/index.d.ts +13 -0
  99. package/build/rx/index.js +17 -0
  100. package/build/rx/types.d.ts +3 -0
  101. package/build/rx/types.js +1 -0
  102. package/build/types.d.ts +79 -0
  103. package/build/types.js +1 -0
  104. package/build/util.d.ts +5 -0
  105. package/build/util.js +10 -0
  106. package/build-deno/Abi/index.ts +475 -0
  107. package/build-deno/Abi/toLatestCompatible.ts +47 -0
  108. package/build-deno/Abi/toV1.ts +33 -0
  109. package/build-deno/Abi/toV2.ts +56 -0
  110. package/build-deno/Abi/toV3.ts +16 -0
  111. package/build-deno/Abi/toV4.ts +19 -0
  112. package/build-deno/README.md +3 -0
  113. package/build-deno/augment.ts +2 -0
  114. package/build-deno/base/Base.ts +50 -0
  115. package/build-deno/base/Blueprint.ts +88 -0
  116. package/build-deno/base/Code.ts +140 -0
  117. package/build-deno/base/Contract.ts +194 -0
  118. package/build-deno/base/index.ts +4 -0
  119. package/build-deno/base/mock.ts +46 -0
  120. package/build-deno/base/types.ts +38 -0
  121. package/build-deno/base/util.ts +54 -0
  122. package/build-deno/bundle.ts +6 -0
  123. package/build-deno/checkTypes.manual.ts +42 -0
  124. package/build-deno/index.ts +4 -0
  125. package/build-deno/mod.ts +2 -0
  126. package/build-deno/packageDetect.ts +9 -0
  127. package/build-deno/packageInfo.ts +3 -0
  128. package/build-deno/promise/index.ts +28 -0
  129. package/build-deno/promise/types.ts +5 -0
  130. package/build-deno/rx/index.ts +28 -0
  131. package/build-deno/rx/types.ts +5 -0
  132. package/build-deno/test/contracts/index.ts +18 -0
  133. package/build-deno/test/contracts/ink/index.ts +11 -0
  134. package/build-deno/test/contracts/ink/v0/accumulator.wasm +0 -0
  135. package/build-deno/test/contracts/ink/v0/adder.wasm +0 -0
  136. package/build-deno/test/contracts/ink/v0/delegator.wasm +0 -0
  137. package/build-deno/test/contracts/ink/v0/dns.wasm +0 -0
  138. package/build-deno/test/contracts/ink/v0/erc20.wasm +0 -0
  139. package/build-deno/test/contracts/ink/v0/erc721.wasm +0 -0
  140. package/build-deno/test/contracts/ink/v0/flipper.wasm +0 -0
  141. package/build-deno/test/contracts/ink/v0/incrementer.wasm +0 -0
  142. package/build-deno/test/contracts/ink/v0/index.ts +9 -0
  143. package/build-deno/test/contracts/ink/v0/multisig_plain.wasm +0 -0
  144. package/build-deno/test/contracts/ink/v0/subber.wasm +0 -0
  145. package/build-deno/test/contracts/ink/v0/trait-flipper.wasm +0 -0
  146. package/build-deno/test/contracts/ink/v1/index.ts +3 -0
  147. package/build-deno/test/contracts/ink/v2/index.ts +3 -0
  148. package/build-deno/test/contracts/ink/v3/index.ts +3 -0
  149. package/build-deno/test/contracts/ink/v4/erc20.wasm +0 -0
  150. package/build-deno/test/contracts/ink/v4/flipper.wasm +0 -0
  151. package/build-deno/test/contracts/ink/v4/index.ts +5 -0
  152. package/build-deno/test/contracts/ink/v5/erc20.wasm +0 -0
  153. package/build-deno/test/contracts/ink/v5/flipper.wasm +0 -0
  154. package/build-deno/test/contracts/ink/v5/index.ts +6 -0
  155. package/build-deno/test/contracts/ink/v6/erc20.polkavm +0 -0
  156. package/build-deno/test/contracts/ink/v6/index.ts +3 -0
  157. package/build-deno/test/contracts/solang/index.ts +5 -0
  158. package/build-deno/test/contracts/solang/v0/index.ts +2 -0
  159. package/build-deno/test/contracts/solang/v0/ints256.sol +13 -0
  160. package/build-deno/test/contracts/solang/v0/ints256.wasm +0 -0
  161. package/build-deno/test/contracts/user/index.ts +7 -0
  162. package/build-deno/test/contracts/user/v0/assetTransfer.wasm +0 -0
  163. package/build-deno/test/contracts/user/v0/enumExample.wasm +0 -0
  164. package/build-deno/test/contracts/user/v0/index.ts +5 -0
  165. package/build-deno/test/contracts/user/v3/index.ts +2 -0
  166. package/build-deno/test/contracts/user/v4/index.ts +2 -0
  167. package/build-deno/test/contracts/util.ts +12 -0
  168. package/build-deno/types.ts +95 -0
  169. package/build-deno/util.ts +18 -0
  170. package/build-tsc/Abi/index.d.ts +31 -0
  171. package/build-tsc/Abi/toLatestCompatible.d.ts +15 -0
  172. package/build-tsc/Abi/toV1.d.ts +3 -0
  173. package/build-tsc/Abi/toV2.d.ts +3 -0
  174. package/build-tsc/Abi/toV3.d.ts +3 -0
  175. package/build-tsc/Abi/toV4.d.ts +3 -0
  176. package/build-tsc/augment.d.ts +1 -0
  177. package/build-tsc/base/Base.d.ts +13 -0
  178. package/build-tsc/base/Blueprint.d.ts +24 -0
  179. package/build-tsc/base/Code.d.ts +22 -0
  180. package/build-tsc/base/Contract.d.ts +25 -0
  181. package/build-tsc/base/index.d.ts +3 -0
  182. package/build-tsc/base/mock.d.ts +3 -0
  183. package/build-tsc/base/types.d.ts +25 -0
  184. package/build-tsc/base/util.d.ts +16 -0
  185. package/build-tsc/bundle.d.ts +4 -0
  186. package/build-tsc/index.d.ts +2 -0
  187. package/build-tsc/packageDetect.d.ts +1 -0
  188. package/build-tsc/packageInfo.d.ts +6 -0
  189. package/build-tsc/promise/index.d.ts +13 -0
  190. package/build-tsc/promise/types.d.ts +3 -0
  191. package/build-tsc/rx/index.d.ts +13 -0
  192. package/build-tsc/rx/types.d.ts +3 -0
  193. package/build-tsc/types.d.ts +79 -0
  194. package/build-tsc/util.d.ts +5 -0
  195. package/build-tsc-cjs/Abi/index.js +363 -0
  196. package/build-tsc-cjs/Abi/toLatestCompatible.js +36 -0
  197. package/build-tsc-cjs/Abi/toV1.js +24 -0
  198. package/build-tsc-cjs/Abi/toV2.js +30 -0
  199. package/build-tsc-cjs/Abi/toV3.js +13 -0
  200. package/build-tsc-cjs/Abi/toV4.js +13 -0
  201. package/build-tsc-cjs/augment.js +3 -0
  202. package/build-tsc-cjs/base/Base.js +44 -0
  203. package/build-tsc-cjs/base/Blueprint.js +57 -0
  204. package/build-tsc-cjs/base/Code.js +80 -0
  205. package/build-tsc-cjs/base/Contract.js +133 -0
  206. package/build-tsc-cjs/base/index.js +14 -0
  207. package/build-tsc-cjs/base/mock.js +41 -0
  208. package/build-tsc-cjs/base/types.js +2 -0
  209. package/build-tsc-cjs/base/util.js +42 -0
  210. package/build-tsc-cjs/bundle.js +10 -0
  211. package/build-tsc-cjs/index.js +5 -0
  212. package/build-tsc-cjs/packageDetect.js +7 -0
  213. package/build-tsc-cjs/packageInfo.js +4 -0
  214. package/build-tsc-cjs/promise/index.js +23 -0
  215. package/build-tsc-cjs/promise/types.js +2 -0
  216. package/build-tsc-cjs/rx/index.js +23 -0
  217. package/build-tsc-cjs/rx/types.js +2 -0
  218. package/build-tsc-cjs/types.js +2 -0
  219. package/build-tsc-cjs/util.js +13 -0
  220. package/build-tsc-esm/Abi/index.js +359 -0
  221. package/build-tsc-esm/Abi/toLatestCompatible.js +30 -0
  222. package/build-tsc-esm/Abi/toV1.js +21 -0
  223. package/build-tsc-esm/Abi/toV2.js +27 -0
  224. package/build-tsc-esm/Abi/toV3.js +10 -0
  225. package/build-tsc-esm/Abi/toV4.js +10 -0
  226. package/build-tsc-esm/augment.js +1 -0
  227. package/build-tsc-esm/base/Base.js +40 -0
  228. package/build-tsc-esm/base/Blueprint.js +51 -0
  229. package/build-tsc-esm/base/Code.js +74 -0
  230. package/build-tsc-esm/base/Contract.js +127 -0
  231. package/build-tsc-esm/base/index.js +3 -0
  232. package/build-tsc-esm/base/mock.js +38 -0
  233. package/build-tsc-esm/base/types.js +1 -0
  234. package/build-tsc-esm/base/util.js +33 -0
  235. package/build-tsc-esm/bundle.js +4 -0
  236. package/build-tsc-esm/index.js +2 -0
  237. package/build-tsc-esm/packageDetect.js +5 -0
  238. package/build-tsc-esm/packageInfo.js +1 -0
  239. package/build-tsc-esm/promise/index.js +17 -0
  240. package/build-tsc-esm/promise/types.js +1 -0
  241. package/build-tsc-esm/rx/index.js +17 -0
  242. package/build-tsc-esm/rx/types.js +1 -0
  243. package/build-tsc-esm/types.js +1 -0
  244. package/build-tsc-esm/util.js +10 -0
  245. package/bundle-pezkuwi-api-contract.js +1 -1
  246. package/cjs/packageInfo.js +1 -1
  247. package/package.json +6 -6
  248. package/packageInfo.js +1 -1
  249. package/src/Abi/Abi.spec.ts +235 -0
  250. package/src/Abi/index.ts +477 -0
  251. package/src/Abi/toLatestCompatible.spec.ts +219 -0
  252. package/src/Abi/toLatestCompatible.ts +52 -0
  253. package/src/Abi/toV1.ts +35 -0
  254. package/src/Abi/toV2.ts +58 -0
  255. package/src/Abi/toV3.ts +18 -0
  256. package/src/Abi/toV4.ts +21 -0
  257. package/src/augment.ts +4 -0
  258. package/src/base/Base.ts +52 -0
  259. package/src/base/Blueprint.ts +90 -0
  260. package/src/base/Code.spec.ts +47 -0
  261. package/src/base/Code.ts +142 -0
  262. package/src/base/Contract.ts +197 -0
  263. package/src/base/index.ts +6 -0
  264. package/src/base/mock.ts +48 -0
  265. package/src/base/types.ts +40 -0
  266. package/src/base/util.ts +56 -0
  267. package/src/bundle.ts +10 -0
  268. package/src/checkTypes.manual.ts +45 -0
  269. package/src/index.ts +6 -0
  270. package/src/mod.ts +4 -0
  271. package/src/packageDetect.ts +13 -0
  272. package/src/packageInfo.ts +6 -0
  273. package/src/promise/index.ts +28 -0
  274. package/src/promise/types.ts +7 -0
  275. package/src/rx/index.ts +28 -0
  276. package/src/rx/types.ts +7 -0
  277. package/src/test/compare/ink_v0_delegator.test.json +47 -0
  278. package/src/test/compare/ink_v0_dns.test.json +232 -0
  279. package/src/test/compare/ink_v0_erc20.test.json +253 -0
  280. package/src/test/compare/ink_v0_erc721.test.json +415 -0
  281. package/src/test/compare/ink_v0_flipper.test.json +9 -0
  282. package/src/test/compare/ink_v0_flipperBundle.test.json +9 -0
  283. package/src/test/compare/ink_v0_incrementer.test.json +9 -0
  284. package/src/test/compare/ink_v0_multisigPlain.test.json +562 -0
  285. package/src/test/compare/ink_v1_flipper.test.json +9 -0
  286. package/src/test/compare/ink_v1_psp22.test.json +531 -0
  287. package/src/test/compare/ink_v2_erc20.test.json +205 -0
  288. package/src/test/compare/ink_v2_flipper.test.json +9 -0
  289. package/src/test/compare/ink_v3_flipper.test.json +9 -0
  290. package/src/test/compare/ink_v3_traitErc20.test.json +205 -0
  291. package/src/test/compare/ink_v4_erc20Contract.test.json +253 -0
  292. package/src/test/compare/ink_v4_erc20Metadata.test.json +253 -0
  293. package/src/test/compare/ink_v4_flipperContract.test.json +155 -0
  294. package/src/test/compare/ink_v4_flipperMetadata.test.json +155 -0
  295. package/src/test/compare/ink_v5_erc20.test.json +370 -0
  296. package/src/test/compare/ink_v5_erc20AnonymousTransferMetadata.test.json +370 -0
  297. package/src/test/compare/ink_v5_erc20Contract.test.json +370 -0
  298. package/src/test/compare/ink_v5_erc20Metadata.test.json +370 -0
  299. package/src/test/compare/ink_v5_flipperContract.test.json +174 -0
  300. package/src/test/compare/ink_v5_flipperMetadata.test.json +174 -0
  301. package/src/test/compare/ink_v6_erc20Contract.test.json +418 -0
  302. package/src/test/compare/ink_v6_erc20Metadata.test.json +418 -0
  303. package/src/test/compare/solang_v0_ints256.test.json +9 -0
  304. package/src/test/compare/user_v0_assetTransfer.test.json +54 -0
  305. package/src/test/compare/user_v0_enumExample.test.json +303 -0
  306. package/src/test/compare/user_v0_recursive.test.json +27 -0
  307. package/src/test/compare/user_v0_withString.test.json +260 -0
  308. package/src/test/compare/user_v3_ask.test.json +71 -0
  309. package/src/test/compare/user_v4_events.test.json +1328 -0
  310. package/src/test/contracts/index.ts +20 -0
  311. package/src/test/contracts/ink/index.ts +13 -0
  312. package/src/test/contracts/ink/v0/accumulator.wasm +0 -0
  313. package/src/test/contracts/ink/v0/adder.wasm +0 -0
  314. package/src/test/contracts/ink/v0/delegator.json +252 -0
  315. package/src/test/contracts/ink/v0/delegator.wasm +0 -0
  316. package/src/test/contracts/ink/v0/dns.json +713 -0
  317. package/src/test/contracts/ink/v0/dns.wasm +0 -0
  318. package/src/test/contracts/ink/v0/erc20.json +704 -0
  319. package/src/test/contracts/ink/v0/erc20.wasm +0 -0
  320. package/src/test/contracts/ink/v0/erc721.json +1197 -0
  321. package/src/test/contracts/ink/v0/erc721.wasm +0 -0
  322. package/src/test/contracts/ink/v0/flipper.contract.json +107 -0
  323. package/src/test/contracts/ink/v0/flipper.json +106 -0
  324. package/src/test/contracts/ink/v0/flipper.wasm +0 -0
  325. package/src/test/contracts/ink/v0/incrementer.json +108 -0
  326. package/src/test/contracts/ink/v0/incrementer.wasm +0 -0
  327. package/src/test/contracts/ink/v0/index.ts +11 -0
  328. package/src/test/contracts/ink/v0/multisig_plain.json +1466 -0
  329. package/src/test/contracts/ink/v0/multisig_plain.wasm +0 -0
  330. package/src/test/contracts/ink/v0/subber.wasm +0 -0
  331. package/src/test/contracts/ink/v0/trait-flipper.json +103 -0
  332. package/src/test/contracts/ink/v0/trait-flipper.wasm +0 -0
  333. package/src/test/contracts/ink/v1/flipper.contract.json +111 -0
  334. package/src/test/contracts/ink/v1/index.ts +6 -0
  335. package/src/test/contracts/ink/v1/psp22_minter_pauser.contract.json +1722 -0
  336. package/src/test/contracts/ink/v2/erc20.contract.json +630 -0
  337. package/src/test/contracts/ink/v2/flipper.contract.json +103 -0
  338. package/src/test/contracts/ink/v2/index.ts +5 -0
  339. package/src/test/contracts/ink/v3/flipper.contract.json +105 -0
  340. package/src/test/contracts/ink/v3/index.ts +6 -0
  341. package/src/test/contracts/ink/v3/trait_erc20.contract.json +631 -0
  342. package/src/test/contracts/ink/v4/erc20.contract.json +1 -0
  343. package/src/test/contracts/ink/v4/erc20.json +821 -0
  344. package/src/test/contracts/ink/v4/erc20.wasm +0 -0
  345. package/src/test/contracts/ink/v4/flipper.contract.json +1 -0
  346. package/src/test/contracts/ink/v4/flipper.json +396 -0
  347. package/src/test/contracts/ink/v4/flipper.wasm +0 -0
  348. package/src/test/contracts/ink/v4/index.ts +7 -0
  349. package/src/test/contracts/ink/v5/erc20.contract.json +1 -0
  350. package/src/test/contracts/ink/v5/erc20.json +1025 -0
  351. package/src/test/contracts/ink/v5/erc20.wasm +0 -0
  352. package/src/test/contracts/ink/v5/erc20_anonymous_transfer.json +1025 -0
  353. package/src/test/contracts/ink/v5/flipper.contract.json +1 -0
  354. package/src/test/contracts/ink/v5/flipper.json +420 -0
  355. package/src/test/contracts/ink/v5/flipper.wasm +0 -0
  356. package/src/test/contracts/ink/v5/index.ts +8 -0
  357. package/src/test/contracts/ink/v6/erc20.contract.json +1 -0
  358. package/src/test/contracts/ink/v6/erc20.json +1081 -0
  359. package/src/test/contracts/ink/v6/erc20.polkavm +0 -0
  360. package/src/test/contracts/ink/v6/index.ts +5 -0
  361. package/src/test/contracts/solang/index.ts +7 -0
  362. package/src/test/contracts/solang/v0/index.ts +4 -0
  363. package/src/test/contracts/solang/v0/ints256.json +113 -0
  364. package/src/test/contracts/solang/v0/ints256.sol +13 -0
  365. package/src/test/contracts/solang/v0/ints256.wasm +0 -0
  366. package/src/test/contracts/user/index.ts +9 -0
  367. package/src/test/contracts/user/v0/assetTransfer.json +299 -0
  368. package/src/test/contracts/user/v0/assetTransfer.wasm +0 -0
  369. package/src/test/contracts/user/v0/enumExample.json +528 -0
  370. package/src/test/contracts/user/v0/enumExample.wasm +0 -0
  371. package/src/test/contracts/user/v0/index.ts +7 -0
  372. package/src/test/contracts/user/v0/recursive.contract.json +1 -0
  373. package/src/test/contracts/user/v0/withString.json +777 -0
  374. package/src/test/contracts/user/v3/ask.json +550 -0
  375. package/src/test/contracts/user/v3/index.ts +4 -0
  376. package/src/test/contracts/user/v4/events.contract.json +2990 -0
  377. package/src/test/contracts/user/v4/index.ts +4 -0
  378. package/src/test/contracts/util.ts +14 -0
  379. package/src/types.ts +98 -0
  380. package/src/util.ts +20 -0
  381. package/tsconfig.build.json +22 -0
  382. package/tsconfig.build.tsbuildinfo +1 -0
  383. package/tsconfig.spec.json +26 -0
  384. package/tsconfig.spec.tsbuildinfo +1 -0
@@ -0,0 +1,54 @@
1
+
2
+ import type { SubmittableResult } from 'https://deno.land/x/pezkuwi/api/mod.ts';
3
+ import type { SubmittableExtrinsic } from 'https://deno.land/x/pezkuwi/api/submittable/types.ts';
4
+ import type { ApiTypes } from 'https://deno.land/x/pezkuwi/api/types/index.ts';
5
+ import type { WeightV1, WeightV2 } from 'https://deno.land/x/pezkuwi/types/interfaces/index.ts';
6
+ import type { BN } from 'https://deno.land/x/pezkuwi/util/mod.ts';
7
+ import type { AbiConstructor, AbiMessage, BlueprintOptions, WeightAll } from '../types.ts';
8
+ import type { BlueprintDeploy, ContractGeneric } from './types.ts';
9
+
10
+ import { Bytes } from 'https://deno.land/x/pezkuwi/types/mod.ts';
11
+ import { bnToBn, compactAddLength, u8aToU8a } from 'https://deno.land/x/pezkuwi/util/mod.ts';
12
+ import { randomAsU8a } from 'https://deno.land/x/pezkuwi/util-crypto/mod.ts';
13
+
14
+ export const EMPTY_SALT = new Uint8Array();
15
+
16
+ export function withMeta <T extends { meta: AbiMessage }> (meta: AbiMessage, creator: Omit<T, 'meta'>): T {
17
+ (creator as T).meta = meta;
18
+
19
+ return creator as T;
20
+ }
21
+
22
+ export function createBluePrintTx <ApiType extends ApiTypes, R extends SubmittableResult> (meta: AbiMessage, fn: (options: BlueprintOptions, params: unknown[]) => SubmittableExtrinsic<ApiType, R>): BlueprintDeploy<ApiType> {
23
+ return withMeta(meta, (options: BlueprintOptions, ...params: unknown[]): SubmittableExtrinsic<ApiType, R> =>
24
+ fn(options, params)
25
+ );
26
+ }
27
+
28
+ export function createBluePrintWithId <T> (fn: (constructorOrId: AbiConstructor | string | number, options: BlueprintOptions, params: unknown[]) => T): ContractGeneric<BlueprintOptions, T> {
29
+ return (constructorOrId: AbiConstructor | string | number, options: BlueprintOptions, ...params: unknown[]): T =>
30
+ fn(constructorOrId, options, params);
31
+ }
32
+
33
+ export function encodeSalt (salt: Uint8Array | string | null = randomAsU8a()): Uint8Array {
34
+ return salt instanceof Bytes
35
+ ? salt
36
+ : salt?.length
37
+ ? compactAddLength(u8aToU8a(salt))
38
+ : EMPTY_SALT;
39
+ }
40
+
41
+ export function convertWeight (weight: WeightV1 | WeightV2 | bigint | string | number | BN): WeightAll {
42
+ const [refTime, proofSize] = isWeightV2(weight)
43
+ ? [weight.refTime.toBn(), weight.proofSize.toBn()]
44
+ : [bnToBn(weight), undefined];
45
+
46
+ return {
47
+ v1Weight: refTime,
48
+ v2Weight: { proofSize, refTime }
49
+ };
50
+ }
51
+
52
+ export function isWeightV2 (weight: WeightV1 | WeightV2 | bigint | string | number | BN): weight is WeightV2 {
53
+ return !!(weight as WeightV2).proofSize;
54
+ }
@@ -0,0 +1,6 @@
1
+
2
+ export { Abi } from './Abi/index.ts';
3
+ export { packageInfo } from './packageInfo.ts';
4
+
5
+ export * from './promise/index.ts';
6
+ export * from './rx/index.ts';
@@ -0,0 +1,42 @@
1
+
2
+
3
+ import 'https://deno.land/x/pezkuwi/api-augment/mod.ts';
4
+
5
+ import type { TestKeyringMapBizinikiwi } from 'https://deno.land/x/pezkuwi/keyring/testingPairs.ts';
6
+
7
+ import { ApiPromise } from 'https://deno.land/x/pezkuwi/api/mod.ts';
8
+ import { BlueprintPromise, ContractPromise } from 'https://deno.land/x/pezkuwi/api-contract/mod.ts';
9
+ import { createTestPairs } from 'https://deno.land/x/pezkuwi/keyring/testingPairs.ts';
10
+
11
+ import abiIncrementer from './test/contracts/ink/v0/incrementer.json' assert { type: 'json' };
12
+
13
+ async function checkBlueprint (api: ApiPromise, pairs: TestKeyringMapBizinikiwi): Promise<void> {
14
+ const blueprint = new BlueprintPromise(api, abiIncrementer as Record<string, unknown>, '0x1234');
15
+
16
+ await blueprint.tx['new']({ gasLimit: 456, salt: '0x1234', value: 123 }, 42).signAndSend(pairs.bob);
17
+ await blueprint.tx['new']({ gasLimit: 456, value: 123 }, 42).signAndSend(pairs.bob);
18
+ }
19
+
20
+ async function checkContract (api: ApiPromise, pairs: TestKeyringMapBizinikiwi): Promise<void> {
21
+ const contract = new ContractPromise(api, abiIncrementer as Record<string, unknown>, '0x1234');
22
+
23
+ // queries
24
+ await contract.query['get'](pairs.alice.address, {});
25
+
26
+ // execute
27
+ await contract.tx['inc']({ gasLimit: 1234 }, 123).signAndSend(pairs.eve);
28
+ }
29
+
30
+ async function main (): Promise<void> {
31
+ const api = await ApiPromise.create({
32
+ hasher: (data: Uint8Array): Uint8Array => data
33
+ });
34
+ const pairs = createTestPairs();
35
+
36
+ await Promise.all([
37
+ checkBlueprint(api, pairs),
38
+ checkContract(api, pairs)
39
+ ]);
40
+ }
41
+
42
+ main().catch(console.error);
@@ -0,0 +1,4 @@
1
+
2
+ import './packageDetect.ts';
3
+
4
+ export * from './bundle.ts';
@@ -0,0 +1,2 @@
1
+
2
+ export * from './index.ts';
@@ -0,0 +1,9 @@
1
+
2
+
3
+ import { packageInfo as apiInfo } from 'https://deno.land/x/pezkuwi/api/packageInfo.ts';
4
+ import { packageInfo as typesInfo } from 'https://deno.land/x/pezkuwi/types/packageInfo.ts';
5
+ import { detectPackage } from 'https://deno.land/x/pezkuwi/util/mod.ts';
6
+
7
+ import { packageInfo } from './packageInfo.ts';
8
+
9
+ detectPackage(packageInfo, null, [apiInfo, typesInfo]);
@@ -0,0 +1,3 @@
1
+
2
+
3
+ export const packageInfo = { name: '@pezkuwi/api-contract', path: new URL(import.meta.url).pathname, type: 'deno', version: '16.5.8' };
@@ -0,0 +1,28 @@
1
+ import { Buffer } from 'node:buffer';
2
+
3
+
4
+ import type { ApiPromise } from 'https://deno.land/x/pezkuwi/api/mod.ts';
5
+ import type { AccountId, AccountId20, Hash } from 'https://deno.land/x/pezkuwi/types/interfaces/index.ts';
6
+ import type { Abi } from '../Abi/index.ts';
7
+
8
+ import { toPromiseMethod } from 'https://deno.land/x/pezkuwi/api/mod.ts';
9
+
10
+ import { Blueprint, Code, Contract } from '../base/index.ts';
11
+
12
+ export class BlueprintPromise extends Blueprint<'promise'> {
13
+ constructor (api: ApiPromise, abi: string | Record<string, unknown> | Abi, codeHash: string | Hash) {
14
+ super(api, abi, codeHash, toPromiseMethod);
15
+ }
16
+ }
17
+
18
+ export class CodePromise extends Code<'promise'> {
19
+ constructor (api: ApiPromise, abi: string | Record<string, unknown> | Abi, wasm: Uint8Array | string | Buffer | null | undefined) {
20
+ super(api, abi, wasm, toPromiseMethod);
21
+ }
22
+ }
23
+
24
+ export class ContractPromise extends Contract<'promise'> {
25
+ constructor (api: ApiPromise, abi: string | Record<string, unknown> | Abi, address: string | AccountId | AccountId20) {
26
+ super(api, abi, address, toPromiseMethod);
27
+ }
28
+ }
@@ -0,0 +1,5 @@
1
+
2
+ import type { BlueprintSubmittableResult as BaseBlueprintSubmittableResult, CodeSubmittableResult as BaseCodeSubmittableResult } from '../base/index.ts';
3
+
4
+ export type BlueprintSubmittableResult = BaseBlueprintSubmittableResult<'promise'>;
5
+ export type CodeSubmittableResult = BaseCodeSubmittableResult<'promise'>;
@@ -0,0 +1,28 @@
1
+ import { Buffer } from 'node:buffer';
2
+
3
+
4
+ import type { ApiRx } from 'https://deno.land/x/pezkuwi/api/mod.ts';
5
+ import type { AccountId, Hash } from 'https://deno.land/x/pezkuwi/types/interfaces/index.ts';
6
+ import type { Abi } from '../Abi/index.ts';
7
+
8
+ import { toRxMethod } from 'https://deno.land/x/pezkuwi/api/mod.ts';
9
+
10
+ import { Blueprint, Code, Contract } from '../base/index.ts';
11
+
12
+ export class BlueprintRx extends Blueprint<'rxjs'> {
13
+ constructor (api: ApiRx, abi: string | Record<string, unknown> | Abi, codeHash: string | Hash) {
14
+ super(api, abi, codeHash, toRxMethod);
15
+ }
16
+ }
17
+
18
+ export class CodeRx extends Code<'rxjs'> {
19
+ constructor (api: ApiRx, abi: string | Record<string, unknown> | Abi, wasm: Uint8Array | string | Buffer | null | undefined) {
20
+ super(api, abi, wasm, toRxMethod);
21
+ }
22
+ }
23
+
24
+ export class ContractRx extends Contract<'rxjs'> {
25
+ constructor (api: ApiRx, abi: string | Record<string, unknown> | Abi, address: string | AccountId) {
26
+ super(api, abi, address, toRxMethod);
27
+ }
28
+ }
@@ -0,0 +1,5 @@
1
+
2
+ import type { BlueprintSubmittableResult as BaseBlueprintSubmittableResult, CodeSubmittableResult as BaseCodeSubmittableResult } from '../base/index.ts';
3
+
4
+ export type BlueprintSubmittableResult = BaseBlueprintSubmittableResult<'promise'>;
5
+ export type CodeSubmittableResult = BaseCodeSubmittableResult<'promise'>;
@@ -0,0 +1,18 @@
1
+
2
+ import ink from './ink/index.ts';
3
+ import solang from './solang/index.ts';
4
+ import user from './user/index.ts';
5
+
6
+ const all: Record<string, Record<string, unknown>> = {};
7
+
8
+ Object
9
+ .entries({ ink, solang, user })
10
+ .forEach(([type, abis]) =>
11
+ Object
12
+ .entries(abis)
13
+ .forEach(([name, abi]): void => {
14
+ all[`${type}_${name}`] = abi;
15
+ })
16
+ );
17
+
18
+ export default all;
@@ -0,0 +1,11 @@
1
+
2
+ import { createVersionedExport } from '../util.ts';
3
+ import * as v0 from './v0/index.ts';
4
+ import * as v1 from './v1/index.ts';
5
+ import * as v2 from './v2/index.ts';
6
+ import * as v3 from './v3/index.ts';
7
+ import * as v4 from './v4/index.ts';
8
+ import * as v5 from './v5/index.ts';
9
+ import * as v6 from './v6/index.ts';
10
+
11
+ export default createVersionedExport({ v0, v1, v2, v3, v4, v5, v6 });
@@ -0,0 +1,9 @@
1
+
2
+ export { default as delegator } from './delegator.json' assert { type: 'json' };
3
+ export { default as dns } from './dns.json' assert { type: 'json' };
4
+ export { default as erc20 } from './erc20.json' assert { type: 'json' };
5
+ export { default as erc721 } from './erc721.json' assert { type: 'json' };
6
+ export { default as flipperBundle } from './flipper.contract.json' assert { type: 'json' };
7
+ export { default as flipper } from './flipper.json' assert { type: 'json' };
8
+ export { default as incrementer } from './incrementer.json' assert { type: 'json' };
9
+ export { default as multisigPlain } from './multisig_plain.json' assert { type: 'json' };
@@ -0,0 +1,3 @@
1
+
2
+ export { default as flipper } from './flipper.contract.json' assert { type: 'json' };
3
+ export { default as psp22 } from './psp22_minter_pauser.contract.json' assert { type: 'json' };
@@ -0,0 +1,3 @@
1
+
2
+ export { default as erc20 } from './erc20.contract.json' assert { type: 'json' };
3
+ export { default as flipper } from './flipper.contract.json' assert { type: 'json' };
@@ -0,0 +1,3 @@
1
+
2
+ export { default as flipper } from './flipper.contract.json' assert { type: 'json' };
3
+ export { default as traitErc20 } from './trait_erc20.contract.json' assert { type: 'json' };
@@ -0,0 +1,5 @@
1
+
2
+ export { default as erc20Contract } from './erc20.contract.json' assert { type: 'json' };
3
+ export { default as erc20Metadata } from './erc20.json' assert { type: 'json' };
4
+ export { default as flipperContract } from './flipper.contract.json' assert { type: 'json' };
5
+ export { default as flipperMetadata } from './flipper.json' assert { type: 'json' };
@@ -0,0 +1,6 @@
1
+
2
+ export { default as erc20Contract } from './erc20.contract.json' assert { type: 'json' };
3
+ export { default as erc20Metadata } from './erc20.json' assert { type: 'json' };
4
+ export { default as erc20AnonymousTransferMetadata } from './erc20_anonymous_transfer.json' assert { type: 'json' };
5
+ export { default as flipperContract } from './flipper.contract.json' assert { type: 'json' };
6
+ export { default as flipperMetadata } from './flipper.json' assert { type: 'json' };
@@ -0,0 +1,3 @@
1
+
2
+ export { default as erc20Contract } from './erc20.contract.json' assert { type: 'json' };
3
+ export { default as erc20Metadata } from './erc20.json' assert { type: 'json' };
@@ -0,0 +1,5 @@
1
+
2
+ import { createVersionedExport } from '../util.ts';
3
+ import * as v0 from './v0/index.ts';
4
+
5
+ export default createVersionedExport({ v0 });
@@ -0,0 +1,2 @@
1
+
2
+ export { default as ints256 } from './ints256.json' assert { type: 'json' };
@@ -0,0 +1,13 @@
1
+ /// @title Test 256 bits types
2
+ /// @author Sean Young <sean@mess.org>
3
+ contract ints256 {
4
+ /// Multiply two 256 bit values
5
+ function multiply(uint256 a, uint256 b) public pure returns (uint256) {
6
+ return a * b;
7
+ }
8
+
9
+ /// Add two 256 bit values
10
+ function add(uint256 a, uint256 b) public pure returns (uint256) {
11
+ return a + b;
12
+ }
13
+ }
@@ -0,0 +1,7 @@
1
+
2
+ import { createVersionedExport } from '../util.ts';
3
+ import * as v0 from './v0/index.ts';
4
+ import * as v3 from './v3/index.ts';
5
+ import * as v4 from './v4/index.ts';
6
+
7
+ export default createVersionedExport({ v0, v3, v4 });
@@ -0,0 +1,5 @@
1
+
2
+ export { default as assetTransfer } from './assetTransfer.json' assert { type: 'json' };
3
+ export { default as enumExample } from './enumExample.json' assert { type: 'json' };
4
+ export { default as recursive } from './recursive.contract.json' assert { type: 'json' };
5
+ export { default as withString } from './withString.json' assert { type: 'json' };
@@ -0,0 +1,2 @@
1
+
2
+ export { default as ask } from './ask.json' assert { type: 'json' };
@@ -0,0 +1,2 @@
1
+
2
+ export { default as events } from './events.contract.json' assert { type: 'json' };
@@ -0,0 +1,12 @@
1
+
2
+ export function createVersionedExport (versioned: Record<string, Record<string, unknown>>): Record<string, Record<string, unknown>> {
3
+ const result: Record<string, Record<string, unknown>> = {};
4
+
5
+ Object.entries(versioned).forEach(([version, contracts]) =>
6
+ Object.entries(contracts).forEach(([name, contract]): void => {
7
+ result[`${version}_${name}`] = contract as Record<string, unknown>;
8
+ })
9
+ );
10
+
11
+ return result;
12
+ }
@@ -0,0 +1,95 @@
1
+
2
+ import type { ApiBase } from 'https://deno.land/x/pezkuwi/api/base/index.ts';
3
+ import type { ApiTypes } from 'https://deno.land/x/pezkuwi/api/types/index.ts';
4
+ import type { Text } from 'https://deno.land/x/pezkuwi/types/mod.ts';
5
+ import type { ContractExecResultResult, ContractSelector, StorageDeposit, Weight, WeightV2 } from 'https://deno.land/x/pezkuwi/types/interfaces/index.ts';
6
+ import type { Codec, TypeDef } from 'https://deno.land/x/pezkuwi/types/types/index.ts';
7
+ import type { BN } from 'https://deno.land/x/pezkuwi/util/mod.ts';
8
+ import type { HexString } from 'https://deno.land/x/pezkuwi/util/types.ts';
9
+ import type { Abi } from './index.ts';
10
+
11
+ export interface ContractBase<ApiType extends ApiTypes> {
12
+ readonly abi: Abi;
13
+ readonly api: ApiBase<ApiType>;
14
+
15
+ getMessage: (name: string) => AbiMessage;
16
+ messages: AbiMessage[];
17
+ }
18
+
19
+ export interface AbiParam {
20
+ name: string;
21
+ type: TypeDef;
22
+ }
23
+
24
+ export type AbiMessageParam = AbiParam
25
+
26
+ export interface AbiEventParam extends AbiParam{
27
+ indexed: boolean;
28
+ }
29
+
30
+ export interface AbiEvent {
31
+ args: AbiEventParam[];
32
+ docs: string[];
33
+ fromU8a: (data: Uint8Array) => DecodedEvent;
34
+ identifier: string;
35
+ index: number;
36
+ signatureTopic?: HexString | null;
37
+ }
38
+
39
+ export interface AbiMessage {
40
+ args: AbiMessageParam[];
41
+ docs: string[];
42
+ fromU8a: (data: Uint8Array) => DecodedMessage;
43
+ identifier: string;
44
+ index: number;
45
+ isConstructor?: boolean;
46
+ isDefault?: boolean;
47
+ isMutating?: boolean;
48
+ isPayable?: boolean;
49
+ method: string;
50
+ path: string[];
51
+ returnType?: TypeDef | null;
52
+ selector: ContractSelector;
53
+ toU8a: (params: unknown[]) => Uint8Array;
54
+ }
55
+
56
+ export type AbiConstructor = AbiMessage;
57
+
58
+ export type InterfaceContractCalls = Record<string, Function>;
59
+
60
+ export interface ContractCallOutcome {
61
+ debugMessage: Text;
62
+ gasConsumed: Weight;
63
+ gasRequired: Weight;
64
+ output: Codec | null;
65
+ result: ContractExecResultResult;
66
+ storageDeposit: StorageDeposit;
67
+ }
68
+
69
+ export interface DecodedEvent {
70
+ args: Codec[];
71
+ event: AbiEvent;
72
+ }
73
+
74
+ export interface DecodedMessage {
75
+ args: Codec[];
76
+ message: AbiMessage;
77
+ }
78
+
79
+ export interface ContractOptions {
80
+ gasLimit?: bigint | string | number | BN | WeightV2;
81
+ storageDepositLimit?: bigint | string | number | BN | null;
82
+ value?: bigint | BN | string | number;
83
+ }
84
+
85
+ export interface BlueprintOptions extends ContractOptions {
86
+ salt?: Uint8Array | string | null;
87
+ }
88
+
89
+ export interface WeightAll {
90
+ v1Weight: BN;
91
+ v2Weight: {
92
+ refTime: BN;
93
+ proofSize?: BN | undefined;
94
+ };
95
+ }
@@ -0,0 +1,18 @@
1
+
2
+ import type { SubmittableResult } from 'https://deno.land/x/pezkuwi/api/mod.ts';
3
+ import type { EventRecord } from 'https://deno.land/x/pezkuwi/types/interfaces/index.ts';
4
+
5
+ type ContractEvents = 'CodeStored' | 'ContractEmitted' | 'ContractExecution' | 'Instantiated';
6
+
7
+ export function applyOnEvent <T> (result: SubmittableResult, types: ContractEvents[], fn: (records: EventRecord[]) => T, isRevive: boolean): T | undefined {
8
+ if (result.isInBlock || result.isFinalized) {
9
+ const section = isRevive ? 'revive' : 'contracts';
10
+ const records = result.filterRecords(section, types);
11
+
12
+ if (records.length) {
13
+ return fn(records);
14
+ }
15
+ }
16
+
17
+ return undefined;
18
+ }
@@ -0,0 +1,31 @@
1
+ import type { ChainProperties, ContractMetadataV4, ContractMetadataV5, ContractMetadataV6, ContractProjectInfo, EventRecord } from '@pezkuwi/types/interfaces';
2
+ import type { Codec, Registry, TypeDef } from '@pezkuwi/types/types';
3
+ import type { AbiConstructor, AbiEvent, AbiMessage, DecodedEvent, DecodedMessage } from '../types.js';
4
+ export type ContractMetadataSupported = ContractMetadataV4 | ContractMetadataV5 | ContractMetadataV6;
5
+ export declare class Abi {
6
+ #private;
7
+ readonly events: AbiEvent[];
8
+ readonly constructors: AbiConstructor[];
9
+ readonly info: ContractProjectInfo;
10
+ readonly json: Record<string, unknown>;
11
+ readonly messages: AbiMessage[];
12
+ readonly metadata: ContractMetadataSupported;
13
+ readonly registry: Registry;
14
+ readonly environment: Map<string, TypeDef | Codec>;
15
+ readonly isRevive: boolean;
16
+ constructor(abiJson: Record<string, unknown> | string, chainProperties?: ChainProperties);
17
+ /**
18
+ * Warning: Unstable API, bound to change
19
+ */
20
+ decodeEvent(record: EventRecord): DecodedEvent;
21
+ /**
22
+ * Warning: Unstable API, bound to change
23
+ */
24
+ decodeConstructor(data: Uint8Array): DecodedMessage;
25
+ /**
26
+ * Warning: Unstable API, bound to change
27
+ */
28
+ decodeMessage(data: Uint8Array): DecodedMessage;
29
+ findConstructor(constructorOrId: AbiConstructor | string | number): AbiConstructor;
30
+ findMessage(messageOrId: AbiMessage | string | number): AbiMessage;
31
+ }
@@ -0,0 +1,15 @@
1
+ import type { ContractMetadataV4, ContractMetadataV5, ContractMetadataV6 } from '@pezkuwi/types/interfaces';
2
+ import type { Registry } from '@pezkuwi/types/types';
3
+ import type { ContractMetadataSupported } from './index.js';
4
+ export declare const enumVersions: readonly ["V6", "V5", "V4", "V3", "V2", "V1"];
5
+ type Versions = typeof enumVersions[number] | 'V0';
6
+ type Converter = (registry: Registry, vx: any) => ContractMetadataSupported;
7
+ export declare function v6ToLatestCompatible(_registry: Registry, v6: ContractMetadataV6): ContractMetadataV6;
8
+ export declare function v5ToLatestCompatible(_registry: Registry, v5: ContractMetadataV5): ContractMetadataV5;
9
+ export declare function v4ToLatestCompatible(_registry: Registry, v4: ContractMetadataV4): ContractMetadataV4;
10
+ export declare const v3ToLatestCompatible: (registry: Registry, input: import("@pezkuwi/types/interfaces").ContractMetadataV3) => ContractMetadataSupported;
11
+ export declare const v2ToLatestCompatible: (registry: Registry, input: import("@pezkuwi/types/interfaces").ContractMetadataV2) => ContractMetadataSupported;
12
+ export declare const v1ToLatestCompatible: (registry: Registry, input: import("@pezkuwi/types/interfaces").ContractMetadataV1) => ContractMetadataSupported;
13
+ export declare const v0ToLatestCompatible: (registry: Registry, input: import("@pezkuwi/types/interfaces").ContractMetadataV0) => ContractMetadataSupported;
14
+ export declare const convertVersions: [Versions, Converter][];
15
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { ContractMetadataV0, ContractMetadataV1 } from '@pezkuwi/types/interfaces';
2
+ import type { Registry } from '@pezkuwi/types/types';
3
+ export declare function v0ToV1(registry: Registry, v0: ContractMetadataV0): ContractMetadataV1;
@@ -0,0 +1,3 @@
1
+ import type { ContractMetadataV1, ContractMetadataV2 } from '@pezkuwi/types/interfaces';
2
+ import type { Registry } from '@pezkuwi/types/types';
3
+ export declare function v1ToV2(registry: Registry, v1: ContractMetadataV1): ContractMetadataV2;
@@ -0,0 +1,3 @@
1
+ import type { ContractMetadataV2, ContractMetadataV3 } from '@pezkuwi/types/interfaces';
2
+ import type { Registry } from '@pezkuwi/types/types';
3
+ export declare function v2ToV3(registry: Registry, v2: ContractMetadataV2): ContractMetadataV3;
@@ -0,0 +1,3 @@
1
+ import type { ContractMetadataV3, ContractMetadataV4 } from '@pezkuwi/types/interfaces';
2
+ import type { Registry } from '@pezkuwi/types/types';
3
+ export declare function v3ToV4(registry: Registry, v3: ContractMetadataV3): ContractMetadataV4;
@@ -0,0 +1 @@
1
+ import '@pezkuwi/api-augment';
@@ -0,0 +1,13 @@
1
+ import type { ApiBase } from '@pezkuwi/api/base';
2
+ import type { ApiTypes, DecorateMethod } from '@pezkuwi/api/types';
3
+ import type { Registry } from '@pezkuwi/types/types';
4
+ import { Abi } from '../Abi/index.js';
5
+ export declare abstract class Base<ApiType extends ApiTypes> {
6
+ readonly abi: Abi;
7
+ readonly api: ApiBase<ApiType>;
8
+ protected readonly _decorateMethod: DecorateMethod<ApiType>;
9
+ protected readonly _isWeightV1: boolean;
10
+ protected readonly _isRevive: boolean;
11
+ constructor(api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, decorateMethod: DecorateMethod<ApiType>);
12
+ get registry(): Registry;
13
+ }
@@ -0,0 +1,24 @@
1
+ import type { ApiBase } from '@pezkuwi/api/base';
2
+ import type { ApiTypes, DecorateMethod } from '@pezkuwi/api/types';
3
+ import type { Hash } from '@pezkuwi/types/interfaces';
4
+ import type { ISubmittableResult } from '@pezkuwi/types/types';
5
+ import type { Abi } from '../Abi/index.js';
6
+ import type { MapConstructorExec } from './types.js';
7
+ import { SubmittableResult } from '@pezkuwi/api';
8
+ import { Base } from './Base.js';
9
+ import { Contract } from './Contract.js';
10
+ export type BlueprintConstructor<ApiType extends ApiTypes> = new (api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, codeHash: string | Hash | Uint8Array) => Blueprint<ApiType>;
11
+ export declare class BlueprintSubmittableResult<ApiType extends ApiTypes> extends SubmittableResult {
12
+ readonly contract?: Contract<ApiType> | undefined;
13
+ constructor(result: ISubmittableResult, contract?: Contract<ApiType>);
14
+ }
15
+ export declare class Blueprint<ApiType extends ApiTypes> extends Base<ApiType> {
16
+ #private;
17
+ /**
18
+ * @description The on-chain code hash for this blueprint
19
+ */
20
+ readonly codeHash: Hash;
21
+ constructor(api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, codeHash: string | Hash | Uint8Array, decorateMethod: DecorateMethod<ApiType>);
22
+ get tx(): MapConstructorExec<ApiType>;
23
+ }
24
+ export declare function extendBlueprint<ApiType extends ApiTypes>(type: ApiType, decorateMethod: DecorateMethod<ApiType>): BlueprintConstructor<ApiType>;