@picon-finance/dlmm-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +48 -0
  3. package/dist/actions/accept_admin_authority.d.ts +13 -0
  4. package/dist/actions/accept_admin_authority.d.ts.map +1 -0
  5. package/dist/actions/accept_admin_authority.js +7 -0
  6. package/dist/actions/claim_fee.d.ts +21 -0
  7. package/dist/actions/claim_fee.d.ts.map +1 -0
  8. package/dist/actions/claim_fee.js +40 -0
  9. package/dist/actions/claim_multiple_fees.d.ts +19 -0
  10. package/dist/actions/claim_multiple_fees.d.ts.map +1 -0
  11. package/dist/actions/claim_multiple_fees.js +81 -0
  12. package/dist/actions/claim_protocol_fee.d.ts +18 -0
  13. package/dist/actions/claim_protocol_fee.d.ts.map +1 -0
  14. package/dist/actions/claim_protocol_fee.js +33 -0
  15. package/dist/actions/close_position.d.ts +14 -0
  16. package/dist/actions/close_position.d.ts.map +1 -0
  17. package/dist/actions/close_position.js +14 -0
  18. package/dist/actions/create_admin_config.d.ts +15 -0
  19. package/dist/actions/create_admin_config.d.ts.map +1 -0
  20. package/dist/actions/create_admin_config.js +30 -0
  21. package/dist/actions/create_bin_array.d.ts +16 -0
  22. package/dist/actions/create_bin_array.d.ts.map +1 -0
  23. package/dist/actions/create_bin_array.js +10 -0
  24. package/dist/actions/create_pool.d.ts +21 -0
  25. package/dist/actions/create_pool.d.ts.map +1 -0
  26. package/dist/actions/create_pool.js +22 -0
  27. package/dist/actions/delete_bin_array.d.ts +16 -0
  28. package/dist/actions/delete_bin_array.d.ts.map +1 -0
  29. package/dist/actions/delete_bin_array.js +13 -0
  30. package/dist/actions/deposit_by_weight.d.ts +27 -0
  31. package/dist/actions/deposit_by_weight.d.ts.map +1 -0
  32. package/dist/actions/deposit_by_weight.js +52 -0
  33. package/dist/actions/get_admin_config.d.ts +4 -0
  34. package/dist/actions/get_admin_config.d.ts.map +1 -0
  35. package/dist/actions/get_admin_config.js +7 -0
  36. package/dist/actions/get_bin_arrays_by_indices.d.ts +5 -0
  37. package/dist/actions/get_bin_arrays_by_indices.d.ts.map +1 -0
  38. package/dist/actions/get_bin_arrays_by_indices.js +6 -0
  39. package/dist/actions/get_pool.d.ts +4 -0
  40. package/dist/actions/get_pool.d.ts.map +1 -0
  41. package/dist/actions/get_pool.js +5 -0
  42. package/dist/actions/get_position.d.ts +4 -0
  43. package/dist/actions/get_position.d.ts.map +1 -0
  44. package/dist/actions/get_position.js +5 -0
  45. package/dist/actions/get_position_by_position_mint.d.ts +4 -0
  46. package/dist/actions/get_position_by_position_mint.d.ts.map +1 -0
  47. package/dist/actions/get_position_by_position_mint.js +6 -0
  48. package/dist/actions/get_positions_by_owner.d.ts +5 -0
  49. package/dist/actions/get_positions_by_owner.d.ts.map +1 -0
  50. package/dist/actions/get_positions_by_owner.js +33 -0
  51. package/dist/actions/get_positions_by_position_mints.d.ts +5 -0
  52. package/dist/actions/get_positions_by_position_mints.d.ts.map +1 -0
  53. package/dist/actions/get_positions_by_position_mints.js +9 -0
  54. package/dist/actions/helpers/build_swap_transaction_message.d.ts +22 -0
  55. package/dist/actions/helpers/build_swap_transaction_message.d.ts.map +1 -0
  56. package/dist/actions/helpers/build_swap_transaction_message.js +50 -0
  57. package/dist/actions/helpers/build_transaction_message.d.ts +20 -0
  58. package/dist/actions/helpers/build_transaction_message.d.ts.map +1 -0
  59. package/dist/actions/helpers/build_transaction_message.js +5 -0
  60. package/dist/actions/helpers/index.d.ts +8 -0
  61. package/dist/actions/helpers/index.d.ts.map +1 -0
  62. package/dist/actions/helpers/index.js +7 -0
  63. package/dist/actions/helpers/resolve_active_bin_and_mints.d.ts +12 -0
  64. package/dist/actions/helpers/resolve_active_bin_and_mints.d.ts.map +1 -0
  65. package/dist/actions/helpers/resolve_active_bin_and_mints.js +13 -0
  66. package/dist/actions/helpers/resolve_admin_config_address.d.ts +3 -0
  67. package/dist/actions/helpers/resolve_admin_config_address.d.ts.map +1 -0
  68. package/dist/actions/helpers/resolve_admin_config_address.js +9 -0
  69. package/dist/actions/helpers/resolve_mint_info.d.ts +10 -0
  70. package/dist/actions/helpers/resolve_mint_info.d.ts.map +1 -0
  71. package/dist/actions/helpers/resolve_mint_info.js +20 -0
  72. package/dist/actions/helpers/resolve_position_range.d.ts +12 -0
  73. package/dist/actions/helpers/resolve_position_range.d.ts.map +1 -0
  74. package/dist/actions/helpers/resolve_position_range.js +12 -0
  75. package/dist/actions/helpers/resolve_token_mints_and_programs.d.ts +15 -0
  76. package/dist/actions/helpers/resolve_token_mints_and_programs.d.ts.map +1 -0
  77. package/dist/actions/helpers/resolve_token_mints_and_programs.js +29 -0
  78. package/dist/actions/index.d.ts +31 -0
  79. package/dist/actions/index.d.ts.map +1 -0
  80. package/dist/actions/index.js +28 -0
  81. package/dist/actions/is_admin_config_active.d.ts +4 -0
  82. package/dist/actions/is_admin_config_active.d.ts.map +1 -0
  83. package/dist/actions/is_admin_config_active.js +7 -0
  84. package/dist/actions/on_event.d.ts +11 -0
  85. package/dist/actions/on_event.d.ts.map +1 -0
  86. package/dist/actions/on_event.js +50 -0
  87. package/dist/actions/open_position.d.ts +17 -0
  88. package/dist/actions/open_position.d.ts.map +1 -0
  89. package/dist/actions/open_position.js +31 -0
  90. package/dist/actions/quote.d.ts +13 -0
  91. package/dist/actions/quote.d.ts.map +1 -0
  92. package/dist/actions/quote.js +43 -0
  93. package/dist/actions/set_metadata_update_authority.d.ts +14 -0
  94. package/dist/actions/set_metadata_update_authority.d.ts.map +1 -0
  95. package/dist/actions/set_metadata_update_authority.js +7 -0
  96. package/dist/actions/set_pool_dynamic_fee_config.d.ts +16 -0
  97. package/dist/actions/set_pool_dynamic_fee_config.d.ts.map +1 -0
  98. package/dist/actions/set_pool_dynamic_fee_config.js +7 -0
  99. package/dist/actions/set_pool_protocol_share.d.ts +15 -0
  100. package/dist/actions/set_pool_protocol_share.d.ts.map +1 -0
  101. package/dist/actions/set_pool_protocol_share.js +7 -0
  102. package/dist/actions/swap.d.ts +22 -0
  103. package/dist/actions/swap.d.ts.map +1 -0
  104. package/dist/actions/swap.js +19 -0
  105. package/dist/actions/sync_pool.d.ts +15 -0
  106. package/dist/actions/sync_pool.d.ts.map +1 -0
  107. package/dist/actions/sync_pool.js +26 -0
  108. package/dist/actions/transfer_admin_authority.d.ts +14 -0
  109. package/dist/actions/transfer_admin_authority.d.ts.map +1 -0
  110. package/dist/actions/transfer_admin_authority.js +7 -0
  111. package/dist/actions/withdraw.d.ts +22 -0
  112. package/dist/actions/withdraw.d.ts.map +1 -0
  113. package/dist/actions/withdraw.js +41 -0
  114. package/dist/events.d.ts +93 -0
  115. package/dist/events.d.ts.map +1 -0
  116. package/dist/events.js +166 -0
  117. package/dist/generated/accounts/adminConfig.d.ts +35 -0
  118. package/dist/generated/accounts/adminConfig.d.ts.map +1 -0
  119. package/dist/generated/accounts/adminConfig.js +60 -0
  120. package/dist/generated/accounts/binArray.d.ts +40 -0
  121. package/dist/generated/accounts/binArray.d.ts.map +1 -0
  122. package/dist/generated/accounts/binArray.js +65 -0
  123. package/dist/generated/accounts/index.d.ts +12 -0
  124. package/dist/generated/accounts/index.d.ts.map +1 -0
  125. package/dist/generated/accounts/index.js +11 -0
  126. package/dist/generated/accounts/pool.d.ts +54 -0
  127. package/dist/generated/accounts/pool.d.ts.map +1 -0
  128. package/dist/generated/accounts/pool.js +79 -0
  129. package/dist/generated/accounts/position.d.ts +42 -0
  130. package/dist/generated/accounts/position.d.ts.map +1 -0
  131. package/dist/generated/accounts/position.js +67 -0
  132. package/dist/generated/errors/index.d.ts +9 -0
  133. package/dist/generated/errors/index.d.ts.map +1 -0
  134. package/dist/generated/errors/index.js +8 -0
  135. package/dist/generated/errors/piconDlmm.d.ts +58 -0
  136. package/dist/generated/errors/piconDlmm.d.ts.map +1 -0
  137. package/dist/generated/errors/piconDlmm.js +80 -0
  138. package/dist/generated/index.d.ts +14 -0
  139. package/dist/generated/index.d.ts.map +1 -0
  140. package/dist/generated/index.js +13 -0
  141. package/dist/generated/instructions/acceptAdminAuthority.d.ts +47 -0
  142. package/dist/generated/instructions/acceptAdminAuthority.d.ts.map +1 -0
  143. package/dist/generated/instructions/acceptAdminAuthority.js +99 -0
  144. package/dist/generated/instructions/claimFee.d.ts +83 -0
  145. package/dist/generated/instructions/claimFee.d.ts.map +1 -0
  146. package/dist/generated/instructions/claimFee.js +127 -0
  147. package/dist/generated/instructions/claimProtocolFee.d.ts +83 -0
  148. package/dist/generated/instructions/claimProtocolFee.d.ts.map +1 -0
  149. package/dist/generated/instructions/claimProtocolFee.js +147 -0
  150. package/dist/generated/instructions/closePosition.d.ts +59 -0
  151. package/dist/generated/instructions/closePosition.d.ts.map +1 -0
  152. package/dist/generated/instructions/closePosition.js +124 -0
  153. package/dist/generated/instructions/createAdminConfig.d.ts +68 -0
  154. package/dist/generated/instructions/createAdminConfig.d.ts.map +1 -0
  155. package/dist/generated/instructions/createAdminConfig.js +132 -0
  156. package/dist/generated/instructions/createBinArray.d.ts +64 -0
  157. package/dist/generated/instructions/createBinArray.d.ts.map +1 -0
  158. package/dist/generated/instructions/createBinArray.js +122 -0
  159. package/dist/generated/instructions/createPool.d.ts +100 -0
  160. package/dist/generated/instructions/createPool.d.ts.map +1 -0
  161. package/dist/generated/instructions/createPool.js +202 -0
  162. package/dist/generated/instructions/deleteBinArray.d.ts +68 -0
  163. package/dist/generated/instructions/deleteBinArray.d.ts.map +1 -0
  164. package/dist/generated/instructions/deleteBinArray.js +130 -0
  165. package/dist/generated/instructions/depositByWeight.d.ts +99 -0
  166. package/dist/generated/instructions/depositByWeight.d.ts.map +1 -0
  167. package/dist/generated/instructions/depositByWeight.js +136 -0
  168. package/dist/generated/instructions/index.d.ts +25 -0
  169. package/dist/generated/instructions/index.d.ts.map +1 -0
  170. package/dist/generated/instructions/index.js +24 -0
  171. package/dist/generated/instructions/openPosition.d.ts +88 -0
  172. package/dist/generated/instructions/openPosition.d.ts.map +1 -0
  173. package/dist/generated/instructions/openPosition.js +200 -0
  174. package/dist/generated/instructions/setMetadataUpdateAuthority.d.ts +52 -0
  175. package/dist/generated/instructions/setMetadataUpdateAuthority.d.ts.map +1 -0
  176. package/dist/generated/instructions/setMetadataUpdateAuthority.js +98 -0
  177. package/dist/generated/instructions/setPoolDynamicFeeConfig.d.ts +57 -0
  178. package/dist/generated/instructions/setPoolDynamicFeeConfig.d.ts.map +1 -0
  179. package/dist/generated/instructions/setPoolDynamicFeeConfig.js +107 -0
  180. package/dist/generated/instructions/setPoolProtocolShare.d.ts +56 -0
  181. package/dist/generated/instructions/setPoolProtocolShare.d.ts.map +1 -0
  182. package/dist/generated/instructions/setPoolProtocolShare.js +106 -0
  183. package/dist/generated/instructions/swap.d.ts +74 -0
  184. package/dist/generated/instructions/swap.d.ts.map +1 -0
  185. package/dist/generated/instructions/swap.js +108 -0
  186. package/dist/generated/instructions/syncPool.d.ts +44 -0
  187. package/dist/generated/instructions/syncPool.d.ts.map +1 -0
  188. package/dist/generated/instructions/syncPool.js +71 -0
  189. package/dist/generated/instructions/transferAdminAuthority.d.ts +52 -0
  190. package/dist/generated/instructions/transferAdminAuthority.d.ts.map +1 -0
  191. package/dist/generated/instructions/transferAdminAuthority.js +98 -0
  192. package/dist/generated/instructions/withdraw.d.ts +86 -0
  193. package/dist/generated/instructions/withdraw.d.ts.map +1 -0
  194. package/dist/generated/instructions/withdraw.js +129 -0
  195. package/dist/generated/pdas/adminConfig.d.ts +12 -0
  196. package/dist/generated/pdas/adminConfig.d.ts.map +1 -0
  197. package/dist/generated/pdas/adminConfig.js +19 -0
  198. package/dist/generated/pdas/binArray.d.ts +16 -0
  199. package/dist/generated/pdas/binArray.d.ts.map +1 -0
  200. package/dist/generated/pdas/binArray.js +19 -0
  201. package/dist/generated/pdas/index.d.ts +12 -0
  202. package/dist/generated/pdas/index.d.ts.map +1 -0
  203. package/dist/generated/pdas/index.js +11 -0
  204. package/dist/generated/pdas/pool.d.ts +18 -0
  205. package/dist/generated/pdas/pool.d.ts.map +1 -0
  206. package/dist/generated/pdas/pool.js +21 -0
  207. package/dist/generated/pdas/position.d.ts +15 -0
  208. package/dist/generated/pdas/position.d.ts.map +1 -0
  209. package/dist/generated/pdas/position.js +18 -0
  210. package/dist/generated/programs/index.d.ts +9 -0
  211. package/dist/generated/programs/index.d.ts.map +1 -0
  212. package/dist/generated/programs/index.js +8 -0
  213. package/dist/generated/programs/piconDlmm.d.ts +126 -0
  214. package/dist/generated/programs/piconDlmm.d.ts.map +1 -0
  215. package/dist/generated/programs/piconDlmm.js +285 -0
  216. package/dist/generated/types/bin.d.ts +28 -0
  217. package/dist/generated/types/bin.d.ts.map +1 -0
  218. package/dist/generated/types/bin.js +31 -0
  219. package/dist/generated/types/distributionMode.d.ts +19 -0
  220. package/dist/generated/types/distributionMode.d.ts.map +1 -0
  221. package/dist/generated/types/distributionMode.js +24 -0
  222. package/dist/generated/types/dynamicFeeConfig.d.ts +29 -0
  223. package/dist/generated/types/dynamicFeeConfig.d.ts.map +1 -0
  224. package/dist/generated/types/dynamicFeeConfig.js +29 -0
  225. package/dist/generated/types/dynamicFeeState.d.ts +27 -0
  226. package/dist/generated/types/dynamicFeeState.d.ts.map +1 -0
  227. package/dist/generated/types/dynamicFeeState.js +30 -0
  228. package/dist/generated/types/feeState.d.ts +26 -0
  229. package/dist/generated/types/feeState.d.ts.map +1 -0
  230. package/dist/generated/types/feeState.js +29 -0
  231. package/dist/generated/types/index.d.ts +13 -0
  232. package/dist/generated/types/index.d.ts.map +1 -0
  233. package/dist/generated/types/index.js +12 -0
  234. package/dist/index.d.ts +5 -0
  235. package/dist/index.d.ts.map +1 -0
  236. package/dist/index.js +4 -0
  237. package/dist/picon_dlmm.json +2378 -0
  238. package/dist/program_addresses.d.ts +4 -0
  239. package/dist/program_addresses.d.ts.map +1 -0
  240. package/dist/program_addresses.js +8 -0
  241. package/dist/quote/index.d.ts +4 -0
  242. package/dist/quote/index.d.ts.map +1 -0
  243. package/dist/quote/index.js +5 -0
  244. package/dist/quote/wasm-node/picon_dlmm_quote.d.ts +6 -0
  245. package/dist/quote/wasm-node/picon_dlmm_quote.d.ts.map +1 -0
  246. package/dist/quote/wasm-node/picon_dlmm_quote.js +398 -0
  247. package/dist/quote/wasm-node/picon_dlmm_quote_bg.wasm +0 -0
  248. package/dist/quote/wasm-node-loader.d.ts +4 -0
  249. package/dist/quote/wasm-node-loader.d.ts.map +1 -0
  250. package/dist/quote/wasm-node-loader.js +7 -0
  251. package/dist/quote/wasm-web/picon_dlmm_quote.d.ts +9 -0
  252. package/dist/quote/wasm-web/picon_dlmm_quote.d.ts.map +1 -0
  253. package/dist/quote/wasm-web/picon_dlmm_quote.js +486 -0
  254. package/dist/quote/wasm-web/picon_dlmm_quote_bg.wasm +0 -0
  255. package/dist/quote/wasm-web-loader.d.ts +4 -0
  256. package/dist/quote/wasm-web-loader.d.ts.map +1 -0
  257. package/dist/quote/wasm-web-loader.js +12 -0
  258. package/dist/utils/admin_config.d.ts +3 -0
  259. package/dist/utils/admin_config.d.ts.map +1 -0
  260. package/dist/utils/admin_config.js +4 -0
  261. package/dist/utils/ata.d.ts +49 -0
  262. package/dist/utils/ata.d.ts.map +1 -0
  263. package/dist/utils/ata.js +113 -0
  264. package/dist/utils/bin_array.d.ts +8 -0
  265. package/dist/utils/bin_array.d.ts.map +1 -0
  266. package/dist/utils/bin_array.js +29 -0
  267. package/dist/utils/bin_location.d.ts +11 -0
  268. package/dist/utils/bin_location.d.ts.map +1 -0
  269. package/dist/utils/bin_location.js +55 -0
  270. package/dist/utils/chunk.d.ts +2 -0
  271. package/dist/utils/chunk.d.ts.map +1 -0
  272. package/dist/utils/chunk.js +7 -0
  273. package/dist/utils/compute_budget.d.ts +11 -0
  274. package/dist/utils/compute_budget.d.ts.map +1 -0
  275. package/dist/utils/compute_budget.js +22 -0
  276. package/dist/utils/constants.d.ts +12 -0
  277. package/dist/utils/constants.d.ts.map +1 -0
  278. package/dist/utils/constants.js +20 -0
  279. package/dist/utils/transfer_fee.d.ts +4 -0
  280. package/dist/utils/transfer_fee.d.ts.map +1 -0
  281. package/dist/utils/transfer_fee.js +21 -0
  282. package/dist/utils/type_guards.d.ts +2 -0
  283. package/dist/utils/type_guards.d.ts.map +1 -0
  284. package/dist/utils/type_guards.js +3 -0
  285. package/package.json +59 -0
  286. package/src/actions/accept_admin_authority.ts +17 -0
  287. package/src/actions/claim_fee.ts +84 -0
  288. package/src/actions/claim_multiple_fees.ts +123 -0
  289. package/src/actions/claim_protocol_fee.ts +68 -0
  290. package/src/actions/close_position.ts +21 -0
  291. package/src/actions/create_admin_config.ts +50 -0
  292. package/src/actions/create_bin_array.ts +30 -0
  293. package/src/actions/create_pool.ts +49 -0
  294. package/src/actions/delete_bin_array.ts +33 -0
  295. package/src/actions/deposit_by_weight.ts +107 -0
  296. package/src/actions/get_admin_config.ts +13 -0
  297. package/src/actions/get_bin_arrays_by_indices.ts +15 -0
  298. package/src/actions/get_pool.ts +8 -0
  299. package/src/actions/get_position.ts +8 -0
  300. package/src/actions/get_position_by_position_mint.ts +14 -0
  301. package/src/actions/get_positions_by_owner.ts +48 -0
  302. package/src/actions/get_positions_by_position_mints.ts +21 -0
  303. package/src/actions/helpers/build_swap_transaction_message.ts +86 -0
  304. package/src/actions/helpers/build_transaction_message.ts +45 -0
  305. package/src/actions/helpers/index.ts +7 -0
  306. package/src/actions/helpers/resolve_active_bin_and_mints.ts +21 -0
  307. package/src/actions/helpers/resolve_admin_config_address.ts +11 -0
  308. package/src/actions/helpers/resolve_mint_info.ts +36 -0
  309. package/src/actions/helpers/resolve_position_range.ts +21 -0
  310. package/src/actions/helpers/resolve_token_mints_and_programs.ts +56 -0
  311. package/src/actions/index.ts +34 -0
  312. package/src/actions/is_admin_config_active.ts +14 -0
  313. package/src/actions/on_event.ts +78 -0
  314. package/src/actions/open_position.ts +66 -0
  315. package/src/actions/quote.ts +70 -0
  316. package/src/actions/set_metadata_update_authority.ts +17 -0
  317. package/src/actions/set_pool_dynamic_fee_config.ts +17 -0
  318. package/src/actions/set_pool_protocol_share.ts +17 -0
  319. package/src/actions/swap.ts +56 -0
  320. package/src/actions/sync_pool.ts +35 -0
  321. package/src/actions/transfer_admin_authority.ts +17 -0
  322. package/src/actions/withdraw.ts +87 -0
  323. package/src/events.ts +279 -0
  324. package/src/generated/accounts/adminConfig.ts +147 -0
  325. package/src/generated/accounts/binArray.ts +155 -0
  326. package/src/generated/accounts/index.ts +12 -0
  327. package/src/generated/accounts/pool.ts +192 -0
  328. package/src/generated/accounts/position.ts +164 -0
  329. package/src/generated/errors/index.ts +9 -0
  330. package/src/generated/errors/piconDlmm.ts +124 -0
  331. package/src/generated/index.ts +14 -0
  332. package/src/generated/instructions/acceptAdminAuthority.ts +262 -0
  333. package/src/generated/instructions/claimFee.ts +395 -0
  334. package/src/generated/instructions/claimProtocolFee.ts +462 -0
  335. package/src/generated/instructions/closePosition.ts +342 -0
  336. package/src/generated/instructions/createAdminConfig.ts +369 -0
  337. package/src/generated/instructions/createBinArray.ts +344 -0
  338. package/src/generated/instructions/createPool.ts +582 -0
  339. package/src/generated/instructions/deleteBinArray.ts +365 -0
  340. package/src/generated/instructions/depositByWeight.ts +435 -0
  341. package/src/generated/instructions/index.ts +25 -0
  342. package/src/generated/instructions/openPosition.ts +547 -0
  343. package/src/generated/instructions/setMetadataUpdateAuthority.ts +274 -0
  344. package/src/generated/instructions/setPoolDynamicFeeConfig.ts +304 -0
  345. package/src/generated/instructions/setPoolProtocolShare.ts +298 -0
  346. package/src/generated/instructions/swap.ts +336 -0
  347. package/src/generated/instructions/syncPool.ts +189 -0
  348. package/src/generated/instructions/transferAdminAuthority.ts +271 -0
  349. package/src/generated/instructions/withdraw.ts +402 -0
  350. package/src/generated/pdas/adminConfig.ts +32 -0
  351. package/src/generated/pdas/binArray.ts +40 -0
  352. package/src/generated/pdas/index.ts +12 -0
  353. package/src/generated/pdas/pool.ts +43 -0
  354. package/src/generated/pdas/position.ts +37 -0
  355. package/src/generated/programs/index.ts +9 -0
  356. package/src/generated/programs/piconDlmm.ts +803 -0
  357. package/src/generated/types/bin.ts +64 -0
  358. package/src/generated/types/distributionMode.ts +43 -0
  359. package/src/generated/types/dynamicFeeConfig.ts +69 -0
  360. package/src/generated/types/dynamicFeeState.ts +71 -0
  361. package/src/generated/types/feeState.ts +60 -0
  362. package/src/generated/types/index.ts +13 -0
  363. package/src/index.ts +4 -0
  364. package/src/picon_dlmm.json +2378 -0
  365. package/src/program_addresses.ts +10 -0
  366. package/src/quote/index.ts +14 -0
  367. package/src/quote/wasm-node/package.json +4 -0
  368. package/src/quote/wasm-node/picon_dlmm_quote.d.ts +64 -0
  369. package/src/quote/wasm-node/picon_dlmm_quote.js +407 -0
  370. package/src/quote/wasm-node/picon_dlmm_quote_bg.wasm +0 -0
  371. package/src/quote/wasm-node/picon_dlmm_quote_bg.wasm.d.ts +11 -0
  372. package/src/quote/wasm-node-loader.ts +11 -0
  373. package/src/quote/wasm-web/picon_dlmm_quote.d.ts +100 -0
  374. package/src/quote/wasm-web/picon_dlmm_quote.js +500 -0
  375. package/src/quote/wasm-web/picon_dlmm_quote_bg.wasm +0 -0
  376. package/src/quote/wasm-web/picon_dlmm_quote_bg.wasm.d.ts +11 -0
  377. package/src/quote/wasm-web-loader.ts +17 -0
  378. package/src/utils/admin_config.ts +6 -0
  379. package/src/utils/ata.ts +213 -0
  380. package/src/utils/bin_array.ts +45 -0
  381. package/src/utils/bin_location.ts +79 -0
  382. package/src/utils/chunk.ts +7 -0
  383. package/src/utils/compute_budget.ts +58 -0
  384. package/src/utils/constants.ts +24 -0
  385. package/src/utils/transfer_fee.ts +29 -0
  386. package/src/utils/type_guards.ts +3 -0
@@ -0,0 +1,2378 @@
1
+ {
2
+ "address": "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC",
3
+ "metadata": {
4
+ "name": "picon_dlmm",
5
+ "version": "1.0.0",
6
+ "spec": "0.1.0",
7
+ "description": "Created with Anchor"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "accept_admin_authority",
12
+ "discriminator": [
13
+ 109,
14
+ 115,
15
+ 12,
16
+ 245,
17
+ 11,
18
+ 10,
19
+ 16,
20
+ 209
21
+ ],
22
+ "accounts": [
23
+ {
24
+ "name": "pending_authority",
25
+ "signer": true,
26
+ "relations": [
27
+ "admin_config"
28
+ ]
29
+ },
30
+ {
31
+ "name": "admin_config",
32
+ "writable": true,
33
+ "pda": {
34
+ "seeds": [
35
+ {
36
+ "kind": "const",
37
+ "value": [
38
+ 97,
39
+ 100,
40
+ 109,
41
+ 105,
42
+ 110,
43
+ 95,
44
+ 99,
45
+ 111,
46
+ 110,
47
+ 102,
48
+ 105,
49
+ 103
50
+ ]
51
+ }
52
+ ]
53
+ }
54
+ }
55
+ ],
56
+ "args": []
57
+ },
58
+ {
59
+ "name": "claim_fee",
60
+ "discriminator": [
61
+ 169,
62
+ 32,
63
+ 79,
64
+ 137,
65
+ 136,
66
+ 232,
67
+ 70,
68
+ 137
69
+ ],
70
+ "accounts": [
71
+ {
72
+ "name": "owner",
73
+ "signer": true
74
+ },
75
+ {
76
+ "name": "pool",
77
+ "relations": [
78
+ "position"
79
+ ]
80
+ },
81
+ {
82
+ "name": "position",
83
+ "writable": true
84
+ },
85
+ {
86
+ "name": "position_token_account"
87
+ },
88
+ {
89
+ "name": "token_mint_x"
90
+ },
91
+ {
92
+ "name": "token_mint_y"
93
+ },
94
+ {
95
+ "name": "token_owner_account_x",
96
+ "writable": true
97
+ },
98
+ {
99
+ "name": "token_owner_account_y",
100
+ "writable": true
101
+ },
102
+ {
103
+ "name": "token_vault_x",
104
+ "writable": true
105
+ },
106
+ {
107
+ "name": "token_vault_y",
108
+ "writable": true
109
+ },
110
+ {
111
+ "name": "token_program_x"
112
+ },
113
+ {
114
+ "name": "token_program_y"
115
+ },
116
+ {
117
+ "name": "lower_bin_array"
118
+ },
119
+ {
120
+ "name": "upper_bin_array",
121
+ "optional": true
122
+ }
123
+ ],
124
+ "args": [
125
+ {
126
+ "name": "params",
127
+ "type": {
128
+ "defined": {
129
+ "name": "ClaimFeeParams"
130
+ }
131
+ }
132
+ }
133
+ ]
134
+ },
135
+ {
136
+ "name": "claim_protocol_fee",
137
+ "discriminator": [
138
+ 165,
139
+ 228,
140
+ 133,
141
+ 48,
142
+ 99,
143
+ 249,
144
+ 255,
145
+ 33
146
+ ],
147
+ "accounts": [
148
+ {
149
+ "name": "authority",
150
+ "signer": true,
151
+ "relations": [
152
+ "admin_config"
153
+ ]
154
+ },
155
+ {
156
+ "name": "admin_config",
157
+ "pda": {
158
+ "seeds": [
159
+ {
160
+ "kind": "const",
161
+ "value": [
162
+ 97,
163
+ 100,
164
+ 109,
165
+ 105,
166
+ 110,
167
+ 95,
168
+ 99,
169
+ 111,
170
+ 110,
171
+ 102,
172
+ 105,
173
+ 103
174
+ ]
175
+ }
176
+ ]
177
+ }
178
+ },
179
+ {
180
+ "name": "pool",
181
+ "writable": true
182
+ },
183
+ {
184
+ "name": "token_mint_x"
185
+ },
186
+ {
187
+ "name": "token_mint_y"
188
+ },
189
+ {
190
+ "name": "token_vault_x",
191
+ "writable": true
192
+ },
193
+ {
194
+ "name": "token_vault_y",
195
+ "writable": true
196
+ },
197
+ {
198
+ "name": "token_admin_account_x",
199
+ "writable": true
200
+ },
201
+ {
202
+ "name": "token_admin_account_y",
203
+ "writable": true
204
+ },
205
+ {
206
+ "name": "token_program_x"
207
+ },
208
+ {
209
+ "name": "token_program_y"
210
+ }
211
+ ],
212
+ "args": []
213
+ },
214
+ {
215
+ "name": "close_position",
216
+ "discriminator": [
217
+ 123,
218
+ 134,
219
+ 81,
220
+ 0,
221
+ 49,
222
+ 68,
223
+ 98,
224
+ 98
225
+ ],
226
+ "accounts": [
227
+ {
228
+ "name": "owner",
229
+ "writable": true,
230
+ "signer": true
231
+ },
232
+ {
233
+ "name": "position",
234
+ "writable": true,
235
+ "pda": {
236
+ "seeds": [
237
+ {
238
+ "kind": "const",
239
+ "value": [
240
+ 112,
241
+ 111,
242
+ 115,
243
+ 105,
244
+ 116,
245
+ 105,
246
+ 111,
247
+ 110
248
+ ]
249
+ },
250
+ {
251
+ "kind": "account",
252
+ "path": "position_mint"
253
+ }
254
+ ]
255
+ }
256
+ },
257
+ {
258
+ "name": "position_mint",
259
+ "writable": true
260
+ },
261
+ {
262
+ "name": "position_token_account",
263
+ "writable": true
264
+ },
265
+ {
266
+ "name": "token_program",
267
+ "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
268
+ }
269
+ ],
270
+ "args": []
271
+ },
272
+ {
273
+ "name": "create_admin_config",
274
+ "discriminator": [
275
+ 19,
276
+ 140,
277
+ 214,
278
+ 88,
279
+ 151,
280
+ 236,
281
+ 89,
282
+ 5
283
+ ],
284
+ "accounts": [
285
+ {
286
+ "name": "deployer",
287
+ "writable": true,
288
+ "signer": true
289
+ },
290
+ {
291
+ "name": "admin_config",
292
+ "writable": true,
293
+ "pda": {
294
+ "seeds": [
295
+ {
296
+ "kind": "const",
297
+ "value": [
298
+ 97,
299
+ 100,
300
+ 109,
301
+ 105,
302
+ 110,
303
+ 95,
304
+ 99,
305
+ 111,
306
+ 110,
307
+ 102,
308
+ 105,
309
+ 103
310
+ ]
311
+ }
312
+ ]
313
+ }
314
+ },
315
+ {
316
+ "name": "program",
317
+ "address": "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC"
318
+ },
319
+ {
320
+ "name": "program_data"
321
+ },
322
+ {
323
+ "name": "system_program",
324
+ "address": "11111111111111111111111111111111"
325
+ }
326
+ ],
327
+ "args": [
328
+ {
329
+ "name": "authority",
330
+ "type": "pubkey"
331
+ },
332
+ {
333
+ "name": "metadata_update_authority",
334
+ "type": {
335
+ "option": "pubkey"
336
+ }
337
+ }
338
+ ]
339
+ },
340
+ {
341
+ "name": "create_bin_array",
342
+ "discriminator": [
343
+ 107,
344
+ 26,
345
+ 23,
346
+ 62,
347
+ 137,
348
+ 213,
349
+ 131,
350
+ 235
351
+ ],
352
+ "accounts": [
353
+ {
354
+ "name": "payer",
355
+ "writable": true,
356
+ "signer": true
357
+ },
358
+ {
359
+ "name": "pool"
360
+ },
361
+ {
362
+ "name": "bin_array",
363
+ "writable": true,
364
+ "pda": {
365
+ "seeds": [
366
+ {
367
+ "kind": "const",
368
+ "value": [
369
+ 98,
370
+ 105,
371
+ 110,
372
+ 95,
373
+ 97,
374
+ 114,
375
+ 114,
376
+ 97,
377
+ 121
378
+ ]
379
+ },
380
+ {
381
+ "kind": "account",
382
+ "path": "pool"
383
+ },
384
+ {
385
+ "kind": "arg",
386
+ "path": "index"
387
+ }
388
+ ]
389
+ }
390
+ },
391
+ {
392
+ "name": "system_program",
393
+ "address": "11111111111111111111111111111111"
394
+ }
395
+ ],
396
+ "args": [
397
+ {
398
+ "name": "index",
399
+ "type": "i32"
400
+ },
401
+ {
402
+ "name": "idempotent",
403
+ "type": "bool"
404
+ }
405
+ ]
406
+ },
407
+ {
408
+ "name": "create_pool",
409
+ "discriminator": [
410
+ 233,
411
+ 146,
412
+ 209,
413
+ 142,
414
+ 207,
415
+ 104,
416
+ 64,
417
+ 188
418
+ ],
419
+ "accounts": [
420
+ {
421
+ "name": "authority",
422
+ "writable": true,
423
+ "signer": true,
424
+ "relations": [
425
+ "admin_config"
426
+ ]
427
+ },
428
+ {
429
+ "name": "admin_config",
430
+ "pda": {
431
+ "seeds": [
432
+ {
433
+ "kind": "const",
434
+ "value": [
435
+ 97,
436
+ 100,
437
+ 109,
438
+ 105,
439
+ 110,
440
+ 95,
441
+ 99,
442
+ 111,
443
+ 110,
444
+ 102,
445
+ 105,
446
+ 103
447
+ ]
448
+ }
449
+ ]
450
+ }
451
+ },
452
+ {
453
+ "name": "token_mint_x"
454
+ },
455
+ {
456
+ "name": "token_mint_y"
457
+ },
458
+ {
459
+ "name": "token_vault_x",
460
+ "writable": true,
461
+ "pda": {
462
+ "seeds": [
463
+ {
464
+ "kind": "account",
465
+ "path": "pool"
466
+ },
467
+ {
468
+ "kind": "account",
469
+ "path": "token_program_x"
470
+ },
471
+ {
472
+ "kind": "account",
473
+ "path": "token_mint_x"
474
+ }
475
+ ],
476
+ "program": {
477
+ "kind": "const",
478
+ "value": [
479
+ 140,
480
+ 151,
481
+ 37,
482
+ 143,
483
+ 78,
484
+ 36,
485
+ 137,
486
+ 241,
487
+ 187,
488
+ 61,
489
+ 16,
490
+ 41,
491
+ 20,
492
+ 142,
493
+ 13,
494
+ 131,
495
+ 11,
496
+ 90,
497
+ 19,
498
+ 153,
499
+ 218,
500
+ 255,
501
+ 16,
502
+ 132,
503
+ 4,
504
+ 142,
505
+ 123,
506
+ 216,
507
+ 219,
508
+ 233,
509
+ 248,
510
+ 89
511
+ ]
512
+ }
513
+ }
514
+ },
515
+ {
516
+ "name": "token_vault_y",
517
+ "writable": true,
518
+ "pda": {
519
+ "seeds": [
520
+ {
521
+ "kind": "account",
522
+ "path": "pool"
523
+ },
524
+ {
525
+ "kind": "account",
526
+ "path": "token_program_y"
527
+ },
528
+ {
529
+ "kind": "account",
530
+ "path": "token_mint_y"
531
+ }
532
+ ],
533
+ "program": {
534
+ "kind": "const",
535
+ "value": [
536
+ 140,
537
+ 151,
538
+ 37,
539
+ 143,
540
+ 78,
541
+ 36,
542
+ 137,
543
+ 241,
544
+ 187,
545
+ 61,
546
+ 16,
547
+ 41,
548
+ 20,
549
+ 142,
550
+ 13,
551
+ 131,
552
+ 11,
553
+ 90,
554
+ 19,
555
+ 153,
556
+ 218,
557
+ 255,
558
+ 16,
559
+ 132,
560
+ 4,
561
+ 142,
562
+ 123,
563
+ 216,
564
+ 219,
565
+ 233,
566
+ 248,
567
+ 89
568
+ ]
569
+ }
570
+ }
571
+ },
572
+ {
573
+ "name": "pool",
574
+ "writable": true,
575
+ "pda": {
576
+ "seeds": [
577
+ {
578
+ "kind": "const",
579
+ "value": [
580
+ 112,
581
+ 111,
582
+ 111,
583
+ 108
584
+ ]
585
+ },
586
+ {
587
+ "kind": "account",
588
+ "path": "token_mint_x"
589
+ },
590
+ {
591
+ "kind": "account",
592
+ "path": "token_mint_y"
593
+ },
594
+ {
595
+ "kind": "arg",
596
+ "path": "bin_step"
597
+ },
598
+ {
599
+ "kind": "arg",
600
+ "path": "fee_rate"
601
+ }
602
+ ]
603
+ }
604
+ },
605
+ {
606
+ "name": "token_program_x"
607
+ },
608
+ {
609
+ "name": "token_program_y"
610
+ },
611
+ {
612
+ "name": "associated_token_program",
613
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
614
+ },
615
+ {
616
+ "name": "system_program",
617
+ "address": "11111111111111111111111111111111"
618
+ }
619
+ ],
620
+ "args": [
621
+ {
622
+ "name": "bin_step",
623
+ "type": "u16"
624
+ },
625
+ {
626
+ "name": "fee_rate",
627
+ "type": "u32"
628
+ },
629
+ {
630
+ "name": "protocol_share",
631
+ "type": "u16"
632
+ },
633
+ {
634
+ "name": "active_bin_id",
635
+ "type": "i32"
636
+ }
637
+ ]
638
+ },
639
+ {
640
+ "name": "delete_bin_array",
641
+ "discriminator": [
642
+ 158,
643
+ 86,
644
+ 142,
645
+ 160,
646
+ 52,
647
+ 53,
648
+ 194,
649
+ 51
650
+ ],
651
+ "accounts": [
652
+ {
653
+ "name": "authority",
654
+ "signer": true,
655
+ "relations": [
656
+ "admin_config"
657
+ ]
658
+ },
659
+ {
660
+ "name": "admin_config",
661
+ "pda": {
662
+ "seeds": [
663
+ {
664
+ "kind": "const",
665
+ "value": [
666
+ 97,
667
+ 100,
668
+ 109,
669
+ 105,
670
+ 110,
671
+ 95,
672
+ 99,
673
+ 111,
674
+ 110,
675
+ 102,
676
+ 105,
677
+ 103
678
+ ]
679
+ }
680
+ ]
681
+ }
682
+ },
683
+ {
684
+ "name": "receiver",
685
+ "writable": true
686
+ },
687
+ {
688
+ "name": "bin_array",
689
+ "writable": true,
690
+ "pda": {
691
+ "seeds": [
692
+ {
693
+ "kind": "const",
694
+ "value": [
695
+ 98,
696
+ 105,
697
+ 110,
698
+ 95,
699
+ 97,
700
+ 114,
701
+ 114,
702
+ 97,
703
+ 121
704
+ ]
705
+ },
706
+ {
707
+ "kind": "arg",
708
+ "path": "pool"
709
+ },
710
+ {
711
+ "kind": "arg",
712
+ "path": "index"
713
+ }
714
+ ]
715
+ }
716
+ },
717
+ {
718
+ "name": "system_program",
719
+ "address": "11111111111111111111111111111111"
720
+ }
721
+ ],
722
+ "args": [
723
+ {
724
+ "name": "pool",
725
+ "type": "pubkey"
726
+ },
727
+ {
728
+ "name": "index",
729
+ "type": "i32"
730
+ }
731
+ ]
732
+ },
733
+ {
734
+ "name": "deposit_by_weight",
735
+ "discriminator": [
736
+ 121,
737
+ 187,
738
+ 132,
739
+ 201,
740
+ 131,
741
+ 190,
742
+ 200,
743
+ 124
744
+ ],
745
+ "accounts": [
746
+ {
747
+ "name": "owner",
748
+ "signer": true
749
+ },
750
+ {
751
+ "name": "pool",
752
+ "writable": true,
753
+ "relations": [
754
+ "position"
755
+ ]
756
+ },
757
+ {
758
+ "name": "position",
759
+ "writable": true
760
+ },
761
+ {
762
+ "name": "position_token_account"
763
+ },
764
+ {
765
+ "name": "token_mint_x"
766
+ },
767
+ {
768
+ "name": "token_mint_y"
769
+ },
770
+ {
771
+ "name": "token_owner_account_x",
772
+ "writable": true
773
+ },
774
+ {
775
+ "name": "token_owner_account_y",
776
+ "writable": true
777
+ },
778
+ {
779
+ "name": "token_vault_x",
780
+ "writable": true
781
+ },
782
+ {
783
+ "name": "token_vault_y",
784
+ "writable": true
785
+ },
786
+ {
787
+ "name": "token_program_x"
788
+ },
789
+ {
790
+ "name": "token_program_y"
791
+ },
792
+ {
793
+ "name": "lower_bin_array",
794
+ "writable": true
795
+ },
796
+ {
797
+ "name": "upper_bin_array",
798
+ "writable": true,
799
+ "optional": true
800
+ }
801
+ ],
802
+ "args": [
803
+ {
804
+ "name": "params",
805
+ "type": {
806
+ "defined": {
807
+ "name": "DepositByWeightParams"
808
+ }
809
+ }
810
+ }
811
+ ]
812
+ },
813
+ {
814
+ "name": "open_position",
815
+ "discriminator": [
816
+ 135,
817
+ 128,
818
+ 47,
819
+ 77,
820
+ 15,
821
+ 152,
822
+ 240,
823
+ 49
824
+ ],
825
+ "accounts": [
826
+ {
827
+ "name": "owner",
828
+ "writable": true,
829
+ "signer": true
830
+ },
831
+ {
832
+ "name": "pool"
833
+ },
834
+ {
835
+ "name": "position",
836
+ "writable": true,
837
+ "pda": {
838
+ "seeds": [
839
+ {
840
+ "kind": "const",
841
+ "value": [
842
+ 112,
843
+ 111,
844
+ 115,
845
+ 105,
846
+ 116,
847
+ 105,
848
+ 111,
849
+ 110
850
+ ]
851
+ },
852
+ {
853
+ "kind": "account",
854
+ "path": "position_mint"
855
+ }
856
+ ]
857
+ }
858
+ },
859
+ {
860
+ "name": "position_mint",
861
+ "writable": true,
862
+ "signer": true
863
+ },
864
+ {
865
+ "name": "position_token_account",
866
+ "writable": true,
867
+ "pda": {
868
+ "seeds": [
869
+ {
870
+ "kind": "account",
871
+ "path": "owner"
872
+ },
873
+ {
874
+ "kind": "account",
875
+ "path": "token_program"
876
+ },
877
+ {
878
+ "kind": "account",
879
+ "path": "position_mint"
880
+ }
881
+ ],
882
+ "program": {
883
+ "kind": "const",
884
+ "value": [
885
+ 140,
886
+ 151,
887
+ 37,
888
+ 143,
889
+ 78,
890
+ 36,
891
+ 137,
892
+ 241,
893
+ 187,
894
+ 61,
895
+ 16,
896
+ 41,
897
+ 20,
898
+ 142,
899
+ 13,
900
+ 131,
901
+ 11,
902
+ 90,
903
+ 19,
904
+ 153,
905
+ 218,
906
+ 255,
907
+ 16,
908
+ 132,
909
+ 4,
910
+ 142,
911
+ 123,
912
+ 216,
913
+ 219,
914
+ 233,
915
+ 248,
916
+ 89
917
+ ]
918
+ }
919
+ }
920
+ },
921
+ {
922
+ "name": "admin_config",
923
+ "pda": {
924
+ "seeds": [
925
+ {
926
+ "kind": "const",
927
+ "value": [
928
+ 97,
929
+ 100,
930
+ 109,
931
+ 105,
932
+ 110,
933
+ 95,
934
+ 99,
935
+ 111,
936
+ 110,
937
+ 102,
938
+ 105,
939
+ 103
940
+ ]
941
+ }
942
+ ]
943
+ }
944
+ },
945
+ {
946
+ "name": "metadata_update_authority"
947
+ },
948
+ {
949
+ "name": "token_program",
950
+ "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
951
+ },
952
+ {
953
+ "name": "associated_token_program",
954
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
955
+ },
956
+ {
957
+ "name": "system_program",
958
+ "address": "11111111111111111111111111111111"
959
+ }
960
+ ],
961
+ "args": [
962
+ {
963
+ "name": "lower_bin_id",
964
+ "type": "i32"
965
+ },
966
+ {
967
+ "name": "upper_bin_id",
968
+ "type": "i32"
969
+ }
970
+ ]
971
+ },
972
+ {
973
+ "name": "set_metadata_update_authority",
974
+ "discriminator": [
975
+ 82,
976
+ 181,
977
+ 7,
978
+ 62,
979
+ 133,
980
+ 40,
981
+ 2,
982
+ 109
983
+ ],
984
+ "accounts": [
985
+ {
986
+ "name": "authority",
987
+ "signer": true,
988
+ "relations": [
989
+ "admin_config"
990
+ ]
991
+ },
992
+ {
993
+ "name": "admin_config",
994
+ "writable": true,
995
+ "pda": {
996
+ "seeds": [
997
+ {
998
+ "kind": "const",
999
+ "value": [
1000
+ 97,
1001
+ 100,
1002
+ 109,
1003
+ 105,
1004
+ 110,
1005
+ 95,
1006
+ 99,
1007
+ 111,
1008
+ 110,
1009
+ 102,
1010
+ 105,
1011
+ 103
1012
+ ]
1013
+ }
1014
+ ]
1015
+ }
1016
+ }
1017
+ ],
1018
+ "args": [
1019
+ {
1020
+ "name": "metadata_update_authority",
1021
+ "type": "pubkey"
1022
+ }
1023
+ ]
1024
+ },
1025
+ {
1026
+ "name": "set_pool_dynamic_fee_config",
1027
+ "discriminator": [
1028
+ 44,
1029
+ 189,
1030
+ 119,
1031
+ 222,
1032
+ 246,
1033
+ 2,
1034
+ 137,
1035
+ 85
1036
+ ],
1037
+ "accounts": [
1038
+ {
1039
+ "name": "authority",
1040
+ "signer": true,
1041
+ "relations": [
1042
+ "admin_config"
1043
+ ]
1044
+ },
1045
+ {
1046
+ "name": "admin_config",
1047
+ "pda": {
1048
+ "seeds": [
1049
+ {
1050
+ "kind": "const",
1051
+ "value": [
1052
+ 97,
1053
+ 100,
1054
+ 109,
1055
+ 105,
1056
+ 110,
1057
+ 95,
1058
+ 99,
1059
+ 111,
1060
+ 110,
1061
+ 102,
1062
+ 105,
1063
+ 103
1064
+ ]
1065
+ }
1066
+ ]
1067
+ }
1068
+ },
1069
+ {
1070
+ "name": "pool",
1071
+ "writable": true
1072
+ }
1073
+ ],
1074
+ "args": [
1075
+ {
1076
+ "name": "config",
1077
+ "type": {
1078
+ "defined": {
1079
+ "name": "DynamicFeeConfig"
1080
+ }
1081
+ }
1082
+ }
1083
+ ]
1084
+ },
1085
+ {
1086
+ "name": "set_pool_protocol_share",
1087
+ "discriminator": [
1088
+ 16,
1089
+ 138,
1090
+ 62,
1091
+ 186,
1092
+ 255,
1093
+ 137,
1094
+ 75,
1095
+ 193
1096
+ ],
1097
+ "accounts": [
1098
+ {
1099
+ "name": "authority",
1100
+ "signer": true,
1101
+ "relations": [
1102
+ "admin_config"
1103
+ ]
1104
+ },
1105
+ {
1106
+ "name": "admin_config",
1107
+ "pda": {
1108
+ "seeds": [
1109
+ {
1110
+ "kind": "const",
1111
+ "value": [
1112
+ 97,
1113
+ 100,
1114
+ 109,
1115
+ 105,
1116
+ 110,
1117
+ 95,
1118
+ 99,
1119
+ 111,
1120
+ 110,
1121
+ 102,
1122
+ 105,
1123
+ 103
1124
+ ]
1125
+ }
1126
+ ]
1127
+ }
1128
+ },
1129
+ {
1130
+ "name": "pool",
1131
+ "writable": true
1132
+ }
1133
+ ],
1134
+ "args": [
1135
+ {
1136
+ "name": "protocol_share",
1137
+ "type": "u16"
1138
+ }
1139
+ ]
1140
+ },
1141
+ {
1142
+ "name": "swap",
1143
+ "discriminator": [
1144
+ 248,
1145
+ 198,
1146
+ 158,
1147
+ 145,
1148
+ 225,
1149
+ 117,
1150
+ 135,
1151
+ 200
1152
+ ],
1153
+ "accounts": [
1154
+ {
1155
+ "name": "user",
1156
+ "signer": true
1157
+ },
1158
+ {
1159
+ "name": "pool",
1160
+ "writable": true
1161
+ },
1162
+ {
1163
+ "name": "token_mint_x"
1164
+ },
1165
+ {
1166
+ "name": "token_mint_y"
1167
+ },
1168
+ {
1169
+ "name": "token_user_account_x",
1170
+ "writable": true
1171
+ },
1172
+ {
1173
+ "name": "token_user_account_y",
1174
+ "writable": true
1175
+ },
1176
+ {
1177
+ "name": "token_vault_x",
1178
+ "writable": true
1179
+ },
1180
+ {
1181
+ "name": "token_vault_y",
1182
+ "writable": true
1183
+ },
1184
+ {
1185
+ "name": "token_program_x"
1186
+ },
1187
+ {
1188
+ "name": "token_program_y"
1189
+ }
1190
+ ],
1191
+ "args": [
1192
+ {
1193
+ "name": "params",
1194
+ "type": {
1195
+ "defined": {
1196
+ "name": "SwapParams"
1197
+ }
1198
+ }
1199
+ }
1200
+ ]
1201
+ },
1202
+ {
1203
+ "name": "sync_pool",
1204
+ "discriminator": [
1205
+ 219,
1206
+ 251,
1207
+ 215,
1208
+ 251,
1209
+ 44,
1210
+ 37,
1211
+ 108,
1212
+ 102
1213
+ ],
1214
+ "accounts": [
1215
+ {
1216
+ "name": "user",
1217
+ "signer": true
1218
+ },
1219
+ {
1220
+ "name": "pool",
1221
+ "writable": true
1222
+ }
1223
+ ],
1224
+ "args": [
1225
+ {
1226
+ "name": "desired_bin_id",
1227
+ "type": "i32"
1228
+ }
1229
+ ]
1230
+ },
1231
+ {
1232
+ "name": "transfer_admin_authority",
1233
+ "discriminator": [
1234
+ 198,
1235
+ 11,
1236
+ 182,
1237
+ 207,
1238
+ 145,
1239
+ 11,
1240
+ 135,
1241
+ 215
1242
+ ],
1243
+ "accounts": [
1244
+ {
1245
+ "name": "authority",
1246
+ "signer": true,
1247
+ "relations": [
1248
+ "admin_config"
1249
+ ]
1250
+ },
1251
+ {
1252
+ "name": "admin_config",
1253
+ "writable": true,
1254
+ "pda": {
1255
+ "seeds": [
1256
+ {
1257
+ "kind": "const",
1258
+ "value": [
1259
+ 97,
1260
+ 100,
1261
+ 109,
1262
+ 105,
1263
+ 110,
1264
+ 95,
1265
+ 99,
1266
+ 111,
1267
+ 110,
1268
+ 102,
1269
+ 105,
1270
+ 103
1271
+ ]
1272
+ }
1273
+ ]
1274
+ }
1275
+ }
1276
+ ],
1277
+ "args": [
1278
+ {
1279
+ "name": "new_authority",
1280
+ "type": "pubkey"
1281
+ }
1282
+ ]
1283
+ },
1284
+ {
1285
+ "name": "withdraw",
1286
+ "discriminator": [
1287
+ 183,
1288
+ 18,
1289
+ 70,
1290
+ 156,
1291
+ 148,
1292
+ 109,
1293
+ 161,
1294
+ 34
1295
+ ],
1296
+ "accounts": [
1297
+ {
1298
+ "name": "owner",
1299
+ "signer": true
1300
+ },
1301
+ {
1302
+ "name": "pool",
1303
+ "relations": [
1304
+ "position"
1305
+ ]
1306
+ },
1307
+ {
1308
+ "name": "position",
1309
+ "writable": true
1310
+ },
1311
+ {
1312
+ "name": "position_token_account"
1313
+ },
1314
+ {
1315
+ "name": "token_mint_x"
1316
+ },
1317
+ {
1318
+ "name": "token_mint_y"
1319
+ },
1320
+ {
1321
+ "name": "token_owner_account_x",
1322
+ "writable": true
1323
+ },
1324
+ {
1325
+ "name": "token_owner_account_y",
1326
+ "writable": true
1327
+ },
1328
+ {
1329
+ "name": "token_vault_x",
1330
+ "writable": true
1331
+ },
1332
+ {
1333
+ "name": "token_vault_y",
1334
+ "writable": true
1335
+ },
1336
+ {
1337
+ "name": "token_program_x"
1338
+ },
1339
+ {
1340
+ "name": "token_program_y"
1341
+ },
1342
+ {
1343
+ "name": "lower_bin_array",
1344
+ "writable": true
1345
+ },
1346
+ {
1347
+ "name": "upper_bin_array",
1348
+ "writable": true,
1349
+ "optional": true
1350
+ }
1351
+ ],
1352
+ "args": [
1353
+ {
1354
+ "name": "params",
1355
+ "type": {
1356
+ "defined": {
1357
+ "name": "WithdrawParams"
1358
+ }
1359
+ }
1360
+ }
1361
+ ]
1362
+ }
1363
+ ],
1364
+ "accounts": [
1365
+ {
1366
+ "name": "AdminConfig",
1367
+ "discriminator": [
1368
+ 156,
1369
+ 10,
1370
+ 79,
1371
+ 161,
1372
+ 71,
1373
+ 9,
1374
+ 62,
1375
+ 77
1376
+ ]
1377
+ },
1378
+ {
1379
+ "name": "BinArray",
1380
+ "discriminator": [
1381
+ 92,
1382
+ 142,
1383
+ 92,
1384
+ 220,
1385
+ 5,
1386
+ 148,
1387
+ 70,
1388
+ 181
1389
+ ]
1390
+ },
1391
+ {
1392
+ "name": "Pool",
1393
+ "discriminator": [
1394
+ 241,
1395
+ 154,
1396
+ 109,
1397
+ 4,
1398
+ 17,
1399
+ 177,
1400
+ 109,
1401
+ 188
1402
+ ]
1403
+ },
1404
+ {
1405
+ "name": "Position",
1406
+ "discriminator": [
1407
+ 170,
1408
+ 188,
1409
+ 143,
1410
+ 228,
1411
+ 122,
1412
+ 64,
1413
+ 247,
1414
+ 208
1415
+ ]
1416
+ }
1417
+ ],
1418
+ "events": [
1419
+ {
1420
+ "name": "ClaimFeeEvent",
1421
+ "discriminator": [
1422
+ 173,
1423
+ 80,
1424
+ 235,
1425
+ 15,
1426
+ 116,
1427
+ 19,
1428
+ 144,
1429
+ 33
1430
+ ]
1431
+ },
1432
+ {
1433
+ "name": "ClosePositionEvent",
1434
+ "discriminator": [
1435
+ 198,
1436
+ 217,
1437
+ 115,
1438
+ 95,
1439
+ 191,
1440
+ 120,
1441
+ 142,
1442
+ 137
1443
+ ]
1444
+ },
1445
+ {
1446
+ "name": "CreatePoolEvent",
1447
+ "discriminator": [
1448
+ 177,
1449
+ 49,
1450
+ 12,
1451
+ 210,
1452
+ 160,
1453
+ 118,
1454
+ 167,
1455
+ 116
1456
+ ]
1457
+ },
1458
+ {
1459
+ "name": "DepositEvent",
1460
+ "discriminator": [
1461
+ 120,
1462
+ 248,
1463
+ 61,
1464
+ 83,
1465
+ 31,
1466
+ 142,
1467
+ 107,
1468
+ 144
1469
+ ]
1470
+ },
1471
+ {
1472
+ "name": "OpenPositionEvent",
1473
+ "discriminator": [
1474
+ 83,
1475
+ 43,
1476
+ 164,
1477
+ 147,
1478
+ 169,
1479
+ 87,
1480
+ 81,
1481
+ 172
1482
+ ]
1483
+ },
1484
+ {
1485
+ "name": "SwapEvent",
1486
+ "discriminator": [
1487
+ 64,
1488
+ 198,
1489
+ 205,
1490
+ 232,
1491
+ 38,
1492
+ 8,
1493
+ 113,
1494
+ 226
1495
+ ]
1496
+ },
1497
+ {
1498
+ "name": "WithdrawEvent",
1499
+ "discriminator": [
1500
+ 22,
1501
+ 9,
1502
+ 133,
1503
+ 26,
1504
+ 160,
1505
+ 44,
1506
+ 71,
1507
+ 192
1508
+ ]
1509
+ }
1510
+ ],
1511
+ "errors": [
1512
+ {
1513
+ "code": 6000,
1514
+ "name": "LiquidityError",
1515
+ "msg": "Liquidity error"
1516
+ },
1517
+ {
1518
+ "code": 6001,
1519
+ "name": "InvalidBinArray",
1520
+ "msg": "Invalid bin array"
1521
+ },
1522
+ {
1523
+ "code": 6002,
1524
+ "name": "BinArrayNotEmpty",
1525
+ "msg": "Bin array is not empty"
1526
+ },
1527
+ {
1528
+ "code": 6003,
1529
+ "name": "UnsupportedBinStep",
1530
+ "msg": "Unsupported bin step"
1531
+ },
1532
+ {
1533
+ "code": 6004,
1534
+ "name": "UnsupportedFeeRate",
1535
+ "msg": "Unsupported fee rate"
1536
+ },
1537
+ {
1538
+ "code": 6005,
1539
+ "name": "InvalidProtocolShare",
1540
+ "msg": "Invalid protocol share"
1541
+ },
1542
+ {
1543
+ "code": 6006,
1544
+ "name": "InvalidActiveBin",
1545
+ "msg": "Invalid active bin"
1546
+ },
1547
+ {
1548
+ "code": 6007,
1549
+ "name": "UnsupportedMintExtension",
1550
+ "msg": "Unsupported mint extension"
1551
+ },
1552
+ {
1553
+ "code": 6008,
1554
+ "name": "InvalidDynamicFeeConfig",
1555
+ "msg": "Invalid dynamic fee config"
1556
+ },
1557
+ {
1558
+ "code": 6009,
1559
+ "name": "InvalidBinRange",
1560
+ "msg": "Invalid bin range"
1561
+ },
1562
+ {
1563
+ "code": 6010,
1564
+ "name": "InvalidPositionOwner",
1565
+ "msg": "Invalid position token owner"
1566
+ },
1567
+ {
1568
+ "code": 6011,
1569
+ "name": "InvalidBinWeights",
1570
+ "msg": "Invalid bin weights"
1571
+ },
1572
+ {
1573
+ "code": 6012,
1574
+ "name": "InvalidBps",
1575
+ "msg": "Invalid bps"
1576
+ },
1577
+ {
1578
+ "code": 6013,
1579
+ "name": "PositionNotEmpty",
1580
+ "msg": "Position is not empty"
1581
+ },
1582
+ {
1583
+ "code": 6014,
1584
+ "name": "ExceededBinSlippageTolerance",
1585
+ "msg": "Exceeded bin slippage tolerance"
1586
+ },
1587
+ {
1588
+ "code": 6015,
1589
+ "name": "ZeroSwapAmount",
1590
+ "msg": "Swap amount is zero"
1591
+ },
1592
+ {
1593
+ "code": 6016,
1594
+ "name": "InsufficientLiquidity",
1595
+ "msg": "Insufficient liquidity for swap"
1596
+ },
1597
+ {
1598
+ "code": 6017,
1599
+ "name": "ExceededSwapSlippageTolerance",
1600
+ "msg": "Exceeded swap slippage tolerance"
1601
+ },
1602
+ {
1603
+ "code": 6018,
1604
+ "name": "InvalidPendingAuthority",
1605
+ "msg": "Signer is not the pending authority"
1606
+ }
1607
+ ],
1608
+ "types": [
1609
+ {
1610
+ "name": "AdminConfig",
1611
+ "type": {
1612
+ "kind": "struct",
1613
+ "fields": [
1614
+ {
1615
+ "name": "authority",
1616
+ "type": "pubkey"
1617
+ },
1618
+ {
1619
+ "name": "pending_authority",
1620
+ "type": "pubkey"
1621
+ },
1622
+ {
1623
+ "name": "metadata_update_authority",
1624
+ "type": "pubkey"
1625
+ }
1626
+ ]
1627
+ }
1628
+ },
1629
+ {
1630
+ "name": "Bin",
1631
+ "serialization": "bytemuck",
1632
+ "repr": {
1633
+ "kind": "c"
1634
+ },
1635
+ "type": {
1636
+ "kind": "struct",
1637
+ "fields": [
1638
+ {
1639
+ "name": "amount_x",
1640
+ "type": "u64"
1641
+ },
1642
+ {
1643
+ "name": "amount_y",
1644
+ "type": "u64"
1645
+ },
1646
+ {
1647
+ "name": "price",
1648
+ "type": "u128"
1649
+ },
1650
+ {
1651
+ "name": "total_shares",
1652
+ "type": "u128"
1653
+ },
1654
+ {
1655
+ "name": "fee_per_share_x",
1656
+ "type": "u128"
1657
+ },
1658
+ {
1659
+ "name": "fee_per_share_y",
1660
+ "type": "u128"
1661
+ }
1662
+ ]
1663
+ }
1664
+ },
1665
+ {
1666
+ "name": "BinArray",
1667
+ "serialization": "bytemuck",
1668
+ "repr": {
1669
+ "kind": "c"
1670
+ },
1671
+ "type": {
1672
+ "kind": "struct",
1673
+ "fields": [
1674
+ {
1675
+ "name": "index",
1676
+ "type": "i32"
1677
+ },
1678
+ {
1679
+ "name": "pool",
1680
+ "type": "pubkey"
1681
+ },
1682
+ {
1683
+ "name": "payer",
1684
+ "type": "pubkey"
1685
+ },
1686
+ {
1687
+ "name": "_padding",
1688
+ "type": {
1689
+ "array": [
1690
+ "u8",
1691
+ 12
1692
+ ]
1693
+ }
1694
+ },
1695
+ {
1696
+ "name": "bins",
1697
+ "type": {
1698
+ "array": [
1699
+ {
1700
+ "defined": {
1701
+ "name": "Bin"
1702
+ }
1703
+ },
1704
+ 100
1705
+ ]
1706
+ }
1707
+ }
1708
+ ]
1709
+ }
1710
+ },
1711
+ {
1712
+ "name": "ClaimFeeEvent",
1713
+ "type": {
1714
+ "kind": "struct",
1715
+ "fields": [
1716
+ {
1717
+ "name": "pool",
1718
+ "type": "pubkey"
1719
+ },
1720
+ {
1721
+ "name": "position",
1722
+ "type": "pubkey"
1723
+ },
1724
+ {
1725
+ "name": "owner",
1726
+ "type": "pubkey"
1727
+ },
1728
+ {
1729
+ "name": "lower_bin_id",
1730
+ "type": "i32"
1731
+ },
1732
+ {
1733
+ "name": "upper_bin_id",
1734
+ "type": "i32"
1735
+ },
1736
+ {
1737
+ "name": "amount_x",
1738
+ "type": "u64"
1739
+ },
1740
+ {
1741
+ "name": "amount_y",
1742
+ "type": "u64"
1743
+ },
1744
+ {
1745
+ "name": "transfer_fee_x",
1746
+ "type": "u64"
1747
+ },
1748
+ {
1749
+ "name": "transfer_fee_y",
1750
+ "type": "u64"
1751
+ }
1752
+ ]
1753
+ }
1754
+ },
1755
+ {
1756
+ "name": "ClaimFeeParams",
1757
+ "type": {
1758
+ "kind": "struct",
1759
+ "fields": [
1760
+ {
1761
+ "name": "lower_bin_id",
1762
+ "type": "i32"
1763
+ },
1764
+ {
1765
+ "name": "upper_bin_id",
1766
+ "type": "i32"
1767
+ }
1768
+ ]
1769
+ }
1770
+ },
1771
+ {
1772
+ "name": "ClosePositionEvent",
1773
+ "type": {
1774
+ "kind": "struct",
1775
+ "fields": [
1776
+ {
1777
+ "name": "pool",
1778
+ "type": "pubkey"
1779
+ },
1780
+ {
1781
+ "name": "position",
1782
+ "type": "pubkey"
1783
+ },
1784
+ {
1785
+ "name": "owner",
1786
+ "type": "pubkey"
1787
+ },
1788
+ {
1789
+ "name": "lower_bin_id",
1790
+ "type": "i32"
1791
+ },
1792
+ {
1793
+ "name": "upper_bin_id",
1794
+ "type": "i32"
1795
+ }
1796
+ ]
1797
+ }
1798
+ },
1799
+ {
1800
+ "name": "CreatePoolEvent",
1801
+ "type": {
1802
+ "kind": "struct",
1803
+ "fields": [
1804
+ {
1805
+ "name": "pool",
1806
+ "type": "pubkey"
1807
+ },
1808
+ {
1809
+ "name": "bin_step",
1810
+ "type": "u16"
1811
+ },
1812
+ {
1813
+ "name": "fee_rate",
1814
+ "type": "u32"
1815
+ },
1816
+ {
1817
+ "name": "token_mint_x",
1818
+ "type": "pubkey"
1819
+ },
1820
+ {
1821
+ "name": "token_mint_y",
1822
+ "type": "pubkey"
1823
+ }
1824
+ ]
1825
+ }
1826
+ },
1827
+ {
1828
+ "name": "DepositByWeightParams",
1829
+ "type": {
1830
+ "kind": "struct",
1831
+ "fields": [
1832
+ {
1833
+ "name": "amount_x",
1834
+ "type": "u64"
1835
+ },
1836
+ {
1837
+ "name": "amount_y",
1838
+ "type": "u64"
1839
+ },
1840
+ {
1841
+ "name": "active_bin_id",
1842
+ "type": "i32"
1843
+ },
1844
+ {
1845
+ "name": "max_active_bin_slippage",
1846
+ "type": "u32"
1847
+ },
1848
+ {
1849
+ "name": "distribution_mode",
1850
+ "type": {
1851
+ "defined": {
1852
+ "name": "DistributionMode"
1853
+ }
1854
+ }
1855
+ },
1856
+ {
1857
+ "name": "lower_bin_id",
1858
+ "type": "i32"
1859
+ },
1860
+ {
1861
+ "name": "bin_weights",
1862
+ "type": {
1863
+ "vec": "u16"
1864
+ }
1865
+ }
1866
+ ]
1867
+ }
1868
+ },
1869
+ {
1870
+ "name": "DepositEvent",
1871
+ "type": {
1872
+ "kind": "struct",
1873
+ "fields": [
1874
+ {
1875
+ "name": "pool",
1876
+ "type": "pubkey"
1877
+ },
1878
+ {
1879
+ "name": "position",
1880
+ "type": "pubkey"
1881
+ },
1882
+ {
1883
+ "name": "owner",
1884
+ "type": "pubkey"
1885
+ },
1886
+ {
1887
+ "name": "lower_bin_id",
1888
+ "type": "i32"
1889
+ },
1890
+ {
1891
+ "name": "upper_bin_id",
1892
+ "type": "i32"
1893
+ },
1894
+ {
1895
+ "name": "amount_x",
1896
+ "type": "u64"
1897
+ },
1898
+ {
1899
+ "name": "amount_y",
1900
+ "type": "u64"
1901
+ },
1902
+ {
1903
+ "name": "transfer_fee_x",
1904
+ "type": "u64"
1905
+ },
1906
+ {
1907
+ "name": "transfer_fee_y",
1908
+ "type": "u64"
1909
+ }
1910
+ ]
1911
+ }
1912
+ },
1913
+ {
1914
+ "name": "DistributionMode",
1915
+ "type": {
1916
+ "kind": "enum",
1917
+ "variants": [
1918
+ {
1919
+ "name": "Balanced"
1920
+ },
1921
+ {
1922
+ "name": "Unbalanced"
1923
+ },
1924
+ {
1925
+ "name": "UnbalancedX"
1926
+ },
1927
+ {
1928
+ "name": "UnbalancedY"
1929
+ }
1930
+ ]
1931
+ }
1932
+ },
1933
+ {
1934
+ "name": "DynamicFeeConfig",
1935
+ "docs": [
1936
+ "Per-`bin_step` dynamic-fee parameters, sourced from `utils::constraints` at pool",
1937
+ "creation. Seeds the per-swap-mutated `DynamicFeeState` below."
1938
+ ],
1939
+ "type": {
1940
+ "kind": "struct",
1941
+ "fields": [
1942
+ {
1943
+ "name": "filter_period",
1944
+ "docs": [
1945
+ "Swaps arriving faster than this apart, in seconds, don't move the reference."
1946
+ ],
1947
+ "type": "u32"
1948
+ },
1949
+ {
1950
+ "name": "decay_period",
1951
+ "docs": [
1952
+ "Window after which, absent activity, the reference decays instead of resetting."
1953
+ ],
1954
+ "type": "u32"
1955
+ },
1956
+ {
1957
+ "name": "reduction_factor",
1958
+ "docs": [
1959
+ "Decay ratio applied to `volatility_accumulator`, over `bin_math::MAX_BASIS_POINTS`."
1960
+ ],
1961
+ "type": "u16"
1962
+ },
1963
+ {
1964
+ "name": "dynamic_fee_control",
1965
+ "docs": [
1966
+ "Scales the squared volatility accumulator into a fee rate, over `DYNAMIC_FEE_DIVISOR`."
1967
+ ],
1968
+ "type": "u32"
1969
+ },
1970
+ {
1971
+ "name": "max_volatility_accumulator",
1972
+ "docs": [
1973
+ "Hard cap on `volatility_accumulator`."
1974
+ ],
1975
+ "type": "u32"
1976
+ }
1977
+ ]
1978
+ }
1979
+ },
1980
+ {
1981
+ "name": "DynamicFeeState",
1982
+ "type": {
1983
+ "kind": "struct",
1984
+ "fields": [
1985
+ {
1986
+ "name": "config",
1987
+ "type": {
1988
+ "defined": {
1989
+ "name": "DynamicFeeConfig"
1990
+ }
1991
+ }
1992
+ },
1993
+ {
1994
+ "name": "reference_bin_id",
1995
+ "type": "i32"
1996
+ },
1997
+ {
1998
+ "name": "volatility_reference",
1999
+ "type": "u32"
2000
+ },
2001
+ {
2002
+ "name": "volatility_accumulator",
2003
+ "type": "u32"
2004
+ },
2005
+ {
2006
+ "name": "last_update_timestamp",
2007
+ "type": "i64"
2008
+ }
2009
+ ]
2010
+ }
2011
+ },
2012
+ {
2013
+ "name": "FeeState",
2014
+ "serialization": "bytemuck",
2015
+ "repr": {
2016
+ "kind": "c"
2017
+ },
2018
+ "type": {
2019
+ "kind": "struct",
2020
+ "fields": [
2021
+ {
2022
+ "name": "shares",
2023
+ "type": "u128"
2024
+ },
2025
+ {
2026
+ "name": "fee_per_share_checkpoint_x",
2027
+ "type": "u128"
2028
+ },
2029
+ {
2030
+ "name": "fee_per_share_checkpoint_y",
2031
+ "type": "u128"
2032
+ },
2033
+ {
2034
+ "name": "fee_owed_x",
2035
+ "type": "u64"
2036
+ },
2037
+ {
2038
+ "name": "fee_owed_y",
2039
+ "type": "u64"
2040
+ }
2041
+ ]
2042
+ }
2043
+ },
2044
+ {
2045
+ "name": "OpenPositionEvent",
2046
+ "type": {
2047
+ "kind": "struct",
2048
+ "fields": [
2049
+ {
2050
+ "name": "pool",
2051
+ "type": "pubkey"
2052
+ },
2053
+ {
2054
+ "name": "position",
2055
+ "type": "pubkey"
2056
+ },
2057
+ {
2058
+ "name": "owner",
2059
+ "type": "pubkey"
2060
+ },
2061
+ {
2062
+ "name": "lower_bin_id",
2063
+ "type": "i32"
2064
+ },
2065
+ {
2066
+ "name": "upper_bin_id",
2067
+ "type": "i32"
2068
+ }
2069
+ ]
2070
+ }
2071
+ },
2072
+ {
2073
+ "name": "Pool",
2074
+ "type": {
2075
+ "kind": "struct",
2076
+ "fields": [
2077
+ {
2078
+ "name": "bin_step",
2079
+ "type": "u16"
2080
+ },
2081
+ {
2082
+ "name": "fee_rate",
2083
+ "type": "u32"
2084
+ },
2085
+ {
2086
+ "name": "protocol_share",
2087
+ "type": "u16"
2088
+ },
2089
+ {
2090
+ "name": "bump",
2091
+ "type": {
2092
+ "array": [
2093
+ "u8",
2094
+ 1
2095
+ ]
2096
+ }
2097
+ },
2098
+ {
2099
+ "name": "active_bin_id",
2100
+ "type": "i32"
2101
+ },
2102
+ {
2103
+ "name": "dynamic_fee_state",
2104
+ "type": {
2105
+ "defined": {
2106
+ "name": "DynamicFeeState"
2107
+ }
2108
+ }
2109
+ },
2110
+ {
2111
+ "name": "token_mint_x",
2112
+ "type": "pubkey"
2113
+ },
2114
+ {
2115
+ "name": "token_mint_y",
2116
+ "type": "pubkey"
2117
+ },
2118
+ {
2119
+ "name": "token_vault_x",
2120
+ "type": "pubkey"
2121
+ },
2122
+ {
2123
+ "name": "token_vault_y",
2124
+ "type": "pubkey"
2125
+ },
2126
+ {
2127
+ "name": "protocol_fee_x",
2128
+ "type": "u64"
2129
+ },
2130
+ {
2131
+ "name": "protocol_fee_y",
2132
+ "type": "u64"
2133
+ }
2134
+ ]
2135
+ }
2136
+ },
2137
+ {
2138
+ "name": "Position",
2139
+ "serialization": "bytemuck",
2140
+ "repr": {
2141
+ "kind": "c"
2142
+ },
2143
+ "type": {
2144
+ "kind": "struct",
2145
+ "fields": [
2146
+ {
2147
+ "name": "pool",
2148
+ "type": "pubkey"
2149
+ },
2150
+ {
2151
+ "name": "position_mint",
2152
+ "type": "pubkey"
2153
+ },
2154
+ {
2155
+ "name": "lower_bin_id",
2156
+ "type": "i32"
2157
+ },
2158
+ {
2159
+ "name": "upper_bin_id",
2160
+ "type": "i32"
2161
+ },
2162
+ {
2163
+ "name": "_padding",
2164
+ "type": {
2165
+ "array": [
2166
+ "u8",
2167
+ 8
2168
+ ]
2169
+ }
2170
+ },
2171
+ {
2172
+ "name": "fee_states",
2173
+ "type": {
2174
+ "array": [
2175
+ {
2176
+ "defined": {
2177
+ "name": "FeeState"
2178
+ }
2179
+ },
2180
+ 100
2181
+ ]
2182
+ }
2183
+ }
2184
+ ]
2185
+ }
2186
+ },
2187
+ {
2188
+ "name": "SwapEvent",
2189
+ "type": {
2190
+ "kind": "struct",
2191
+ "fields": [
2192
+ {
2193
+ "name": "pool",
2194
+ "type": "pubkey"
2195
+ },
2196
+ {
2197
+ "name": "x_to_y",
2198
+ "type": "bool"
2199
+ },
2200
+ {
2201
+ "name": "pre_bin_id",
2202
+ "type": "i32"
2203
+ },
2204
+ {
2205
+ "name": "post_bin_id",
2206
+ "type": "i32"
2207
+ },
2208
+ {
2209
+ "name": "amount_in",
2210
+ "type": "u64"
2211
+ },
2212
+ {
2213
+ "name": "amount_out",
2214
+ "type": "u64"
2215
+ },
2216
+ {
2217
+ "name": "input_transfer_fee",
2218
+ "type": "u64"
2219
+ },
2220
+ {
2221
+ "name": "output_transfer_fee",
2222
+ "type": "u64"
2223
+ },
2224
+ {
2225
+ "name": "lp_fee",
2226
+ "type": "u64"
2227
+ },
2228
+ {
2229
+ "name": "protocol_fee",
2230
+ "type": "u64"
2231
+ }
2232
+ ]
2233
+ }
2234
+ },
2235
+ {
2236
+ "name": "SwapParams",
2237
+ "type": {
2238
+ "kind": "struct",
2239
+ "fields": [
2240
+ {
2241
+ "name": "amount_in",
2242
+ "type": "u64"
2243
+ },
2244
+ {
2245
+ "name": "min_amount_out",
2246
+ "type": "u64"
2247
+ },
2248
+ {
2249
+ "name": "x_to_y",
2250
+ "type": "bool"
2251
+ }
2252
+ ]
2253
+ }
2254
+ },
2255
+ {
2256
+ "name": "WithdrawEvent",
2257
+ "type": {
2258
+ "kind": "struct",
2259
+ "fields": [
2260
+ {
2261
+ "name": "pool",
2262
+ "type": "pubkey"
2263
+ },
2264
+ {
2265
+ "name": "position",
2266
+ "type": "pubkey"
2267
+ },
2268
+ {
2269
+ "name": "owner",
2270
+ "type": "pubkey"
2271
+ },
2272
+ {
2273
+ "name": "lower_bin_id",
2274
+ "type": "i32"
2275
+ },
2276
+ {
2277
+ "name": "upper_bin_id",
2278
+ "type": "i32"
2279
+ },
2280
+ {
2281
+ "name": "bps_removed",
2282
+ "type": "u16"
2283
+ },
2284
+ {
2285
+ "name": "amount_x",
2286
+ "type": "u64"
2287
+ },
2288
+ {
2289
+ "name": "amount_y",
2290
+ "type": "u64"
2291
+ },
2292
+ {
2293
+ "name": "transfer_fee_x",
2294
+ "type": "u64"
2295
+ },
2296
+ {
2297
+ "name": "transfer_fee_y",
2298
+ "type": "u64"
2299
+ }
2300
+ ]
2301
+ }
2302
+ },
2303
+ {
2304
+ "name": "WithdrawParams",
2305
+ "type": {
2306
+ "kind": "struct",
2307
+ "fields": [
2308
+ {
2309
+ "name": "lower_bin_id",
2310
+ "type": "i32"
2311
+ },
2312
+ {
2313
+ "name": "upper_bin_id",
2314
+ "type": "i32"
2315
+ },
2316
+ {
2317
+ "name": "bps_to_remove",
2318
+ "type": "u16"
2319
+ }
2320
+ ]
2321
+ }
2322
+ }
2323
+ ],
2324
+ "constants": [
2325
+ {
2326
+ "name": "BINS_PER_BIN_ARRAY",
2327
+ "type": "i32",
2328
+ "value": "100"
2329
+ },
2330
+ {
2331
+ "name": "FEE_PRECISION",
2332
+ "type": "u128",
2333
+ "value": "1000000000"
2334
+ },
2335
+ {
2336
+ "name": "MAX_BASIS_POINTS",
2337
+ "type": "u32",
2338
+ "value": "10000"
2339
+ },
2340
+ {
2341
+ "name": "MAX_BIN_ARRAYS_PER_POSITION",
2342
+ "type": "i32",
2343
+ "value": "2"
2344
+ },
2345
+ {
2346
+ "name": "MAX_BIN_ARRAYS_PER_SWAP",
2347
+ "type": "i32",
2348
+ "value": "6"
2349
+ },
2350
+ {
2351
+ "name": "MAX_BIN_ARRAYS_PER_SYNC",
2352
+ "type": "i32",
2353
+ "value": "6"
2354
+ },
2355
+ {
2356
+ "name": "MAX_FEE_RATE",
2357
+ "docs": [
2358
+ "Hard ceiling on `base fee_rate + variable fee_rate` combined (10%). Must equal",
2359
+ "`constraints.rs`' top `FEE_RATES` entry — enforced there via a compile-time assertion."
2360
+ ],
2361
+ "type": "u128",
2362
+ "value": "100000000"
2363
+ },
2364
+ {
2365
+ "name": "MAX_PROTOCOL_SHARE",
2366
+ "docs": [
2367
+ "Maximum protocol share of a swap fee, in basis points (25%)."
2368
+ ],
2369
+ "type": "u16",
2370
+ "value": "2500"
2371
+ },
2372
+ {
2373
+ "name": "ONE_BPS_FEE_RATE",
2374
+ "type": "u32",
2375
+ "value": "100000"
2376
+ }
2377
+ ]
2378
+ }