@ar.io/sdk 4.0.0-solana.8 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (533) hide show
  1. package/README.md +721 -673
  2. package/lib/esm/cli/cli.js +28 -152
  3. package/lib/esm/cli/commands/antCommands.js +5 -66
  4. package/lib/esm/cli/commands/arnsPurchaseCommands.js +7 -28
  5. package/lib/esm/cli/commands/escrowCommands.js +23 -4
  6. package/lib/esm/cli/commands/gatewayWriteCommands.js +15 -8
  7. package/lib/esm/cli/commands/pruneCommands.js +14 -26
  8. package/lib/esm/cli/commands/readCommands.js +12 -1
  9. package/lib/esm/cli/options.js +2 -75
  10. package/lib/esm/cli/utils.js +96 -209
  11. package/lib/esm/common/ant-registry.js +12 -160
  12. package/lib/esm/common/ant.js +40 -1208
  13. package/lib/esm/common/faucet.js +17 -6
  14. package/lib/esm/common/index.js +0 -4
  15. package/lib/esm/common/io.js +13 -1441
  16. package/lib/esm/constants.js +0 -18
  17. package/lib/esm/solana/ant-readable.js +391 -54
  18. package/lib/esm/solana/ant-registry-readable.js +15 -0
  19. package/lib/esm/solana/ant-registry-writeable.js +19 -4
  20. package/lib/esm/solana/ant-writeable.js +43 -11
  21. package/lib/esm/solana/ata.js +15 -0
  22. package/lib/esm/solana/canonical-message.js +45 -9
  23. package/lib/esm/solana/clusters.js +71 -22
  24. package/lib/esm/solana/constants.js +21 -5
  25. package/lib/esm/solana/delegation-math.js +49 -0
  26. package/lib/esm/solana/deserialize.js +263 -727
  27. package/lib/esm/solana/escrow.js +145 -103
  28. package/lib/esm/solana/events.js +20 -199
  29. package/lib/esm/solana/funding-plan.js +19 -2
  30. package/lib/esm/solana/index.js +53 -12
  31. package/lib/esm/solana/instruction.js +15 -0
  32. package/lib/esm/solana/io-readable.js +510 -58
  33. package/lib/esm/solana/io-writeable.js +1198 -197
  34. package/lib/esm/solana/json-rpc.js +20 -4
  35. package/lib/esm/solana/metadata.js +15 -0
  36. package/lib/esm/solana/mpl-core.js +55 -5
  37. package/lib/esm/solana/pda.js +15 -0
  38. package/lib/esm/solana/predict-prescribed-observers.js +110 -0
  39. package/lib/esm/solana/retry.js +117 -0
  40. package/lib/esm/solana/rpc-circuit-breaker.js +258 -0
  41. package/lib/esm/solana/send.js +258 -3
  42. package/lib/esm/solana/spawn-ant.js +16 -2
  43. package/lib/esm/types/ant.js +8 -8
  44. package/lib/esm/types/io.js +0 -10
  45. package/lib/esm/utils/ant.js +0 -64
  46. package/lib/esm/utils/index.js +0 -3
  47. package/lib/esm/version.js +1 -1
  48. package/lib/types/cli/commands/antCommands.d.ts +6 -9
  49. package/lib/types/cli/commands/arnsPurchaseCommands.d.ts +27 -13
  50. package/lib/types/cli/commands/escrowCommands.d.ts +6 -0
  51. package/lib/types/cli/commands/gatewayWriteCommands.d.ts +12 -11
  52. package/lib/types/cli/commands/pruneCommands.d.ts +11 -11
  53. package/lib/types/cli/commands/readCommands.d.ts +25 -22
  54. package/lib/types/cli/commands/transfer.d.ts +9 -9
  55. package/lib/types/cli/options.d.ts +0 -57
  56. package/lib/types/cli/types.d.ts +6 -14
  57. package/lib/types/cli/utils.d.ts +34 -32
  58. package/lib/types/common/ant-registry.d.ts +35 -74
  59. package/lib/types/common/ant.d.ts +52 -570
  60. package/lib/types/common/faucet.d.ts +20 -8
  61. package/lib/types/common/index.d.ts +0 -3
  62. package/lib/types/common/io.d.ts +56 -288
  63. package/lib/types/constants.d.ts +0 -17
  64. package/lib/types/solana/ant-readable.d.ts +65 -6
  65. package/lib/types/solana/ant-registry-readable.d.ts +17 -2
  66. package/lib/types/solana/ant-registry-writeable.d.ts +20 -5
  67. package/lib/types/solana/ant-writeable.d.ts +39 -24
  68. package/lib/types/solana/ata.d.ts +15 -0
  69. package/lib/types/solana/canonical-message.d.ts +44 -5
  70. package/lib/types/solana/clusters.d.ts +68 -21
  71. package/lib/types/solana/constants.d.ts +16 -0
  72. package/lib/types/solana/delegation-math.d.ts +25 -0
  73. package/lib/types/solana/deserialize.d.ts +28 -198
  74. package/lib/types/solana/escrow.d.ts +128 -51
  75. package/lib/types/solana/events.d.ts +26 -144
  76. package/lib/types/solana/funding-plan.d.ts +15 -0
  77. package/lib/types/solana/index.d.ts +27 -3
  78. package/lib/types/solana/instruction.d.ts +15 -0
  79. package/lib/types/solana/io-readable.d.ts +185 -46
  80. package/lib/types/solana/io-writeable.d.ts +450 -77
  81. package/lib/types/solana/json-rpc.d.ts +15 -0
  82. package/lib/types/solana/metadata.d.ts +15 -0
  83. package/lib/types/solana/mpl-core.d.ts +44 -0
  84. package/lib/types/solana/predict-prescribed-observers.d.ts +28 -0
  85. package/lib/types/solana/retry.d.ts +62 -0
  86. package/lib/types/solana/rpc-circuit-breaker.d.ts +78 -0
  87. package/lib/types/solana/send.d.ts +80 -2
  88. package/lib/types/solana/spawn-ant.d.ts +15 -0
  89. package/lib/types/solana/types.d.ts +15 -0
  90. package/lib/types/types/ant-registry.d.ts +4 -4
  91. package/lib/types/types/ant.d.ts +92 -92
  92. package/lib/types/types/common.d.ts +18 -74
  93. package/lib/types/types/faucet.d.ts +2 -2
  94. package/lib/types/types/io.d.ts +189 -158
  95. package/lib/types/types/token.d.ts +0 -12
  96. package/lib/types/utils/ant.d.ts +1 -12
  97. package/lib/types/utils/index.d.ts +0 -3
  98. package/lib/types/version.d.ts +1 -1
  99. package/package.json +28 -38
  100. package/lib/esm/common/ant-versions.js +0 -87
  101. package/lib/esm/common/arweave.js +0 -21
  102. package/lib/esm/common/contracts/ao-process.js +0 -218
  103. package/lib/esm/common/hyperbeam/hb.js +0 -169
  104. package/lib/esm/common/marketplace.js +0 -669
  105. package/lib/esm/common/turbo.js +0 -215
  106. package/lib/esm/node/index.js +0 -20
  107. package/lib/esm/solana/generated/ant/events/aclEntryAddedEvent.js +0 -21
  108. package/lib/esm/solana/generated/ant/events/aclEntryRemovedEvent.js +0 -21
  109. package/lib/esm/solana/generated/ant/events/antMetadataUpdatedEvent.js +0 -21
  110. package/lib/esm/solana/generated/ant/events/antReconciledEvent.js +0 -21
  111. package/lib/esm/solana/generated/ant/events/antTransferredEvent.js +0 -21
  112. package/lib/esm/solana/generated/ant/events/attributesClearedEvent.js +0 -21
  113. package/lib/esm/solana/generated/ant/events/attributesSyncedEvent.js +0 -21
  114. package/lib/esm/solana/generated/ant/events/controllerAddedEvent.js +0 -21
  115. package/lib/esm/solana/generated/ant/events/controllerRemovedEvent.js +0 -21
  116. package/lib/esm/solana/generated/ant/events/index.js +0 -16
  117. package/lib/esm/solana/generated/ant/events/recordMetadataPrunedEvent.js +0 -21
  118. package/lib/esm/solana/generated/ant/events/recordMetadataRemovedEvent.js +0 -21
  119. package/lib/esm/solana/generated/ant/events/recordMetadataUpdatedEvent.js +0 -21
  120. package/lib/esm/solana/generated/ant/events/recordRemovedEvent.js +0 -21
  121. package/lib/esm/solana/generated/ant/events/recordSetEvent.js +0 -21
  122. package/lib/esm/solana/generated/ant/events/recordTransferredEvent.js +0 -21
  123. package/lib/esm/solana/generated/ant-escrow/events/escrowCancelledEvent.js +0 -21
  124. package/lib/esm/solana/generated/ant-escrow/events/escrowClaimedEvent.js +0 -21
  125. package/lib/esm/solana/generated/ant-escrow/events/escrowDepositedEvent.js +0 -21
  126. package/lib/esm/solana/generated/ant-escrow/events/escrowRecipientUpdatedEvent.js +0 -21
  127. package/lib/esm/solana/generated/ant-escrow/events/index.js +0 -5
  128. package/lib/esm/solana/generated/arns/events/demandFactorUpdatedEvent.js +0 -21
  129. package/lib/esm/solana/generated/arns/events/index.js +0 -13
  130. package/lib/esm/solana/generated/arns/events/leaseExtendedEvent.js +0 -21
  131. package/lib/esm/solana/generated/arns/events/namePurchasedEvent.js +0 -21
  132. package/lib/esm/solana/generated/arns/events/nameReassignedEvent.js +0 -21
  133. package/lib/esm/solana/generated/arns/events/nameReleasedEvent.js +0 -21
  134. package/lib/esm/solana/generated/arns/events/nameReservedEvent.js +0 -21
  135. package/lib/esm/solana/generated/arns/events/nameUnreservedEvent.js +0 -21
  136. package/lib/esm/solana/generated/arns/events/nameUpgradedEvent.js +0 -21
  137. package/lib/esm/solana/generated/arns/events/namesPrunedEvent.js +0 -21
  138. package/lib/esm/solana/generated/arns/events/reservedNameClaimedEvent.js +0 -21
  139. package/lib/esm/solana/generated/arns/events/returnedNamePurchasedEvent.js +0 -21
  140. package/lib/esm/solana/generated/arns/events/undernameIncreasedEvent.js +0 -21
  141. package/lib/esm/solana/generated/core/events/configUpdatedEvent.js +0 -21
  142. package/lib/esm/solana/generated/core/events/coreMigrationFinalizedEvent.js +0 -21
  143. package/lib/esm/solana/generated/core/events/index.js +0 -14
  144. package/lib/esm/solana/generated/core/events/primaryNameRemovedEvent.js +0 -21
  145. package/lib/esm/solana/generated/core/events/primaryNameRequestExpiredEvent.js +0 -21
  146. package/lib/esm/solana/generated/core/events/primaryNameRequestedEvent.js +0 -21
  147. package/lib/esm/solana/generated/core/events/primaryNameSetEvent.js +0 -21
  148. package/lib/esm/solana/generated/core/events/supplyFinalizedEvent.js +0 -21
  149. package/lib/esm/solana/generated/core/events/transferEvent.js +0 -21
  150. package/lib/esm/solana/generated/core/events/vaultCreatedEvent.js +0 -21
  151. package/lib/esm/solana/generated/core/events/vaultExtendedEvent.js +0 -21
  152. package/lib/esm/solana/generated/core/events/vaultIncreasedEvent.js +0 -21
  153. package/lib/esm/solana/generated/core/events/vaultReleasedEvent.js +0 -21
  154. package/lib/esm/solana/generated/core/events/vaultRevokedEvent.js +0 -21
  155. package/lib/esm/solana/generated/gar/events/allowlistToggledEvent.js +0 -21
  156. package/lib/esm/solana/generated/gar/events/delegateAllowlistedEvent.js +0 -21
  157. package/lib/esm/solana/generated/gar/events/delegationClosedEvent.js +0 -21
  158. package/lib/esm/solana/generated/gar/events/delegationDecreasedEvent.js +0 -21
  159. package/lib/esm/solana/generated/gar/events/delegationEvent.js +0 -21
  160. package/lib/esm/solana/generated/gar/events/epochClosedEvent.js +0 -21
  161. package/lib/esm/solana/generated/gar/events/epochCreatedEvent.js +0 -21
  162. package/lib/esm/solana/generated/gar/events/epochDistributedEvent.js +0 -21
  163. package/lib/esm/solana/generated/gar/events/epochPrescribedEvent.js +0 -21
  164. package/lib/esm/solana/generated/gar/events/epochWeightsTalliedEvent.js +0 -21
  165. package/lib/esm/solana/generated/gar/events/epochsToggledEvent.js +0 -21
  166. package/lib/esm/solana/generated/gar/events/fundingPlanAppliedEvent.js +0 -21
  167. package/lib/esm/solana/generated/gar/events/garMigrationFinalizedEvent.js +0 -21
  168. package/lib/esm/solana/generated/gar/events/gatewayFinalizedEvent.js +0 -21
  169. package/lib/esm/solana/generated/gar/events/gatewayJoinedEvent.js +0 -21
  170. package/lib/esm/solana/generated/gar/events/gatewayLeavingEvent.js +0 -21
  171. package/lib/esm/solana/generated/gar/events/gatewayPrunedEvent.js +0 -21
  172. package/lib/esm/solana/generated/gar/events/gatewaySettingsUpdatedEvent.js +0 -21
  173. package/lib/esm/solana/generated/gar/events/index.js +0 -31
  174. package/lib/esm/solana/generated/gar/events/instantWithdrawalEvent.js +0 -21
  175. package/lib/esm/solana/generated/gar/events/observationSubmittedEvent.js +0 -21
  176. package/lib/esm/solana/generated/gar/events/observerAddressUpdatedEvent.js +0 -21
  177. package/lib/esm/solana/generated/gar/events/operatorStakeIncreasedEvent.js +0 -21
  178. package/lib/esm/solana/generated/gar/events/redelegationEvent.js +0 -21
  179. package/lib/esm/solana/generated/gar/events/residueVaultCreatedEvent.js +0 -21
  180. package/lib/esm/solana/generated/gar/events/rewardsCompoundedEvent.js +0 -21
  181. package/lib/esm/solana/generated/gar/events/stakePaymentEvent.js +0 -21
  182. package/lib/esm/solana/generated/gar/events/withdrawalCancelledEvent.js +0 -21
  183. package/lib/esm/solana/generated/gar/events/withdrawalClaimedEvent.js +0 -21
  184. package/lib/esm/solana/generated/gar/events/withdrawalCreatedEvent.js +0 -21
  185. package/lib/esm/solana/generated/gar/events/withdrawalPaymentEvent.js +0 -21
  186. package/lib/esm/solana/generated/mpl-core/accounts/assetV1.js +0 -42
  187. package/lib/esm/solana/generated/mpl-core/accounts/collectionV1.js +0 -42
  188. package/lib/esm/solana/generated/mpl-core/accounts/hashedAssetV1.js +0 -45
  189. package/lib/esm/solana/generated/mpl-core/accounts/index.js +0 -12
  190. package/lib/esm/solana/generated/mpl-core/accounts/pluginHeaderV1.js +0 -45
  191. package/lib/esm/solana/generated/mpl-core/accounts/pluginRegistryV1.js +0 -42
  192. package/lib/esm/solana/generated/mpl-core/errors/index.js +0 -8
  193. package/lib/esm/solana/generated/mpl-core/errors/mplCore.js +0 -136
  194. package/lib/esm/solana/generated/mpl-core/index.js +0 -8
  195. package/lib/esm/solana/generated/mpl-core/instructions/addCollectionExternalPluginAdapterV1.js +0 -53
  196. package/lib/esm/solana/generated/mpl-core/instructions/addCollectionPluginV1.js +0 -53
  197. package/lib/esm/solana/generated/mpl-core/instructions/addExternalPluginAdapterV1.js +0 -53
  198. package/lib/esm/solana/generated/mpl-core/instructions/addPluginV1.js +0 -53
  199. package/lib/esm/solana/generated/mpl-core/instructions/approveCollectionPluginAuthorityV1.js +0 -53
  200. package/lib/esm/solana/generated/mpl-core/instructions/approvePluginAuthorityV1.js +0 -53
  201. package/lib/esm/solana/generated/mpl-core/instructions/burnCollectionV1.js +0 -49
  202. package/lib/esm/solana/generated/mpl-core/instructions/burnV1.js +0 -49
  203. package/lib/esm/solana/generated/mpl-core/instructions/collect.js +0 -42
  204. package/lib/esm/solana/generated/mpl-core/instructions/compressV1.js +0 -50
  205. package/lib/esm/solana/generated/mpl-core/instructions/createCollectionV1.js +0 -53
  206. package/lib/esm/solana/generated/mpl-core/instructions/createCollectionV2.js +0 -53
  207. package/lib/esm/solana/generated/mpl-core/instructions/createV1.js +0 -53
  208. package/lib/esm/solana/generated/mpl-core/instructions/createV2.js +0 -53
  209. package/lib/esm/solana/generated/mpl-core/instructions/decompressV1.js +0 -53
  210. package/lib/esm/solana/generated/mpl-core/instructions/executeV1.js +0 -56
  211. package/lib/esm/solana/generated/mpl-core/instructions/index.js +0 -40
  212. package/lib/esm/solana/generated/mpl-core/instructions/removeCollectionExternalPluginAdapterV1.js +0 -53
  213. package/lib/esm/solana/generated/mpl-core/instructions/removeCollectionPluginV1.js +0 -53
  214. package/lib/esm/solana/generated/mpl-core/instructions/removeExternalPluginAdapterV1.js +0 -53
  215. package/lib/esm/solana/generated/mpl-core/instructions/removePluginV1.js +0 -53
  216. package/lib/esm/solana/generated/mpl-core/instructions/revokeCollectionPluginAuthorityV1.js +0 -53
  217. package/lib/esm/solana/generated/mpl-core/instructions/revokePluginAuthorityV1.js +0 -53
  218. package/lib/esm/solana/generated/mpl-core/instructions/transferV1.js +0 -49
  219. package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionExternalPluginAdapterV1.js +0 -53
  220. package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionInfoV1.js +0 -45
  221. package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionPluginV1.js +0 -53
  222. package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionV1.js +0 -52
  223. package/lib/esm/solana/generated/mpl-core/instructions/updateExternalPluginAdapterV1.js +0 -53
  224. package/lib/esm/solana/generated/mpl-core/instructions/updatePluginV1.js +0 -53
  225. package/lib/esm/solana/generated/mpl-core/instructions/updateV1.js +0 -53
  226. package/lib/esm/solana/generated/mpl-core/instructions/updateV2.js +0 -53
  227. package/lib/esm/solana/generated/mpl-core/instructions/writeCollectionExternalPluginAdapterDataV1.js +0 -53
  228. package/lib/esm/solana/generated/mpl-core/instructions/writeExternalPluginAdapterDataV1.js +0 -53
  229. package/lib/esm/solana/generated/mpl-core/program-address.js +0 -1
  230. package/lib/esm/solana/generated/mpl-core/types/addAssetsToGroupV1Args.js +0 -17
  231. package/lib/esm/solana/generated/mpl-core/types/addBlocker.js +0 -17
  232. package/lib/esm/solana/generated/mpl-core/types/addCollectionsToGroupV1Args.js +0 -17
  233. package/lib/esm/solana/generated/mpl-core/types/addGroupsToGroupV1Args.js +0 -17
  234. package/lib/esm/solana/generated/mpl-core/types/agentIdentity.js +0 -17
  235. package/lib/esm/solana/generated/mpl-core/types/agentIdentityInitInfo.js +0 -18
  236. package/lib/esm/solana/generated/mpl-core/types/agentIdentityUpdateInfo.js +0 -18
  237. package/lib/esm/solana/generated/mpl-core/types/appData.js +0 -18
  238. package/lib/esm/solana/generated/mpl-core/types/appDataInitInfo.js +0 -18
  239. package/lib/esm/solana/generated/mpl-core/types/appDataUpdateInfo.js +0 -18
  240. package/lib/esm/solana/generated/mpl-core/types/attribute.js +0 -17
  241. package/lib/esm/solana/generated/mpl-core/types/attributes.js +0 -18
  242. package/lib/esm/solana/generated/mpl-core/types/authority.js +0 -24
  243. package/lib/esm/solana/generated/mpl-core/types/autograph.js +0 -18
  244. package/lib/esm/solana/generated/mpl-core/types/autographSignature.js +0 -17
  245. package/lib/esm/solana/generated/mpl-core/types/bubblegumV2.js +0 -17
  246. package/lib/esm/solana/generated/mpl-core/types/burnDelegate.js +0 -17
  247. package/lib/esm/solana/generated/mpl-core/types/closeGroupV1Args.js +0 -17
  248. package/lib/esm/solana/generated/mpl-core/types/compressionProof.js +0 -18
  249. package/lib/esm/solana/generated/mpl-core/types/creator.js +0 -17
  250. package/lib/esm/solana/generated/mpl-core/types/dataSection.js +0 -18
  251. package/lib/esm/solana/generated/mpl-core/types/dataSectionInitInfo.js +0 -18
  252. package/lib/esm/solana/generated/mpl-core/types/dataSectionUpdateInfo.js +0 -17
  253. package/lib/esm/solana/generated/mpl-core/types/dataState.js +0 -23
  254. package/lib/esm/solana/generated/mpl-core/types/edition.js +0 -17
  255. package/lib/esm/solana/generated/mpl-core/types/externalCheckResult.js +0 -17
  256. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapter.js +0 -25
  257. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterInitInfo.js +0 -25
  258. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterKey.js +0 -25
  259. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterSchema.js +0 -24
  260. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterType.js +0 -28
  261. package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterUpdateInfo.js +0 -25
  262. package/lib/esm/solana/generated/mpl-core/types/externalRegistryRecord.js +0 -18
  263. package/lib/esm/solana/generated/mpl-core/types/externalValidationResult.js +0 -24
  264. package/lib/esm/solana/generated/mpl-core/types/extraAccount.js +0 -25
  265. package/lib/esm/solana/generated/mpl-core/types/freezeDelegate.js +0 -17
  266. package/lib/esm/solana/generated/mpl-core/types/freezeExecute.js +0 -17
  267. package/lib/esm/solana/generated/mpl-core/types/groups.js +0 -17
  268. package/lib/esm/solana/generated/mpl-core/types/hashablePluginSchema.js +0 -18
  269. package/lib/esm/solana/generated/mpl-core/types/hashedAssetSchema.js +0 -17
  270. package/lib/esm/solana/generated/mpl-core/types/hookableLifecycleEvent.js +0 -26
  271. package/lib/esm/solana/generated/mpl-core/types/immutableMetadata.js +0 -17
  272. package/lib/esm/solana/generated/mpl-core/types/index.js +0 -89
  273. package/lib/esm/solana/generated/mpl-core/types/key.js +0 -28
  274. package/lib/esm/solana/generated/mpl-core/types/lifecycleHook.js +0 -18
  275. package/lib/esm/solana/generated/mpl-core/types/lifecycleHookInitInfo.js +0 -18
  276. package/lib/esm/solana/generated/mpl-core/types/lifecycleHookUpdateInfo.js +0 -18
  277. package/lib/esm/solana/generated/mpl-core/types/linkedAppData.js +0 -18
  278. package/lib/esm/solana/generated/mpl-core/types/linkedAppDataInitInfo.js +0 -18
  279. package/lib/esm/solana/generated/mpl-core/types/linkedAppDataUpdateInfo.js +0 -18
  280. package/lib/esm/solana/generated/mpl-core/types/linkedDataKey.js +0 -25
  281. package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHook.js +0 -18
  282. package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHookInitInfo.js +0 -18
  283. package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHookUpdateInfo.js +0 -18
  284. package/lib/esm/solana/generated/mpl-core/types/masterEdition.js +0 -17
  285. package/lib/esm/solana/generated/mpl-core/types/oracle.js +0 -18
  286. package/lib/esm/solana/generated/mpl-core/types/oracleInitInfo.js +0 -18
  287. package/lib/esm/solana/generated/mpl-core/types/oracleUpdateInfo.js +0 -18
  288. package/lib/esm/solana/generated/mpl-core/types/oracleValidation.js +0 -25
  289. package/lib/esm/solana/generated/mpl-core/types/permanentBurnDelegate.js +0 -17
  290. package/lib/esm/solana/generated/mpl-core/types/permanentFreezeDelegate.js +0 -17
  291. package/lib/esm/solana/generated/mpl-core/types/permanentFreezeExecute.js +0 -17
  292. package/lib/esm/solana/generated/mpl-core/types/permanentTransferDelegate.js +0 -17
  293. package/lib/esm/solana/generated/mpl-core/types/plugin.js +0 -25
  294. package/lib/esm/solana/generated/mpl-core/types/pluginAuthorityPair.js +0 -18
  295. package/lib/esm/solana/generated/mpl-core/types/pluginType.js +0 -40
  296. package/lib/esm/solana/generated/mpl-core/types/registryRecord.js +0 -18
  297. package/lib/esm/solana/generated/mpl-core/types/relationshipKind.js +0 -25
  298. package/lib/esm/solana/generated/mpl-core/types/removeAssetsFromGroupV1Args.js +0 -17
  299. package/lib/esm/solana/generated/mpl-core/types/removeCollectionsFromGroupV1Args.js +0 -17
  300. package/lib/esm/solana/generated/mpl-core/types/removeGroupsFromGroupV1Args.js +0 -17
  301. package/lib/esm/solana/generated/mpl-core/types/royalties.js +0 -18
  302. package/lib/esm/solana/generated/mpl-core/types/ruleSet.js +0 -24
  303. package/lib/esm/solana/generated/mpl-core/types/seed.js +0 -24
  304. package/lib/esm/solana/generated/mpl-core/types/transferDelegate.js +0 -17
  305. package/lib/esm/solana/generated/mpl-core/types/updateAuthority.js +0 -24
  306. package/lib/esm/solana/generated/mpl-core/types/updateDelegate.js +0 -17
  307. package/lib/esm/solana/generated/mpl-core/types/updateGroupV1Args.js +0 -17
  308. package/lib/esm/solana/generated/mpl-core/types/updateType.js +0 -24
  309. package/lib/esm/solana/generated/mpl-core/types/validationResult.js +0 -25
  310. package/lib/esm/solana/generated/mpl-core/types/validationResultsOffset.js +0 -24
  311. package/lib/esm/solana/generated/mpl-core/types/verifiedCreators.js +0 -18
  312. package/lib/esm/solana/generated/mpl-core/types/verifiedCreatorsSignature.js +0 -17
  313. package/lib/esm/utils/ao.js +0 -421
  314. package/lib/esm/utils/arweave.js +0 -271
  315. package/lib/esm/utils/processes.js +0 -167
  316. package/lib/esm/web/index.js +0 -20
  317. package/lib/types/common/ant-versions.d.ts +0 -39
  318. package/lib/types/common/arweave.d.ts +0 -17
  319. package/lib/types/common/contracts/ao-process.d.ts +0 -33
  320. package/lib/types/common/hyperbeam/hb.d.ts +0 -88
  321. package/lib/types/common/marketplace.d.ts +0 -556
  322. package/lib/types/common/turbo.d.ts +0 -61
  323. package/lib/types/node/index.d.ts +0 -20
  324. package/lib/types/solana/generated/ant/events/aclEntryAddedEvent.d.ts +0 -26
  325. package/lib/types/solana/generated/ant/events/aclEntryRemovedEvent.d.ts +0 -26
  326. package/lib/types/solana/generated/ant/events/antMetadataUpdatedEvent.d.ts +0 -28
  327. package/lib/types/solana/generated/ant/events/antReconciledEvent.d.ts +0 -28
  328. package/lib/types/solana/generated/ant/events/antTransferredEvent.d.ts +0 -26
  329. package/lib/types/solana/generated/ant/events/attributesClearedEvent.d.ts +0 -26
  330. package/lib/types/solana/generated/ant/events/attributesSyncedEvent.d.ts +0 -24
  331. package/lib/types/solana/generated/ant/events/controllerAddedEvent.d.ts +0 -26
  332. package/lib/types/solana/generated/ant/events/controllerRemovedEvent.d.ts +0 -26
  333. package/lib/types/solana/generated/ant/events/index.d.ts +0 -15
  334. package/lib/types/solana/generated/ant/events/recordMetadataPrunedEvent.d.ts +0 -26
  335. package/lib/types/solana/generated/ant/events/recordMetadataRemovedEvent.d.ts +0 -26
  336. package/lib/types/solana/generated/ant/events/recordMetadataUpdatedEvent.d.ts +0 -28
  337. package/lib/types/solana/generated/ant/events/recordRemovedEvent.d.ts +0 -26
  338. package/lib/types/solana/generated/ant/events/recordSetEvent.d.ts +0 -34
  339. package/lib/types/solana/generated/ant/events/recordTransferredEvent.d.ts +0 -30
  340. package/lib/types/solana/generated/ant-escrow/events/escrowCancelledEvent.d.ts +0 -28
  341. package/lib/types/solana/generated/ant-escrow/events/escrowClaimedEvent.d.ts +0 -32
  342. package/lib/types/solana/generated/ant-escrow/events/escrowDepositedEvent.d.ts +0 -36
  343. package/lib/types/solana/generated/ant-escrow/events/escrowRecipientUpdatedEvent.d.ts +0 -26
  344. package/lib/types/solana/generated/ant-escrow/events/index.d.ts +0 -4
  345. package/lib/types/solana/generated/arns/events/demandFactorUpdatedEvent.d.ts +0 -28
  346. package/lib/types/solana/generated/arns/events/index.d.ts +0 -12
  347. package/lib/types/solana/generated/arns/events/leaseExtendedEvent.d.ts +0 -32
  348. package/lib/types/solana/generated/arns/events/namePurchasedEvent.d.ts +0 -34
  349. package/lib/types/solana/generated/arns/events/nameReassignedEvent.d.ts +0 -28
  350. package/lib/types/solana/generated/arns/events/nameReleasedEvent.d.ts +0 -24
  351. package/lib/types/solana/generated/arns/events/nameReservedEvent.d.ts +0 -28
  352. package/lib/types/solana/generated/arns/events/nameUnreservedEvent.d.ts +0 -24
  353. package/lib/types/solana/generated/arns/events/nameUpgradedEvent.d.ts +0 -28
  354. package/lib/types/solana/generated/arns/events/namesPrunedEvent.d.ts +0 -26
  355. package/lib/types/solana/generated/arns/events/reservedNameClaimedEvent.d.ts +0 -24
  356. package/lib/types/solana/generated/arns/events/returnedNamePurchasedEvent.d.ts +0 -32
  357. package/lib/types/solana/generated/arns/events/undernameIncreasedEvent.d.ts +0 -32
  358. package/lib/types/solana/generated/core/events/configUpdatedEvent.d.ts +0 -26
  359. package/lib/types/solana/generated/core/events/coreMigrationFinalizedEvent.d.ts +0 -26
  360. package/lib/types/solana/generated/core/events/index.d.ts +0 -13
  361. package/lib/types/solana/generated/core/events/primaryNameRemovedEvent.d.ts +0 -26
  362. package/lib/types/solana/generated/core/events/primaryNameRequestExpiredEvent.d.ts +0 -26
  363. package/lib/types/solana/generated/core/events/primaryNameRequestedEvent.d.ts +0 -30
  364. package/lib/types/solana/generated/core/events/primaryNameSetEvent.d.ts +0 -24
  365. package/lib/types/solana/generated/core/events/supplyFinalizedEvent.d.ts +0 -26
  366. package/lib/types/solana/generated/core/events/transferEvent.d.ts +0 -26
  367. package/lib/types/solana/generated/core/events/vaultCreatedEvent.d.ts +0 -28
  368. package/lib/types/solana/generated/core/events/vaultExtendedEvent.d.ts +0 -26
  369. package/lib/types/solana/generated/core/events/vaultIncreasedEvent.d.ts +0 -28
  370. package/lib/types/solana/generated/core/events/vaultReleasedEvent.d.ts +0 -26
  371. package/lib/types/solana/generated/core/events/vaultRevokedEvent.d.ts +0 -28
  372. package/lib/types/solana/generated/gar/events/allowlistToggledEvent.d.ts +0 -24
  373. package/lib/types/solana/generated/gar/events/delegateAllowlistedEvent.d.ts +0 -26
  374. package/lib/types/solana/generated/gar/events/delegationClosedEvent.d.ts +0 -24
  375. package/lib/types/solana/generated/gar/events/delegationDecreasedEvent.d.ts +0 -28
  376. package/lib/types/solana/generated/gar/events/delegationEvent.d.ts +0 -28
  377. package/lib/types/solana/generated/gar/events/epochClosedEvent.d.ts +0 -24
  378. package/lib/types/solana/generated/gar/events/epochCreatedEvent.d.ts +0 -26
  379. package/lib/types/solana/generated/gar/events/epochDistributedEvent.d.ts +0 -26
  380. package/lib/types/solana/generated/gar/events/epochPrescribedEvent.d.ts +0 -28
  381. package/lib/types/solana/generated/gar/events/epochWeightsTalliedEvent.d.ts +0 -26
  382. package/lib/types/solana/generated/gar/events/epochsToggledEvent.d.ts +0 -24
  383. package/lib/types/solana/generated/gar/events/fundingPlanAppliedEvent.d.ts +0 -28
  384. package/lib/types/solana/generated/gar/events/garMigrationFinalizedEvent.d.ts +0 -26
  385. package/lib/types/solana/generated/gar/events/gatewayFinalizedEvent.d.ts +0 -24
  386. package/lib/types/solana/generated/gar/events/gatewayJoinedEvent.d.ts +0 -26
  387. package/lib/types/solana/generated/gar/events/gatewayLeavingEvent.d.ts +0 -22
  388. package/lib/types/solana/generated/gar/events/gatewayPrunedEvent.d.ts +0 -26
  389. package/lib/types/solana/generated/gar/events/gatewaySettingsUpdatedEvent.d.ts +0 -24
  390. package/lib/types/solana/generated/gar/events/index.d.ts +0 -30
  391. package/lib/types/solana/generated/gar/events/instantWithdrawalEvent.d.ts +0 -30
  392. package/lib/types/solana/generated/gar/events/observationSubmittedEvent.d.ts +0 -28
  393. package/lib/types/solana/generated/gar/events/observerAddressUpdatedEvent.d.ts +0 -24
  394. package/lib/types/solana/generated/gar/events/operatorStakeIncreasedEvent.d.ts +0 -26
  395. package/lib/types/solana/generated/gar/events/redelegationEvent.d.ts +0 -30
  396. package/lib/types/solana/generated/gar/events/residueVaultCreatedEvent.d.ts +0 -30
  397. package/lib/types/solana/generated/gar/events/rewardsCompoundedEvent.d.ts +0 -26
  398. package/lib/types/solana/generated/gar/events/stakePaymentEvent.d.ts +0 -28
  399. package/lib/types/solana/generated/gar/events/withdrawalCancelledEvent.d.ts +0 -30
  400. package/lib/types/solana/generated/gar/events/withdrawalClaimedEvent.d.ts +0 -26
  401. package/lib/types/solana/generated/gar/events/withdrawalCreatedEvent.d.ts +0 -28
  402. package/lib/types/solana/generated/gar/events/withdrawalPaymentEvent.d.ts +0 -28
  403. package/lib/types/solana/generated/mpl-core/accounts/assetV1.d.ts +0 -37
  404. package/lib/types/solana/generated/mpl-core/accounts/collectionV1.d.ts +0 -37
  405. package/lib/types/solana/generated/mpl-core/accounts/hashedAssetV1.d.ts +0 -30
  406. package/lib/types/solana/generated/mpl-core/accounts/index.d.ts +0 -12
  407. package/lib/types/solana/generated/mpl-core/accounts/pluginHeaderV1.d.ts +0 -30
  408. package/lib/types/solana/generated/mpl-core/accounts/pluginRegistryV1.d.ts +0 -31
  409. package/lib/types/solana/generated/mpl-core/errors/index.d.ts +0 -8
  410. package/lib/types/solana/generated/mpl-core/errors/mplCore.d.ts +0 -133
  411. package/lib/types/solana/generated/mpl-core/index.d.ts +0 -8
  412. package/lib/types/solana/generated/mpl-core/instructions/addCollectionExternalPluginAdapterV1.d.ts +0 -56
  413. package/lib/types/solana/generated/mpl-core/instructions/addCollectionPluginV1.d.ts +0 -59
  414. package/lib/types/solana/generated/mpl-core/instructions/addExternalPluginAdapterV1.d.ts +0 -60
  415. package/lib/types/solana/generated/mpl-core/instructions/addPluginV1.d.ts +0 -63
  416. package/lib/types/solana/generated/mpl-core/instructions/approveCollectionPluginAuthorityV1.d.ts +0 -59
  417. package/lib/types/solana/generated/mpl-core/instructions/approvePluginAuthorityV1.d.ts +0 -63
  418. package/lib/types/solana/generated/mpl-core/instructions/burnCollectionV1.d.ts +0 -52
  419. package/lib/types/solana/generated/mpl-core/instructions/burnV1.d.ts +0 -60
  420. package/lib/types/solana/generated/mpl-core/instructions/collect.d.ts +0 -39
  421. package/lib/types/solana/generated/mpl-core/instructions/compressV1.d.ts +0 -55
  422. package/lib/types/solana/generated/mpl-core/instructions/createCollectionV1.d.ts +0 -58
  423. package/lib/types/solana/generated/mpl-core/instructions/createCollectionV2.d.ts +0 -61
  424. package/lib/types/solana/generated/mpl-core/instructions/createV1.d.ts +0 -77
  425. package/lib/types/solana/generated/mpl-core/instructions/createV2.d.ts +0 -80
  426. package/lib/types/solana/generated/mpl-core/instructions/decompressV1.d.ts +0 -60
  427. package/lib/types/solana/generated/mpl-core/instructions/executeV1.d.ts +0 -63
  428. package/lib/types/solana/generated/mpl-core/instructions/index.d.ts +0 -40
  429. package/lib/types/solana/generated/mpl-core/instructions/removeCollectionExternalPluginAdapterV1.d.ts +0 -56
  430. package/lib/types/solana/generated/mpl-core/instructions/removeCollectionPluginV1.d.ts +0 -56
  431. package/lib/types/solana/generated/mpl-core/instructions/removeExternalPluginAdapterV1.d.ts +0 -60
  432. package/lib/types/solana/generated/mpl-core/instructions/removePluginV1.d.ts +0 -60
  433. package/lib/types/solana/generated/mpl-core/instructions/revokeCollectionPluginAuthorityV1.d.ts +0 -56
  434. package/lib/types/solana/generated/mpl-core/instructions/revokePluginAuthorityV1.d.ts +0 -60
  435. package/lib/types/solana/generated/mpl-core/instructions/transferV1.d.ts +0 -64
  436. package/lib/types/solana/generated/mpl-core/instructions/updateCollectionExternalPluginAdapterV1.d.ts +0 -59
  437. package/lib/types/solana/generated/mpl-core/instructions/updateCollectionInfoV1.d.ts +0 -47
  438. package/lib/types/solana/generated/mpl-core/instructions/updateCollectionPluginV1.d.ts +0 -56
  439. package/lib/types/solana/generated/mpl-core/instructions/updateCollectionV1.d.ts +0 -62
  440. package/lib/types/solana/generated/mpl-core/instructions/updateExternalPluginAdapterV1.d.ts +0 -63
  441. package/lib/types/solana/generated/mpl-core/instructions/updatePluginV1.d.ts +0 -60
  442. package/lib/types/solana/generated/mpl-core/instructions/updateV1.d.ts +0 -66
  443. package/lib/types/solana/generated/mpl-core/instructions/updateV2.d.ts +0 -70
  444. package/lib/types/solana/generated/mpl-core/instructions/writeCollectionExternalPluginAdapterDataV1.d.ts +0 -63
  445. package/lib/types/solana/generated/mpl-core/instructions/writeExternalPluginAdapterDataV1.d.ts +0 -67
  446. package/lib/types/solana/generated/mpl-core/program-address.d.ts +0 -7
  447. package/lib/types/solana/generated/mpl-core/types/addAssetsToGroupV1Args.d.ts +0 -13
  448. package/lib/types/solana/generated/mpl-core/types/addBlocker.d.ts +0 -13
  449. package/lib/types/solana/generated/mpl-core/types/addCollectionsToGroupV1Args.d.ts +0 -13
  450. package/lib/types/solana/generated/mpl-core/types/addGroupsToGroupV1Args.d.ts +0 -15
  451. package/lib/types/solana/generated/mpl-core/types/agentIdentity.d.ts +0 -15
  452. package/lib/types/solana/generated/mpl-core/types/agentIdentityInitInfo.d.ts +0 -22
  453. package/lib/types/solana/generated/mpl-core/types/agentIdentityUpdateInfo.d.ts +0 -20
  454. package/lib/types/solana/generated/mpl-core/types/appData.d.ts +0 -20
  455. package/lib/types/solana/generated/mpl-core/types/appDataInitInfo.d.ts +0 -22
  456. package/lib/types/solana/generated/mpl-core/types/appDataUpdateInfo.d.ts +0 -18
  457. package/lib/types/solana/generated/mpl-core/types/attribute.d.ts +0 -16
  458. package/lib/types/solana/generated/mpl-core/types/attributes.d.ts +0 -18
  459. package/lib/types/solana/generated/mpl-core/types/authority.d.ts +0 -29
  460. package/lib/types/solana/generated/mpl-core/types/autograph.d.ts +0 -18
  461. package/lib/types/solana/generated/mpl-core/types/autographSignature.d.ts +0 -16
  462. package/lib/types/solana/generated/mpl-core/types/bubblegumV2.d.ts +0 -13
  463. package/lib/types/solana/generated/mpl-core/types/burnDelegate.d.ts +0 -13
  464. package/lib/types/solana/generated/mpl-core/types/closeGroupV1Args.d.ts +0 -13
  465. package/lib/types/solana/generated/mpl-core/types/compressionProof.d.ts +0 -28
  466. package/lib/types/solana/generated/mpl-core/types/creator.d.ts +0 -16
  467. package/lib/types/solana/generated/mpl-core/types/dataSection.d.ts +0 -20
  468. package/lib/types/solana/generated/mpl-core/types/dataSectionInitInfo.d.ts +0 -20
  469. package/lib/types/solana/generated/mpl-core/types/dataSectionUpdateInfo.d.ts +0 -13
  470. package/lib/types/solana/generated/mpl-core/types/dataState.d.ts +0 -16
  471. package/lib/types/solana/generated/mpl-core/types/edition.d.ts +0 -15
  472. package/lib/types/solana/generated/mpl-core/types/externalCheckResult.d.ts +0 -15
  473. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapter.d.ts +0 -66
  474. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterInitInfo.d.ts +0 -66
  475. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterKey.d.ts +0 -64
  476. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterSchema.d.ts +0 -17
  477. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterType.d.ts +0 -21
  478. package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterUpdateInfo.d.ts +0 -59
  479. package/lib/types/solana/generated/mpl-core/types/externalRegistryRecord.d.ts +0 -28
  480. package/lib/types/solana/generated/mpl-core/types/externalValidationResult.d.ts +0 -17
  481. package/lib/types/solana/generated/mpl-core/types/extraAccount.d.ts +0 -86
  482. package/lib/types/solana/generated/mpl-core/types/freezeDelegate.d.ts +0 -15
  483. package/lib/types/solana/generated/mpl-core/types/freezeExecute.d.ts +0 -15
  484. package/lib/types/solana/generated/mpl-core/types/groups.d.ts +0 -15
  485. package/lib/types/solana/generated/mpl-core/types/hashablePluginSchema.d.ts +0 -22
  486. package/lib/types/solana/generated/mpl-core/types/hashedAssetSchema.d.ts +0 -16
  487. package/lib/types/solana/generated/mpl-core/types/hookableLifecycleEvent.d.ts +0 -19
  488. package/lib/types/solana/generated/mpl-core/types/immutableMetadata.d.ts +0 -13
  489. package/lib/types/solana/generated/mpl-core/types/index.d.ts +0 -89
  490. package/lib/types/solana/generated/mpl-core/types/key.d.ts +0 -21
  491. package/lib/types/solana/generated/mpl-core/types/lifecycleHook.d.ts +0 -24
  492. package/lib/types/solana/generated/mpl-core/types/lifecycleHookInitInfo.d.ts +0 -28
  493. package/lib/types/solana/generated/mpl-core/types/lifecycleHookUpdateInfo.d.ts +0 -22
  494. package/lib/types/solana/generated/mpl-core/types/linkedAppData.d.ts +0 -20
  495. package/lib/types/solana/generated/mpl-core/types/linkedAppDataInitInfo.d.ts +0 -22
  496. package/lib/types/solana/generated/mpl-core/types/linkedAppDataUpdateInfo.d.ts +0 -18
  497. package/lib/types/solana/generated/mpl-core/types/linkedDataKey.d.ts +0 -31
  498. package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHook.d.ts +0 -24
  499. package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHookInitInfo.d.ts +0 -28
  500. package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHookUpdateInfo.d.ts +0 -22
  501. package/lib/types/solana/generated/mpl-core/types/masterEdition.d.ts +0 -21
  502. package/lib/types/solana/generated/mpl-core/types/oracle.d.ts +0 -22
  503. package/lib/types/solana/generated/mpl-core/types/oracleInitInfo.d.ts +0 -26
  504. package/lib/types/solana/generated/mpl-core/types/oracleUpdateInfo.d.ts +0 -22
  505. package/lib/types/solana/generated/mpl-core/types/oracleValidation.d.ts +0 -35
  506. package/lib/types/solana/generated/mpl-core/types/permanentBurnDelegate.d.ts +0 -13
  507. package/lib/types/solana/generated/mpl-core/types/permanentFreezeDelegate.d.ts +0 -15
  508. package/lib/types/solana/generated/mpl-core/types/permanentFreezeExecute.d.ts +0 -15
  509. package/lib/types/solana/generated/mpl-core/types/permanentTransferDelegate.d.ts +0 -13
  510. package/lib/types/solana/generated/mpl-core/types/plugin.d.ts +0 -150
  511. package/lib/types/solana/generated/mpl-core/types/pluginAuthorityPair.d.ts +0 -20
  512. package/lib/types/solana/generated/mpl-core/types/pluginType.d.ts +0 -33
  513. package/lib/types/solana/generated/mpl-core/types/registryRecord.d.ts +0 -22
  514. package/lib/types/solana/generated/mpl-core/types/relationshipKind.d.ts +0 -18
  515. package/lib/types/solana/generated/mpl-core/types/removeAssetsFromGroupV1Args.d.ts +0 -15
  516. package/lib/types/solana/generated/mpl-core/types/removeCollectionsFromGroupV1Args.d.ts +0 -15
  517. package/lib/types/solana/generated/mpl-core/types/removeGroupsFromGroupV1Args.d.ts +0 -15
  518. package/lib/types/solana/generated/mpl-core/types/royalties.d.ts +0 -22
  519. package/lib/types/solana/generated/mpl-core/types/ruleSet.d.ts +0 -27
  520. package/lib/types/solana/generated/mpl-core/types/seed.d.ts +0 -36
  521. package/lib/types/solana/generated/mpl-core/types/transferDelegate.d.ts +0 -13
  522. package/lib/types/solana/generated/mpl-core/types/updateAuthority.d.ts +0 -27
  523. package/lib/types/solana/generated/mpl-core/types/updateDelegate.d.ts +0 -15
  524. package/lib/types/solana/generated/mpl-core/types/updateGroupV1Args.d.ts +0 -19
  525. package/lib/types/solana/generated/mpl-core/types/updateType.d.ts +0 -17
  526. package/lib/types/solana/generated/mpl-core/types/validationResult.d.ts +0 -18
  527. package/lib/types/solana/generated/mpl-core/types/validationResultsOffset.d.ts +0 -33
  528. package/lib/types/solana/generated/mpl-core/types/verifiedCreators.d.ts +0 -18
  529. package/lib/types/solana/generated/mpl-core/types/verifiedCreatorsSignature.d.ts +0 -16
  530. package/lib/types/utils/ao.d.ts +0 -80
  531. package/lib/types/utils/arweave.d.ts +0 -79
  532. package/lib/types/utils/processes.d.ts +0 -39
  533. package/lib/types/web/index.d.ts +0 -20
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
1
16
  /**
2
17
  * Solana ANT-escrow and Token-escrow clients — `ario-ant-escrow` program.
3
18
  *
@@ -16,11 +31,10 @@
16
31
  * Borsh codec, and account-meta wiring derived from the on-chain IDL.
17
32
  */
18
33
  import { fetchMaybeEscrowAnt, fetchMaybeEscrowToken, getCancelDepositInstruction, getCancelTokenDepositInstruction, getCancelVaultDepositInstruction, getClaimAntArweaveAttestedInstruction, getClaimAntEthereumInstruction, getClaimTokensArweaveAttestedInstruction, getClaimTokensEthereumInstruction, getClaimVaultArweaveAttestedInstruction, getClaimVaultEthereumInstruction, getDepositAntInstruction, getDepositTokensInstruction, getDepositVaultInstruction, getUpdateRecipientInstruction, getUpdateTokenRecipientInstruction, getUpdateVaultRecipientInstruction, } from '@ar.io/solana-contracts/ant-escrow';
19
- import { fetchMaybeVaultCounter, getVaultedTransferInstructionAsync, } from '@ar.io/solana-contracts/core';
20
34
  import { Logger } from '../common/logger.js';
21
35
  import { getAssociatedTokenAddressKit } from './ata.js';
22
36
  import { ARIO_ANT_ESCROW_PROGRAM_ID, ARIO_CORE_PROGRAM_ID, ESCROW_ARWEAVE_PUBKEY_LEN, ESCROW_ASSET_TYPE_VAULT, ESCROW_ETHEREUM_PUBKEY_LEN, ESCROW_PROTOCOL_ARWEAVE, ESCROW_PROTOCOL_ETHEREUM, } from './constants.js';
23
- import { getEscrowAntPDA, getEscrowTokenPDA, getEscrowVaultPDA, getVaultCounterPDA, getVaultPDA, } from './pda.js';
37
+ import { getEscrowAntPDA, getEscrowTokenPDA, getEscrowVaultPDA, } from './pda.js';
24
38
  import { sendAndConfirm } from './send.js';
25
39
  /** Map the Codama-generated `EscrowAnt` raw decoded type to our public
26
40
  * `EscrowAntState` with protocol enum + active-prefix pubkey slice. */
@@ -275,6 +289,55 @@ export class ANTEscrow {
275
289
  }
276
290
  }
277
291
  }
292
+ /**
293
+ * Forward clock-skew buffer (seconds) added to `vault_end_timestamp` before
294
+ * the SDK considers a vault claimable. The SDK reads wall-clock time
295
+ * (`Date.now()`) while the on-chain gate reads Solana cluster time, and
296
+ * the two can disagree by several seconds. The buffer biases every skew
297
+ * race into the *friendly* direction: the SDK rejects when the chain
298
+ * would actually accept (user retries 30s later, succeeds), never the
299
+ * reverse (user submits a doomed tx and sees the raw on-chain error).
300
+ *
301
+ * 30s is conservative — Solana cluster clock typically drifts <2s vs
302
+ * wall clock — but matches the order of magnitude of the previously-used
303
+ * `60s` introspection tolerance in the removed `vault_introspect` module.
304
+ */
305
+ export const CLOCK_SKEW_TOLERANCE_SECONDS = 30n;
306
+ /**
307
+ * Returns `true` when a vault escrow is past its unlock timestamp by at
308
+ * least {@link CLOCK_SKEW_TOLERANCE_SECONDS}. Non-throwing companion to
309
+ * {@link assertVaultClaimable} for UI gating (e.g. enabling/disabling a
310
+ * Submit button without showing an error).
311
+ */
312
+ export function isVaultClaimable(escrow) {
313
+ const nowSeconds = BigInt(Math.floor(Date.now() / 1000));
314
+ return nowSeconds >= escrow.vaultEndTimestamp + CLOCK_SKEW_TOLERANCE_SECONDS;
315
+ }
316
+ /**
317
+ * Pre-flight the on-chain `VaultStillLocked` gate (ADR-022): refuse to build
318
+ * a claim tx while the vault is still locked, with a small forward
319
+ * {@link CLOCK_SKEW_TOLERANCE_SECONDS} buffer so wall/cluster clock skew
320
+ * biases into the friendly direction. Surfaces the unlock timestamp so
321
+ * callers / UIs can show "claimable after <date>" instead of a doomed tx.
322
+ *
323
+ * Exported for unit-testability; not part of the public SDK surface — call the
324
+ * high-level `claimVaultArweave` / `claimVaultEthereum` instead, which invoke
325
+ * this guard internally.
326
+ *
327
+ * @internal
328
+ */
329
+ export function assertVaultClaimable(escrow) {
330
+ if (!isVaultClaimable(escrow)) {
331
+ const unlockIso = new Date(Number(escrow.vaultEndTimestamp) * 1000).toISOString();
332
+ throw new Error(`Vault escrow is still locked until ${unlockIso} ` +
333
+ `(vault_end_timestamp=${escrow.vaultEndTimestamp}; ` +
334
+ `the SDK adds a ${CLOCK_SKEW_TOLERANCE_SECONDS}s clock-skew buffer ` +
335
+ `before allowing a claim). Active (still-locked) vault claims are ` +
336
+ `rejected on-chain with VaultStillLocked (ADR-022) — wait until ` +
337
+ `after the unlock timestamp + buffer, then claim again to receive ` +
338
+ `the tokens liquid.`);
339
+ }
340
+ }
278
341
  /** Map the Codama-generated `EscrowToken` raw decoded type to our public
279
342
  * `EscrowTokenState` with protocol enum + active-prefix pubkey slice. */
280
343
  function toEscrowTokenState(raw) {
@@ -537,100 +600,125 @@ export class TokenEscrow {
537
600
  }, { programAddress: this.programId });
538
601
  }
539
602
  /**
540
- * Submit an Arweave RSA-PSS-4096 signature to release escrowed vault tokens.
603
+ * **Use {@link claimVaultArweaveIx} instead** this single-send wrapper
604
+ * cannot work end-to-end for the Arweave attested vault-claim path,
605
+ * because the on-chain `claim_vault_arweave_attested` handler requires
606
+ * an Ed25519Program native sigverify ix at idx-1 of the claim ix
607
+ * (introspected via `instructions_sysvar`). That sigverify ix carries
608
+ * the attestor's Ed25519 signature over the canonical claim message
609
+ * and is built by the *integrator* (who calls the off-chain attestor
610
+ * service for the signature, per ADR-017) — the SDK has no attestor
611
+ * URL or client to do this for the caller.
541
612
  *
542
- * The on-chain handler routes by vault state via instructions-sysvar
543
- * introspection: an expired vault sends tokens straight to
544
- * `claimantTokenAccount`; an active (still-locked) vault routes them to
545
- * `payerTokenAccount` and requires a matching `ario_core::vaulted_transfer`
546
- * sibling instruction in the same transaction.
613
+ * Calling this method instead of composing via
614
+ * {@link claimVaultArweaveIx} will hit `MissingAttestation` on-chain.
615
+ * It is kept only for ABI continuity; new code must use
616
+ * {@link claimVaultArweaveIx} and prepend the attestor sigverify ix.
547
617
  *
548
- * This method auto-detects the path from `vaultEndTimestamp` and bundles
549
- * the sibling `vaulted_transfer` ix automatically when the vault is still
550
- * active — callers do not need to construct it themselves.
618
+ * @deprecated cannot succeed alone see {@link claimVaultArweaveIx}.
551
619
  */
552
- async claimVaultArweave(args) {
553
- const escrow = await this.requireVaultEscrow(args.depositor, args.assetId);
554
- if (escrow.recipientProtocol !== 'arweave') {
555
- throw new Error(`escrow recipient is ${escrow.recipientProtocol}, not arweave`);
620
+ async claimVaultArweave(_args) {
621
+ throw new Error('claimVaultArweave cannot complete the Arweave attested vault-claim ' +
622
+ 'in a single SDK call: the on-chain handler requires an ' +
623
+ 'Ed25519Program sigverify ix at idx-1 of the claim ix, which ' +
624
+ 'must carry the attestor service’s signature over the canonical ' +
625
+ 'claim message (ADR-017). The SDK does not know your attestor URL. ' +
626
+ 'Use claimVaultArweaveIx() instead and bundle the sigverify ix ' +
627
+ 'yourself: ' +
628
+ '[createAtaIx?, ed25519SigverifyIx, claimVaultArweaveIx, ...]. ' +
629
+ 'See ar-io-solana-escrow-app/src/pages/ClaimPage.tsx for the ' +
630
+ 'reference composition, and ADR-022 / VaultStillLocked for the ' +
631
+ 'still-locked rejection (use isVaultClaimable() to pre-flight).');
632
+ }
633
+ /**
634
+ * Build a `claim_vault_arweave_attested` instruction (without sending).
635
+ * Mirror of {@link claimTokensArweaveIx} for the vault-claim path:
636
+ * returns the bare claim ix so the caller can prepend the attestor's
637
+ * Ed25519Program sigverify ix and submit the bundle in one tx.
638
+ *
639
+ * The on-chain handler:
640
+ * - Reads the preceding Ed25519Program native sigverify ix from
641
+ * `instructions_sysvar` to confirm the attestor signed the canonical
642
+ * claim message.
643
+ * - Rejects with `VaultStillLocked` if `clock < vault_end_timestamp`
644
+ * (ADR-022). Callers should pre-flight with {@link isVaultClaimable}
645
+ * (non-throwing) or {@link assertVaultClaimable} (throws with the
646
+ * unlock timestamp) before composing the tx.
647
+ * - On the expired path, transfers the escrowed amount liquid to
648
+ * `claimantTokenAccount` and closes the escrow PDA.
649
+ *
650
+ * Composition (frontend pattern):
651
+ * ```ts
652
+ * const escrow = await tokenEscrow.requireVaultEscrow(depositor, assetId);
653
+ * assertVaultClaimable(escrow); // pre-flight
654
+ * const canonical = canonicalMessage({ ... }); // build message
655
+ * const attestation = await attestor.attest({ ... }); // attestor service
656
+ * const ed25519Ix = buildEd25519SigverifyIx(
657
+ * attestation.attestorPubkey, attestation.signature, canonical,
658
+ * );
659
+ * const claimIx = await tokenEscrow.claimVaultArweaveIx({
660
+ * depositor, assetId, claimant, claimantTokenAccount,
661
+ * escrowTokenAccount, messageNonce: escrow.nonce,
662
+ * });
663
+ * // Idempotent-create the claimant ATA if it's the canonical derivation.
664
+ * await sendTx([createAtaIx?, ed25519Ix, claimIx]);
665
+ * ```
666
+ */
667
+ async claimVaultArweaveIx(args) {
668
+ if (args.messageNonce.length !== 32) {
669
+ throw new Error('messageNonce must be 32 bytes');
556
670
  }
557
- const signer = this.requireSigner('claimVaultArweave');
671
+ const signer = this.requireSigner('claimVaultArweaveIx');
558
672
  const [escrowPda] = await getEscrowVaultPDA(args.depositor, args.assetId, this.programId);
559
- // `args.signature` and `args.saltLen` are no longer fed to the
560
- // builder — the on-chain `claim_vault_arweave_attested` ix verifies
561
- // the attestor's Ed25519 signature via instruction-introspection
562
- // of a preceding sigverify ix. See doc on `claimArweaveIx`.
563
- const claimIx = getClaimVaultArweaveAttestedInstruction({
673
+ return getClaimVaultArweaveAttestedInstruction({
564
674
  escrow: escrowPda,
565
675
  escrowTokenAccount: args.escrowTokenAccount,
566
676
  claimantTokenAccount: args.claimantTokenAccount,
567
- payerTokenAccount: args.payerTokenAccount,
568
677
  claimant: args.claimant,
569
678
  depositor: args.depositor,
570
679
  payer: signer,
571
- messageNonce: escrow.nonce,
680
+ messageNonce: args.messageNonce,
572
681
  }, { programAddress: this.programId });
573
- const ixs = await this.maybeBundleVaultedTransfer(escrow, args, claimIx);
574
- return this.send(ixs, 400_000);
575
682
  }
576
683
  /**
577
684
  * Submit an Ethereum ECDSA signature to release escrowed vault tokens. See
578
- * {@link claimVaultArweave} for the expired/active vault routing semantics.
579
- * Auto-bundles the sibling `vaulted_transfer` ix for active vaults.
685
+ * {@link claimVaultArweave} same lock semantics: vaults are only claimable
686
+ * after `vault_end_timestamp`; active (still-locked) claims throw pre-flight
687
+ * and are rejected on-chain with `VaultStillLocked` (ADR-022 / BD-107).
580
688
  */
581
689
  async claimVaultEthereum(args) {
582
690
  const escrow = await this.requireVaultEscrow(args.depositor, args.assetId);
583
691
  if (escrow.recipientProtocol !== 'ethereum') {
584
692
  throw new Error(`escrow recipient is ${escrow.recipientProtocol}, not ethereum`);
585
693
  }
694
+ assertVaultClaimable(escrow);
586
695
  const signer = this.requireSigner('claimVaultEthereum');
587
696
  const [escrowPda] = await getEscrowVaultPDA(args.depositor, args.assetId, this.programId);
588
697
  const claimIx = getClaimVaultEthereumInstruction({
589
698
  escrow: escrowPda,
590
699
  escrowTokenAccount: args.escrowTokenAccount,
591
700
  claimantTokenAccount: args.claimantTokenAccount,
592
- payerTokenAccount: args.payerTokenAccount,
593
701
  claimant: args.claimant,
594
702
  depositor: args.depositor,
595
703
  payer: signer,
596
704
  messageNonce: escrow.nonce,
597
705
  signature: args.signature,
598
706
  }, { programAddress: this.programId });
599
- const ixs = await this.maybeBundleVaultedTransfer(escrow, args, claimIx);
707
+ const createClaimantAtaIx = await this._createClaimantAtaIfCanonical(args.claimant, args.claimantTokenAccount, escrow.arioMint);
708
+ const ixs = createClaimantAtaIx
709
+ ? [createClaimantAtaIx, claimIx]
710
+ : [claimIx];
600
711
  return this.send(ixs);
601
712
  }
602
713
  /**
603
- * If the vault escrow is still locked (`vaultEndTimestamp` in the future),
604
- * return `[claimIx, vaultedTransferIx]` so the on-chain claim handler can
605
- * see the sibling (via `instructions_sysvar`) and re-vault tokens for the
606
- * claimant. If the vault has expired, just `[claimIx]` — the on-chain
607
- * handler delivers tokens directly to `claimantTokenAccount`.
608
- *
609
- * **Ordering matters at runtime**: `claim` must execute first so it can
610
- * move tokens `escrow → payerTokenAccount`. `vaulted_transfer` then pulls
611
- * from `payerTokenAccount` into the new vault. Reversing the order makes
612
- * `vaulted_transfer` fail with `insufficient funds` because nothing has
613
- * funded `payerTokenAccount` yet. The introspection check in
614
- * `vault_introspect::verify_vaulted_transfer_in_tx` is presence-based
615
- * (reads `instructions_sysvar`) so the *sibling* ordering doesn't matter
616
- * for the check itself — only for atomic execution.
617
- *
618
- * `lockDurationSeconds` is set to the SDK-local `remaining` value. The
619
- * on-chain handler accepts `lock_duration >= remaining_at_execution - 60s`
620
- * (see the introspection function's tolerance), so any modest clock skew
621
- * between client and chain is absorbed.
622
- */
623
714
  /**
624
715
  * Idempotent-create the claimant's canonical ATA when needed.
625
716
  *
626
- * The on-chain claim handler delivers liquid tokens directly to
627
- * `claimantTokenAccount` for expired vaults AND for token escrows.
628
- * For active vaults, the `claim_vault_*` Anchor Accounts struct still
629
- * declares `claimant_token_account: Account<TokenAccount>`, which forces
630
- * Anchor's account-load-time validation to require the account exist
631
- * even though the active path doesn't write to it. Either way: if the
632
- * claimant is a fresh wallet that has never held this mint, the ATA
633
- * doesn't exist and the tx fails with `AccountNotInitialized` (#3012).
717
+ * The claim handler delivers liquid tokens directly to
718
+ * `claimantTokenAccount` (post-ADR-022 there's only the liquid path for
719
+ * vaults). If the claimant is a fresh wallet that has never held this
720
+ * mint, the ATA doesn't exist and the tx fails with `AccountNotInitialized`
721
+ * (#3012).
634
722
  *
635
723
  * Returns `null` when the caller passed a non-canonical
636
724
  * `claimantTokenAccount` (manually-created non-ATA token account,
@@ -643,52 +731,6 @@ export class TokenEscrow {
643
731
  const signer = this.requireSigner('createClaimantAtaIfCanonical');
644
732
  return buildCreateAtaIdempotentIx(signer.address, canonical, claimant, mint);
645
733
  }
646
- async maybeBundleVaultedTransfer(escrow, args, claimIx) {
647
- const nowSeconds = BigInt(Math.floor(Date.now() / 1000));
648
- const remaining = escrow.vaultEndTimestamp - nowSeconds;
649
- if (remaining <= 0n) {
650
- // Expired vault → claim handler delivers liquid to claimantTokenAccount.
651
- // Idempotent-create that ATA if it's the canonical derivation so a
652
- // first-time recipient just works.
653
- const createClaimantAtaIx = await this._createClaimantAtaIfCanonical(args.claimant, args.claimantTokenAccount, escrow.arioMint);
654
- return createClaimantAtaIx ? [createClaimantAtaIx, claimIx] : [claimIx];
655
- }
656
- const signer = this.requireSigner('maybeBundleVaultedTransfer');
657
- const nextId = await this.getNextVaultId(args.claimant);
658
- const [vaultPda] = await getVaultPDA(args.claimant, nextId, this.coreProgram);
659
- const vaultATA = await getAssociatedTokenAddressKit(escrow.arioMint, vaultPda, true);
660
- // Active-vault path: `claim_vault_*` still validates the claimant ATA
661
- // at account-load-time (Anchor `Account<TokenAccount>` constraint),
662
- // even though no liquid is written to it. Idempotent-create so a fresh
663
- // claimant doesn't fail the ix with AccountNotInitialized (#3012).
664
- const createClaimantAtaIx = await this._createClaimantAtaIfCanonical(args.claimant, args.claimantTokenAccount, escrow.arioMint);
665
- // The new vault PDA's ATA must exist before `vaulted_transfer` reads it
666
- // (else `AccountNotInitialized` #3012). Idempotent so a retry after a
667
- // partial-failure tx is safe. Placed after the claim ix to preserve
668
- // the "claim first" tx ordering invariant.
669
- const createVaultAtaIx = buildCreateAtaIdempotentIx(signer.address, vaultATA, vaultPda, escrow.arioMint);
670
- const vaultedIx = await getVaultedTransferInstructionAsync({
671
- vault: vaultPda,
672
- senderTokenAccount: args.payerTokenAccount,
673
- vaultTokenAccount: vaultATA,
674
- recipient: args.claimant,
675
- sender: signer,
676
- amount: escrow.amount,
677
- lockDurationSeconds: remaining,
678
- revocable: escrow.vaultRevocable,
679
- }, { programAddress: this.coreProgram });
680
- const head = createClaimantAtaIx ? [createClaimantAtaIx] : [];
681
- return [...head, claimIx, createVaultAtaIx, vaultedIx];
682
- }
683
- /** Read the recipient's `VaultCounter.nextId`, defaulting to 0n if the
684
- * counter PDA hasn't been initialised yet (first vault for that owner). */
685
- async getNextVaultId(owner) {
686
- const [counterPda] = await getVaultCounterPDA(owner, this.coreProgram);
687
- const account = await fetchMaybeVaultCounter(this.rpc, counterPda, {
688
- commitment: this.commitment,
689
- });
690
- return account.exists ? account.data.nextId : 0n;
691
- }
692
734
  // -------------------------------------------------------------------
693
735
  // Write — cancel
694
736
  // -------------------------------------------------------------------
@@ -1,210 +1,31 @@
1
1
  /**
2
- * AR.IO Solana event decoders consumer-facing API.
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
3
  *
4
- * Anchor `#[event]` emits surface as `Program data: <base64>` log lines
5
- * inside the surrounding instruction's logs. The base64 blob is
6
- * `[discriminator(8) || borsh_payload]`, where the discriminator is
7
- * `sha256("event:<EventName>")[..8]`.
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
8
7
  *
9
- * This module wraps the per-program codecs in
10
- * `sdk/src/solana/generated/<program>/events/` (auto-emitted by
11
- * `sdk/scripts/events-codegen.mjs`) into:
12
- * - a discriminated union `AnyEvent` covering every event the
13
- * AR.IO contracts emit
14
- * - per-program union types for filtering
15
- * - log-walking utilities that route `Program data:` lines back to
16
- * the program that emitted them (so events emitted from a CPI'd
17
- * handler get attributed to the correct program)
18
- * - a typed `parseTransactionEvents(rpc, signature)` helper
8
+ * http://www.apache.org/licenses/LICENSE-2.0
19
9
  *
20
- * Event payloads are returned with `bigint` for u64 / i64 fields and
21
- * `Address` for pubkey fields, matching the rest of the kit-native
22
- * SDK. To narrow on a specific event, use the `name` discriminator or
23
- * the per-event type guards exported alongside the union.
24
- *
25
- * Live event subscription (websocket / Helius / Geyser) is out of
26
- * scope here — this module is the decoder layer that all those
27
- * mechanisms can build on. See `parseTransactionEvents` for the
28
- * pull-based model.
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
29
15
  */
30
- import { getBase64Encoder, } from '@solana/kit';
31
- import { ARIO_ANT_PROGRAM_ADDRESS } from '@ar.io/solana-contracts/ant';
32
- import { ARIO_ANT_ESCROW_PROGRAM_ADDRESS } from '@ar.io/solana-contracts/ant-escrow';
33
- import { ARIO_ARNS_PROGRAM_ADDRESS } from '@ar.io/solana-contracts/arns';
34
- import { ARIO_CORE_PROGRAM_ADDRESS } from '@ar.io/solana-contracts/core';
35
- import { ARIO_GAR_PROGRAM_ADDRESS } from '@ar.io/solana-contracts/gar';
36
- import * as escrowEvents from './generated/ant-escrow/events/index.js';
37
- import * as antEvents from './generated/ant/events/index.js';
38
- import * as arnsEvents from './generated/arns/events/index.js';
39
- import * as coreEvents from './generated/core/events/index.js';
40
- import * as garEvents from './generated/gar/events/index.js';
41
- const PROGRAM_DATA_PREFIX = 'Program data: ';
42
- let DISPATCH = null;
43
- function buildDispatch() {
44
- const table = new Map();
45
- const groups = [
46
- [ARIO_CORE_PROGRAM_ADDRESS, coreEvents],
47
- [ARIO_GAR_PROGRAM_ADDRESS, garEvents],
48
- [ARIO_ARNS_PROGRAM_ADDRESS, arnsEvents],
49
- [ARIO_ANT_PROGRAM_ADDRESS, antEvents],
50
- [ARIO_ANT_ESCROW_PROGRAM_ADDRESS, escrowEvents],
51
- ];
52
- for (const [programId, mod] of groups) {
53
- for (const [exportName, exportValue] of Object.entries(mod)) {
54
- // Discriminators export as `EVENT_NAME_DISCRIMINATOR` constants of
55
- // type Uint8Array. The matching decoder is `getEventNameDecoder`.
56
- if (!exportName.endsWith('_DISCRIMINATOR') ||
57
- !(exportValue instanceof Uint8Array)) {
58
- continue;
59
- }
60
- // Recover the event PascalCase name from the SCREAMING_SNAKE
61
- // discriminator constant: TRANSFER_EVENT_DISCRIMINATOR → TransferEvent
62
- const eventName = screamingSnakeToPascal(exportName.slice(0, -'_DISCRIMINATOR'.length));
63
- const decoderKey = `get${eventName}Decoder`;
64
- const decoderFactory = mod[decoderKey];
65
- if (typeof decoderFactory !== 'function') {
66
- // Should never happen — codegen always emits both consts together —
67
- // but skip defensively rather than crash at import time.
68
- continue;
69
- }
70
- const decoder = decoderFactory.call(null);
71
- const hex = bytesToHex(exportValue);
72
- table.set(hex, {
73
- name: eventName,
74
- programId,
75
- decode: (blob) => decoder.decode(blob),
76
- });
77
- }
78
- }
79
- return table;
80
- }
81
- function dispatch() {
82
- if (DISPATCH === null)
83
- DISPATCH = buildDispatch();
84
- return DISPATCH;
85
- }
86
- export function parseEventsFromLogs(logs, filter) {
87
- const table = dispatch();
88
- const stack = [];
89
- const out = [];
90
- for (const line of logs) {
91
- // Track CPI nesting via the standard Solana log format:
92
- // "Program <pubkey> invoke [N]"
93
- // "Program <pubkey> success"
94
- // "Program <pubkey> failed: ..."
95
- const invoke = line.match(/^Program ([A-HJ-NP-Za-km-z1-9]{32,44}) invoke \[\d+\]$/);
96
- if (invoke) {
97
- stack.push(invoke[1]);
98
- continue;
99
- }
100
- const ended = line.match(/^Program ([A-HJ-NP-Za-km-z1-9]{32,44}) (success|failed:.*)$/);
101
- if (ended) {
102
- // Pop the matching stack frame. Solana guarantees these are
103
- // properly nested.
104
- const top = stack.length > 0 ? stack[stack.length - 1] : undefined;
105
- if (top === ended[1])
106
- stack.pop();
107
- continue;
108
- }
109
- if (!line.startsWith(PROGRAM_DATA_PREFIX))
110
- continue;
111
- const blob = decodeBase64(line.slice(PROGRAM_DATA_PREFIX.length).trim());
112
- if (blob === null || blob.length < 8)
113
- continue;
114
- const hex = bytesToHex(blob.subarray(0, 8));
115
- const entry = table.get(hex);
116
- if (!entry)
117
- continue;
118
- // Use the program at the top of the stack as the emitter. If for
119
- // some reason the stack is empty (malformed logs), fall back to
120
- // the dispatch entry's programId (matches the discriminator's
121
- // declared owner).
122
- const programId = stack.length > 0 ? stack[stack.length - 1] : entry.programId;
123
- const data = entry.decode(blob);
124
- out.push({ programId, name: entry.name, data });
125
- }
126
- if (filter !== undefined) {
127
- return out.filter((e) => e.name === filter);
128
- }
129
- return out;
130
- }
131
16
  /**
132
- * Fetch a transaction by signature and return its decoded events.
17
+ * AR.IO Solana event decoders STUB.
133
18
  *
134
- * Uses `getTransaction` with `maxSupportedTransactionVersion: 0` and
135
- * `commitment: 'confirmed'` by default. Returns `[]` if the tx is
136
- * still pending, missing, or had no logs (rare Anchor programs
137
- * always log).
19
+ * The local event codegen pipeline has been removed. Event decoders will be
20
+ * restored once `@ar.io/solana-contracts` publishes them. Until then, the
21
+ * parse functions return empty arrays and the union types are `never`.
138
22
  */
139
- export async function parseTransactionEvents(rpc, signature, opts = {}) {
140
- const commitment = opts.commitment ?? 'confirmed';
141
- const tx = await rpc
142
- .getTransaction(signature, {
143
- commitment,
144
- maxSupportedTransactionVersion: 0,
145
- encoding: 'json',
146
- })
147
- .send();
148
- const logs = tx?.meta?.logMessages ?? [];
149
- return parseEventsFromLogs(logs);
150
- }
151
- // ---------------------------------------------------------------------------
152
- // Type guards — sugar so `if (isNamePurchasedEvent(ev)) { ev.data.cost ... }`
153
- // narrows correctly without writing `ev.name === 'NamePurchasedEvent'`.
154
- // One per event would be 73 lines of boilerplate; we expose a
155
- // generic `isEvent<N>(ev, name)` instead. Consumers can wrap if they
156
- // want a specific named guard.
157
- // ---------------------------------------------------------------------------
158
- /**
159
- * Generic type-narrowing predicate for any event name.
160
- *
161
- * ```ts
162
- * for (const ev of events) {
163
- * if (isEvent(ev, 'NamePurchasedEvent')) {
164
- * // ev.data is typed as NamePurchasedEvent here
165
- * console.log(ev.data.buyer, ev.data.cost);
166
- * }
167
- * }
168
- * ```
169
- */
170
- export function isEvent(ev, name) {
171
- return ev.name === name;
172
- }
173
- // ---------------------------------------------------------------------------
174
- // Internal helpers (not exported)
175
- // ---------------------------------------------------------------------------
176
- function bytesToHex(bytes) {
177
- let s = '';
178
- for (const b of bytes)
179
- s += b.toString(16).padStart(2, '0');
180
- return s;
23
+ export function parseEventsFromLogs(_logs) {
24
+ return [];
181
25
  }
182
- function screamingSnakeToPascal(s) {
183
- // TRANSFER_EVENT → TransferEvent
184
- return s
185
- .split('_')
186
- .filter((p) => p.length > 0)
187
- .map((p) => p.charAt(0).toUpperCase() + p.slice(1).toLowerCase())
188
- .join('');
26
+ export async function parseTransactionEvents(_rpc, _signature, _opts) {
27
+ return [];
189
28
  }
190
- function decodeBase64(b64) {
191
- // @solana/kit's getBase64Encoder is a codec helper for the *string*
192
- // representation; for raw decoding we use Buffer when running on Node
193
- // (the SDK targets Node 18+) and atob otherwise. Wrap it so callers
194
- // get a predictable Uint8Array regardless of runtime.
195
- try {
196
- if (typeof Buffer !== 'undefined') {
197
- return new Uint8Array(Buffer.from(b64, 'base64'));
198
- }
199
- // Browser path — atob returns a binary string we then unpack.
200
- const bin = atob(b64);
201
- const out = new Uint8Array(bin.length);
202
- for (let i = 0; i < bin.length; i++)
203
- out[i] = bin.charCodeAt(i);
204
- return out;
205
- }
206
- catch {
207
- void getBase64Encoder; // keep the import alive for future kit-native variants
208
- return null;
209
- }
29
+ export function isEvent(ev, _name) {
30
+ return ev.name === _name;
210
31
  }
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
1
16
  /**
2
17
  * Multi-source, multi-gateway funding plan builder + executor for the AR.IO
3
18
  * Solana SDK.
@@ -552,6 +567,7 @@ async function fetchUserWithdrawals(rpc, owner, garProgram) {
552
567
  // 106..107 is_protected: bool — BD-102: protected min-stake exit
553
568
  // vaults are skipped (cannot fund-from)
554
569
  // 107..108 bump: u8
570
+ // 108..111 version: SchemaVersion { major, minor, patch }
555
571
  try {
556
572
  const result = await rpc
557
573
  .getProgramAccounts(garProgram, {
@@ -559,7 +575,7 @@ async function fetchUserWithdrawals(rpc, owner, garProgram) {
559
575
  {
560
576
  memcmp: { offset: 8n, bytes: owner, encoding: 'base58' },
561
577
  },
562
- { dataSize: BigInt(8 + 32 + 8 + 32 + 8 + 8 + 8 + 1 + 1 + 1 + 1) },
578
+ { dataSize: BigInt(8 + 32 + 8 + 32 + 8 + 8 + 8 + 1 + 1 + 1 + 1 + 3) },
563
579
  ],
564
580
  encoding: 'base64',
565
581
  })
@@ -607,6 +623,7 @@ async function fetchUserDelegations(rpc, owner, garProgram) {
607
623
  // 80..88 start_timestamp: i64
608
624
  // 88..104 reward_debt: u128
609
625
  // 104..105 bump: u8
626
+ // 105..108 version: SchemaVersion { major, minor, patch }
610
627
  try {
611
628
  const result = await rpc
612
629
  .getProgramAccounts(garProgram, {
@@ -614,7 +631,7 @@ async function fetchUserDelegations(rpc, owner, garProgram) {
614
631
  {
615
632
  memcmp: { offset: 40n, bytes: owner, encoding: 'base58' },
616
633
  },
617
- { dataSize: BigInt(8 + 32 + 32 + 8 + 8 + 16 + 1) },
634
+ { dataSize: BigInt(8 + 32 + 32 + 8 + 8 + 16 + 1 + 3) },
618
635
  ],
619
636
  encoding: 'base64',
620
637
  })