@chainlink/ccip-sdk 0.0.0 → 0.90.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 (319) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +109 -0
  3. package/dist/aptos/exec.d.ts +18 -0
  4. package/dist/aptos/exec.d.ts.map +1 -0
  5. package/dist/aptos/exec.js +55 -0
  6. package/dist/aptos/exec.js.map +1 -0
  7. package/dist/aptos/hasher.d.ts +11 -0
  8. package/dist/aptos/hasher.d.ts.map +1 -0
  9. package/dist/aptos/hasher.js +62 -0
  10. package/dist/aptos/hasher.js.map +1 -0
  11. package/dist/aptos/index.d.ts +92 -0
  12. package/dist/aptos/index.d.ts.map +1 -0
  13. package/dist/aptos/index.js +482 -0
  14. package/dist/aptos/index.js.map +1 -0
  15. package/dist/aptos/logs.d.ts +9 -0
  16. package/dist/aptos/logs.d.ts.map +1 -0
  17. package/dist/aptos/logs.js +167 -0
  18. package/dist/aptos/logs.js.map +1 -0
  19. package/dist/aptos/send.d.ts +11 -0
  20. package/dist/aptos/send.d.ts.map +1 -0
  21. package/dist/aptos/send.js +78 -0
  22. package/dist/aptos/send.js.map +1 -0
  23. package/dist/aptos/token.d.ts +4 -0
  24. package/dist/aptos/token.d.ts.map +1 -0
  25. package/dist/aptos/token.js +134 -0
  26. package/dist/aptos/token.js.map +1 -0
  27. package/dist/aptos/types.d.ts +78 -0
  28. package/dist/aptos/types.d.ts.map +1 -0
  29. package/dist/aptos/types.js +60 -0
  30. package/dist/aptos/types.js.map +1 -0
  31. package/dist/aptos/utils.d.ts +12 -0
  32. package/dist/aptos/utils.d.ts.map +1 -0
  33. package/dist/aptos/utils.js +15 -0
  34. package/dist/aptos/utils.js.map +1 -0
  35. package/dist/chain.d.ts +344 -0
  36. package/dist/chain.d.ts.map +1 -0
  37. package/dist/chain.js +41 -0
  38. package/dist/chain.js.map +1 -0
  39. package/dist/commits.d.ts +25 -0
  40. package/dist/commits.d.ts.map +1 -0
  41. package/dist/commits.js +29 -0
  42. package/dist/commits.js.map +1 -0
  43. package/dist/evm/abi/BurnMintERC677Token.d.ts +602 -0
  44. package/dist/evm/abi/BurnMintERC677Token.d.ts.map +1 -0
  45. package/dist/evm/abi/BurnMintERC677Token.js +488 -0
  46. package/dist/evm/abi/BurnMintERC677Token.js.map +1 -0
  47. package/dist/evm/abi/CommitStore_1_2.d.ts +688 -0
  48. package/dist/evm/abi/CommitStore_1_2.d.ts.map +1 -0
  49. package/dist/evm/abi/CommitStore_1_2.js +638 -0
  50. package/dist/evm/abi/CommitStore_1_2.js.map +1 -0
  51. package/dist/evm/abi/CommitStore_1_5.d.ts +708 -0
  52. package/dist/evm/abi/CommitStore_1_5.d.ts.map +1 -0
  53. package/dist/evm/abi/CommitStore_1_5.js +675 -0
  54. package/dist/evm/abi/CommitStore_1_5.js.map +1 -0
  55. package/dist/evm/abi/FeeQuoter_1_6.d.ts +1770 -0
  56. package/dist/evm/abi/FeeQuoter_1_6.d.ts.map +1 -0
  57. package/dist/evm/abi/FeeQuoter_1_6.js +1904 -0
  58. package/dist/evm/abi/FeeQuoter_1_6.js.map +1 -0
  59. package/dist/evm/abi/LockReleaseTokenPool_1_5.d.ts +1116 -0
  60. package/dist/evm/abi/LockReleaseTokenPool_1_5.d.ts.map +1 -0
  61. package/dist/evm/abi/LockReleaseTokenPool_1_5.js +1096 -0
  62. package/dist/evm/abi/LockReleaseTokenPool_1_5.js.map +1 -0
  63. package/dist/evm/abi/LockReleaseTokenPool_1_5_1.d.ts +1306 -0
  64. package/dist/evm/abi/LockReleaseTokenPool_1_5_1.d.ts.map +1 -0
  65. package/dist/evm/abi/LockReleaseTokenPool_1_5_1.js +1278 -0
  66. package/dist/evm/abi/LockReleaseTokenPool_1_5_1.js.map +1 -0
  67. package/dist/evm/abi/LockReleaseTokenPool_1_6_1.d.ts +1290 -0
  68. package/dist/evm/abi/LockReleaseTokenPool_1_6_1.d.ts.map +1 -0
  69. package/dist/evm/abi/LockReleaseTokenPool_1_6_1.js +1288 -0
  70. package/dist/evm/abi/LockReleaseTokenPool_1_6_1.js.map +1 -0
  71. package/dist/evm/abi/OffRamp_1_2.d.ts +1217 -0
  72. package/dist/evm/abi/OffRamp_1_2.d.ts.map +1 -0
  73. package/dist/evm/abi/OffRamp_1_2.js +1204 -0
  74. package/dist/evm/abi/OffRamp_1_2.js.map +1 -0
  75. package/dist/evm/abi/OffRamp_1_5.d.ts +1271 -0
  76. package/dist/evm/abi/OffRamp_1_5.d.ts.map +1 -0
  77. package/dist/evm/abi/OffRamp_1_5.js +1273 -0
  78. package/dist/evm/abi/OffRamp_1_5.js.map +1 -0
  79. package/dist/evm/abi/OffRamp_1_6.d.ts +1472 -0
  80. package/dist/evm/abi/OffRamp_1_6.d.ts.map +1 -0
  81. package/dist/evm/abi/OffRamp_1_6.js +1529 -0
  82. package/dist/evm/abi/OffRamp_1_6.js.map +1 -0
  83. package/dist/evm/abi/OnRamp_1_2.d.ts +1391 -0
  84. package/dist/evm/abi/OnRamp_1_2.d.ts.map +1 -0
  85. package/dist/evm/abi/OnRamp_1_2.js +1343 -0
  86. package/dist/evm/abi/OnRamp_1_2.js.map +1 -0
  87. package/dist/evm/abi/OnRamp_1_5.d.ts +1443 -0
  88. package/dist/evm/abi/OnRamp_1_5.d.ts.map +1 -0
  89. package/dist/evm/abi/OnRamp_1_5.js +1427 -0
  90. package/dist/evm/abi/OnRamp_1_5.js.map +1 -0
  91. package/dist/evm/abi/OnRamp_1_6.d.ts +796 -0
  92. package/dist/evm/abi/OnRamp_1_6.d.ts.map +1 -0
  93. package/dist/evm/abi/OnRamp_1_6.js +880 -0
  94. package/dist/evm/abi/OnRamp_1_6.js.map +1 -0
  95. package/dist/evm/abi/Router.d.ts +541 -0
  96. package/dist/evm/abi/Router.d.ts.map +1 -0
  97. package/dist/evm/abi/Router.js +508 -0
  98. package/dist/evm/abi/Router.js.map +1 -0
  99. package/dist/evm/abi/TokenAdminRegistry_1_5.d.ts +373 -0
  100. package/dist/evm/abi/TokenAdminRegistry_1_5.d.ts.map +1 -0
  101. package/dist/evm/abi/TokenAdminRegistry_1_5.js +333 -0
  102. package/dist/evm/abi/TokenAdminRegistry_1_5.js.map +1 -0
  103. package/dist/evm/const.d.ts +27 -0
  104. package/dist/evm/const.d.ts.map +1 -0
  105. package/dist/evm/const.js +63 -0
  106. package/dist/evm/const.js.map +1 -0
  107. package/dist/evm/errors.d.ts +36 -0
  108. package/dist/evm/errors.d.ts.map +1 -0
  109. package/dist/evm/errors.js +192 -0
  110. package/dist/evm/errors.js.map +1 -0
  111. package/dist/evm/hasher.d.ts +5 -0
  112. package/dist/evm/hasher.d.ts.map +1 -0
  113. package/dist/evm/hasher.js +116 -0
  114. package/dist/evm/hasher.js.map +1 -0
  115. package/dist/evm/index.d.ts +121 -0
  116. package/dist/evm/index.d.ts.map +1 -0
  117. package/dist/evm/index.js +904 -0
  118. package/dist/evm/index.js.map +1 -0
  119. package/dist/evm/messages.d.ts +35 -0
  120. package/dist/evm/messages.d.ts.map +1 -0
  121. package/dist/evm/messages.js +11 -0
  122. package/dist/evm/messages.js.map +1 -0
  123. package/dist/evm/offchain.d.ts +16 -0
  124. package/dist/evm/offchain.d.ts.map +1 -0
  125. package/dist/evm/offchain.js +142 -0
  126. package/dist/evm/offchain.js.map +1 -0
  127. package/dist/execution.d.ts +80 -0
  128. package/dist/execution.d.ts.map +1 -0
  129. package/dist/execution.js +91 -0
  130. package/dist/execution.js.map +1 -0
  131. package/dist/extra-args.d.ts +45 -0
  132. package/dist/extra-args.d.ts.map +1 -0
  133. package/dist/extra-args.js +44 -0
  134. package/dist/extra-args.js.map +1 -0
  135. package/dist/gas.d.ts +27 -0
  136. package/dist/gas.d.ts.map +1 -0
  137. package/dist/gas.js +80 -0
  138. package/dist/gas.js.map +1 -0
  139. package/dist/hasher/common.d.ts +12 -0
  140. package/dist/hasher/common.d.ts.map +1 -0
  141. package/dist/hasher/common.js +19 -0
  142. package/dist/hasher/common.js.map +1 -0
  143. package/dist/hasher/hasher.d.ts +4 -0
  144. package/dist/hasher/hasher.d.ts.map +1 -0
  145. package/dist/hasher/hasher.js +11 -0
  146. package/dist/hasher/hasher.js.map +1 -0
  147. package/dist/hasher/index.d.ts +4 -0
  148. package/dist/hasher/index.d.ts.map +1 -0
  149. package/dist/hasher/index.js +4 -0
  150. package/dist/hasher/index.js.map +1 -0
  151. package/dist/hasher/merklemulti.d.ts +58 -0
  152. package/dist/hasher/merklemulti.d.ts.map +1 -0
  153. package/dist/hasher/merklemulti.js +257 -0
  154. package/dist/hasher/merklemulti.js.map +1 -0
  155. package/dist/index.d.ts +13 -0
  156. package/dist/index.d.ts.map +1 -0
  157. package/dist/index.js +13 -0
  158. package/dist/index.js.map +1 -0
  159. package/dist/offchain.d.ts +20 -0
  160. package/dist/offchain.d.ts.map +1 -0
  161. package/dist/offchain.js +59 -0
  162. package/dist/offchain.js.map +1 -0
  163. package/dist/requests.d.ts +48 -0
  164. package/dist/requests.d.ts.map +1 -0
  165. package/dist/requests.js +286 -0
  166. package/dist/requests.js.map +1 -0
  167. package/dist/selectors.d.ts +9 -0
  168. package/dist/selectors.d.ts.map +1 -0
  169. package/dist/selectors.js +1330 -0
  170. package/dist/selectors.js.map +1 -0
  171. package/dist/solana/cleanup.d.ts +15 -0
  172. package/dist/solana/cleanup.d.ts.map +1 -0
  173. package/dist/solana/cleanup.js +159 -0
  174. package/dist/solana/cleanup.js.map +1 -0
  175. package/dist/solana/exec.d.ts +15 -0
  176. package/dist/solana/exec.d.ts.map +1 -0
  177. package/dist/solana/exec.js +417 -0
  178. package/dist/solana/exec.js.map +1 -0
  179. package/dist/solana/hasher.d.ts +4 -0
  180. package/dist/solana/hasher.d.ts.map +1 -0
  181. package/dist/solana/hasher.js +81 -0
  182. package/dist/solana/hasher.js.map +1 -0
  183. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.d.ts +866 -0
  184. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.d.ts.map +1 -0
  185. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.js +866 -0
  186. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.js.map +1 -0
  187. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.d.ts +949 -0
  188. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.d.ts.map +1 -0
  189. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.js +949 -0
  190. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.js.map +1 -0
  191. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.d.ts +1374 -0
  192. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.d.ts.map +1 -0
  193. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.js +1374 -0
  194. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.js.map +1 -0
  195. package/dist/solana/idl/1.6.0/CCIP_COMMON.d.ts +104 -0
  196. package/dist/solana/idl/1.6.0/CCIP_COMMON.d.ts.map +1 -0
  197. package/dist/solana/idl/1.6.0/CCIP_COMMON.js +104 -0
  198. package/dist/solana/idl/1.6.0/CCIP_COMMON.js.map +1 -0
  199. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.d.ts +2746 -0
  200. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.d.ts.map +1 -0
  201. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.js +2746 -0
  202. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.js.map +1 -0
  203. package/dist/solana/idl/1.6.0/CCIP_ROUTER.d.ts +2332 -0
  204. package/dist/solana/idl/1.6.0/CCIP_ROUTER.d.ts.map +1 -0
  205. package/dist/solana/idl/1.6.0/CCIP_ROUTER.js +2332 -0
  206. package/dist/solana/idl/1.6.0/CCIP_ROUTER.js.map +1 -0
  207. package/dist/solana/index.d.ts +205 -0
  208. package/dist/solana/index.d.ts.map +1 -0
  209. package/dist/solana/index.js +1085 -0
  210. package/dist/solana/index.js.map +1 -0
  211. package/dist/solana/offchain.d.ts +31 -0
  212. package/dist/solana/offchain.d.ts.map +1 -0
  213. package/dist/solana/offchain.js +152 -0
  214. package/dist/solana/offchain.js.map +1 -0
  215. package/dist/solana/patchBorsh.d.ts +2 -0
  216. package/dist/solana/patchBorsh.d.ts.map +1 -0
  217. package/dist/solana/patchBorsh.js +60 -0
  218. package/dist/solana/patchBorsh.js.map +1 -0
  219. package/dist/solana/send.d.ts +14 -0
  220. package/dist/solana/send.d.ts.map +1 -0
  221. package/dist/solana/send.js +272 -0
  222. package/dist/solana/send.js.map +1 -0
  223. package/dist/solana/types.d.ts +4 -0
  224. package/dist/solana/types.d.ts.map +1 -0
  225. package/dist/solana/types.js +2 -0
  226. package/dist/solana/types.js.map +1 -0
  227. package/dist/solana/utils.d.ts +58 -0
  228. package/dist/solana/utils.d.ts.map +1 -0
  229. package/dist/solana/utils.js +211 -0
  230. package/dist/solana/utils.js.map +1 -0
  231. package/dist/sui/hasher.d.ts +12 -0
  232. package/dist/sui/hasher.d.ts.map +1 -0
  233. package/dist/sui/hasher.js +63 -0
  234. package/dist/sui/hasher.js.map +1 -0
  235. package/dist/sui/index.d.ts +72 -0
  236. package/dist/sui/index.d.ts.map +1 -0
  237. package/dist/sui/index.js +128 -0
  238. package/dist/sui/index.js.map +1 -0
  239. package/dist/sui/types.d.ts +17 -0
  240. package/dist/sui/types.d.ts.map +1 -0
  241. package/dist/sui/types.js +17 -0
  242. package/dist/sui/types.js.map +1 -0
  243. package/dist/supported-chains.d.ts +5 -0
  244. package/dist/supported-chains.d.ts.map +1 -0
  245. package/dist/supported-chains.js +3 -0
  246. package/dist/supported-chains.js.map +1 -0
  247. package/dist/types.d.ts +118 -0
  248. package/dist/types.d.ts.map +1 -0
  249. package/dist/types.js +11 -0
  250. package/dist/types.js.map +1 -0
  251. package/dist/utils.d.ts +117 -0
  252. package/dist/utils.d.ts.map +1 -0
  253. package/dist/utils.js +336 -0
  254. package/dist/utils.js.map +1 -0
  255. package/package.json +66 -8
  256. package/src/aptos/exec.ts +69 -0
  257. package/src/aptos/hasher.ts +92 -0
  258. package/src/aptos/index.ts +660 -0
  259. package/src/aptos/logs.ts +210 -0
  260. package/src/aptos/send.ts +120 -0
  261. package/src/aptos/token.ts +150 -0
  262. package/src/aptos/types.ts +85 -0
  263. package/src/aptos/utils.ts +24 -0
  264. package/src/chain.ts +398 -0
  265. package/src/commits.ts +44 -0
  266. package/src/evm/abi/BurnMintERC677Token.ts +487 -0
  267. package/src/evm/abi/CommitStore_1_2.ts +637 -0
  268. package/src/evm/abi/CommitStore_1_5.ts +674 -0
  269. package/src/evm/abi/FeeQuoter_1_6.ts +1903 -0
  270. package/src/evm/abi/LockReleaseTokenPool_1_5.ts +1095 -0
  271. package/src/evm/abi/LockReleaseTokenPool_1_5_1.ts +1277 -0
  272. package/src/evm/abi/LockReleaseTokenPool_1_6_1.ts +1287 -0
  273. package/src/evm/abi/OffRamp_1_2.ts +1203 -0
  274. package/src/evm/abi/OffRamp_1_5.ts +1272 -0
  275. package/src/evm/abi/OffRamp_1_6.ts +1528 -0
  276. package/src/evm/abi/OnRamp_1_2.ts +1342 -0
  277. package/src/evm/abi/OnRamp_1_5.ts +1426 -0
  278. package/src/evm/abi/OnRamp_1_6.ts +879 -0
  279. package/src/evm/abi/Router.ts +507 -0
  280. package/src/evm/abi/TokenAdminRegistry_1_5.ts +332 -0
  281. package/src/evm/const.ts +69 -0
  282. package/src/evm/errors.ts +212 -0
  283. package/src/evm/hasher.ts +166 -0
  284. package/src/evm/index.ts +1262 -0
  285. package/src/evm/messages.ts +73 -0
  286. package/src/evm/offchain.ts +189 -0
  287. package/src/execution.ts +131 -0
  288. package/src/extra-args.ts +71 -0
  289. package/src/gas.ts +135 -0
  290. package/src/hasher/common.ts +23 -0
  291. package/src/hasher/hasher.ts +12 -0
  292. package/src/hasher/index.ts +3 -0
  293. package/src/hasher/merklemulti.ts +309 -0
  294. package/src/index.ts +51 -0
  295. package/src/offchain.ts +86 -0
  296. package/src/requests.ts +339 -0
  297. package/src/selectors.ts +1340 -0
  298. package/src/solana/cleanup.ts +216 -0
  299. package/src/solana/exec.ts +645 -0
  300. package/src/solana/hasher.ts +104 -0
  301. package/src/solana/idl/1.6.0/BASE_TOKEN_POOL.ts +1734 -0
  302. package/src/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.ts +1900 -0
  303. package/src/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.ts +2750 -0
  304. package/src/solana/idl/1.6.0/CCIP_COMMON.ts +210 -0
  305. package/src/solana/idl/1.6.0/CCIP_OFFRAMP.ts +5494 -0
  306. package/src/solana/idl/1.6.0/CCIP_ROUTER.ts +4671 -0
  307. package/src/solana/index.ts +1454 -0
  308. package/src/solana/offchain.ts +209 -0
  309. package/src/solana/patchBorsh.ts +67 -0
  310. package/src/solana/send.ts +436 -0
  311. package/src/solana/types.ts +6 -0
  312. package/src/solana/utils.ts +272 -0
  313. package/src/sui/hasher.ts +90 -0
  314. package/src/sui/index.ts +198 -0
  315. package/src/sui/types.ts +22 -0
  316. package/src/supported-chains.ts +4 -0
  317. package/src/types.ts +153 -0
  318. package/src/utils.ts +405 -0
  319. package/tsconfig.json +18 -0
@@ -0,0 +1,1900 @@
1
+ // generate:
2
+ // fetch('https://github.com/smartcontractkit/chainlink-ccip/raw/refs/heads/main/chains/solana/contracts/target/types/burnmint_token_pool.ts')
3
+ // .then((res) => res.text())
4
+ // .then((text) => text.trim())
5
+ export type BurnmintTokenPool = {
6
+ version: '1.6.0'
7
+ name: 'burnmint_token_pool'
8
+ instructions: [
9
+ {
10
+ name: 'initGlobalConfig'
11
+ accounts: [
12
+ {
13
+ name: 'config'
14
+ isMut: true
15
+ isSigner: false
16
+ },
17
+ {
18
+ name: 'authority'
19
+ isMut: true
20
+ isSigner: true
21
+ },
22
+ {
23
+ name: 'systemProgram'
24
+ isMut: false
25
+ isSigner: false
26
+ },
27
+ {
28
+ name: 'program'
29
+ isMut: false
30
+ isSigner: false
31
+ },
32
+ {
33
+ name: 'programData'
34
+ isMut: false
35
+ isSigner: false
36
+ },
37
+ ]
38
+ args: [
39
+ {
40
+ name: 'routerAddress'
41
+ type: 'publicKey'
42
+ },
43
+ {
44
+ name: 'rmnAddress'
45
+ type: 'publicKey'
46
+ },
47
+ ]
48
+ },
49
+ {
50
+ name: 'updateSelfServedAllowed'
51
+ accounts: [
52
+ {
53
+ name: 'config'
54
+ isMut: true
55
+ isSigner: false
56
+ },
57
+ {
58
+ name: 'authority'
59
+ isMut: false
60
+ isSigner: true
61
+ },
62
+ {
63
+ name: 'program'
64
+ isMut: false
65
+ isSigner: false
66
+ },
67
+ {
68
+ name: 'programData'
69
+ isMut: false
70
+ isSigner: false
71
+ },
72
+ ]
73
+ args: [
74
+ {
75
+ name: 'selfServedAllowed'
76
+ type: 'bool'
77
+ },
78
+ ]
79
+ },
80
+ {
81
+ name: 'updateDefaultRouter'
82
+ accounts: [
83
+ {
84
+ name: 'config'
85
+ isMut: true
86
+ isSigner: false
87
+ },
88
+ {
89
+ name: 'authority'
90
+ isMut: false
91
+ isSigner: true
92
+ },
93
+ {
94
+ name: 'program'
95
+ isMut: false
96
+ isSigner: false
97
+ },
98
+ {
99
+ name: 'programData'
100
+ isMut: false
101
+ isSigner: false
102
+ },
103
+ ]
104
+ args: [
105
+ {
106
+ name: 'routerAddress'
107
+ type: 'publicKey'
108
+ },
109
+ ]
110
+ },
111
+ {
112
+ name: 'updateDefaultRmn'
113
+ accounts: [
114
+ {
115
+ name: 'config'
116
+ isMut: true
117
+ isSigner: false
118
+ },
119
+ {
120
+ name: 'authority'
121
+ isMut: false
122
+ isSigner: true
123
+ },
124
+ {
125
+ name: 'program'
126
+ isMut: false
127
+ isSigner: false
128
+ },
129
+ {
130
+ name: 'programData'
131
+ isMut: false
132
+ isSigner: false
133
+ },
134
+ ]
135
+ args: [
136
+ {
137
+ name: 'rmnAddress'
138
+ type: 'publicKey'
139
+ },
140
+ ]
141
+ },
142
+ {
143
+ name: 'initialize'
144
+ accounts: [
145
+ {
146
+ name: 'state'
147
+ isMut: true
148
+ isSigner: false
149
+ },
150
+ {
151
+ name: 'mint'
152
+ isMut: false
153
+ isSigner: false
154
+ },
155
+ {
156
+ name: 'authority'
157
+ isMut: true
158
+ isSigner: true
159
+ },
160
+ {
161
+ name: 'systemProgram'
162
+ isMut: false
163
+ isSigner: false
164
+ },
165
+ {
166
+ name: 'program'
167
+ isMut: false
168
+ isSigner: false
169
+ },
170
+ {
171
+ name: 'programData'
172
+ isMut: false
173
+ isSigner: false
174
+ },
175
+ {
176
+ name: 'config'
177
+ isMut: false
178
+ isSigner: false
179
+ },
180
+ ]
181
+ args: []
182
+ },
183
+ {
184
+ name: 'transferMintAuthorityToMultisig'
185
+ accounts: [
186
+ {
187
+ name: 'state'
188
+ isMut: true
189
+ isSigner: false
190
+ },
191
+ {
192
+ name: 'mint'
193
+ isMut: true
194
+ isSigner: false
195
+ },
196
+ {
197
+ name: 'tokenProgram'
198
+ isMut: false
199
+ isSigner: false
200
+ },
201
+ {
202
+ name: 'poolSigner'
203
+ isMut: false
204
+ isSigner: false
205
+ },
206
+ {
207
+ name: 'authority'
208
+ isMut: false
209
+ isSigner: true
210
+ },
211
+ {
212
+ name: 'newMultisigMintAuthority'
213
+ isMut: false
214
+ isSigner: false
215
+ },
216
+ {
217
+ name: 'program'
218
+ isMut: false
219
+ isSigner: false
220
+ },
221
+ {
222
+ name: 'programData'
223
+ isMut: false
224
+ isSigner: false
225
+ },
226
+ ]
227
+ args: []
228
+ },
229
+ {
230
+ name: 'typeVersion'
231
+ docs: [
232
+ 'Returns the program type (name) and version.',
233
+ 'Used by offchain code to easily determine which program & version is being interacted with.',
234
+ '',
235
+ '# Arguments',
236
+ '* `ctx` - The context',
237
+ ]
238
+ accounts: [
239
+ {
240
+ name: 'clock'
241
+ isMut: false
242
+ isSigner: false
243
+ },
244
+ ]
245
+ args: []
246
+ returns: 'string'
247
+ },
248
+ {
249
+ name: 'transferOwnership'
250
+ accounts: [
251
+ {
252
+ name: 'state'
253
+ isMut: true
254
+ isSigner: false
255
+ },
256
+ {
257
+ name: 'mint'
258
+ isMut: false
259
+ isSigner: false
260
+ },
261
+ {
262
+ name: 'authority'
263
+ isMut: false
264
+ isSigner: true
265
+ },
266
+ ]
267
+ args: [
268
+ {
269
+ name: 'proposedOwner'
270
+ type: 'publicKey'
271
+ },
272
+ ]
273
+ },
274
+ {
275
+ name: 'acceptOwnership'
276
+ accounts: [
277
+ {
278
+ name: 'state'
279
+ isMut: true
280
+ isSigner: false
281
+ },
282
+ {
283
+ name: 'mint'
284
+ isMut: false
285
+ isSigner: false
286
+ },
287
+ {
288
+ name: 'authority'
289
+ isMut: false
290
+ isSigner: true
291
+ },
292
+ ]
293
+ args: []
294
+ },
295
+ {
296
+ name: 'setRouter'
297
+ accounts: [
298
+ {
299
+ name: 'state'
300
+ isMut: false
301
+ isSigner: false
302
+ },
303
+ {
304
+ name: 'mint'
305
+ isMut: false
306
+ isSigner: false
307
+ },
308
+ {
309
+ name: 'authority'
310
+ isMut: true
311
+ isSigner: true
312
+ },
313
+ {
314
+ name: 'program'
315
+ isMut: false
316
+ isSigner: false
317
+ },
318
+ {
319
+ name: 'programData'
320
+ isMut: false
321
+ isSigner: false
322
+ },
323
+ ]
324
+ args: [
325
+ {
326
+ name: 'newRouter'
327
+ type: 'publicKey'
328
+ },
329
+ ]
330
+ },
331
+ {
332
+ name: 'setRmn'
333
+ accounts: [
334
+ {
335
+ name: 'state'
336
+ isMut: false
337
+ isSigner: false
338
+ },
339
+ {
340
+ name: 'mint'
341
+ isMut: false
342
+ isSigner: false
343
+ },
344
+ {
345
+ name: 'authority'
346
+ isMut: true
347
+ isSigner: true
348
+ },
349
+ {
350
+ name: 'program'
351
+ isMut: false
352
+ isSigner: false
353
+ },
354
+ {
355
+ name: 'programData'
356
+ isMut: false
357
+ isSigner: false
358
+ },
359
+ ]
360
+ args: [
361
+ {
362
+ name: 'rmnAddress'
363
+ type: 'publicKey'
364
+ },
365
+ ]
366
+ },
367
+ {
368
+ name: 'initializeStateVersion'
369
+ accounts: [
370
+ {
371
+ name: 'state'
372
+ isMut: true
373
+ isSigner: false
374
+ },
375
+ ]
376
+ args: [
377
+ {
378
+ name: 'mint'
379
+ type: 'publicKey'
380
+ },
381
+ ]
382
+ },
383
+ {
384
+ name: 'initChainRemoteConfig'
385
+ accounts: [
386
+ {
387
+ name: 'state'
388
+ isMut: false
389
+ isSigner: false
390
+ },
391
+ {
392
+ name: 'chainConfig'
393
+ isMut: true
394
+ isSigner: false
395
+ },
396
+ {
397
+ name: 'authority'
398
+ isMut: true
399
+ isSigner: true
400
+ },
401
+ {
402
+ name: 'systemProgram'
403
+ isMut: false
404
+ isSigner: false
405
+ },
406
+ ]
407
+ args: [
408
+ {
409
+ name: 'remoteChainSelector'
410
+ type: 'u64'
411
+ },
412
+ {
413
+ name: 'mint'
414
+ type: 'publicKey'
415
+ },
416
+ {
417
+ name: 'cfg'
418
+ type: {
419
+ defined: 'RemoteConfig'
420
+ }
421
+ },
422
+ ]
423
+ },
424
+ {
425
+ name: 'editChainRemoteConfig'
426
+ accounts: [
427
+ {
428
+ name: 'state'
429
+ isMut: false
430
+ isSigner: false
431
+ },
432
+ {
433
+ name: 'chainConfig'
434
+ isMut: true
435
+ isSigner: false
436
+ },
437
+ {
438
+ name: 'authority'
439
+ isMut: true
440
+ isSigner: true
441
+ },
442
+ {
443
+ name: 'systemProgram'
444
+ isMut: false
445
+ isSigner: false
446
+ },
447
+ ]
448
+ args: [
449
+ {
450
+ name: 'remoteChainSelector'
451
+ type: 'u64'
452
+ },
453
+ {
454
+ name: 'mint'
455
+ type: 'publicKey'
456
+ },
457
+ {
458
+ name: 'cfg'
459
+ type: {
460
+ defined: 'RemoteConfig'
461
+ }
462
+ },
463
+ ]
464
+ },
465
+ {
466
+ name: 'appendRemotePoolAddresses'
467
+ accounts: [
468
+ {
469
+ name: 'state'
470
+ isMut: false
471
+ isSigner: false
472
+ },
473
+ {
474
+ name: 'chainConfig'
475
+ isMut: true
476
+ isSigner: false
477
+ },
478
+ {
479
+ name: 'authority'
480
+ isMut: true
481
+ isSigner: true
482
+ },
483
+ {
484
+ name: 'systemProgram'
485
+ isMut: false
486
+ isSigner: false
487
+ },
488
+ ]
489
+ args: [
490
+ {
491
+ name: 'remoteChainSelector'
492
+ type: 'u64'
493
+ },
494
+ {
495
+ name: 'mint'
496
+ type: 'publicKey'
497
+ },
498
+ {
499
+ name: 'addresses'
500
+ type: {
501
+ vec: {
502
+ defined: 'RemoteAddress'
503
+ }
504
+ }
505
+ },
506
+ ]
507
+ },
508
+ {
509
+ name: 'setChainRateLimit'
510
+ accounts: [
511
+ {
512
+ name: 'state'
513
+ isMut: false
514
+ isSigner: false
515
+ },
516
+ {
517
+ name: 'chainConfig'
518
+ isMut: true
519
+ isSigner: false
520
+ },
521
+ {
522
+ name: 'authority'
523
+ isMut: true
524
+ isSigner: true
525
+ },
526
+ ]
527
+ args: [
528
+ {
529
+ name: 'remoteChainSelector'
530
+ type: 'u64'
531
+ },
532
+ {
533
+ name: 'mint'
534
+ type: 'publicKey'
535
+ },
536
+ {
537
+ name: 'inbound'
538
+ type: {
539
+ defined: 'RateLimitConfig'
540
+ }
541
+ },
542
+ {
543
+ name: 'outbound'
544
+ type: {
545
+ defined: 'RateLimitConfig'
546
+ }
547
+ },
548
+ ]
549
+ },
550
+ {
551
+ name: 'setRateLimitAdmin'
552
+ accounts: [
553
+ {
554
+ name: 'state'
555
+ isMut: true
556
+ isSigner: false
557
+ },
558
+ {
559
+ name: 'authority'
560
+ isMut: true
561
+ isSigner: true
562
+ },
563
+ ]
564
+ args: [
565
+ {
566
+ name: 'mint'
567
+ type: 'publicKey'
568
+ },
569
+ {
570
+ name: 'newRateLimitAdmin'
571
+ type: 'publicKey'
572
+ },
573
+ ]
574
+ },
575
+ {
576
+ name: 'deleteChainConfig'
577
+ accounts: [
578
+ {
579
+ name: 'state'
580
+ isMut: false
581
+ isSigner: false
582
+ },
583
+ {
584
+ name: 'chainConfig'
585
+ isMut: true
586
+ isSigner: false
587
+ },
588
+ {
589
+ name: 'authority'
590
+ isMut: true
591
+ isSigner: true
592
+ },
593
+ ]
594
+ args: [
595
+ {
596
+ name: 'remoteChainSelector'
597
+ type: 'u64'
598
+ },
599
+ {
600
+ name: 'mint'
601
+ type: 'publicKey'
602
+ },
603
+ ]
604
+ },
605
+ {
606
+ name: 'configureAllowList'
607
+ accounts: [
608
+ {
609
+ name: 'state'
610
+ isMut: true
611
+ isSigner: false
612
+ },
613
+ {
614
+ name: 'mint'
615
+ isMut: false
616
+ isSigner: false
617
+ },
618
+ {
619
+ name: 'authority'
620
+ isMut: true
621
+ isSigner: true
622
+ },
623
+ {
624
+ name: 'systemProgram'
625
+ isMut: false
626
+ isSigner: false
627
+ },
628
+ ]
629
+ args: [
630
+ {
631
+ name: 'add'
632
+ type: {
633
+ vec: 'publicKey'
634
+ }
635
+ },
636
+ {
637
+ name: 'enabled'
638
+ type: 'bool'
639
+ },
640
+ ]
641
+ },
642
+ {
643
+ name: 'removeFromAllowList'
644
+ accounts: [
645
+ {
646
+ name: 'state'
647
+ isMut: true
648
+ isSigner: false
649
+ },
650
+ {
651
+ name: 'mint'
652
+ isMut: false
653
+ isSigner: false
654
+ },
655
+ {
656
+ name: 'authority'
657
+ isMut: true
658
+ isSigner: true
659
+ },
660
+ {
661
+ name: 'systemProgram'
662
+ isMut: false
663
+ isSigner: false
664
+ },
665
+ ]
666
+ args: [
667
+ {
668
+ name: 'remove'
669
+ type: {
670
+ vec: 'publicKey'
671
+ }
672
+ },
673
+ ]
674
+ },
675
+ {
676
+ name: 'releaseOrMintTokens'
677
+ accounts: [
678
+ {
679
+ name: 'authority'
680
+ isMut: false
681
+ isSigner: true
682
+ },
683
+ {
684
+ name: 'offrampProgram'
685
+ isMut: false
686
+ isSigner: false
687
+ docs: [
688
+ 'CHECK offramp program: exists only to derive the allowed offramp PDA',
689
+ 'and the authority PDA.',
690
+ ]
691
+ },
692
+ {
693
+ name: 'allowedOfframp'
694
+ isMut: false
695
+ isSigner: false
696
+ docs: [
697
+ 'CHECK PDA of the router program verifying the signer is an allowed offramp.',
698
+ "If PDA does not exist, the router doesn't allow this offramp",
699
+ ]
700
+ },
701
+ {
702
+ name: 'state'
703
+ isMut: false
704
+ isSigner: false
705
+ },
706
+ {
707
+ name: 'tokenProgram'
708
+ isMut: false
709
+ isSigner: false
710
+ },
711
+ {
712
+ name: 'mint'
713
+ isMut: true
714
+ isSigner: false
715
+ },
716
+ {
717
+ name: 'poolSigner'
718
+ isMut: false
719
+ isSigner: false
720
+ },
721
+ {
722
+ name: 'poolTokenAccount'
723
+ isMut: true
724
+ isSigner: false
725
+ },
726
+ {
727
+ name: 'chainConfig'
728
+ isMut: true
729
+ isSigner: false
730
+ },
731
+ {
732
+ name: 'rmnRemote'
733
+ isMut: false
734
+ isSigner: false
735
+ },
736
+ {
737
+ name: 'rmnRemoteCurses'
738
+ isMut: false
739
+ isSigner: false
740
+ },
741
+ {
742
+ name: 'rmnRemoteConfig'
743
+ isMut: false
744
+ isSigner: false
745
+ },
746
+ {
747
+ name: 'receiverTokenAccount'
748
+ isMut: true
749
+ isSigner: false
750
+ },
751
+ ]
752
+ args: [
753
+ {
754
+ name: 'releaseOrMint'
755
+ type: {
756
+ defined: 'ReleaseOrMintInV1'
757
+ }
758
+ },
759
+ ]
760
+ returns: {
761
+ defined: 'ReleaseOrMintOutV1'
762
+ }
763
+ },
764
+ {
765
+ name: 'lockOrBurnTokens'
766
+ accounts: [
767
+ {
768
+ name: 'authority'
769
+ isMut: false
770
+ isSigner: true
771
+ },
772
+ {
773
+ name: 'state'
774
+ isMut: false
775
+ isSigner: false
776
+ },
777
+ {
778
+ name: 'tokenProgram'
779
+ isMut: false
780
+ isSigner: false
781
+ },
782
+ {
783
+ name: 'mint'
784
+ isMut: true
785
+ isSigner: false
786
+ },
787
+ {
788
+ name: 'poolSigner'
789
+ isMut: false
790
+ isSigner: false
791
+ },
792
+ {
793
+ name: 'poolTokenAccount'
794
+ isMut: true
795
+ isSigner: false
796
+ },
797
+ {
798
+ name: 'rmnRemote'
799
+ isMut: false
800
+ isSigner: false
801
+ },
802
+ {
803
+ name: 'rmnRemoteCurses'
804
+ isMut: false
805
+ isSigner: false
806
+ },
807
+ {
808
+ name: 'rmnRemoteConfig'
809
+ isMut: false
810
+ isSigner: false
811
+ },
812
+ {
813
+ name: 'chainConfig'
814
+ isMut: true
815
+ isSigner: false
816
+ },
817
+ ]
818
+ args: [
819
+ {
820
+ name: 'lockOrBurn'
821
+ type: {
822
+ defined: 'LockOrBurnInV1'
823
+ }
824
+ },
825
+ ]
826
+ returns: {
827
+ defined: 'LockOrBurnOutV1'
828
+ }
829
+ },
830
+ ]
831
+ accounts: [
832
+ {
833
+ name: 'poolConfig'
834
+ type: {
835
+ kind: 'struct'
836
+ fields: [
837
+ {
838
+ name: 'version'
839
+ type: 'u8'
840
+ },
841
+ {
842
+ name: 'selfServedAllowed'
843
+ type: 'bool'
844
+ },
845
+ {
846
+ name: 'router'
847
+ type: 'publicKey'
848
+ },
849
+ {
850
+ name: 'rmnRemote'
851
+ type: 'publicKey'
852
+ },
853
+ ]
854
+ }
855
+ },
856
+ {
857
+ name: 'state'
858
+ type: {
859
+ kind: 'struct'
860
+ fields: [
861
+ {
862
+ name: 'version'
863
+ type: 'u8'
864
+ },
865
+ {
866
+ name: 'config'
867
+ type: {
868
+ defined: 'BaseConfig'
869
+ }
870
+ },
871
+ ]
872
+ }
873
+ },
874
+ {
875
+ name: 'chainConfig'
876
+ type: {
877
+ kind: 'struct'
878
+ fields: [
879
+ {
880
+ name: 'base'
881
+ type: {
882
+ defined: 'BaseChain'
883
+ }
884
+ },
885
+ ]
886
+ }
887
+ },
888
+ ]
889
+ errors: [
890
+ {
891
+ code: 6000
892
+ name: 'InvalidMultisig'
893
+ msg: 'Invalid Multisig Mint'
894
+ },
895
+ {
896
+ code: 6001
897
+ name: 'MintAuthorityAlreadySet'
898
+ msg: 'Mint Authority already set'
899
+ },
900
+ {
901
+ code: 6002
902
+ name: 'FixedMintToken'
903
+ msg: 'Token with no Mint Authority'
904
+ },
905
+ {
906
+ code: 6003
907
+ name: 'UnsupportedTokenProgram'
908
+ msg: 'Unsupported Token Program'
909
+ },
910
+ {
911
+ code: 6004
912
+ name: 'InvalidToken2022Multisig'
913
+ msg: 'Invalid Multisig Account Data for Token 2022'
914
+ },
915
+ {
916
+ code: 6005
917
+ name: 'InvalidSPLTokenMultisig'
918
+ msg: 'Invalid Multisig Account Data for SPL Token'
919
+ },
920
+ {
921
+ code: 6006
922
+ name: 'PoolSignerNotInMultisig'
923
+ msg: 'Token Pool Signer PDA must be m times a signer of the Multisig'
924
+ },
925
+ {
926
+ code: 6007
927
+ name: 'MultisigMustHaveAtLeastTwoSigners'
928
+ msg: 'Multisig must have more than 2 valid signers'
929
+ },
930
+ {
931
+ code: 6008
932
+ name: 'MultisigMustHaveMoreThanOneSigner'
933
+ msg: 'Multisig must have more than one required signer'
934
+ },
935
+ {
936
+ code: 6009
937
+ name: 'InvalidMultisigOwner'
938
+ msg: 'Multisig Owner must match Token Program ID'
939
+ },
940
+ {
941
+ code: 6010
942
+ name: 'InvalidMultisigThreshold'
943
+ msg: 'Invalid multisig threshold: required signatures cannot exceed total signers'
944
+ },
945
+ {
946
+ code: 6011
947
+ name: 'InvalidMultisigThresholdTooHigh'
948
+ msg: 'Invalid multisig m: required signatures cannot exceed the available for outside signers'
949
+ },
950
+ ]
951
+ }
952
+
953
+ export const IDL: BurnmintTokenPool = {
954
+ version: '1.6.0',
955
+ name: 'burnmint_token_pool',
956
+ instructions: [
957
+ {
958
+ name: 'initGlobalConfig',
959
+ accounts: [
960
+ {
961
+ name: 'config',
962
+ isMut: true,
963
+ isSigner: false,
964
+ },
965
+ {
966
+ name: 'authority',
967
+ isMut: true,
968
+ isSigner: true,
969
+ },
970
+ {
971
+ name: 'systemProgram',
972
+ isMut: false,
973
+ isSigner: false,
974
+ },
975
+ {
976
+ name: 'program',
977
+ isMut: false,
978
+ isSigner: false,
979
+ },
980
+ {
981
+ name: 'programData',
982
+ isMut: false,
983
+ isSigner: false,
984
+ },
985
+ ],
986
+ args: [
987
+ {
988
+ name: 'routerAddress',
989
+ type: 'publicKey',
990
+ },
991
+ {
992
+ name: 'rmnAddress',
993
+ type: 'publicKey',
994
+ },
995
+ ],
996
+ },
997
+ {
998
+ name: 'updateSelfServedAllowed',
999
+ accounts: [
1000
+ {
1001
+ name: 'config',
1002
+ isMut: true,
1003
+ isSigner: false,
1004
+ },
1005
+ {
1006
+ name: 'authority',
1007
+ isMut: false,
1008
+ isSigner: true,
1009
+ },
1010
+ {
1011
+ name: 'program',
1012
+ isMut: false,
1013
+ isSigner: false,
1014
+ },
1015
+ {
1016
+ name: 'programData',
1017
+ isMut: false,
1018
+ isSigner: false,
1019
+ },
1020
+ ],
1021
+ args: [
1022
+ {
1023
+ name: 'selfServedAllowed',
1024
+ type: 'bool',
1025
+ },
1026
+ ],
1027
+ },
1028
+ {
1029
+ name: 'updateDefaultRouter',
1030
+ accounts: [
1031
+ {
1032
+ name: 'config',
1033
+ isMut: true,
1034
+ isSigner: false,
1035
+ },
1036
+ {
1037
+ name: 'authority',
1038
+ isMut: false,
1039
+ isSigner: true,
1040
+ },
1041
+ {
1042
+ name: 'program',
1043
+ isMut: false,
1044
+ isSigner: false,
1045
+ },
1046
+ {
1047
+ name: 'programData',
1048
+ isMut: false,
1049
+ isSigner: false,
1050
+ },
1051
+ ],
1052
+ args: [
1053
+ {
1054
+ name: 'routerAddress',
1055
+ type: 'publicKey',
1056
+ },
1057
+ ],
1058
+ },
1059
+ {
1060
+ name: 'updateDefaultRmn',
1061
+ accounts: [
1062
+ {
1063
+ name: 'config',
1064
+ isMut: true,
1065
+ isSigner: false,
1066
+ },
1067
+ {
1068
+ name: 'authority',
1069
+ isMut: false,
1070
+ isSigner: true,
1071
+ },
1072
+ {
1073
+ name: 'program',
1074
+ isMut: false,
1075
+ isSigner: false,
1076
+ },
1077
+ {
1078
+ name: 'programData',
1079
+ isMut: false,
1080
+ isSigner: false,
1081
+ },
1082
+ ],
1083
+ args: [
1084
+ {
1085
+ name: 'rmnAddress',
1086
+ type: 'publicKey',
1087
+ },
1088
+ ],
1089
+ },
1090
+ {
1091
+ name: 'initialize',
1092
+ accounts: [
1093
+ {
1094
+ name: 'state',
1095
+ isMut: true,
1096
+ isSigner: false,
1097
+ },
1098
+ {
1099
+ name: 'mint',
1100
+ isMut: false,
1101
+ isSigner: false,
1102
+ },
1103
+ {
1104
+ name: 'authority',
1105
+ isMut: true,
1106
+ isSigner: true,
1107
+ },
1108
+ {
1109
+ name: 'systemProgram',
1110
+ isMut: false,
1111
+ isSigner: false,
1112
+ },
1113
+ {
1114
+ name: 'program',
1115
+ isMut: false,
1116
+ isSigner: false,
1117
+ },
1118
+ {
1119
+ name: 'programData',
1120
+ isMut: false,
1121
+ isSigner: false,
1122
+ },
1123
+ {
1124
+ name: 'config',
1125
+ isMut: false,
1126
+ isSigner: false,
1127
+ },
1128
+ ],
1129
+ args: [],
1130
+ },
1131
+ {
1132
+ name: 'transferMintAuthorityToMultisig',
1133
+ accounts: [
1134
+ {
1135
+ name: 'state',
1136
+ isMut: true,
1137
+ isSigner: false,
1138
+ },
1139
+ {
1140
+ name: 'mint',
1141
+ isMut: true,
1142
+ isSigner: false,
1143
+ },
1144
+ {
1145
+ name: 'tokenProgram',
1146
+ isMut: false,
1147
+ isSigner: false,
1148
+ },
1149
+ {
1150
+ name: 'poolSigner',
1151
+ isMut: false,
1152
+ isSigner: false,
1153
+ },
1154
+ {
1155
+ name: 'authority',
1156
+ isMut: false,
1157
+ isSigner: true,
1158
+ },
1159
+ {
1160
+ name: 'newMultisigMintAuthority',
1161
+ isMut: false,
1162
+ isSigner: false,
1163
+ },
1164
+ {
1165
+ name: 'program',
1166
+ isMut: false,
1167
+ isSigner: false,
1168
+ },
1169
+ {
1170
+ name: 'programData',
1171
+ isMut: false,
1172
+ isSigner: false,
1173
+ },
1174
+ ],
1175
+ args: [],
1176
+ },
1177
+ {
1178
+ name: 'typeVersion',
1179
+ docs: [
1180
+ 'Returns the program type (name) and version.',
1181
+ 'Used by offchain code to easily determine which program & version is being interacted with.',
1182
+ '',
1183
+ '# Arguments',
1184
+ '* `ctx` - The context',
1185
+ ],
1186
+ accounts: [
1187
+ {
1188
+ name: 'clock',
1189
+ isMut: false,
1190
+ isSigner: false,
1191
+ },
1192
+ ],
1193
+ args: [],
1194
+ returns: 'string',
1195
+ },
1196
+ {
1197
+ name: 'transferOwnership',
1198
+ accounts: [
1199
+ {
1200
+ name: 'state',
1201
+ isMut: true,
1202
+ isSigner: false,
1203
+ },
1204
+ {
1205
+ name: 'mint',
1206
+ isMut: false,
1207
+ isSigner: false,
1208
+ },
1209
+ {
1210
+ name: 'authority',
1211
+ isMut: false,
1212
+ isSigner: true,
1213
+ },
1214
+ ],
1215
+ args: [
1216
+ {
1217
+ name: 'proposedOwner',
1218
+ type: 'publicKey',
1219
+ },
1220
+ ],
1221
+ },
1222
+ {
1223
+ name: 'acceptOwnership',
1224
+ accounts: [
1225
+ {
1226
+ name: 'state',
1227
+ isMut: true,
1228
+ isSigner: false,
1229
+ },
1230
+ {
1231
+ name: 'mint',
1232
+ isMut: false,
1233
+ isSigner: false,
1234
+ },
1235
+ {
1236
+ name: 'authority',
1237
+ isMut: false,
1238
+ isSigner: true,
1239
+ },
1240
+ ],
1241
+ args: [],
1242
+ },
1243
+ {
1244
+ name: 'setRouter',
1245
+ accounts: [
1246
+ {
1247
+ name: 'state',
1248
+ isMut: false,
1249
+ isSigner: false,
1250
+ },
1251
+ {
1252
+ name: 'mint',
1253
+ isMut: false,
1254
+ isSigner: false,
1255
+ },
1256
+ {
1257
+ name: 'authority',
1258
+ isMut: true,
1259
+ isSigner: true,
1260
+ },
1261
+ {
1262
+ name: 'program',
1263
+ isMut: false,
1264
+ isSigner: false,
1265
+ },
1266
+ {
1267
+ name: 'programData',
1268
+ isMut: false,
1269
+ isSigner: false,
1270
+ },
1271
+ ],
1272
+ args: [
1273
+ {
1274
+ name: 'newRouter',
1275
+ type: 'publicKey',
1276
+ },
1277
+ ],
1278
+ },
1279
+ {
1280
+ name: 'setRmn',
1281
+ accounts: [
1282
+ {
1283
+ name: 'state',
1284
+ isMut: false,
1285
+ isSigner: false,
1286
+ },
1287
+ {
1288
+ name: 'mint',
1289
+ isMut: false,
1290
+ isSigner: false,
1291
+ },
1292
+ {
1293
+ name: 'authority',
1294
+ isMut: true,
1295
+ isSigner: true,
1296
+ },
1297
+ {
1298
+ name: 'program',
1299
+ isMut: false,
1300
+ isSigner: false,
1301
+ },
1302
+ {
1303
+ name: 'programData',
1304
+ isMut: false,
1305
+ isSigner: false,
1306
+ },
1307
+ ],
1308
+ args: [
1309
+ {
1310
+ name: 'rmnAddress',
1311
+ type: 'publicKey',
1312
+ },
1313
+ ],
1314
+ },
1315
+ {
1316
+ name: 'initializeStateVersion',
1317
+ accounts: [
1318
+ {
1319
+ name: 'state',
1320
+ isMut: true,
1321
+ isSigner: false,
1322
+ },
1323
+ ],
1324
+ args: [
1325
+ {
1326
+ name: 'mint',
1327
+ type: 'publicKey',
1328
+ },
1329
+ ],
1330
+ },
1331
+ {
1332
+ name: 'initChainRemoteConfig',
1333
+ accounts: [
1334
+ {
1335
+ name: 'state',
1336
+ isMut: false,
1337
+ isSigner: false,
1338
+ },
1339
+ {
1340
+ name: 'chainConfig',
1341
+ isMut: true,
1342
+ isSigner: false,
1343
+ },
1344
+ {
1345
+ name: 'authority',
1346
+ isMut: true,
1347
+ isSigner: true,
1348
+ },
1349
+ {
1350
+ name: 'systemProgram',
1351
+ isMut: false,
1352
+ isSigner: false,
1353
+ },
1354
+ ],
1355
+ args: [
1356
+ {
1357
+ name: 'remoteChainSelector',
1358
+ type: 'u64',
1359
+ },
1360
+ {
1361
+ name: 'mint',
1362
+ type: 'publicKey',
1363
+ },
1364
+ {
1365
+ name: 'cfg',
1366
+ type: {
1367
+ defined: 'RemoteConfig',
1368
+ },
1369
+ },
1370
+ ],
1371
+ },
1372
+ {
1373
+ name: 'editChainRemoteConfig',
1374
+ accounts: [
1375
+ {
1376
+ name: 'state',
1377
+ isMut: false,
1378
+ isSigner: false,
1379
+ },
1380
+ {
1381
+ name: 'chainConfig',
1382
+ isMut: true,
1383
+ isSigner: false,
1384
+ },
1385
+ {
1386
+ name: 'authority',
1387
+ isMut: true,
1388
+ isSigner: true,
1389
+ },
1390
+ {
1391
+ name: 'systemProgram',
1392
+ isMut: false,
1393
+ isSigner: false,
1394
+ },
1395
+ ],
1396
+ args: [
1397
+ {
1398
+ name: 'remoteChainSelector',
1399
+ type: 'u64',
1400
+ },
1401
+ {
1402
+ name: 'mint',
1403
+ type: 'publicKey',
1404
+ },
1405
+ {
1406
+ name: 'cfg',
1407
+ type: {
1408
+ defined: 'RemoteConfig',
1409
+ },
1410
+ },
1411
+ ],
1412
+ },
1413
+ {
1414
+ name: 'appendRemotePoolAddresses',
1415
+ accounts: [
1416
+ {
1417
+ name: 'state',
1418
+ isMut: false,
1419
+ isSigner: false,
1420
+ },
1421
+ {
1422
+ name: 'chainConfig',
1423
+ isMut: true,
1424
+ isSigner: false,
1425
+ },
1426
+ {
1427
+ name: 'authority',
1428
+ isMut: true,
1429
+ isSigner: true,
1430
+ },
1431
+ {
1432
+ name: 'systemProgram',
1433
+ isMut: false,
1434
+ isSigner: false,
1435
+ },
1436
+ ],
1437
+ args: [
1438
+ {
1439
+ name: 'remoteChainSelector',
1440
+ type: 'u64',
1441
+ },
1442
+ {
1443
+ name: 'mint',
1444
+ type: 'publicKey',
1445
+ },
1446
+ {
1447
+ name: 'addresses',
1448
+ type: {
1449
+ vec: {
1450
+ defined: 'RemoteAddress',
1451
+ },
1452
+ },
1453
+ },
1454
+ ],
1455
+ },
1456
+ {
1457
+ name: 'setChainRateLimit',
1458
+ accounts: [
1459
+ {
1460
+ name: 'state',
1461
+ isMut: false,
1462
+ isSigner: false,
1463
+ },
1464
+ {
1465
+ name: 'chainConfig',
1466
+ isMut: true,
1467
+ isSigner: false,
1468
+ },
1469
+ {
1470
+ name: 'authority',
1471
+ isMut: true,
1472
+ isSigner: true,
1473
+ },
1474
+ ],
1475
+ args: [
1476
+ {
1477
+ name: 'remoteChainSelector',
1478
+ type: 'u64',
1479
+ },
1480
+ {
1481
+ name: 'mint',
1482
+ type: 'publicKey',
1483
+ },
1484
+ {
1485
+ name: 'inbound',
1486
+ type: {
1487
+ defined: 'RateLimitConfig',
1488
+ },
1489
+ },
1490
+ {
1491
+ name: 'outbound',
1492
+ type: {
1493
+ defined: 'RateLimitConfig',
1494
+ },
1495
+ },
1496
+ ],
1497
+ },
1498
+ {
1499
+ name: 'setRateLimitAdmin',
1500
+ accounts: [
1501
+ {
1502
+ name: 'state',
1503
+ isMut: true,
1504
+ isSigner: false,
1505
+ },
1506
+ {
1507
+ name: 'authority',
1508
+ isMut: true,
1509
+ isSigner: true,
1510
+ },
1511
+ ],
1512
+ args: [
1513
+ {
1514
+ name: 'mint',
1515
+ type: 'publicKey',
1516
+ },
1517
+ {
1518
+ name: 'newRateLimitAdmin',
1519
+ type: 'publicKey',
1520
+ },
1521
+ ],
1522
+ },
1523
+ {
1524
+ name: 'deleteChainConfig',
1525
+ accounts: [
1526
+ {
1527
+ name: 'state',
1528
+ isMut: false,
1529
+ isSigner: false,
1530
+ },
1531
+ {
1532
+ name: 'chainConfig',
1533
+ isMut: true,
1534
+ isSigner: false,
1535
+ },
1536
+ {
1537
+ name: 'authority',
1538
+ isMut: true,
1539
+ isSigner: true,
1540
+ },
1541
+ ],
1542
+ args: [
1543
+ {
1544
+ name: 'remoteChainSelector',
1545
+ type: 'u64',
1546
+ },
1547
+ {
1548
+ name: 'mint',
1549
+ type: 'publicKey',
1550
+ },
1551
+ ],
1552
+ },
1553
+ {
1554
+ name: 'configureAllowList',
1555
+ accounts: [
1556
+ {
1557
+ name: 'state',
1558
+ isMut: true,
1559
+ isSigner: false,
1560
+ },
1561
+ {
1562
+ name: 'mint',
1563
+ isMut: false,
1564
+ isSigner: false,
1565
+ },
1566
+ {
1567
+ name: 'authority',
1568
+ isMut: true,
1569
+ isSigner: true,
1570
+ },
1571
+ {
1572
+ name: 'systemProgram',
1573
+ isMut: false,
1574
+ isSigner: false,
1575
+ },
1576
+ ],
1577
+ args: [
1578
+ {
1579
+ name: 'add',
1580
+ type: {
1581
+ vec: 'publicKey',
1582
+ },
1583
+ },
1584
+ {
1585
+ name: 'enabled',
1586
+ type: 'bool',
1587
+ },
1588
+ ],
1589
+ },
1590
+ {
1591
+ name: 'removeFromAllowList',
1592
+ accounts: [
1593
+ {
1594
+ name: 'state',
1595
+ isMut: true,
1596
+ isSigner: false,
1597
+ },
1598
+ {
1599
+ name: 'mint',
1600
+ isMut: false,
1601
+ isSigner: false,
1602
+ },
1603
+ {
1604
+ name: 'authority',
1605
+ isMut: true,
1606
+ isSigner: true,
1607
+ },
1608
+ {
1609
+ name: 'systemProgram',
1610
+ isMut: false,
1611
+ isSigner: false,
1612
+ },
1613
+ ],
1614
+ args: [
1615
+ {
1616
+ name: 'remove',
1617
+ type: {
1618
+ vec: 'publicKey',
1619
+ },
1620
+ },
1621
+ ],
1622
+ },
1623
+ {
1624
+ name: 'releaseOrMintTokens',
1625
+ accounts: [
1626
+ {
1627
+ name: 'authority',
1628
+ isMut: false,
1629
+ isSigner: true,
1630
+ },
1631
+ {
1632
+ name: 'offrampProgram',
1633
+ isMut: false,
1634
+ isSigner: false,
1635
+ docs: [
1636
+ 'CHECK offramp program: exists only to derive the allowed offramp PDA',
1637
+ 'and the authority PDA.',
1638
+ ],
1639
+ },
1640
+ {
1641
+ name: 'allowedOfframp',
1642
+ isMut: false,
1643
+ isSigner: false,
1644
+ docs: [
1645
+ 'CHECK PDA of the router program verifying the signer is an allowed offramp.',
1646
+ "If PDA does not exist, the router doesn't allow this offramp",
1647
+ ],
1648
+ },
1649
+ {
1650
+ name: 'state',
1651
+ isMut: false,
1652
+ isSigner: false,
1653
+ },
1654
+ {
1655
+ name: 'tokenProgram',
1656
+ isMut: false,
1657
+ isSigner: false,
1658
+ },
1659
+ {
1660
+ name: 'mint',
1661
+ isMut: true,
1662
+ isSigner: false,
1663
+ },
1664
+ {
1665
+ name: 'poolSigner',
1666
+ isMut: false,
1667
+ isSigner: false,
1668
+ },
1669
+ {
1670
+ name: 'poolTokenAccount',
1671
+ isMut: true,
1672
+ isSigner: false,
1673
+ },
1674
+ {
1675
+ name: 'chainConfig',
1676
+ isMut: true,
1677
+ isSigner: false,
1678
+ },
1679
+ {
1680
+ name: 'rmnRemote',
1681
+ isMut: false,
1682
+ isSigner: false,
1683
+ },
1684
+ {
1685
+ name: 'rmnRemoteCurses',
1686
+ isMut: false,
1687
+ isSigner: false,
1688
+ },
1689
+ {
1690
+ name: 'rmnRemoteConfig',
1691
+ isMut: false,
1692
+ isSigner: false,
1693
+ },
1694
+ {
1695
+ name: 'receiverTokenAccount',
1696
+ isMut: true,
1697
+ isSigner: false,
1698
+ },
1699
+ ],
1700
+ args: [
1701
+ {
1702
+ name: 'releaseOrMint',
1703
+ type: {
1704
+ defined: 'ReleaseOrMintInV1',
1705
+ },
1706
+ },
1707
+ ],
1708
+ returns: {
1709
+ defined: 'ReleaseOrMintOutV1',
1710
+ },
1711
+ },
1712
+ {
1713
+ name: 'lockOrBurnTokens',
1714
+ accounts: [
1715
+ {
1716
+ name: 'authority',
1717
+ isMut: false,
1718
+ isSigner: true,
1719
+ },
1720
+ {
1721
+ name: 'state',
1722
+ isMut: false,
1723
+ isSigner: false,
1724
+ },
1725
+ {
1726
+ name: 'tokenProgram',
1727
+ isMut: false,
1728
+ isSigner: false,
1729
+ },
1730
+ {
1731
+ name: 'mint',
1732
+ isMut: true,
1733
+ isSigner: false,
1734
+ },
1735
+ {
1736
+ name: 'poolSigner',
1737
+ isMut: false,
1738
+ isSigner: false,
1739
+ },
1740
+ {
1741
+ name: 'poolTokenAccount',
1742
+ isMut: true,
1743
+ isSigner: false,
1744
+ },
1745
+ {
1746
+ name: 'rmnRemote',
1747
+ isMut: false,
1748
+ isSigner: false,
1749
+ },
1750
+ {
1751
+ name: 'rmnRemoteCurses',
1752
+ isMut: false,
1753
+ isSigner: false,
1754
+ },
1755
+ {
1756
+ name: 'rmnRemoteConfig',
1757
+ isMut: false,
1758
+ isSigner: false,
1759
+ },
1760
+ {
1761
+ name: 'chainConfig',
1762
+ isMut: true,
1763
+ isSigner: false,
1764
+ },
1765
+ ],
1766
+ args: [
1767
+ {
1768
+ name: 'lockOrBurn',
1769
+ type: {
1770
+ defined: 'LockOrBurnInV1',
1771
+ },
1772
+ },
1773
+ ],
1774
+ returns: {
1775
+ defined: 'LockOrBurnOutV1',
1776
+ },
1777
+ },
1778
+ ],
1779
+ accounts: [
1780
+ {
1781
+ name: 'poolConfig',
1782
+ type: {
1783
+ kind: 'struct',
1784
+ fields: [
1785
+ {
1786
+ name: 'version',
1787
+ type: 'u8',
1788
+ },
1789
+ {
1790
+ name: 'selfServedAllowed',
1791
+ type: 'bool',
1792
+ },
1793
+ {
1794
+ name: 'router',
1795
+ type: 'publicKey',
1796
+ },
1797
+ {
1798
+ name: 'rmnRemote',
1799
+ type: 'publicKey',
1800
+ },
1801
+ ],
1802
+ },
1803
+ },
1804
+ {
1805
+ name: 'state',
1806
+ type: {
1807
+ kind: 'struct',
1808
+ fields: [
1809
+ {
1810
+ name: 'version',
1811
+ type: 'u8',
1812
+ },
1813
+ {
1814
+ name: 'config',
1815
+ type: {
1816
+ defined: 'BaseConfig',
1817
+ },
1818
+ },
1819
+ ],
1820
+ },
1821
+ },
1822
+ {
1823
+ name: 'chainConfig',
1824
+ type: {
1825
+ kind: 'struct',
1826
+ fields: [
1827
+ {
1828
+ name: 'base',
1829
+ type: {
1830
+ defined: 'BaseChain',
1831
+ },
1832
+ },
1833
+ ],
1834
+ },
1835
+ },
1836
+ ],
1837
+ errors: [
1838
+ {
1839
+ code: 6000,
1840
+ name: 'InvalidMultisig',
1841
+ msg: 'Invalid Multisig Mint',
1842
+ },
1843
+ {
1844
+ code: 6001,
1845
+ name: 'MintAuthorityAlreadySet',
1846
+ msg: 'Mint Authority already set',
1847
+ },
1848
+ {
1849
+ code: 6002,
1850
+ name: 'FixedMintToken',
1851
+ msg: 'Token with no Mint Authority',
1852
+ },
1853
+ {
1854
+ code: 6003,
1855
+ name: 'UnsupportedTokenProgram',
1856
+ msg: 'Unsupported Token Program',
1857
+ },
1858
+ {
1859
+ code: 6004,
1860
+ name: 'InvalidToken2022Multisig',
1861
+ msg: 'Invalid Multisig Account Data for Token 2022',
1862
+ },
1863
+ {
1864
+ code: 6005,
1865
+ name: 'InvalidSPLTokenMultisig',
1866
+ msg: 'Invalid Multisig Account Data for SPL Token',
1867
+ },
1868
+ {
1869
+ code: 6006,
1870
+ name: 'PoolSignerNotInMultisig',
1871
+ msg: 'Token Pool Signer PDA must be m times a signer of the Multisig',
1872
+ },
1873
+ {
1874
+ code: 6007,
1875
+ name: 'MultisigMustHaveAtLeastTwoSigners',
1876
+ msg: 'Multisig must have more than 2 valid signers',
1877
+ },
1878
+ {
1879
+ code: 6008,
1880
+ name: 'MultisigMustHaveMoreThanOneSigner',
1881
+ msg: 'Multisig must have more than one required signer',
1882
+ },
1883
+ {
1884
+ code: 6009,
1885
+ name: 'InvalidMultisigOwner',
1886
+ msg: 'Multisig Owner must match Token Program ID',
1887
+ },
1888
+ {
1889
+ code: 6010,
1890
+ name: 'InvalidMultisigThreshold',
1891
+ msg: 'Invalid multisig threshold: required signatures cannot exceed total signers',
1892
+ },
1893
+ {
1894
+ code: 6011,
1895
+ name: 'InvalidMultisigThresholdTooHigh',
1896
+ msg: 'Invalid multisig m: required signatures cannot exceed the available for outside signers',
1897
+ },
1898
+ ],
1899
+ }
1900
+ // generate:end