@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,402 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import {
10
+ combineCodec,
11
+ fixDecoderSize,
12
+ fixEncoderSize,
13
+ getBytesDecoder,
14
+ getBytesEncoder,
15
+ getI32Decoder,
16
+ getI32Encoder,
17
+ getStructDecoder,
18
+ getStructEncoder,
19
+ getU16Decoder,
20
+ getU16Encoder,
21
+ SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
22
+ SolanaError,
23
+ transformEncoder,
24
+ type AccountMeta,
25
+ type AccountSignerMeta,
26
+ type Address,
27
+ type FixedSizeCodec,
28
+ type FixedSizeDecoder,
29
+ type FixedSizeEncoder,
30
+ type Instruction,
31
+ type InstructionWithAccounts,
32
+ type InstructionWithData,
33
+ type ReadonlyAccount,
34
+ type ReadonlySignerAccount,
35
+ type ReadonlyUint8Array,
36
+ type TransactionSigner,
37
+ type WritableAccount,
38
+ } from "@solana/kit";
39
+ import {
40
+ getAccountMetaFactory,
41
+ type ResolvedInstructionAccount,
42
+ } from "@solana/program-client-core";
43
+ import { PICON_DLMM_PROGRAM_ADDRESS } from "../programs";
44
+
45
+ export const WITHDRAW_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
46
+ 183, 18, 70, 156, 148, 109, 161, 34,
47
+ ]);
48
+
49
+ export function getWithdrawDiscriminatorBytes(): ReadonlyUint8Array {
50
+ return fixEncoderSize(getBytesEncoder(), 8).encode(WITHDRAW_DISCRIMINATOR);
51
+ }
52
+
53
+ export type WithdrawInstruction<
54
+ TProgram extends string = typeof PICON_DLMM_PROGRAM_ADDRESS,
55
+ TAccountOwner extends string | AccountMeta<string> = string,
56
+ TAccountPool extends string | AccountMeta<string> = string,
57
+ TAccountPosition extends string | AccountMeta<string> = string,
58
+ TAccountPositionTokenAccount extends string | AccountMeta<string> = string,
59
+ TAccountTokenMintX extends string | AccountMeta<string> = string,
60
+ TAccountTokenMintY extends string | AccountMeta<string> = string,
61
+ TAccountTokenOwnerAccountX extends string | AccountMeta<string> = string,
62
+ TAccountTokenOwnerAccountY extends string | AccountMeta<string> = string,
63
+ TAccountTokenVaultX extends string | AccountMeta<string> = string,
64
+ TAccountTokenVaultY extends string | AccountMeta<string> = string,
65
+ TAccountTokenProgramX extends string | AccountMeta<string> = string,
66
+ TAccountTokenProgramY extends string | AccountMeta<string> = string,
67
+ TAccountLowerBinArray extends string | AccountMeta<string> = string,
68
+ TAccountUpperBinArray extends string | AccountMeta<string> = string,
69
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
70
+ > = Instruction<TProgram> &
71
+ InstructionWithData<ReadonlyUint8Array> &
72
+ InstructionWithAccounts<
73
+ [
74
+ TAccountOwner extends string
75
+ ? ReadonlySignerAccount<TAccountOwner> &
76
+ AccountSignerMeta<TAccountOwner>
77
+ : TAccountOwner,
78
+ TAccountPool extends string
79
+ ? ReadonlyAccount<TAccountPool>
80
+ : TAccountPool,
81
+ TAccountPosition extends string
82
+ ? WritableAccount<TAccountPosition>
83
+ : TAccountPosition,
84
+ TAccountPositionTokenAccount extends string
85
+ ? ReadonlyAccount<TAccountPositionTokenAccount>
86
+ : TAccountPositionTokenAccount,
87
+ TAccountTokenMintX extends string
88
+ ? ReadonlyAccount<TAccountTokenMintX>
89
+ : TAccountTokenMintX,
90
+ TAccountTokenMintY extends string
91
+ ? ReadonlyAccount<TAccountTokenMintY>
92
+ : TAccountTokenMintY,
93
+ TAccountTokenOwnerAccountX extends string
94
+ ? WritableAccount<TAccountTokenOwnerAccountX>
95
+ : TAccountTokenOwnerAccountX,
96
+ TAccountTokenOwnerAccountY extends string
97
+ ? WritableAccount<TAccountTokenOwnerAccountY>
98
+ : TAccountTokenOwnerAccountY,
99
+ TAccountTokenVaultX extends string
100
+ ? WritableAccount<TAccountTokenVaultX>
101
+ : TAccountTokenVaultX,
102
+ TAccountTokenVaultY extends string
103
+ ? WritableAccount<TAccountTokenVaultY>
104
+ : TAccountTokenVaultY,
105
+ TAccountTokenProgramX extends string
106
+ ? ReadonlyAccount<TAccountTokenProgramX>
107
+ : TAccountTokenProgramX,
108
+ TAccountTokenProgramY extends string
109
+ ? ReadonlyAccount<TAccountTokenProgramY>
110
+ : TAccountTokenProgramY,
111
+ TAccountLowerBinArray extends string
112
+ ? WritableAccount<TAccountLowerBinArray>
113
+ : TAccountLowerBinArray,
114
+ TAccountUpperBinArray extends string
115
+ ? WritableAccount<TAccountUpperBinArray>
116
+ : TAccountUpperBinArray,
117
+ ...TRemainingAccounts,
118
+ ]
119
+ >;
120
+
121
+ export type WithdrawInstructionData = {
122
+ discriminator: ReadonlyUint8Array;
123
+ lowerBinId: number;
124
+ upperBinId: number;
125
+ bpsToRemove: number;
126
+ };
127
+
128
+ export type WithdrawInstructionDataArgs = {
129
+ lowerBinId: number;
130
+ upperBinId: number;
131
+ bpsToRemove: number;
132
+ };
133
+
134
+ export function getWithdrawInstructionDataEncoder(): FixedSizeEncoder<WithdrawInstructionDataArgs> {
135
+ return transformEncoder(
136
+ getStructEncoder([
137
+ ["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
138
+ ["lowerBinId", getI32Encoder()],
139
+ ["upperBinId", getI32Encoder()],
140
+ ["bpsToRemove", getU16Encoder()],
141
+ ]),
142
+ (value) => ({ ...value, discriminator: WITHDRAW_DISCRIMINATOR }),
143
+ );
144
+ }
145
+
146
+ export function getWithdrawInstructionDataDecoder(): FixedSizeDecoder<WithdrawInstructionData> {
147
+ return getStructDecoder([
148
+ ["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
149
+ ["lowerBinId", getI32Decoder()],
150
+ ["upperBinId", getI32Decoder()],
151
+ ["bpsToRemove", getU16Decoder()],
152
+ ]);
153
+ }
154
+
155
+ export function getWithdrawInstructionDataCodec(): FixedSizeCodec<
156
+ WithdrawInstructionDataArgs,
157
+ WithdrawInstructionData
158
+ > {
159
+ return combineCodec(
160
+ getWithdrawInstructionDataEncoder(),
161
+ getWithdrawInstructionDataDecoder(),
162
+ );
163
+ }
164
+
165
+ export type WithdrawInput<
166
+ TAccountOwner extends string = string,
167
+ TAccountPool extends string = string,
168
+ TAccountPosition extends string = string,
169
+ TAccountPositionTokenAccount extends string = string,
170
+ TAccountTokenMintX extends string = string,
171
+ TAccountTokenMintY extends string = string,
172
+ TAccountTokenOwnerAccountX extends string = string,
173
+ TAccountTokenOwnerAccountY extends string = string,
174
+ TAccountTokenVaultX extends string = string,
175
+ TAccountTokenVaultY extends string = string,
176
+ TAccountTokenProgramX extends string = string,
177
+ TAccountTokenProgramY extends string = string,
178
+ TAccountLowerBinArray extends string = string,
179
+ TAccountUpperBinArray extends string = string,
180
+ > = {
181
+ owner: TransactionSigner<TAccountOwner>;
182
+ pool: Address<TAccountPool>;
183
+ position: Address<TAccountPosition>;
184
+ positionTokenAccount: Address<TAccountPositionTokenAccount>;
185
+ tokenMintX: Address<TAccountTokenMintX>;
186
+ tokenMintY: Address<TAccountTokenMintY>;
187
+ tokenOwnerAccountX: Address<TAccountTokenOwnerAccountX>;
188
+ tokenOwnerAccountY: Address<TAccountTokenOwnerAccountY>;
189
+ tokenVaultX: Address<TAccountTokenVaultX>;
190
+ tokenVaultY: Address<TAccountTokenVaultY>;
191
+ tokenProgramX: Address<TAccountTokenProgramX>;
192
+ tokenProgramY: Address<TAccountTokenProgramY>;
193
+ lowerBinArray: Address<TAccountLowerBinArray>;
194
+ upperBinArray?: Address<TAccountUpperBinArray>;
195
+ lowerBinId: WithdrawInstructionDataArgs["lowerBinId"];
196
+ upperBinId: WithdrawInstructionDataArgs["upperBinId"];
197
+ bpsToRemove: WithdrawInstructionDataArgs["bpsToRemove"];
198
+ };
199
+
200
+ export function getWithdrawInstruction<
201
+ TAccountOwner extends string,
202
+ TAccountPool extends string,
203
+ TAccountPosition extends string,
204
+ TAccountPositionTokenAccount extends string,
205
+ TAccountTokenMintX extends string,
206
+ TAccountTokenMintY extends string,
207
+ TAccountTokenOwnerAccountX extends string,
208
+ TAccountTokenOwnerAccountY extends string,
209
+ TAccountTokenVaultX extends string,
210
+ TAccountTokenVaultY extends string,
211
+ TAccountTokenProgramX extends string,
212
+ TAccountTokenProgramY extends string,
213
+ TAccountLowerBinArray extends string,
214
+ TAccountUpperBinArray extends string,
215
+ TProgramAddress extends Address = typeof PICON_DLMM_PROGRAM_ADDRESS,
216
+ >(
217
+ input: WithdrawInput<
218
+ TAccountOwner,
219
+ TAccountPool,
220
+ TAccountPosition,
221
+ TAccountPositionTokenAccount,
222
+ TAccountTokenMintX,
223
+ TAccountTokenMintY,
224
+ TAccountTokenOwnerAccountX,
225
+ TAccountTokenOwnerAccountY,
226
+ TAccountTokenVaultX,
227
+ TAccountTokenVaultY,
228
+ TAccountTokenProgramX,
229
+ TAccountTokenProgramY,
230
+ TAccountLowerBinArray,
231
+ TAccountUpperBinArray
232
+ >,
233
+ config?: { programAddress?: TProgramAddress },
234
+ ): WithdrawInstruction<
235
+ TProgramAddress,
236
+ TAccountOwner,
237
+ TAccountPool,
238
+ TAccountPosition,
239
+ TAccountPositionTokenAccount,
240
+ TAccountTokenMintX,
241
+ TAccountTokenMintY,
242
+ TAccountTokenOwnerAccountX,
243
+ TAccountTokenOwnerAccountY,
244
+ TAccountTokenVaultX,
245
+ TAccountTokenVaultY,
246
+ TAccountTokenProgramX,
247
+ TAccountTokenProgramY,
248
+ TAccountLowerBinArray,
249
+ TAccountUpperBinArray
250
+ > {
251
+ // Program address.
252
+ const programAddress = config?.programAddress ?? PICON_DLMM_PROGRAM_ADDRESS;
253
+
254
+ // Original accounts.
255
+ const originalAccounts = {
256
+ owner: { value: input.owner ?? null, isWritable: false },
257
+ pool: { value: input.pool ?? null, isWritable: false },
258
+ position: { value: input.position ?? null, isWritable: true },
259
+ positionTokenAccount: {
260
+ value: input.positionTokenAccount ?? null,
261
+ isWritable: false,
262
+ },
263
+ tokenMintX: { value: input.tokenMintX ?? null, isWritable: false },
264
+ tokenMintY: { value: input.tokenMintY ?? null, isWritable: false },
265
+ tokenOwnerAccountX: {
266
+ value: input.tokenOwnerAccountX ?? null,
267
+ isWritable: true,
268
+ },
269
+ tokenOwnerAccountY: {
270
+ value: input.tokenOwnerAccountY ?? null,
271
+ isWritable: true,
272
+ },
273
+ tokenVaultX: { value: input.tokenVaultX ?? null, isWritable: true },
274
+ tokenVaultY: { value: input.tokenVaultY ?? null, isWritable: true },
275
+ tokenProgramX: { value: input.tokenProgramX ?? null, isWritable: false },
276
+ tokenProgramY: { value: input.tokenProgramY ?? null, isWritable: false },
277
+ lowerBinArray: { value: input.lowerBinArray ?? null, isWritable: true },
278
+ upperBinArray: { value: input.upperBinArray ?? null, isWritable: true },
279
+ };
280
+ const accounts = originalAccounts as Record<
281
+ keyof typeof originalAccounts,
282
+ ResolvedInstructionAccount
283
+ >;
284
+
285
+ // Original args.
286
+ const args = { ...input };
287
+
288
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
289
+ return Object.freeze({
290
+ accounts: [
291
+ getAccountMeta("owner", accounts.owner),
292
+ getAccountMeta("pool", accounts.pool),
293
+ getAccountMeta("position", accounts.position),
294
+ getAccountMeta("positionTokenAccount", accounts.positionTokenAccount),
295
+ getAccountMeta("tokenMintX", accounts.tokenMintX),
296
+ getAccountMeta("tokenMintY", accounts.tokenMintY),
297
+ getAccountMeta("tokenOwnerAccountX", accounts.tokenOwnerAccountX),
298
+ getAccountMeta("tokenOwnerAccountY", accounts.tokenOwnerAccountY),
299
+ getAccountMeta("tokenVaultX", accounts.tokenVaultX),
300
+ getAccountMeta("tokenVaultY", accounts.tokenVaultY),
301
+ getAccountMeta("tokenProgramX", accounts.tokenProgramX),
302
+ getAccountMeta("tokenProgramY", accounts.tokenProgramY),
303
+ getAccountMeta("lowerBinArray", accounts.lowerBinArray),
304
+ getAccountMeta("upperBinArray", accounts.upperBinArray),
305
+ ],
306
+ data: getWithdrawInstructionDataEncoder().encode(
307
+ args as WithdrawInstructionDataArgs,
308
+ ),
309
+ programAddress,
310
+ } as WithdrawInstruction<
311
+ TProgramAddress,
312
+ TAccountOwner,
313
+ TAccountPool,
314
+ TAccountPosition,
315
+ TAccountPositionTokenAccount,
316
+ TAccountTokenMintX,
317
+ TAccountTokenMintY,
318
+ TAccountTokenOwnerAccountX,
319
+ TAccountTokenOwnerAccountY,
320
+ TAccountTokenVaultX,
321
+ TAccountTokenVaultY,
322
+ TAccountTokenProgramX,
323
+ TAccountTokenProgramY,
324
+ TAccountLowerBinArray,
325
+ TAccountUpperBinArray
326
+ >);
327
+ }
328
+
329
+ export type ParsedWithdrawInstruction<
330
+ TProgram extends string = typeof PICON_DLMM_PROGRAM_ADDRESS,
331
+ TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
332
+ > = {
333
+ programAddress: Address<TProgram>;
334
+ accounts: {
335
+ owner: TAccountMetas[0];
336
+ pool: TAccountMetas[1];
337
+ position: TAccountMetas[2];
338
+ positionTokenAccount: TAccountMetas[3];
339
+ tokenMintX: TAccountMetas[4];
340
+ tokenMintY: TAccountMetas[5];
341
+ tokenOwnerAccountX: TAccountMetas[6];
342
+ tokenOwnerAccountY: TAccountMetas[7];
343
+ tokenVaultX: TAccountMetas[8];
344
+ tokenVaultY: TAccountMetas[9];
345
+ tokenProgramX: TAccountMetas[10];
346
+ tokenProgramY: TAccountMetas[11];
347
+ lowerBinArray: TAccountMetas[12];
348
+ upperBinArray?: TAccountMetas[13] | undefined;
349
+ };
350
+ data: WithdrawInstructionData;
351
+ };
352
+
353
+ export function parseWithdrawInstruction<
354
+ TProgram extends string,
355
+ TAccountMetas extends readonly AccountMeta[],
356
+ >(
357
+ instruction: Instruction<TProgram> &
358
+ InstructionWithAccounts<TAccountMetas> &
359
+ InstructionWithData<ReadonlyUint8Array>,
360
+ ): ParsedWithdrawInstruction<TProgram, TAccountMetas> {
361
+ if (instruction.accounts.length < 14) {
362
+ throw new SolanaError(
363
+ SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
364
+ {
365
+ actualAccountMetas: instruction.accounts.length,
366
+ expectedAccountMetas: 14,
367
+ },
368
+ );
369
+ }
370
+ let accountIndex = 0;
371
+ const getNextAccount = () => {
372
+ const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;
373
+ accountIndex += 1;
374
+ return accountMeta;
375
+ };
376
+ const getNextOptionalAccount = () => {
377
+ const accountMeta = getNextAccount();
378
+ return accountMeta.address === PICON_DLMM_PROGRAM_ADDRESS
379
+ ? undefined
380
+ : accountMeta;
381
+ };
382
+ return {
383
+ programAddress: instruction.programAddress,
384
+ accounts: {
385
+ owner: getNextAccount(),
386
+ pool: getNextAccount(),
387
+ position: getNextAccount(),
388
+ positionTokenAccount: getNextAccount(),
389
+ tokenMintX: getNextAccount(),
390
+ tokenMintY: getNextAccount(),
391
+ tokenOwnerAccountX: getNextAccount(),
392
+ tokenOwnerAccountY: getNextAccount(),
393
+ tokenVaultX: getNextAccount(),
394
+ tokenVaultY: getNextAccount(),
395
+ tokenProgramX: getNextAccount(),
396
+ tokenProgramY: getNextAccount(),
397
+ lowerBinArray: getNextAccount(),
398
+ upperBinArray: getNextOptionalAccount(),
399
+ },
400
+ data: getWithdrawInstructionDataDecoder().decode(instruction.data),
401
+ };
402
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import {
10
+ getBytesEncoder,
11
+ getProgramDerivedAddress,
12
+ type Address,
13
+ type ProgramDerivedAddress,
14
+ } from "@solana/kit";
15
+
16
+ export async function findAdminConfigPda(
17
+ config: { programAddress?: Address | undefined } = {},
18
+ ): Promise<ProgramDerivedAddress> {
19
+ const {
20
+ programAddress = "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC" as Address<"pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC">,
21
+ } = config;
22
+ return await getProgramDerivedAddress({
23
+ programAddress,
24
+ seeds: [
25
+ getBytesEncoder().encode(
26
+ new Uint8Array([
27
+ 97, 100, 109, 105, 110, 95, 99, 111, 110, 102, 105, 103,
28
+ ]),
29
+ ),
30
+ ],
31
+ });
32
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import {
10
+ getAddressEncoder,
11
+ getBytesEncoder,
12
+ getI32Encoder,
13
+ getProgramDerivedAddress,
14
+ type Address,
15
+ type ProgramDerivedAddress,
16
+ } from "@solana/kit";
17
+
18
+ export type BinArraySeeds = {
19
+ pool: Address;
20
+ index: number;
21
+ };
22
+
23
+ export async function findBinArrayPda(
24
+ seeds: BinArraySeeds,
25
+ config: { programAddress?: Address | undefined } = {},
26
+ ): Promise<ProgramDerivedAddress> {
27
+ const {
28
+ programAddress = "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC" as Address<"pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC">,
29
+ } = config;
30
+ return await getProgramDerivedAddress({
31
+ programAddress,
32
+ seeds: [
33
+ getBytesEncoder().encode(
34
+ new Uint8Array([98, 105, 110, 95, 97, 114, 114, 97, 121]),
35
+ ),
36
+ getAddressEncoder().encode(seeds.pool),
37
+ getI32Encoder().encode(seeds.index),
38
+ ],
39
+ });
40
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ export * from "./adminConfig";
10
+ export * from "./binArray";
11
+ export * from "./pool";
12
+ export * from "./position";
@@ -0,0 +1,43 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import {
10
+ getAddressEncoder,
11
+ getBytesEncoder,
12
+ getProgramDerivedAddress,
13
+ getU16Encoder,
14
+ getU32Encoder,
15
+ type Address,
16
+ type ProgramDerivedAddress,
17
+ } from "@solana/kit";
18
+
19
+ export type PoolSeeds = {
20
+ tokenMintX: Address;
21
+ tokenMintY: Address;
22
+ binStep: number;
23
+ feeRate: number;
24
+ };
25
+
26
+ export async function findPoolPda(
27
+ seeds: PoolSeeds,
28
+ config: { programAddress?: Address | undefined } = {},
29
+ ): Promise<ProgramDerivedAddress> {
30
+ const {
31
+ programAddress = "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC" as Address<"pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC">,
32
+ } = config;
33
+ return await getProgramDerivedAddress({
34
+ programAddress,
35
+ seeds: [
36
+ getBytesEncoder().encode(new Uint8Array([112, 111, 111, 108])),
37
+ getAddressEncoder().encode(seeds.tokenMintX),
38
+ getAddressEncoder().encode(seeds.tokenMintY),
39
+ getU16Encoder().encode(seeds.binStep),
40
+ getU32Encoder().encode(seeds.feeRate),
41
+ ],
42
+ });
43
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ import {
10
+ getAddressEncoder,
11
+ getBytesEncoder,
12
+ getProgramDerivedAddress,
13
+ type Address,
14
+ type ProgramDerivedAddress,
15
+ } from "@solana/kit";
16
+
17
+ export type PositionSeeds = {
18
+ positionMint: Address;
19
+ };
20
+
21
+ export async function findPositionPda(
22
+ seeds: PositionSeeds,
23
+ config: { programAddress?: Address | undefined } = {},
24
+ ): Promise<ProgramDerivedAddress> {
25
+ const {
26
+ programAddress = "pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC" as Address<"pDLMMk3KW3CUSxE1Wgjhx3jSmm2spe6Ry7Mq2HT26rC">,
27
+ } = config;
28
+ return await getProgramDerivedAddress({
29
+ programAddress,
30
+ seeds: [
31
+ getBytesEncoder().encode(
32
+ new Uint8Array([112, 111, 115, 105, 116, 105, 111, 110]),
33
+ ),
34
+ getAddressEncoder().encode(seeds.positionMint),
35
+ ],
36
+ });
37
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+
9
+ export * from "./piconDlmm";