@trixter-osec/core 0.40.4

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 (487) hide show
  1. package/README.md +10 -0
  2. package/dist/browser/index.js +7217 -0
  3. package/dist/browser/index.js.map +1 -0
  4. package/dist/browser/src/coder/borsh/accounts.d.ts +27 -0
  5. package/dist/browser/src/coder/borsh/accounts.d.ts.map +1 -0
  6. package/dist/browser/src/coder/borsh/event.d.ts +14 -0
  7. package/dist/browser/src/coder/borsh/event.d.ts.map +1 -0
  8. package/dist/browser/src/coder/borsh/idl.d.ts +32 -0
  9. package/dist/browser/src/coder/borsh/idl.d.ts.map +1 -0
  10. package/dist/browser/src/coder/borsh/index.d.ts +33 -0
  11. package/dist/browser/src/coder/borsh/index.d.ts.map +1 -0
  12. package/dist/browser/src/coder/borsh/instruction.d.ts +42 -0
  13. package/dist/browser/src/coder/borsh/instruction.d.ts.map +1 -0
  14. package/dist/browser/src/coder/borsh/types.d.ts +16 -0
  15. package/dist/browser/src/coder/borsh/types.d.ts.map +1 -0
  16. package/dist/browser/src/coder/index.d.ts +43 -0
  17. package/dist/browser/src/coder/index.d.ts.map +1 -0
  18. package/dist/browser/src/coder/system/accounts.d.ts +12 -0
  19. package/dist/browser/src/coder/system/accounts.d.ts.map +1 -0
  20. package/dist/browser/src/coder/system/events.d.ts +9 -0
  21. package/dist/browser/src/coder/system/events.d.ts.map +1 -0
  22. package/dist/browser/src/coder/system/index.d.ts +17 -0
  23. package/dist/browser/src/coder/system/index.d.ts.map +1 -0
  24. package/dist/browser/src/coder/system/instruction.d.ts +8 -0
  25. package/dist/browser/src/coder/system/instruction.d.ts.map +1 -0
  26. package/dist/browser/src/coder/system/types.d.ts +8 -0
  27. package/dist/browser/src/coder/system/types.d.ts.map +1 -0
  28. package/dist/browser/src/error.d.ts +128 -0
  29. package/dist/browser/src/error.d.ts.map +1 -0
  30. package/dist/browser/src/idl.d.ts +215 -0
  31. package/dist/browser/src/idl.d.ts.map +1 -0
  32. package/dist/browser/src/index.d.ts +16 -0
  33. package/dist/browser/src/index.d.ts.map +1 -0
  34. package/dist/browser/src/native/index.d.ts +7 -0
  35. package/dist/browser/src/native/index.d.ts.map +1 -0
  36. package/dist/browser/src/native/system.d.ts +390 -0
  37. package/dist/browser/src/native/system.d.ts.map +1 -0
  38. package/dist/browser/src/nodewallet.d.ts +14 -0
  39. package/dist/browser/src/nodewallet.d.ts.map +1 -0
  40. package/dist/browser/src/program/accounts-resolver.d.ts +63 -0
  41. package/dist/browser/src/program/accounts-resolver.d.ts.map +1 -0
  42. package/dist/browser/src/program/common.d.ts +20 -0
  43. package/dist/browser/src/program/common.d.ts.map +1 -0
  44. package/dist/browser/src/program/context.d.ts +63 -0
  45. package/dist/browser/src/program/context.d.ts.map +1 -0
  46. package/dist/browser/src/program/event.d.ts +59 -0
  47. package/dist/browser/src/program/event.d.ts.map +1 -0
  48. package/dist/browser/src/program/index.d.ts +272 -0
  49. package/dist/browser/src/program/index.d.ts.map +1 -0
  50. package/dist/browser/src/program/namespace/account.d.ts +146 -0
  51. package/dist/browser/src/program/namespace/account.d.ts.map +1 -0
  52. package/dist/browser/src/program/namespace/index.d.ts +35 -0
  53. package/dist/browser/src/program/namespace/index.d.ts.map +1 -0
  54. package/dist/browser/src/program/namespace/instruction.d.ts +57 -0
  55. package/dist/browser/src/program/namespace/instruction.d.ts.map +1 -0
  56. package/dist/browser/src/program/namespace/methods.d.ts +206 -0
  57. package/dist/browser/src/program/namespace/methods.d.ts.map +1 -0
  58. package/dist/browser/src/program/namespace/rpc.d.ts +49 -0
  59. package/dist/browser/src/program/namespace/rpc.d.ts.map +1 -0
  60. package/dist/browser/src/program/namespace/simulate.d.ts +57 -0
  61. package/dist/browser/src/program/namespace/simulate.d.ts.map +1 -0
  62. package/dist/browser/src/program/namespace/transaction.d.ts +42 -0
  63. package/dist/browser/src/program/namespace/transaction.d.ts.map +1 -0
  64. package/dist/browser/src/program/namespace/types.d.ts +153 -0
  65. package/dist/browser/src/program/namespace/types.d.ts.map +1 -0
  66. package/dist/browser/src/program/namespace/views.d.ts +15 -0
  67. package/dist/browser/src/program/namespace/views.d.ts.map +1 -0
  68. package/dist/browser/src/program/token-account-layout.d.ts +2 -0
  69. package/dist/browser/src/program/token-account-layout.d.ts.map +1 -0
  70. package/dist/browser/src/provider.d.ts +104 -0
  71. package/dist/browser/src/provider.d.ts.map +1 -0
  72. package/dist/browser/src/utils/bytes/base64.d.ts +4 -0
  73. package/dist/browser/src/utils/bytes/base64.d.ts.map +1 -0
  74. package/dist/browser/src/utils/bytes/bs58.d.ts +3 -0
  75. package/dist/browser/src/utils/bytes/bs58.d.ts.map +1 -0
  76. package/dist/browser/src/utils/bytes/hex.d.ts +4 -0
  77. package/dist/browser/src/utils/bytes/hex.d.ts.map +1 -0
  78. package/dist/browser/src/utils/bytes/index.d.ts +5 -0
  79. package/dist/browser/src/utils/bytes/index.d.ts.map +1 -0
  80. package/dist/browser/src/utils/bytes/utf8.d.ts +3 -0
  81. package/dist/browser/src/utils/bytes/utf8.d.ts.map +1 -0
  82. package/dist/browser/src/utils/common.d.ts +22 -0
  83. package/dist/browser/src/utils/common.d.ts.map +1 -0
  84. package/dist/browser/src/utils/features.d.ts +3 -0
  85. package/dist/browser/src/utils/features.d.ts.map +1 -0
  86. package/dist/browser/src/utils/index.d.ts +8 -0
  87. package/dist/browser/src/utils/index.d.ts.map +1 -0
  88. package/dist/browser/src/utils/pubkey.d.ts +3 -0
  89. package/dist/browser/src/utils/pubkey.d.ts.map +1 -0
  90. package/dist/browser/src/utils/registry.d.ts +34 -0
  91. package/dist/browser/src/utils/registry.d.ts.map +1 -0
  92. package/dist/browser/src/utils/rpc.d.ts +21 -0
  93. package/dist/browser/src/utils/rpc.d.ts.map +1 -0
  94. package/dist/browser/src/utils/sha256.d.ts +2 -0
  95. package/dist/browser/src/utils/sha256.d.ts.map +1 -0
  96. package/dist/browser/src/utils/token.d.ts +8 -0
  97. package/dist/browser/src/utils/token.d.ts.map +1 -0
  98. package/dist/browser/src/workspace.d.ts +14 -0
  99. package/dist/browser/src/workspace.d.ts.map +1 -0
  100. package/dist/cjs/coder/borsh/accounts.d.ts +27 -0
  101. package/dist/cjs/coder/borsh/accounts.d.ts.map +1 -0
  102. package/dist/cjs/coder/borsh/accounts.js +103 -0
  103. package/dist/cjs/coder/borsh/accounts.js.map +1 -0
  104. package/dist/cjs/coder/borsh/event.d.ts +14 -0
  105. package/dist/cjs/coder/borsh/event.d.ts.map +1 -0
  106. package/dist/cjs/coder/borsh/event.js +78 -0
  107. package/dist/cjs/coder/borsh/event.js.map +1 -0
  108. package/dist/cjs/coder/borsh/idl.d.ts +32 -0
  109. package/dist/cjs/coder/borsh/idl.d.ts.map +1 -0
  110. package/dist/cjs/coder/borsh/idl.js +419 -0
  111. package/dist/cjs/coder/borsh/idl.js.map +1 -0
  112. package/dist/cjs/coder/borsh/index.d.ts +33 -0
  113. package/dist/cjs/coder/borsh/index.d.ts.map +1 -0
  114. package/dist/cjs/coder/borsh/index.js +27 -0
  115. package/dist/cjs/coder/borsh/index.js.map +1 -0
  116. package/dist/cjs/coder/borsh/instruction.d.ts +42 -0
  117. package/dist/cjs/coder/borsh/instruction.d.ts.map +1 -0
  118. package/dist/cjs/coder/borsh/instruction.js +274 -0
  119. package/dist/cjs/coder/borsh/instruction.js.map +1 -0
  120. package/dist/cjs/coder/borsh/types.d.ts +16 -0
  121. package/dist/cjs/coder/borsh/types.d.ts.map +1 -0
  122. package/dist/cjs/coder/borsh/types.js +42 -0
  123. package/dist/cjs/coder/borsh/types.js.map +1 -0
  124. package/dist/cjs/coder/index.d.ts +43 -0
  125. package/dist/cjs/coder/index.d.ts.map +1 -0
  126. package/dist/cjs/coder/index.js +19 -0
  127. package/dist/cjs/coder/index.js.map +1 -0
  128. package/dist/cjs/coder/system/accounts.d.ts +12 -0
  129. package/dist/cjs/coder/system/accounts.d.ts.map +1 -0
  130. package/dist/cjs/coder/system/accounts.js +107 -0
  131. package/dist/cjs/coder/system/accounts.js.map +1 -0
  132. package/dist/cjs/coder/system/events.d.ts +9 -0
  133. package/dist/cjs/coder/system/events.d.ts.map +1 -0
  134. package/dist/cjs/coder/system/events.js +11 -0
  135. package/dist/cjs/coder/system/events.js.map +1 -0
  136. package/dist/cjs/coder/system/index.d.ts +17 -0
  137. package/dist/cjs/coder/system/index.d.ts.map +1 -0
  138. package/dist/cjs/coder/system/index.js +20 -0
  139. package/dist/cjs/coder/system/index.js.map +1 -0
  140. package/dist/cjs/coder/system/instruction.d.ts +8 -0
  141. package/dist/cjs/coder/system/instruction.d.ts.map +1 -0
  142. package/dist/cjs/coder/system/instruction.js +242 -0
  143. package/dist/cjs/coder/system/instruction.js.map +1 -0
  144. package/dist/cjs/coder/system/types.d.ts +8 -0
  145. package/dist/cjs/coder/system/types.d.ts.map +1 -0
  146. package/dist/cjs/coder/system/types.js +14 -0
  147. package/dist/cjs/coder/system/types.js.map +1 -0
  148. package/dist/cjs/error.d.ts +128 -0
  149. package/dist/cjs/error.d.ts.map +1 -0
  150. package/dist/cjs/error.js +568 -0
  151. package/dist/cjs/error.js.map +1 -0
  152. package/dist/cjs/idl.d.ts +215 -0
  153. package/dist/cjs/idl.d.ts.map +1 -0
  154. package/dist/cjs/idl.js +112 -0
  155. package/dist/cjs/idl.js.map +1 -0
  156. package/dist/cjs/index.d.ts +16 -0
  157. package/dist/cjs/index.d.ts.map +1 -0
  158. package/dist/cjs/index.js +51 -0
  159. package/dist/cjs/index.js.map +1 -0
  160. package/dist/cjs/native/index.d.ts +7 -0
  161. package/dist/cjs/native/index.d.ts.map +1 -0
  162. package/dist/cjs/native/index.js +11 -0
  163. package/dist/cjs/native/index.js.map +1 -0
  164. package/dist/cjs/native/system.d.ts +390 -0
  165. package/dist/cjs/native/system.d.ts.map +1 -0
  166. package/dist/cjs/native/system.js +394 -0
  167. package/dist/cjs/native/system.js.map +1 -0
  168. package/dist/cjs/nodewallet.d.ts +14 -0
  169. package/dist/cjs/nodewallet.d.ts.map +1 -0
  170. package/dist/cjs/nodewallet.js +48 -0
  171. package/dist/cjs/nodewallet.js.map +1 -0
  172. package/dist/cjs/program/accounts-resolver.d.ts +63 -0
  173. package/dist/cjs/program/accounts-resolver.d.ts.map +1 -0
  174. package/dist/cjs/program/accounts-resolver.js +437 -0
  175. package/dist/cjs/program/accounts-resolver.js.map +1 -0
  176. package/dist/cjs/program/common.d.ts +20 -0
  177. package/dist/cjs/program/common.d.ts.map +1 -0
  178. package/dist/cjs/program/common.js +49 -0
  179. package/dist/cjs/program/common.js.map +1 -0
  180. package/dist/cjs/program/context.d.ts +63 -0
  181. package/dist/cjs/program/context.d.ts.map +1 -0
  182. package/dist/cjs/program/context.js +16 -0
  183. package/dist/cjs/program/context.js.map +1 -0
  184. package/dist/cjs/program/event.d.ts +59 -0
  185. package/dist/cjs/program/event.d.ts.map +1 -0
  186. package/dist/cjs/program/event.js +227 -0
  187. package/dist/cjs/program/event.js.map +1 -0
  188. package/dist/cjs/program/index.d.ts +272 -0
  189. package/dist/cjs/program/index.d.ts.map +1 -0
  190. package/dist/cjs/program/index.js +177 -0
  191. package/dist/cjs/program/index.js.map +1 -0
  192. package/dist/cjs/program/namespace/account.d.ts +146 -0
  193. package/dist/cjs/program/namespace/account.d.ts.map +1 -0
  194. package/dist/cjs/program/namespace/account.js +257 -0
  195. package/dist/cjs/program/namespace/account.js.map +1 -0
  196. package/dist/cjs/program/namespace/index.d.ts +35 -0
  197. package/dist/cjs/program/namespace/index.d.ts.map +1 -0
  198. package/dist/cjs/program/namespace/index.js +63 -0
  199. package/dist/cjs/program/namespace/index.js.map +1 -0
  200. package/dist/cjs/program/namespace/instruction.d.ts +57 -0
  201. package/dist/cjs/program/namespace/instruction.d.ts.map +1 -0
  202. package/dist/cjs/program/namespace/instruction.js +94 -0
  203. package/dist/cjs/program/namespace/instruction.js.map +1 -0
  204. package/dist/cjs/program/namespace/methods.d.ts +206 -0
  205. package/dist/cjs/program/namespace/methods.d.ts.map +1 -0
  206. package/dist/cjs/program/namespace/methods.js +309 -0
  207. package/dist/cjs/program/namespace/methods.js.map +1 -0
  208. package/dist/cjs/program/namespace/rpc.d.ts +49 -0
  209. package/dist/cjs/program/namespace/rpc.d.ts.map +1 -0
  210. package/dist/cjs/program/namespace/rpc.js +25 -0
  211. package/dist/cjs/program/namespace/rpc.js.map +1 -0
  212. package/dist/cjs/program/namespace/simulate.d.ts +57 -0
  213. package/dist/cjs/program/namespace/simulate.d.ts.map +1 -0
  214. package/dist/cjs/program/namespace/simulate.js +42 -0
  215. package/dist/cjs/program/namespace/simulate.js.map +1 -0
  216. package/dist/cjs/program/namespace/transaction.d.ts +42 -0
  217. package/dist/cjs/program/namespace/transaction.d.ts.map +1 -0
  218. package/dist/cjs/program/namespace/transaction.js +24 -0
  219. package/dist/cjs/program/namespace/transaction.js.map +1 -0
  220. package/dist/cjs/program/namespace/types.d.ts +153 -0
  221. package/dist/cjs/program/namespace/types.d.ts.map +1 -0
  222. package/dist/cjs/program/namespace/types.js +3 -0
  223. package/dist/cjs/program/namespace/types.js.map +1 -0
  224. package/dist/cjs/program/namespace/views.d.ts +15 -0
  225. package/dist/cjs/program/namespace/views.d.ts.map +1 -0
  226. package/dist/cjs/program/namespace/views.js +30 -0
  227. package/dist/cjs/program/namespace/views.js.map +1 -0
  228. package/dist/cjs/program/token-account-layout.d.ts +2 -0
  229. package/dist/cjs/program/token-account-layout.d.ts.map +1 -0
  230. package/dist/cjs/program/token-account-layout.js +136 -0
  231. package/dist/cjs/program/token-account-layout.js.map +1 -0
  232. package/dist/cjs/provider.d.ts +104 -0
  233. package/dist/cjs/provider.d.ts.map +1 -0
  234. package/dist/cjs/provider.js +312 -0
  235. package/dist/cjs/provider.js.map +1 -0
  236. package/dist/cjs/utils/bytes/base64.d.ts +4 -0
  237. package/dist/cjs/utils/bytes/base64.d.ts.map +1 -0
  238. package/dist/cjs/utils/bytes/base64.js +12 -0
  239. package/dist/cjs/utils/bytes/base64.js.map +1 -0
  240. package/dist/cjs/utils/bytes/bs58.d.ts +3 -0
  241. package/dist/cjs/utils/bytes/bs58.d.ts.map +1 -0
  242. package/dist/cjs/utils/bytes/bs58.js +15 -0
  243. package/dist/cjs/utils/bytes/bs58.js.map +1 -0
  244. package/dist/cjs/utils/bytes/hex.d.ts +4 -0
  245. package/dist/cjs/utils/bytes/hex.d.ts.map +1 -0
  246. package/dist/cjs/utils/bytes/hex.js +22 -0
  247. package/dist/cjs/utils/bytes/hex.js.map +1 -0
  248. package/dist/cjs/utils/bytes/index.d.ts +5 -0
  249. package/dist/cjs/utils/bytes/index.d.ts.map +1 -0
  250. package/dist/cjs/utils/bytes/index.js +31 -0
  251. package/dist/cjs/utils/bytes/index.js.map +1 -0
  252. package/dist/cjs/utils/bytes/utf8.d.ts +3 -0
  253. package/dist/cjs/utils/bytes/utf8.d.ts.map +1 -0
  254. package/dist/cjs/utils/bytes/utf8.js +18 -0
  255. package/dist/cjs/utils/bytes/utf8.js.map +1 -0
  256. package/dist/cjs/utils/common.d.ts +22 -0
  257. package/dist/cjs/utils/common.d.ts.map +1 -0
  258. package/dist/cjs/utils/common.js +32 -0
  259. package/dist/cjs/utils/common.js.map +1 -0
  260. package/dist/cjs/utils/features.d.ts +3 -0
  261. package/dist/cjs/utils/features.d.ts.map +1 -0
  262. package/dist/cjs/utils/features.js +16 -0
  263. package/dist/cjs/utils/features.js.map +1 -0
  264. package/dist/cjs/utils/index.d.ts +8 -0
  265. package/dist/cjs/utils/index.d.ts.map +1 -0
  266. package/dist/cjs/utils/index.js +34 -0
  267. package/dist/cjs/utils/index.js.map +1 -0
  268. package/dist/cjs/utils/pubkey.d.ts +3 -0
  269. package/dist/cjs/utils/pubkey.d.ts.map +1 -0
  270. package/dist/cjs/utils/pubkey.js +16 -0
  271. package/dist/cjs/utils/pubkey.js.map +1 -0
  272. package/dist/cjs/utils/registry.d.ts +34 -0
  273. package/dist/cjs/utils/registry.d.ts.map +1 -0
  274. package/dist/cjs/utils/registry.js +88 -0
  275. package/dist/cjs/utils/registry.js.map +1 -0
  276. package/dist/cjs/utils/rpc.d.ts +21 -0
  277. package/dist/cjs/utils/rpc.d.ts.map +1 -0
  278. package/dist/cjs/utils/rpc.js +167 -0
  279. package/dist/cjs/utils/rpc.js.map +1 -0
  280. package/dist/cjs/utils/sha256.d.ts +2 -0
  281. package/dist/cjs/utils/sha256.d.ts.map +1 -0
  282. package/dist/cjs/utils/sha256.js +8 -0
  283. package/dist/cjs/utils/sha256.js.map +1 -0
  284. package/dist/cjs/utils/token.d.ts +8 -0
  285. package/dist/cjs/utils/token.d.ts.map +1 -0
  286. package/dist/cjs/utils/token.js +11 -0
  287. package/dist/cjs/utils/token.js.map +1 -0
  288. package/dist/cjs/workspace.d.ts +14 -0
  289. package/dist/cjs/workspace.d.ts.map +1 -0
  290. package/dist/cjs/workspace.js +98 -0
  291. package/dist/cjs/workspace.js.map +1 -0
  292. package/dist/esm/coder/borsh/accounts.d.ts +27 -0
  293. package/dist/esm/coder/borsh/accounts.d.ts.map +1 -0
  294. package/dist/esm/coder/borsh/accounts.js +96 -0
  295. package/dist/esm/coder/borsh/accounts.js.map +1 -0
  296. package/dist/esm/coder/borsh/event.d.ts +14 -0
  297. package/dist/esm/coder/borsh/event.d.ts.map +1 -0
  298. package/dist/esm/coder/borsh/event.js +51 -0
  299. package/dist/esm/coder/borsh/event.js.map +1 -0
  300. package/dist/esm/coder/borsh/idl.d.ts +32 -0
  301. package/dist/esm/coder/borsh/idl.d.ts.map +1 -0
  302. package/dist/esm/coder/borsh/idl.js +392 -0
  303. package/dist/esm/coder/borsh/idl.js.map +1 -0
  304. package/dist/esm/coder/borsh/index.d.ts +33 -0
  305. package/dist/esm/coder/borsh/index.d.ts.map +1 -0
  306. package/dist/esm/coder/borsh/index.js +20 -0
  307. package/dist/esm/coder/borsh/index.js.map +1 -0
  308. package/dist/esm/coder/borsh/instruction.d.ts +42 -0
  309. package/dist/esm/coder/borsh/instruction.d.ts.map +1 -0
  310. package/dist/esm/coder/borsh/instruction.js +244 -0
  311. package/dist/esm/coder/borsh/instruction.js.map +1 -0
  312. package/dist/esm/coder/borsh/types.d.ts +16 -0
  313. package/dist/esm/coder/borsh/types.d.ts.map +1 -0
  314. package/dist/esm/coder/borsh/types.js +38 -0
  315. package/dist/esm/coder/borsh/types.js.map +1 -0
  316. package/dist/esm/coder/index.d.ts +43 -0
  317. package/dist/esm/coder/index.d.ts.map +1 -0
  318. package/dist/esm/coder/index.js +3 -0
  319. package/dist/esm/coder/index.js.map +1 -0
  320. package/dist/esm/coder/system/accounts.d.ts +12 -0
  321. package/dist/esm/coder/system/accounts.d.ts.map +1 -0
  322. package/dist/esm/coder/system/accounts.js +80 -0
  323. package/dist/esm/coder/system/accounts.js.map +1 -0
  324. package/dist/esm/coder/system/events.d.ts +9 -0
  325. package/dist/esm/coder/system/events.d.ts.map +1 -0
  326. package/dist/esm/coder/system/events.js +7 -0
  327. package/dist/esm/coder/system/events.js.map +1 -0
  328. package/dist/esm/coder/system/index.d.ts +17 -0
  329. package/dist/esm/coder/system/index.d.ts.map +1 -0
  330. package/dist/esm/coder/system/index.js +16 -0
  331. package/dist/esm/coder/system/index.js.map +1 -0
  332. package/dist/esm/coder/system/instruction.d.ts +8 -0
  333. package/dist/esm/coder/system/instruction.d.ts.map +1 -0
  334. package/dist/esm/coder/system/instruction.js +212 -0
  335. package/dist/esm/coder/system/instruction.js.map +1 -0
  336. package/dist/esm/coder/system/types.d.ts +8 -0
  337. package/dist/esm/coder/system/types.d.ts.map +1 -0
  338. package/dist/esm/coder/system/types.js +10 -0
  339. package/dist/esm/coder/system/types.js.map +1 -0
  340. package/dist/esm/error.d.ts +128 -0
  341. package/dist/esm/error.d.ts.map +1 -0
  342. package/dist/esm/error.js +537 -0
  343. package/dist/esm/error.js.map +1 -0
  344. package/dist/esm/idl.d.ts +215 -0
  345. package/dist/esm/idl.d.ts.map +1 -0
  346. package/dist/esm/idl.js +77 -0
  347. package/dist/esm/idl.js.map +1 -0
  348. package/dist/esm/index.d.ts +16 -0
  349. package/dist/esm/index.d.ts.map +1 -0
  350. package/dist/esm/index.js +15 -0
  351. package/dist/esm/index.js.map +1 -0
  352. package/dist/esm/native/index.d.ts +7 -0
  353. package/dist/esm/native/index.d.ts.map +1 -0
  354. package/dist/esm/native/index.js +7 -0
  355. package/dist/esm/native/index.js.map +1 -0
  356. package/dist/esm/native/system.d.ts +390 -0
  357. package/dist/esm/native/system.d.ts.map +1 -0
  358. package/dist/esm/native/system.js +389 -0
  359. package/dist/esm/native/system.js.map +1 -0
  360. package/dist/esm/nodewallet.d.ts +14 -0
  361. package/dist/esm/nodewallet.d.ts.map +1 -0
  362. package/dist/esm/nodewallet.js +45 -0
  363. package/dist/esm/nodewallet.js.map +1 -0
  364. package/dist/esm/program/accounts-resolver.d.ts +63 -0
  365. package/dist/esm/program/accounts-resolver.d.ts.map +1 -0
  366. package/dist/esm/program/accounts-resolver.js +429 -0
  367. package/dist/esm/program/accounts-resolver.js.map +1 -0
  368. package/dist/esm/program/common.d.ts +20 -0
  369. package/dist/esm/program/common.d.ts.map +1 -0
  370. package/dist/esm/program/common.js +43 -0
  371. package/dist/esm/program/common.js.map +1 -0
  372. package/dist/esm/program/context.d.ts +63 -0
  373. package/dist/esm/program/context.d.ts.map +1 -0
  374. package/dist/esm/program/context.js +13 -0
  375. package/dist/esm/program/context.js.map +1 -0
  376. package/dist/esm/program/event.d.ts +59 -0
  377. package/dist/esm/program/event.d.ts.map +1 -0
  378. package/dist/esm/program/event.js +222 -0
  379. package/dist/esm/program/event.js.map +1 -0
  380. package/dist/esm/program/index.d.ts +272 -0
  381. package/dist/esm/program/index.d.ts.map +1 -0
  382. package/dist/esm/program/index.js +156 -0
  383. package/dist/esm/program/index.js.map +1 -0
  384. package/dist/esm/program/namespace/account.d.ts +146 -0
  385. package/dist/esm/program/namespace/account.d.ts.map +1 -0
  386. package/dist/esm/program/namespace/account.js +226 -0
  387. package/dist/esm/program/namespace/account.js.map +1 -0
  388. package/dist/esm/program/namespace/index.d.ts +35 -0
  389. package/dist/esm/program/namespace/index.d.ts.map +1 -0
  390. package/dist/esm/program/namespace/index.js +54 -0
  391. package/dist/esm/program/namespace/index.js.map +1 -0
  392. package/dist/esm/program/namespace/instruction.d.ts +57 -0
  393. package/dist/esm/program/namespace/instruction.d.ts.map +1 -0
  394. package/dist/esm/program/namespace/instruction.js +68 -0
  395. package/dist/esm/program/namespace/instruction.js.map +1 -0
  396. package/dist/esm/program/namespace/methods.d.ts +206 -0
  397. package/dist/esm/program/namespace/methods.d.ts.map +1 -0
  398. package/dist/esm/program/namespace/methods.js +302 -0
  399. package/dist/esm/program/namespace/methods.js.map +1 -0
  400. package/dist/esm/program/namespace/rpc.d.ts +49 -0
  401. package/dist/esm/program/namespace/rpc.d.ts.map +1 -0
  402. package/dist/esm/program/namespace/rpc.js +22 -0
  403. package/dist/esm/program/namespace/rpc.js.map +1 -0
  404. package/dist/esm/program/namespace/simulate.d.ts +57 -0
  405. package/dist/esm/program/namespace/simulate.d.ts.map +1 -0
  406. package/dist/esm/program/namespace/simulate.js +39 -0
  407. package/dist/esm/program/namespace/simulate.js.map +1 -0
  408. package/dist/esm/program/namespace/transaction.d.ts +42 -0
  409. package/dist/esm/program/namespace/transaction.d.ts.map +1 -0
  410. package/dist/esm/program/namespace/transaction.js +21 -0
  411. package/dist/esm/program/namespace/transaction.js.map +1 -0
  412. package/dist/esm/program/namespace/types.d.ts +153 -0
  413. package/dist/esm/program/namespace/types.d.ts.map +1 -0
  414. package/dist/esm/program/namespace/types.js +2 -0
  415. package/dist/esm/program/namespace/types.js.map +1 -0
  416. package/dist/esm/program/namespace/views.d.ts +15 -0
  417. package/dist/esm/program/namespace/views.d.ts.map +1 -0
  418. package/dist/esm/program/namespace/views.js +27 -0
  419. package/dist/esm/program/namespace/views.js.map +1 -0
  420. package/dist/esm/program/token-account-layout.d.ts +2 -0
  421. package/dist/esm/program/token-account-layout.d.ts.map +1 -0
  422. package/dist/esm/program/token-account-layout.js +107 -0
  423. package/dist/esm/program/token-account-layout.js.map +1 -0
  424. package/dist/esm/provider.d.ts +104 -0
  425. package/dist/esm/provider.d.ts.map +1 -0
  426. package/dist/esm/provider.js +306 -0
  427. package/dist/esm/provider.js.map +1 -0
  428. package/dist/esm/utils/bytes/base64.d.ts +4 -0
  429. package/dist/esm/utils/bytes/base64.d.ts.map +1 -0
  430. package/dist/esm/utils/bytes/base64.js +8 -0
  431. package/dist/esm/utils/bytes/base64.js.map +1 -0
  432. package/dist/esm/utils/bytes/bs58.d.ts +3 -0
  433. package/dist/esm/utils/bytes/bs58.d.ts.map +1 -0
  434. package/dist/esm/utils/bytes/bs58.js +8 -0
  435. package/dist/esm/utils/bytes/bs58.js.map +1 -0
  436. package/dist/esm/utils/bytes/hex.d.ts +4 -0
  437. package/dist/esm/utils/bytes/hex.d.ts.map +1 -0
  438. package/dist/esm/utils/bytes/hex.js +18 -0
  439. package/dist/esm/utils/bytes/hex.js.map +1 -0
  440. package/dist/esm/utils/bytes/index.d.ts +5 -0
  441. package/dist/esm/utils/bytes/index.d.ts.map +1 -0
  442. package/dist/esm/utils/bytes/index.js +5 -0
  443. package/dist/esm/utils/bytes/index.js.map +1 -0
  444. package/dist/esm/utils/bytes/utf8.d.ts +3 -0
  445. package/dist/esm/utils/bytes/utf8.d.ts.map +1 -0
  446. package/dist/esm/utils/bytes/utf8.js +14 -0
  447. package/dist/esm/utils/bytes/utf8.js.map +1 -0
  448. package/dist/esm/utils/common.d.ts +22 -0
  449. package/dist/esm/utils/common.d.ts.map +1 -0
  450. package/dist/esm/utils/common.js +27 -0
  451. package/dist/esm/utils/common.js.map +1 -0
  452. package/dist/esm/utils/features.d.ts +3 -0
  453. package/dist/esm/utils/features.d.ts.map +1 -0
  454. package/dist/esm/utils/features.js +12 -0
  455. package/dist/esm/utils/features.js.map +1 -0
  456. package/dist/esm/utils/index.d.ts +8 -0
  457. package/dist/esm/utils/index.d.ts.map +1 -0
  458. package/dist/esm/utils/index.js +8 -0
  459. package/dist/esm/utils/index.js.map +1 -0
  460. package/dist/esm/utils/pubkey.d.ts +3 -0
  461. package/dist/esm/utils/pubkey.d.ts.map +1 -0
  462. package/dist/esm/utils/pubkey.js +13 -0
  463. package/dist/esm/utils/pubkey.js.map +1 -0
  464. package/dist/esm/utils/registry.d.ts +34 -0
  465. package/dist/esm/utils/registry.d.ts.map +1 -0
  466. package/dist/esm/utils/registry.js +57 -0
  467. package/dist/esm/utils/registry.js.map +1 -0
  468. package/dist/esm/utils/rpc.d.ts +21 -0
  469. package/dist/esm/utils/rpc.d.ts.map +1 -0
  470. package/dist/esm/utils/rpc.js +161 -0
  471. package/dist/esm/utils/rpc.js.map +1 -0
  472. package/dist/esm/utils/sha256.d.ts +2 -0
  473. package/dist/esm/utils/sha256.d.ts.map +1 -0
  474. package/dist/esm/utils/sha256.js +5 -0
  475. package/dist/esm/utils/sha256.js.map +1 -0
  476. package/dist/esm/utils/token.d.ts +8 -0
  477. package/dist/esm/utils/token.d.ts.map +1 -0
  478. package/dist/esm/utils/token.js +7 -0
  479. package/dist/esm/utils/token.js.map +1 -0
  480. package/dist/esm/workspace.d.ts +14 -0
  481. package/dist/esm/workspace.d.ts.map +1 -0
  482. package/dist/esm/workspace.js +70 -0
  483. package/dist/esm/workspace.js.map +1 -0
  484. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  485. package/dist/tsconfig.tsbuildinfo +1 -0
  486. package/package.json +84 -0
  487. package/types/buffer-layout/index.d.ts +88 -0
@@ -0,0 +1,153 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import BN from "bn.js";
3
+ import { Idl, IdlInstructionAccounts as IdlInstructionAccounts, IdlInstructionAccountItem, IdlField, IdlInstruction, IdlType, IdlTypeDef, IdlTypeDefTyEnum, IdlTypeDefTyStruct, IdlTypeDefTyType, IdlDefinedFields, IdlDefinedFieldsNamed, IdlDefinedFieldsTuple, IdlArrayLen } from "../../idl";
4
+ import { Accounts, Context } from "../context";
5
+ import { MethodsBuilder } from "./methods";
6
+ /**
7
+ * All instructions for an IDL.
8
+ */
9
+ export type AllInstructions<I extends Idl> = I["instructions"][number];
10
+ /**
11
+ * Returns a type of instruction name to the IdlInstruction.
12
+ */
13
+ type InstructionMap<I extends IdlInstruction> = {
14
+ [K in I["name"]]: I & {
15
+ name: K;
16
+ };
17
+ };
18
+ /**
19
+ * Returns a type of instruction name to the IdlInstruction.
20
+ */
21
+ export type AllInstructionsMap<I extends Idl> = InstructionMap<AllInstructions<I>>;
22
+ /**
23
+ * All accounts for an IDL.
24
+ */
25
+ export type AllAccounts<I extends Idl> = ResolveIdlTypePointer<I, "accounts">;
26
+ /**
27
+ * Returns a type of instruction name to the IdlInstruction.
28
+ */
29
+ type AccountMap<I extends IdlTypeDef[]> = {
30
+ [K in I[number]["name"]]: I & {
31
+ name: K;
32
+ };
33
+ };
34
+ /**
35
+ * Returns a type of instruction name to the IdlInstruction.
36
+ */
37
+ export type AllAccountsMap<I extends Idl> = AccountMap<AllAccounts<I>>;
38
+ /**
39
+ * All events for an IDL.
40
+ */
41
+ export type AllEvents<I extends Idl> = ResolveIdlTypePointer<I, "events">;
42
+ export type MakeInstructionsNamespace<IDL extends Idl, I extends IdlInstruction, Ret, Mk extends {
43
+ [M in keyof InstructionMap<I>]: unknown;
44
+ } = {
45
+ [M in keyof InstructionMap<I>]: unknown;
46
+ }> = {
47
+ [M in keyof InstructionMap<I>]: InstructionContextFn<IDL, InstructionMap<I>[M], Ret> & Mk[M];
48
+ };
49
+ export type MakeMethodsNamespace<IDL extends Idl, I extends IdlInstruction> = {
50
+ [M in keyof InstructionMap<I>]: MethodsFn<IDL, InstructionMap<I>[M], MethodsBuilder<IDL, InstructionMap<I>[M]>>;
51
+ };
52
+ export type InstructionContextFn<IDL extends Idl, I extends AllInstructions<IDL>, Ret> = (...args: InstructionContextFnArgs<IDL, I>) => Ret;
53
+ export type InstructionContextFnArgs<IDL extends Idl, I extends IDL["instructions"][number]> = [
54
+ ...ArgsTuple<I["args"], IdlTypes<IDL>>,
55
+ Context<Accounts<I["accounts"][number]>>
56
+ ];
57
+ export type InstructionAccountAddresses<IDL extends Idl, I extends AllInstructions<IDL>> = InstructionAccountsAddresses<I["accounts"][number]>;
58
+ type InstructionAccountsAddresses<A extends IdlInstructionAccountItem = IdlInstructionAccountItem> = {
59
+ [N in A["name"]]: InstructionAccountsAddress<A & {
60
+ name: N;
61
+ }>;
62
+ };
63
+ type InstructionAccountsAddress<A extends IdlInstructionAccountItem> = A extends IdlInstructionAccounts ? InstructionAccountsAddresses<A["accounts"][number]> : PublicKey;
64
+ export type MethodsFn<IDL extends Idl, I extends IDL["instructions"][number], Ret> = (...args: ArgsTuple<I["args"], IdlTypes<IDL>>) => Ret;
65
+ type TypeMap = {
66
+ pubkey: PublicKey;
67
+ bool: boolean;
68
+ string: string;
69
+ bytes: Buffer;
70
+ } & {
71
+ [K in "u8" | "i8" | "u16" | "i16" | "u32" | "i32" | "f32" | "f64"]: number;
72
+ } & {
73
+ [K in "u64" | "i64" | "u128" | "i128" | "u256" | "i256"]: BN;
74
+ };
75
+ export type DecodeType<T extends IdlType, Defined> = IdlType extends T ? unknown : T extends keyof TypeMap ? TypeMap[T] : T extends {
76
+ defined: {
77
+ name: keyof Defined;
78
+ };
79
+ } ? Defined[T["defined"]["name"]] : T extends {
80
+ option: IdlType;
81
+ } ? DecodeType<T["option"], Defined> | null : T extends {
82
+ coption: IdlType;
83
+ } ? DecodeType<T["coption"], Defined> | null : T extends {
84
+ vec: IdlType;
85
+ } ? DecodeType<T["vec"], Defined>[] : T extends {
86
+ array: [defined: IdlType, size: IdlArrayLen];
87
+ } ? DecodeType<T["array"][0], Defined>[] : unknown;
88
+ /**
89
+ * Tuple of arguments.
90
+ */
91
+ type ArgsTuple<A extends IdlField[], Defined> = {
92
+ [K in keyof A]: A[K] extends IdlField ? DecodeType<A[K]["type"], Defined> : unknown;
93
+ } & unknown[];
94
+ /**
95
+ * flat {a: number, b: {c: string}} into number | string
96
+ */
97
+ type UnboxToUnion<T> = T extends (infer U)[] ? UnboxToUnion<U> : T extends Record<string, never> ? "__empty_object__" : T extends Record<string, infer V> ? UnboxToUnion<V> : T;
98
+ type DecodeDefinedField<F, Defined> = F extends IdlType ? DecodeType<F, Defined> : never;
99
+ /**
100
+ * decode enum variant: named or tuple
101
+ */
102
+ type DecodeDefinedFields<F extends IdlDefinedFields, Defined> = F extends IdlDefinedFieldsNamed ? {
103
+ [F2 in F[number] as F2["name"]]: DecodeDefinedField<F2["type"], Defined>;
104
+ } : F extends IdlDefinedFieldsTuple ? {
105
+ [F3 in keyof F as Exclude<F3, keyof unknown[]>]: DecodeDefinedField<F[F3], Defined>;
106
+ } : Record<string, never>;
107
+ type DecodeEnumVariants<I extends IdlTypeDefTyEnum, Defined> = {
108
+ [V in I["variants"][number] as V["name"]]: DecodeDefinedFields<NonNullable<V["fields"]>, Defined>;
109
+ };
110
+ type ValueOf<T> = T[keyof T];
111
+ type XorEnumVariants<T extends Record<string, unknown>> = ValueOf<{
112
+ [K1 in keyof T]: {
113
+ [K2 in Exclude<keyof T, K1>]?: never;
114
+ } & {
115
+ [K2 in K1]: T[K2];
116
+ };
117
+ }>;
118
+ type DecodeEnum<I extends IdlTypeDefTyEnum, Defined> = XorEnumVariants<DecodeEnumVariants<I, Defined>>;
119
+ type DecodeStruct<I extends IdlTypeDefTyStruct, Defined> = DecodeDefinedFields<NonNullable<I["fields"]>, Defined>;
120
+ type DecodeAlias<I extends IdlTypeDefTyType, Defined> = DecodeType<I["alias"], Defined>;
121
+ export type TypeDef<I extends IdlTypeDef, Defined> = I["type"] extends IdlTypeDefTyEnum ? DecodeEnum<I["type"], Defined> : I["type"] extends IdlTypeDefTyStruct ? DecodeStruct<I["type"], Defined> : I["type"] extends IdlTypeDefTyType ? DecodeAlias<I["type"], Defined> : never;
122
+ type TypeDefDictionary<T extends IdlTypeDef[], Defined> = {
123
+ [K in T[number] as K["name"]]: TypeDef<K, Defined>;
124
+ };
125
+ type DecodedHelper<T extends IdlTypeDef[], Defined> = {
126
+ [D in T[number] as D["name"]]: TypeDef<D, Defined>;
127
+ };
128
+ type UnknownType = "__unknown_defined_type__";
129
+ /**
130
+ * Empty "defined" object to produce `UnknownType` instead of never/unknown
131
+ * during IDL types decoding.
132
+ */
133
+ type EmptyDefined = Record<UnknownType, never>;
134
+ type RecursiveDepth2<T extends IdlTypeDef[], Defined = EmptyDefined, Decoded = DecodedHelper<T, Defined>> = UnknownType extends UnboxToUnion<Decoded> ? RecursiveDepth3<T, DecodedHelper<T, Defined>> : Decoded;
135
+ type RecursiveDepth3<T extends IdlTypeDef[], Defined = EmptyDefined, Decoded = DecodedHelper<T, Defined>> = UnknownType extends UnboxToUnion<Decoded> ? RecursiveDepth4<T, DecodedHelper<T, Defined>> : Decoded;
136
+ type RecursiveDepth4<T extends IdlTypeDef[], Defined = EmptyDefined> = DecodedHelper<T, Defined>;
137
+ /**
138
+ * TypeScript can't handle truly recursive type (RecursiveTypes instead of RecursiveDepth2).
139
+ * Hence we're doing recursion of depth=4 manually
140
+ * */
141
+ type RecursiveTypes<T extends IdlTypeDef[], Defined = EmptyDefined, Decoded = DecodedHelper<T, Defined>> = UnknownType extends UnboxToUnion<Decoded> ? RecursiveDepth2<T, DecodedHelper<T, Defined>> : Decoded;
142
+ export type IdlTypes<I extends Idl> = RecursiveTypes<NonNullable<I["types"]>>;
143
+ export type IdlErrors<I extends Idl> = NonNullable<I["errors"]>[number];
144
+ export type IdlAccounts<I extends Idl> = ResolveIdlPointerSection<I, "accounts">;
145
+ export type IdlEvents<I extends Idl> = ResolveIdlPointerSection<I, "events">;
146
+ type IdlPointerSection = keyof Pick<Idl, "accounts" | "events">;
147
+ type ResolveIdlPointerSection<I extends Idl, K extends IdlPointerSection, T extends ResolveIdlTypePointer<I, K> = ResolveIdlTypePointer<I, K>> = TypeDefDictionary<T extends [] ? IdlTypeDef[] : T, IdlTypes<I>>;
148
+ type ResolveIdlTypePointer<I extends Idl, Key extends IdlPointerSection> = FilterTuple<NonNullable<I["types"]>, {
149
+ name: NonNullable<I[Key]>[number]["name"];
150
+ }>;
151
+ type FilterTuple<T extends unknown[], F> = T extends [infer Head, ...infer Tail] ? [Head] extends [F] ? [Head, ...FilterTuple<Tail, F>] : FilterTuple<Tail, F> : [];
152
+ export {};
153
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/program/namespace/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/program/namespace/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import { Idl } from "../../idl.js";
3
+ import { SimulateFn } from "./simulate.js";
4
+ import { AllInstructions, InstructionContextFn, MakeInstructionsNamespace } from "./types";
5
+ export default class ViewFactory {
6
+ static build<IDL extends Idl, I extends AllInstructions<IDL>>(programId: PublicKey, idlIx: AllInstructions<IDL>, simulateFn: SimulateFn<IDL>, idl: IDL): ViewFn<IDL, I> | undefined;
7
+ }
8
+ export type ViewNamespace<IDL extends Idl = Idl, I extends AllInstructions<IDL> = AllInstructions<IDL>> = MakeInstructionsNamespace<IDL, I, Promise<any>>;
9
+ /**
10
+ * ViewFn is a single method generated from an IDL. It simulates a method
11
+ * against a cluster configured by the provider, and then parses the events
12
+ * and extracts return data from the raw logs emitted during the simulation.
13
+ */
14
+ export type ViewFn<IDL extends Idl = Idl, I extends AllInstructions<IDL> = AllInstructions<IDL>> = InstructionContextFn<IDL, I, Promise<any>>;
15
+ //# sourceMappingURL=views.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../../../src/program/namespace/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAyB,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AAIjB,MAAM,CAAC,OAAO,OAAO,WAAW;WAChB,KAAK,CAAC,GAAG,SAAS,GAAG,EAAE,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,EACjE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,EAC3B,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,EAC3B,GAAG,EAAE,GAAG,GACP,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,SAAS;CA4B9B;AAED,MAAM,MAAM,aAAa,CACvB,GAAG,SAAS,GAAG,GAAG,GAAG,EACrB,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,IACnD,yBAAyB,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,MAAM,MAAM,CAChB,GAAG,SAAS,GAAG,GAAG,GAAG,EACrB,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,IACnD,oBAAoB,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const idl_1 = require("../../coder/borsh/idl");
4
+ const base64_1 = require("../../utils/bytes/base64");
5
+ class ViewFactory {
6
+ static build(programId, idlIx, simulateFn, idl) {
7
+ const isWritable = idlIx.accounts.find((a) => a.writable);
8
+ const hasReturn = !!idlIx.returns;
9
+ if (isWritable || !hasReturn)
10
+ return;
11
+ const view = async (...args) => {
12
+ let simulationResult = await simulateFn(...args);
13
+ const returnPrefix = `Program return: ${programId} `;
14
+ let returnLog = simulationResult.raw.find((l) => l.startsWith(returnPrefix));
15
+ if (!returnLog) {
16
+ throw new Error("View expected return log");
17
+ }
18
+ let returnData = (0, base64_1.decode)(returnLog.slice(returnPrefix.length));
19
+ let returnType = idlIx.returns;
20
+ if (!returnType) {
21
+ throw new Error("View expected return type");
22
+ }
23
+ const coder = idl_1.IdlCoder.fieldLayout({ type: returnType }, idl.types);
24
+ return coder.decode(returnData);
25
+ };
26
+ return view;
27
+ }
28
+ }
29
+ exports.default = ViewFactory;
30
+ //# sourceMappingURL=views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../../../../src/program/namespace/views.ts"],"names":[],"mappings":";;AAQA,+CAAiD;AACjD,qDAAkD;AAElD,MAAqB,WAAW;IACvB,MAAM,CAAC,KAAK,CACjB,SAAoB,EACpB,KAA2B,EAC3B,UAA2B,EAC3B,GAAQ;QAER,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,CAAwB,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CACzC,CAAC;QACF,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAClC,IAAI,UAAU,IAAI,CAAC,SAAS;YAAE,OAAO;QAErC,MAAM,IAAI,GAAgB,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;YAC1C,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,mBAAmB,SAAS,GAAG,CAAC;YACrD,IAAI,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAC3B,CAAC;YACF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,UAAU,GAAG,IAAA,eAAM,EAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9D,IAAI,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,KAAK,GAAG,cAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YACpE,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAlCD,8BAkCC"}
@@ -0,0 +1,2 @@
1
+ export declare function decodeTokenAccount(b: Buffer): unknown;
2
+ //# sourceMappingURL=token-account-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-account-layout.d.ts","sourceRoot":"","sources":["../../../src/program/token-account-layout.ts"],"names":[],"mappings":"AA+IA,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,WAE3C"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.decodeTokenAccount = decodeTokenAccount;
30
+ const bn_js_1 = __importDefault(require("bn.js"));
31
+ const BufferLayout = __importStar(require("buffer-layout"));
32
+ const buffer_layout_1 = require("buffer-layout");
33
+ const web3_js_1 = require("@solana/web3.js");
34
+ function uint64(property) {
35
+ return new WrappedLayout(BufferLayout.blob(8), (b) => u64.fromBuffer(b), (n) => n.toBuffer(), property);
36
+ }
37
+ function publicKey(property) {
38
+ return new WrappedLayout(BufferLayout.blob(32), (b) => new web3_js_1.PublicKey(b), (key) => key.toBuffer(), property);
39
+ }
40
+ function coption(layout, property) {
41
+ return new COptionLayout(layout, property);
42
+ }
43
+ class WrappedLayout extends buffer_layout_1.Layout {
44
+ constructor(layout, decoder, encoder, property) {
45
+ super(layout.span, property);
46
+ this.layout = layout;
47
+ this.decoder = decoder;
48
+ this.encoder = encoder;
49
+ }
50
+ decode(b, offset) {
51
+ return this.decoder(this.layout.decode(b, offset));
52
+ }
53
+ encode(src, b, offset) {
54
+ return this.layout.encode(this.encoder(src), b, offset);
55
+ }
56
+ getSpan(b, offset) {
57
+ return this.layout.getSpan(b, offset);
58
+ }
59
+ }
60
+ class COptionLayout extends buffer_layout_1.Layout {
61
+ constructor(layout, property) {
62
+ super(-1, property);
63
+ this.layout = layout;
64
+ this.discriminator = BufferLayout.u32();
65
+ }
66
+ encode(src, b, offset = 0) {
67
+ if (src === null || src === undefined) {
68
+ return this.layout.span + this.discriminator.encode(0, b, offset);
69
+ }
70
+ this.discriminator.encode(1, b, offset);
71
+ return this.layout.encode(src, b, offset + 4) + 4;
72
+ }
73
+ decode(b, offset = 0) {
74
+ const discriminator = this.discriminator.decode(b, offset);
75
+ if (discriminator === 0) {
76
+ return null;
77
+ }
78
+ else if (discriminator === 1) {
79
+ return this.layout.decode(b, offset + 4);
80
+ }
81
+ throw new Error("Invalid coption " + this.layout.property);
82
+ }
83
+ getSpan(b, offset = 0) {
84
+ return this.layout.getSpan(b, offset + 4) + 4;
85
+ }
86
+ }
87
+ class u64 extends bn_js_1.default {
88
+ /**
89
+ * Convert to Buffer representation
90
+ */
91
+ toBuffer() {
92
+ const a = super.toArray().reverse();
93
+ const b = Buffer.from(a);
94
+ if (b.length === 8) {
95
+ return b;
96
+ }
97
+ if (b.length >= 8) {
98
+ throw new Error("u64 too large");
99
+ }
100
+ const zeroPad = Buffer.alloc(8);
101
+ b.copy(zeroPad);
102
+ return zeroPad;
103
+ }
104
+ /**
105
+ * Construct a u64 from Buffer representation
106
+ */
107
+ static fromBuffer(buffer) {
108
+ if (buffer.length !== 8) {
109
+ throw new Error(`Invalid buffer length: ${buffer.length}`);
110
+ }
111
+ return new u64([...buffer]
112
+ .reverse()
113
+ .map((i) => `00${i.toString(16)}`.slice(-2))
114
+ .join(""), 16);
115
+ }
116
+ }
117
+ const TOKEN_ACCOUNT_LAYOUT = BufferLayout.struct([
118
+ publicKey("mint"),
119
+ publicKey("owner"),
120
+ uint64("amount"),
121
+ coption(publicKey(), "delegate"),
122
+ ((p) => {
123
+ const U = BufferLayout.union(BufferLayout.u8("discriminator"), null, p);
124
+ U.addVariant(0, BufferLayout.struct([]), "uninitialized");
125
+ U.addVariant(1, BufferLayout.struct([]), "initialized");
126
+ U.addVariant(2, BufferLayout.struct([]), "frozen");
127
+ return U;
128
+ })("state"),
129
+ coption(uint64(), "isNative"),
130
+ uint64("delegatedAmount"),
131
+ coption(publicKey(), "closeAuthority"),
132
+ ]);
133
+ function decodeTokenAccount(b) {
134
+ return TOKEN_ACCOUNT_LAYOUT.decode(b);
135
+ }
136
+ //# sourceMappingURL=token-account-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-account-layout.js","sourceRoot":"","sources":["../../../src/program/token-account-layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ import { Connection, Signer, PublicKey, Transaction, TransactionSignature, ConfirmOptions, Commitment, SendOptions, VersionedTransaction, BlockhashWithExpiryBlockHeight, Keypair } from "@solana/web3.js";
2
+ import { SuccessfulTxSimulationResponse } from "./utils/rpc.js";
3
+ export default interface Provider {
4
+ readonly connection: Connection;
5
+ readonly publicKey?: PublicKey;
6
+ readonly wallet?: Wallet;
7
+ send?(tx: Transaction | VersionedTransaction, signers?: Signer[], opts?: SendOptions): Promise<TransactionSignature>;
8
+ sendAndConfirm?(tx: Transaction | VersionedTransaction, signers?: Signer[], opts?: ConfirmOptionsWithBlockhash): Promise<TransactionSignature>;
9
+ sendAll?<T extends Transaction | VersionedTransaction>(txWithSigners: {
10
+ tx: T;
11
+ signers?: Signer[];
12
+ }[], opts?: ConfirmOptions): Promise<Array<TransactionSignature>>;
13
+ simulate?(tx: Transaction | VersionedTransaction, signers?: Signer[], commitment?: Commitment, includeAccounts?: boolean | PublicKey[]): Promise<SuccessfulTxSimulationResponse>;
14
+ }
15
+ /**
16
+ * The network and wallet context used to send transactions paid for and signed
17
+ * by the provider.
18
+ */
19
+ export declare class AnchorProvider implements Provider {
20
+ readonly connection: Connection;
21
+ readonly wallet: Wallet;
22
+ readonly opts: ConfirmOptions;
23
+ readonly publicKey: PublicKey;
24
+ /**
25
+ * @param connection The cluster connection where the program is deployed.
26
+ * @param wallet The wallet used to pay for and sign all transactions.
27
+ * @param opts Transaction confirmation options to use by default.
28
+ */
29
+ constructor(connection: Connection, wallet: Wallet, opts?: ConfirmOptions);
30
+ static defaultOptions(): ConfirmOptions;
31
+ /**
32
+ * Returns a `Provider` with a wallet read from the local filesystem.
33
+ *
34
+ * @param url The network cluster url.
35
+ * @param opts The default transaction confirmation options.
36
+ *
37
+ * (This api is for Node only.)
38
+ */
39
+ static local(url?: string, opts?: ConfirmOptions): AnchorProvider;
40
+ /**
41
+ * Returns a `Provider` read from the `ANCHOR_PROVIDER_URL` environment
42
+ * variable
43
+ *
44
+ * (This api is for Node only.)
45
+ */
46
+ static env(): AnchorProvider;
47
+ /**
48
+ * Sends the given transaction, paid for and signed by the provider's wallet.
49
+ *
50
+ * @param tx The transaction to send.
51
+ * @param signers The signers of the transaction.
52
+ * @param opts Transaction confirmation options.
53
+ */
54
+ sendAndConfirm(tx: Transaction | VersionedTransaction, signers?: Signer[], opts?: ConfirmOptionsWithBlockhash): Promise<TransactionSignature>;
55
+ /**
56
+ * Similar to `send`, but for an array of transactions and signers.
57
+ * All transactions need to be of the same type, it doesn't support a mix of `VersionedTransaction`s and `Transaction`s.
58
+ *
59
+ * @param txWithSigners Array of transactions and signers.
60
+ * @param opts Transaction confirmation options.
61
+ */
62
+ sendAll<T extends Transaction | VersionedTransaction>(txWithSigners: {
63
+ tx: T;
64
+ signers?: Signer[];
65
+ }[], opts?: ConfirmOptions): Promise<Array<TransactionSignature>>;
66
+ /**
67
+ * Simulates the given transaction, returning emitted logs from execution.
68
+ *
69
+ * @param tx The transaction to send.
70
+ * @param signers The signers of the transaction. If unset, the transaction
71
+ * will be simulated with the "sigVerify: false" option. This
72
+ * allows for simulation of transactions without asking the
73
+ * wallet for a signature.
74
+ * @param opts Transaction confirmation options.
75
+ */
76
+ simulate(tx: Transaction | VersionedTransaction, signers?: Signer[], commitment?: Commitment, includeAccounts?: boolean | PublicKey[]): Promise<SuccessfulTxSimulationResponse>;
77
+ }
78
+ export type SendTxRequest = {
79
+ tx: Transaction;
80
+ signers: Array<Signer | undefined>;
81
+ };
82
+ export type ConfirmOptionsWithBlockhash = ConfirmOptions & {
83
+ blockhash?: BlockhashWithExpiryBlockHeight;
84
+ };
85
+ /**
86
+ * Wallet interface for objects that can be used to sign provider transactions.
87
+ * VersionedTransactions sign everything at once
88
+ */
89
+ export interface Wallet {
90
+ signTransaction<T extends Transaction | VersionedTransaction>(tx: T): Promise<T>;
91
+ signAllTransactions<T extends Transaction | VersionedTransaction>(txs: T[]): Promise<T[]>;
92
+ publicKey: PublicKey;
93
+ /** Keypair of the configured payer (Node only) */
94
+ payer?: Keypair;
95
+ }
96
+ /**
97
+ * Sets the default provider on the client.
98
+ */
99
+ export declare function setProvider(provider: Provider): void;
100
+ /**
101
+ * Returns the default provider being used by the client.
102
+ */
103
+ export declare function getProvider(): Provider;
104
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"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"}