@liquid-af/sdk 0.1.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 (225) hide show
  1. package/README.md +776 -0
  2. package/dist/accounts/index.d.ts +5 -0
  3. package/dist/accounts/index.d.ts.map +1 -0
  4. package/dist/accounts/index.js +5 -0
  5. package/dist/accounts/index.js.map +1 -0
  6. package/dist/accounts/liquid-fees.d.ts +63 -0
  7. package/dist/accounts/liquid-fees.d.ts.map +1 -0
  8. package/dist/accounts/liquid-fees.js +27 -0
  9. package/dist/accounts/liquid-fees.js.map +1 -0
  10. package/dist/accounts/liquid-state.d.ts +112 -0
  11. package/dist/accounts/liquid-state.d.ts.map +1 -0
  12. package/dist/accounts/liquid-state.js +92 -0
  13. package/dist/accounts/liquid-state.js.map +1 -0
  14. package/dist/accounts/liquid-swap.d.ts +97 -0
  15. package/dist/accounts/liquid-swap.d.ts.map +1 -0
  16. package/dist/accounts/liquid-swap.js +54 -0
  17. package/dist/accounts/liquid-swap.js.map +1 -0
  18. package/dist/accounts/liquid.d.ts +175 -0
  19. package/dist/accounts/liquid.d.ts.map +1 -0
  20. package/dist/accounts/liquid.js +66 -0
  21. package/dist/accounts/liquid.js.map +1 -0
  22. package/dist/client.d.ts +621 -0
  23. package/dist/client.d.ts.map +1 -0
  24. package/dist/client.js +511 -0
  25. package/dist/client.js.map +1 -0
  26. package/dist/config.d.ts +56 -0
  27. package/dist/config.d.ts.map +1 -0
  28. package/dist/config.js +44 -0
  29. package/dist/config.js.map +1 -0
  30. package/dist/errors.d.ts +39 -0
  31. package/dist/errors.d.ts.map +1 -0
  32. package/dist/errors.js +63 -0
  33. package/dist/errors.js.map +1 -0
  34. package/dist/events/index.d.ts +4 -0
  35. package/dist/events/index.d.ts.map +1 -0
  36. package/dist/events/index.js +2 -0
  37. package/dist/events/index.js.map +1 -0
  38. package/dist/events/parser.d.ts +40 -0
  39. package/dist/events/parser.d.ts.map +1 -0
  40. package/dist/events/parser.js +67 -0
  41. package/dist/events/parser.js.map +1 -0
  42. package/dist/events/types.d.ts +286 -0
  43. package/dist/events/types.d.ts.map +1 -0
  44. package/dist/events/types.js +2 -0
  45. package/dist/events/types.js.map +1 -0
  46. package/dist/helpers/index.d.ts +4 -0
  47. package/dist/helpers/index.d.ts.map +1 -0
  48. package/dist/helpers/index.js +3 -0
  49. package/dist/helpers/index.js.map +1 -0
  50. package/dist/helpers/preview.d.ts +259 -0
  51. package/dist/helpers/preview.d.ts.map +1 -0
  52. package/dist/helpers/preview.js +458 -0
  53. package/dist/helpers/preview.js.map +1 -0
  54. package/dist/helpers/user.d.ts +11 -0
  55. package/dist/helpers/user.d.ts.map +1 -0
  56. package/dist/helpers/user.js +20 -0
  57. package/dist/helpers/user.js.map +1 -0
  58. package/dist/idl/index.d.ts +53 -0
  59. package/dist/idl/index.d.ts.map +1 -0
  60. package/dist/idl/index.js +64 -0
  61. package/dist/idl/index.js.map +1 -0
  62. package/dist/idl/liquid.d.ts +10523 -0
  63. package/dist/idl/liquid.d.ts.map +1 -0
  64. package/dist/idl/liquid.js +2 -0
  65. package/dist/idl/liquid.js.map +1 -0
  66. package/dist/idl/liquid.json +10516 -0
  67. package/dist/idl/liquid_fees.d.ts +1520 -0
  68. package/dist/idl/liquid_fees.d.ts.map +1 -0
  69. package/dist/idl/liquid_fees.js +2 -0
  70. package/dist/idl/liquid_fees.js.map +1 -0
  71. package/dist/idl/liquid_fees.json +1513 -0
  72. package/dist/idl/liquid_state.d.ts +2936 -0
  73. package/dist/idl/liquid_state.d.ts.map +1 -0
  74. package/dist/idl/liquid_state.js +2 -0
  75. package/dist/idl/liquid_state.js.map +1 -0
  76. package/dist/idl/liquid_state.json +2929 -0
  77. package/dist/idl/liquid_swap.d.ts +5849 -0
  78. package/dist/idl/liquid_swap.d.ts.map +1 -0
  79. package/dist/idl/liquid_swap.js +2 -0
  80. package/dist/idl/liquid_swap.js.map +1 -0
  81. package/dist/idl/liquid_swap.json +5842 -0
  82. package/dist/index.d.ts +19 -0
  83. package/dist/index.d.ts.map +1 -0
  84. package/dist/index.js +15 -0
  85. package/dist/index.js.map +1 -0
  86. package/dist/instructions/index.d.ts +9 -0
  87. package/dist/instructions/index.d.ts.map +1 -0
  88. package/dist/instructions/index.js +9 -0
  89. package/dist/instructions/index.js.map +1 -0
  90. package/dist/instructions/liquid-fees.d.ts +111 -0
  91. package/dist/instructions/liquid-fees.d.ts.map +1 -0
  92. package/dist/instructions/liquid-fees.js +169 -0
  93. package/dist/instructions/liquid-fees.js.map +1 -0
  94. package/dist/instructions/liquid-state.d.ts +173 -0
  95. package/dist/instructions/liquid-state.d.ts.map +1 -0
  96. package/dist/instructions/liquid-state.js +194 -0
  97. package/dist/instructions/liquid-state.js.map +1 -0
  98. package/dist/instructions/liquid-swap.d.ts +122 -0
  99. package/dist/instructions/liquid-swap.d.ts.map +1 -0
  100. package/dist/instructions/liquid-swap.js +167 -0
  101. package/dist/instructions/liquid-swap.js.map +1 -0
  102. package/dist/instructions/liquid.d.ts +297 -0
  103. package/dist/instructions/liquid.d.ts.map +1 -0
  104. package/dist/instructions/liquid.js +483 -0
  105. package/dist/instructions/liquid.js.map +1 -0
  106. package/dist/instructions/program-cache.d.ts +35 -0
  107. package/dist/instructions/program-cache.d.ts.map +1 -0
  108. package/dist/instructions/program-cache.js +68 -0
  109. package/dist/instructions/program-cache.js.map +1 -0
  110. package/dist/math/amm.d.ts +42 -0
  111. package/dist/math/amm.d.ts.map +1 -0
  112. package/dist/math/amm.js +109 -0
  113. package/dist/math/amm.js.map +1 -0
  114. package/dist/math/bonding-curve.d.ts +34 -0
  115. package/dist/math/bonding-curve.d.ts.map +1 -0
  116. package/dist/math/bonding-curve.js +80 -0
  117. package/dist/math/bonding-curve.js.map +1 -0
  118. package/dist/math/constants.d.ts +14 -0
  119. package/dist/math/constants.d.ts.map +1 -0
  120. package/dist/math/constants.js +14 -0
  121. package/dist/math/constants.js.map +1 -0
  122. package/dist/math/fees.d.ts +88 -0
  123. package/dist/math/fees.d.ts.map +1 -0
  124. package/dist/math/fees.js +135 -0
  125. package/dist/math/fees.js.map +1 -0
  126. package/dist/math/index.d.ts +8 -0
  127. package/dist/math/index.d.ts.map +1 -0
  128. package/dist/math/index.js +6 -0
  129. package/dist/math/index.js.map +1 -0
  130. package/dist/math/tiered-fees.d.ts +80 -0
  131. package/dist/math/tiered-fees.d.ts.map +1 -0
  132. package/dist/math/tiered-fees.js +129 -0
  133. package/dist/math/tiered-fees.js.map +1 -0
  134. package/dist/oracle.d.ts +53 -0
  135. package/dist/oracle.d.ts.map +1 -0
  136. package/dist/oracle.js +70 -0
  137. package/dist/oracle.js.map +1 -0
  138. package/dist/pda/index.d.ts +89 -0
  139. package/dist/pda/index.d.ts.map +1 -0
  140. package/dist/pda/index.js +127 -0
  141. package/dist/pda/index.js.map +1 -0
  142. package/dist/pda/liquid-fees.d.ts +27 -0
  143. package/dist/pda/liquid-fees.d.ts.map +1 -0
  144. package/dist/pda/liquid-fees.js +36 -0
  145. package/dist/pda/liquid-fees.js.map +1 -0
  146. package/dist/pda/liquid-state.d.ts +56 -0
  147. package/dist/pda/liquid-state.d.ts.map +1 -0
  148. package/dist/pda/liquid-state.js +79 -0
  149. package/dist/pda/liquid-state.js.map +1 -0
  150. package/dist/pda/liquid-swap.d.ts +76 -0
  151. package/dist/pda/liquid-swap.d.ts.map +1 -0
  152. package/dist/pda/liquid-swap.js +103 -0
  153. package/dist/pda/liquid-swap.js.map +1 -0
  154. package/dist/pda/liquid.d.ts +67 -0
  155. package/dist/pda/liquid.d.ts.map +1 -0
  156. package/dist/pda/liquid.js +91 -0
  157. package/dist/pda/liquid.js.map +1 -0
  158. package/dist/provider.d.ts +26 -0
  159. package/dist/provider.d.ts.map +1 -0
  160. package/dist/provider.js +47 -0
  161. package/dist/provider.js.map +1 -0
  162. package/dist/transaction/builder.d.ts +30 -0
  163. package/dist/transaction/builder.d.ts.map +1 -0
  164. package/dist/transaction/builder.js +48 -0
  165. package/dist/transaction/builder.js.map +1 -0
  166. package/dist/transaction/index.d.ts +3 -0
  167. package/dist/transaction/index.d.ts.map +1 -0
  168. package/dist/transaction/index.js +3 -0
  169. package/dist/transaction/index.js.map +1 -0
  170. package/dist/transaction/send.d.ts +25 -0
  171. package/dist/transaction/send.d.ts.map +1 -0
  172. package/dist/transaction/send.js +52 -0
  173. package/dist/transaction/send.js.map +1 -0
  174. package/dist/types.d.ts +311 -0
  175. package/dist/types.d.ts.map +1 -0
  176. package/dist/types.js +46 -0
  177. package/dist/types.js.map +1 -0
  178. package/package.json +112 -0
  179. package/src/accounts/index.ts +26 -0
  180. package/src/accounts/liquid-fees.ts +38 -0
  181. package/src/accounts/liquid-state.ts +134 -0
  182. package/src/accounts/liquid-swap.ts +79 -0
  183. package/src/accounts/liquid.ts +100 -0
  184. package/src/client.ts +1001 -0
  185. package/src/config.ts +91 -0
  186. package/src/errors.ts +94 -0
  187. package/src/events/index.ts +42 -0
  188. package/src/events/parser.ts +90 -0
  189. package/src/events/types.ts +310 -0
  190. package/src/helpers/index.ts +23 -0
  191. package/src/helpers/preview.ts +798 -0
  192. package/src/helpers/user.ts +24 -0
  193. package/src/idl/index.ts +94 -0
  194. package/src/idl/liquid.json +10516 -0
  195. package/src/idl/liquid.ts +10522 -0
  196. package/src/idl/liquid_fees.json +1513 -0
  197. package/src/idl/liquid_fees.ts +1519 -0
  198. package/src/idl/liquid_state.json +2929 -0
  199. package/src/idl/liquid_state.ts +2935 -0
  200. package/src/idl/liquid_swap.json +5842 -0
  201. package/src/idl/liquid_swap.ts +5848 -0
  202. package/src/index.ts +98 -0
  203. package/src/instructions/index.ts +109 -0
  204. package/src/instructions/liquid-fees.ts +289 -0
  205. package/src/instructions/liquid-state.ts +336 -0
  206. package/src/instructions/liquid-swap.ts +414 -0
  207. package/src/instructions/liquid.ts +884 -0
  208. package/src/instructions/program-cache.ts +106 -0
  209. package/src/math/amm.ts +146 -0
  210. package/src/math/bonding-curve.ts +122 -0
  211. package/src/math/constants.ts +19 -0
  212. package/src/math/fees.ts +191 -0
  213. package/src/math/index.ts +40 -0
  214. package/src/math/tiered-fees.ts +165 -0
  215. package/src/oracle.ts +97 -0
  216. package/src/pda/index.ts +331 -0
  217. package/src/pda/liquid-fees.ts +58 -0
  218. package/src/pda/liquid-state.ts +123 -0
  219. package/src/pda/liquid-swap.ts +162 -0
  220. package/src/pda/liquid.ts +152 -0
  221. package/src/provider.ts +60 -0
  222. package/src/transaction/builder.ts +80 -0
  223. package/src/transaction/index.ts +6 -0
  224. package/src/transaction/send.ts +72 -0
  225. package/src/types.ts +354 -0
@@ -0,0 +1,19 @@
1
+ export { LiquidClient } from "./client.js";
2
+ export type { LiquidClientConfig } from "./client.js";
3
+ export { ReadonlyWallet, createReadonlyProvider, createStubProvider, } from "./provider.js";
4
+ export { LiquidError, LiquidErrorCode } from "./errors.js";
5
+ export type { LiquidConfig } from "./config.js";
6
+ export { MAINNET_CONFIG, DEVNET_CONFIG, LOCALNET_CONFIG, WSOL_MINT, BPS_DENOMINATOR, NUM_FEE_RECIPIENTS, MAX_FEE_RECIPIENTS_FEES, MAX_QUOTE_MINTS, MAX_CASHBACK_RANGES, MIN_MULTIPLIER_BPS, MAX_MULTIPLIER_BPS, MIN_VAULT_BALANCE, LIMITS, } from "./config.js";
7
+ export type { GlobalConfiguration, BondingCurveState, AmmConfig, FeeTier, PoolState, Observation, ObservationState, UnifiedFeeConfiguration, UserProperties, ReferrerInfo, UserSnapshot, Deal, AdminUpdateUserArgs, TokenVolumeAccumulator, GlobalCurveVolume, GlobalAmmVolume, CashbackRange, CashbackConfiguration, FeeDistribution, BondingCurveBuyResult, BondingCurveSellResult, SwapFees, AmmSellOutput, AmmBuyInput, LpTokenAmounts, DistributionResult, PoolInfo, BuyCurvePreview, SellCurvePreview, SwapPreview, FeeRecipient, FeeModeAnchor, CurveStatusAnchor, } from "./types.js";
8
+ export { FeeMode, toAnchorFeeMode, feeModeEquals, CurveStatus, curveStatusEquals, } from "./types.js";
9
+ export * from "./pda/index.js";
10
+ export * from "./math/index.js";
11
+ export * from "./accounts/index.js";
12
+ export * from "./instructions/index.js";
13
+ export * from "./helpers/index.js";
14
+ export * from "./events/index.js";
15
+ export * from "./transaction/index.js";
16
+ export * from "./oracle.js";
17
+ export type { Liquid, LiquidSwap, LiquidFees, LiquidState } from "./idl/index.js";
18
+ export { getLiquidProgram, getLiquidSwapProgram, getLiquidFeesProgram, getLiquidStateProgram, liquidIdl, liquidSwapIdl, liquidFeesIdl, liquidStateIdl, } from "./idl/index.js";
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE3D,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,aAAa,EACb,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,GACd,MAAM,gBAAgB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,15 @@
1
+ export { LiquidClient } from "./client.js";
2
+ export { ReadonlyWallet, createReadonlyProvider, createStubProvider, } from "./provider.js";
3
+ export { LiquidError, LiquidErrorCode } from "./errors.js";
4
+ export { MAINNET_CONFIG, DEVNET_CONFIG, LOCALNET_CONFIG, WSOL_MINT, BPS_DENOMINATOR, NUM_FEE_RECIPIENTS, MAX_FEE_RECIPIENTS_FEES, MAX_QUOTE_MINTS, MAX_CASHBACK_RANGES, MIN_MULTIPLIER_BPS, MAX_MULTIPLIER_BPS, MIN_VAULT_BALANCE, LIMITS, } from "./config.js";
5
+ export { FeeMode, toAnchorFeeMode, feeModeEquals, CurveStatus, curveStatusEquals, } from "./types.js";
6
+ export * from "./pda/index.js";
7
+ export * from "./math/index.js";
8
+ export * from "./accounts/index.js";
9
+ export * from "./instructions/index.js";
10
+ export * from "./helpers/index.js";
11
+ export * from "./events/index.js";
12
+ export * from "./transaction/index.js";
13
+ export * from "./oracle.js";
14
+ export { getLiquidProgram, getLiquidSwapProgram, getLiquidFeesProgram, getLiquidStateProgram, liquidIdl, liquidSwapIdl, liquidFeesIdl, liquidStateIdl, } from "./idl/index.js";
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG3D,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAqCrB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAG5B,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,GACd,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { buildCreateNativeCurve, buildBumpNative, buildBuyNative, buildBuyNativeAutoResolve, buildSellNative, buildSellNativeAutoResolve, buildMigrateNative, buildInitializeNativeReferralVault, buildWithdrawReferralRewards, buildExecuteBuybackNative, buildExecuteBuybackToken, buildCreateStableCurve, buildBuyStable, buildBuyStableAutoResolve, buildSellStable, buildSellStableAutoResolve, buildMigrateStable, buildSetFeeRecipients, buildInitializeFeeRecipientVaults, buildInitializeReferralTokenVault, } from "./liquid.js";
2
+ export type { BuildCreateNativeCurveParams, BuildBumpNativeParams, BuildBuyNativeParams, BuildSellNativeParams, BuildMigrateNativeParams, BuildInitializeNativeReferralVaultParams, BuildWithdrawReferralRewardsParams, BuildExecuteBuybackNativeParams, BuildExecuteBuybackTokenParams, BuildCreateStableCurveParams, BuildBuyStableParams, BuildSellStableParams, BuildMigrateStableParams, BuildSetFeeRecipientsParams, BuildInitializeFeeRecipientVaultsParams, BuildInitializeReferralTokenVaultParams, } from "./liquid.js";
3
+ export { buildCreatePool, buildSwapBuy, buildSwapSell, buildDeposit, buildWithdraw, buildSwapExecuteBuyback, } from "./liquid-swap.js";
4
+ export type { BuildCreatePoolParams, BuildSwapBuyParams, BuildSwapSellParams, BuildDepositParams, BuildWithdrawParams, BuildSwapExecuteBuybackParams, } from "./liquid-swap.js";
5
+ export { buildUpdateFeeConfig, buildRevokeFeeConfig, buildDistributeFees, buildDistributeTokenFees, buildClaimFees, buildClaimTokenFees, deriveRecipientVaultPairs, } from "./liquid-fees.js";
6
+ export type { BuildUpdateFeeConfigParams, BuildRevokeFeeConfigParams, BuildDistributeFeesParams, BuildDistributeTokenFeesParams, BuildClaimFeesParams, BuildClaimTokenFeesParams, RecipientVaultPair, } from "./liquid-fees.js";
7
+ export { buildInitializeUser, buildSetReferrer, buildSetCashbackMode, buildTransferAdmin, buildAcceptAdmin, buildCancelAdminTransfer, buildCreateDeal, buildUpdateDeal, buildCloseDeal, buildRedeemDeal, buildTakeSnapshot, buildAdminUpdateUser, } from "./liquid-state.js";
8
+ export type { BuildInitializeUserParams, BuildSetReferrerParams, BuildSetCashbackModeParams, BuildTransferAdminParams, BuildAcceptAdminParams, BuildCancelAdminTransferParams, BuildCreateDealParams, BuildUpdateDealParams, BuildCloseDealParams, BuildRedeemDealParams, BuildTakeSnapshotParams, BuildAdminUpdateUserParams, } from "./liquid-state.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/instructions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,kCAAkC,EAClC,4BAA4B,EAC5B,yBAAyB,EACzB,wBAAwB,EAExB,sBAAsB,EACtB,cAAc,EACd,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAElB,qBAAqB,EACrB,iCAAiC,EACjC,iCAAiC,GACjC,MAAM,aAAa,CAAC;AACrB,YAAY,EACX,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,wCAAwC,EACxC,kCAAkC,EAClC,+BAA+B,EAC/B,8BAA8B,EAE9B,4BAA4B,EAC5B,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EAExB,2BAA2B,EAC3B,uCAAuC,EACvC,uCAAuC,GACvC,MAAM,aAAa,CAAC;AAErB,OAAO,EACN,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,uBAAuB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACX,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,6BAA6B,GAC7B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACX,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,8BAA8B,EAC9B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACX,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,EAC9B,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,GAC1B,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { buildCreateNativeCurve, buildBumpNative, buildBuyNative, buildBuyNativeAutoResolve, buildSellNative, buildSellNativeAutoResolve, buildMigrateNative, buildInitializeNativeReferralVault, buildWithdrawReferralRewards, buildExecuteBuybackNative, buildExecuteBuybackToken,
2
+ // Stable curve builders
3
+ buildCreateStableCurve, buildBuyStable, buildBuyStableAutoResolve, buildSellStable, buildSellStableAutoResolve, buildMigrateStable,
4
+ // Admin builders
5
+ buildSetFeeRecipients, buildInitializeFeeRecipientVaults, buildInitializeReferralTokenVault, } from "./liquid.js";
6
+ export { buildCreatePool, buildSwapBuy, buildSwapSell, buildDeposit, buildWithdraw, buildSwapExecuteBuyback, } from "./liquid-swap.js";
7
+ export { buildUpdateFeeConfig, buildRevokeFeeConfig, buildDistributeFees, buildDistributeTokenFees, buildClaimFees, buildClaimTokenFees, deriveRecipientVaultPairs, } from "./liquid-fees.js";
8
+ export { buildInitializeUser, buildSetReferrer, buildSetCashbackMode, buildTransferAdmin, buildAcceptAdmin, buildCancelAdminTransfer, buildCreateDeal, buildUpdateDeal, buildCloseDeal, buildRedeemDeal, buildTakeSnapshot, buildAdminUpdateUser, } from "./liquid-state.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/instructions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,kCAAkC,EAClC,4BAA4B,EAC5B,yBAAyB,EACzB,wBAAwB;AACxB,wBAAwB;AACxB,sBAAsB,EACtB,cAAc,EACd,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB;AAClB,iBAAiB;AACjB,qBAAqB,EACrB,iCAAiC,EACjC,iCAAiC,GACjC,MAAM,aAAa,CAAC;AAsBrB,OAAO,EACN,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,uBAAuB,GACvB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GACzB,MAAM,kBAAkB,CAAC;AAW1B,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACpB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,111 @@
1
+ import type { PublicKey, TransactionInstruction } from "@solana/web3.js";
2
+ import type { LiquidConfig } from "../config.js";
3
+ import type { FeeRecipient } from "../types.js";
4
+ export interface BuildUpdateFeeConfigParams {
5
+ authority: PublicKey;
6
+ tokenMint: PublicKey;
7
+ recipients?: FeeRecipient[] | null;
8
+ newUpdateAuthority?: PublicKey | null;
9
+ /** Required when changing recipients to verify token fee vault is drained. */
10
+ quoteMint?: PublicKey;
11
+ config: LiquidConfig;
12
+ }
13
+ /**
14
+ * Builds an updateFeeConfig instruction.
15
+ * Cannot change to Revoked mode (use revokeFeeConfig instead).
16
+ *
17
+ * @param params - {@link BuildUpdateFeeConfigParams}
18
+ * @returns Transaction instruction
19
+ */
20
+ export declare function buildUpdateFeeConfig(params: BuildUpdateFeeConfigParams): Promise<TransactionInstruction>;
21
+ export interface BuildRevokeFeeConfigParams {
22
+ authority: PublicKey;
23
+ tokenMint: PublicKey;
24
+ /** Quote mint for token fee vault ATA derivation. */
25
+ quoteMint: PublicKey;
26
+ config: LiquidConfig;
27
+ }
28
+ /**
29
+ * Builds a revokeFeeConfig instruction.
30
+ * Permanently sets fee mode to Revoked (buyback-and-burn). Irreversible.
31
+ *
32
+ * @param params - {@link BuildRevokeFeeConfigParams}
33
+ * @returns Transaction instruction
34
+ */
35
+ export declare function buildRevokeFeeConfig(params: BuildRevokeFeeConfigParams): Promise<TransactionInstruction>;
36
+ export interface BuildDistributeFeesParams {
37
+ payer: PublicKey;
38
+ tokenMint: PublicKey;
39
+ recipientVaults: PublicKey[];
40
+ config: LiquidConfig;
41
+ }
42
+ /**
43
+ * Builds a distributeFees instruction.
44
+ * Permissionless — anyone can trigger fee distribution for Recipients tokens.
45
+ * Recipient vaults must be recipient vault PDAs (derived via getRecipientVaultPDA),
46
+ * passed in the same order as fee_config.recipients.
47
+ *
48
+ * @param params - {@link BuildDistributeFeesParams}
49
+ * @returns Transaction instruction
50
+ */
51
+ export declare function buildDistributeFees(params: BuildDistributeFeesParams): Promise<TransactionInstruction>;
52
+ export interface RecipientVaultPair {
53
+ vaultPda: PublicKey;
54
+ vaultAta: PublicKey;
55
+ }
56
+ export interface BuildDistributeTokenFeesParams {
57
+ payer: PublicKey;
58
+ tokenMint: PublicKey;
59
+ quoteMint: PublicKey;
60
+ recipientVaultPairs: RecipientVaultPair[];
61
+ config: LiquidConfig;
62
+ }
63
+ /**
64
+ * Builds a distributeTokenFees instruction.
65
+ * Permissionless — anyone can trigger token fee distribution for Recipients tokens.
66
+ * Remaining accounts must be pairs of (recipient_vault_pda, recipient_vault_token_account)
67
+ * in the same order as fee_config.recipients.
68
+ *
69
+ * @param params - {@link BuildDistributeTokenFeesParams}
70
+ * @returns Transaction instruction
71
+ */
72
+ export declare function buildDistributeTokenFees(params: BuildDistributeTokenFeesParams): Promise<TransactionInstruction>;
73
+ export interface BuildClaimFeesParams {
74
+ recipient: PublicKey;
75
+ tokenMint: PublicKey;
76
+ config: LiquidConfig;
77
+ }
78
+ /**
79
+ * Builds a claimFees instruction.
80
+ * Allows a recipient to claim accumulated SOL fees from their vault PDA.
81
+ *
82
+ * @param params - {@link BuildClaimFeesParams}
83
+ * @returns Transaction instruction
84
+ */
85
+ export declare function buildClaimFees(params: BuildClaimFeesParams): Promise<TransactionInstruction>;
86
+ export interface BuildClaimTokenFeesParams {
87
+ recipient: PublicKey;
88
+ tokenMint: PublicKey;
89
+ quoteMint: PublicKey;
90
+ config: LiquidConfig;
91
+ }
92
+ /**
93
+ * Builds a claimTokenFees instruction.
94
+ * Allows a recipient to claim accumulated token fees from their vault ATA.
95
+ * Closes the vault ATA after claiming to reclaim rent.
96
+ *
97
+ * @param params - {@link BuildClaimTokenFeesParams}
98
+ * @returns Transaction instruction
99
+ */
100
+ export declare function buildClaimTokenFees(params: BuildClaimTokenFeesParams): Promise<TransactionInstruction>;
101
+ /**
102
+ * Helper: derives recipient vault PDA pairs for use with buildDistributeTokenFees.
103
+ *
104
+ * @param tokenMint - Token mint address
105
+ * @param recipients - Array of recipient public keys in fee_config order
106
+ * @param quoteMint - Quote mint for ATA derivation
107
+ * @param config - Liquid protocol config
108
+ * @returns Array of RecipientVaultPair for remaining accounts
109
+ */
110
+ export declare function deriveRecipientVaultPairs(tokenMint: PublicKey, recipients: PublicKey[], quoteMint: PublicKey, config: LiquidConfig): RecipientVaultPair[];
111
+ //# sourceMappingURL=liquid-fees.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liquid-fees.d.ts","sourceRoot":"","sources":["../../src/instructions/liquid-fees.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACtC,8EAA8E;IAC9E,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,0BAA0B,GAChC,OAAO,CAAC,sBAAsB,CAAC,CA2CjC;AAED,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,qDAAqD;IACrD,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,0BAA0B,GAChC,OAAO,CAAC,sBAAsB,CAAC,CAqBjC;AAED,MAAM,WAAW,yBAAyB;IACzC,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAClC,MAAM,EAAE,yBAAyB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAkBjC;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,8BAA8B;IAC9C,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC1C,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACvC,MAAM,EAAE,8BAA8B,GACpC,OAAO,CAAC,sBAAsB,CAAC,CAmBjC;AAED,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC7B,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,sBAAsB,CAAC,CAYjC;AAED,MAAM,WAAW,yBAAyB;IACzC,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAClC,MAAM,EAAE,yBAAyB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAajC;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACxC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,YAAY,GAClB,kBAAkB,EAAE,CAetB"}
@@ -0,0 +1,169 @@
1
+ import { getAssociatedTokenAddressSync } from "@solana/spl-token";
2
+ import { getCachedFeesProgram } from "./program-cache.js";
3
+ import { getFeeConfigPDA, getFeeVaultPDA, getRecipientVaultPDA, } from "../pda/liquid-fees.js";
4
+ /**
5
+ * Builds an updateFeeConfig instruction.
6
+ * Cannot change to Revoked mode (use revokeFeeConfig instead).
7
+ *
8
+ * @param params - {@link BuildUpdateFeeConfigParams}
9
+ * @returns Transaction instruction
10
+ */
11
+ export function buildUpdateFeeConfig(params) {
12
+ const { authority, tokenMint, recipients, newUpdateAuthority, quoteMint, config, } = params;
13
+ const program = getCachedFeesProgram(config);
14
+ const formattedRecipients = recipients?.map((r) => ({
15
+ pubkey: r.pubkey,
16
+ basisPoints: r.basisPoints,
17
+ })) ?? null;
18
+ // When changing recipients, the token fee vault must be passed to verify it's drained
19
+ let tokenFeeVault = null;
20
+ if (recipients && quoteMint) {
21
+ const [feeConfig] = getFeeConfigPDA(tokenMint, config.liquidFeesProgramId);
22
+ const [feeVault] = getFeeVaultPDA(feeConfig, config.liquidFeesProgramId);
23
+ tokenFeeVault = getAssociatedTokenAddressSync(quoteMint, feeVault, true);
24
+ }
25
+ return program.methods
26
+ .updateFeeConfig({
27
+ recipients: formattedRecipients,
28
+ newUpdateAuthority: newUpdateAuthority ?? null,
29
+ })
30
+ .accounts({
31
+ authority,
32
+ tokenMint,
33
+ tokenFeeVault
34
+ })
35
+ .instruction();
36
+ }
37
+ /**
38
+ * Builds a revokeFeeConfig instruction.
39
+ * Permanently sets fee mode to Revoked (buyback-and-burn). Irreversible.
40
+ *
41
+ * @param params - {@link BuildRevokeFeeConfigParams}
42
+ * @returns Transaction instruction
43
+ */
44
+ export function buildRevokeFeeConfig(params) {
45
+ const { authority, tokenMint, quoteMint, config } = params;
46
+ const program = getCachedFeesProgram(config);
47
+ // Derive token fee vault ATA (fee_vault's ATA for quote_mint)
48
+ const [feeConfig] = getFeeConfigPDA(tokenMint, config.liquidFeesProgramId);
49
+ const [feeVault] = getFeeVaultPDA(feeConfig, config.liquidFeesProgramId);
50
+ const tokenFeeVault = getAssociatedTokenAddressSync(quoteMint, feeVault, true);
51
+ return program.methods
52
+ .revokeFeeConfig()
53
+ .accounts({
54
+ authority,
55
+ tokenMint,
56
+ tokenFeeVault,
57
+ })
58
+ .instruction();
59
+ }
60
+ /**
61
+ * Builds a distributeFees instruction.
62
+ * Permissionless — anyone can trigger fee distribution for Recipients tokens.
63
+ * Recipient vaults must be recipient vault PDAs (derived via getRecipientVaultPDA),
64
+ * passed in the same order as fee_config.recipients.
65
+ *
66
+ * @param params - {@link BuildDistributeFeesParams}
67
+ * @returns Transaction instruction
68
+ */
69
+ export function buildDistributeFees(params) {
70
+ const { payer, tokenMint, recipientVaults, config } = params;
71
+ const program = getCachedFeesProgram(config);
72
+ return program.methods
73
+ .distributeFees()
74
+ .accounts({
75
+ payer,
76
+ tokenMint,
77
+ })
78
+ .remainingAccounts(recipientVaults.map((vault) => ({
79
+ pubkey: vault,
80
+ isSigner: false,
81
+ isWritable: true,
82
+ })))
83
+ .instruction();
84
+ }
85
+ /**
86
+ * Builds a distributeTokenFees instruction.
87
+ * Permissionless — anyone can trigger token fee distribution for Recipients tokens.
88
+ * Remaining accounts must be pairs of (recipient_vault_pda, recipient_vault_token_account)
89
+ * in the same order as fee_config.recipients.
90
+ *
91
+ * @param params - {@link BuildDistributeTokenFeesParams}
92
+ * @returns Transaction instruction
93
+ */
94
+ export function buildDistributeTokenFees(params) {
95
+ const { payer, tokenMint, quoteMint, recipientVaultPairs, config } = params;
96
+ const program = getCachedFeesProgram(config);
97
+ // Flatten pairs into interleaved remaining accounts: [pda1, ata1, pda2, ata2, ...]
98
+ const remainingAccounts = recipientVaultPairs.flatMap((pair) => [
99
+ { pubkey: pair.vaultPda, isSigner: false, isWritable: false },
100
+ { pubkey: pair.vaultAta, isSigner: false, isWritable: true },
101
+ ]);
102
+ return program.methods
103
+ .distributeTokenFees()
104
+ .accountsPartial({
105
+ payer,
106
+ tokenMint,
107
+ quoteMint
108
+ })
109
+ .remainingAccounts(remainingAccounts)
110
+ .instruction();
111
+ }
112
+ /**
113
+ * Builds a claimFees instruction.
114
+ * Allows a recipient to claim accumulated SOL fees from their vault PDA.
115
+ *
116
+ * @param params - {@link BuildClaimFeesParams}
117
+ * @returns Transaction instruction
118
+ */
119
+ export function buildClaimFees(params) {
120
+ const { recipient, tokenMint, config } = params;
121
+ const program = getCachedFeesProgram(config);
122
+ const [feeConfig] = getFeeConfigPDA(tokenMint, config.liquidFeesProgramId);
123
+ return program.methods
124
+ .claimFees()
125
+ .accounts({
126
+ recipient,
127
+ feeConfig,
128
+ })
129
+ .instruction();
130
+ }
131
+ /**
132
+ * Builds a claimTokenFees instruction.
133
+ * Allows a recipient to claim accumulated token fees from their vault ATA.
134
+ * Closes the vault ATA after claiming to reclaim rent.
135
+ *
136
+ * @param params - {@link BuildClaimTokenFeesParams}
137
+ * @returns Transaction instruction
138
+ */
139
+ export function buildClaimTokenFees(params) {
140
+ const { recipient, tokenMint, quoteMint, config } = params;
141
+ const program = getCachedFeesProgram(config);
142
+ const [feeConfig] = getFeeConfigPDA(tokenMint, config.liquidFeesProgramId);
143
+ return program.methods
144
+ .claimTokenFees()
145
+ .accounts({
146
+ recipient,
147
+ feeConfig,
148
+ quoteMint,
149
+ })
150
+ .instruction();
151
+ }
152
+ /**
153
+ * Helper: derives recipient vault PDA pairs for use with buildDistributeTokenFees.
154
+ *
155
+ * @param tokenMint - Token mint address
156
+ * @param recipients - Array of recipient public keys in fee_config order
157
+ * @param quoteMint - Quote mint for ATA derivation
158
+ * @param config - Liquid protocol config
159
+ * @returns Array of RecipientVaultPair for remaining accounts
160
+ */
161
+ export function deriveRecipientVaultPairs(tokenMint, recipients, quoteMint, config) {
162
+ const [feeConfig] = getFeeConfigPDA(tokenMint, config.liquidFeesProgramId);
163
+ return recipients.map((recipient) => {
164
+ const [vaultPda] = getRecipientVaultPDA(feeConfig, recipient, config.liquidFeesProgramId);
165
+ const vaultAta = getAssociatedTokenAddressSync(quoteMint, vaultPda, true);
166
+ return { vaultPda, vaultAta };
167
+ });
168
+ }
169
+ //# sourceMappingURL=liquid-fees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liquid-fees.js","sourceRoot":"","sources":["../../src/instructions/liquid-fees.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAGlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EACN,eAAe,EACf,cAAc,EACd,oBAAoB,GACpB,MAAM,uBAAuB,CAAC;AAY/B;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CACnC,MAAkC;IAElC,MAAM,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,MAAM,GACN,GAAG,MAAM,CAAC;IACX,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7C,MAAM,mBAAmB,GACxB,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,WAAW,EAAE,CAAC,CAAC,WAAW;KAC1B,CAAC,CAAC,IAAI,IAAI,CAAC;IAEb,sFAAsF;IACtF,IAAI,aAAa,GAAqB,IAAI,CAAC;IAC3C,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAClC,SAAS,EACT,MAAM,CAAC,mBAAmB,CAC1B,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzE,aAAa,GAAG,6BAA6B,CAC5C,SAAS,EACT,QAAQ,EACR,IAAI,CACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,OAAO;SACpB,eAAe,CAAC;QAChB,UAAU,EAAE,mBAAmB;QAC/B,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;KAC9C,CAAC;SACD,QAAQ,CAAC;QACT,SAAS;QACT,SAAS;QACT,aAAa;KACb,CAAC;SACD,WAAW,EAAE,CAAC;AACjB,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CACnC,MAAkC;IAElC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC3D,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7C,8DAA8D;IAC9D,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3E,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,6BAA6B,CAClD,SAAS,EACT,QAAQ,EACR,IAAI,CACJ,CAAC;IAEF,OAAO,OAAO,CAAC,OAAO;SACpB,eAAe,EAAE;SACjB,QAAQ,CAAC;QACT,SAAS;QACT,SAAS;QACT,aAAa;KACb,CAAC;SACD,WAAW,EAAE,CAAC;AACjB,CAAC;AASD;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAClC,MAAiC;IAEjC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC7D,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7C,OAAO,OAAO,CAAC,OAAO;SACpB,cAAc,EAAE;SAChB,QAAQ,CAAC;QACT,KAAK;QACL,SAAS;KACT,CAAC;SACD,iBAAiB,CACjB,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE,IAAI;KAChB,CAAC,CAAC,CACH;SACA,WAAW,EAAE,CAAC;AACjB,CAAC;AAeD;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACvC,MAAsC;IAEtC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC5E,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7C,mFAAmF;IACnF,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/D,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;QAC7D,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;KAC5D,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,OAAO;SACpB,mBAAmB,EAAE;SACrB,eAAe,CAAC;QAChB,KAAK;QACL,SAAS;QACT,SAAS;KACT,CAAC;SACD,iBAAiB,CAAC,iBAAiB,CAAC;SACpC,WAAW,EAAE,CAAC;AACjB,CAAC;AAQD;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC7B,MAA4B;IAE5B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAChD,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAE3E,OAAO,OAAO,CAAC,OAAO;SACpB,SAAS,EAAE;SACX,QAAQ,CAAC;QACT,SAAS;QACT,SAAS;KACT,CAAC;SACD,WAAW,EAAE,CAAC;AACjB,CAAC;AASD;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAClC,MAAiC;IAEjC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC3D,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAE3E,OAAO,OAAO,CAAC,OAAO;SACpB,cAAc,EAAE;SAChB,QAAQ,CAAC;QACT,SAAS;QACT,SAAS;QACT,SAAS;KACT,CAAC;SACD,WAAW,EAAE,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CACxC,SAAoB,EACpB,UAAuB,EACvB,SAAoB,EACpB,MAAoB;IAEpB,MAAM,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3E,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACnC,MAAM,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CACtC,SAAS,EACT,SAAS,EACT,MAAM,CAAC,mBAAmB,CAC1B,CAAC;QACF,MAAM,QAAQ,GAAG,6BAA6B,CAC7C,SAAS,EACT,QAAQ,EACR,IAAI,CACJ,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,173 @@
1
+ import type { PublicKey, TransactionInstruction } from "@solana/web3.js";
2
+ import type { LiquidConfig } from "../config.js";
3
+ export interface BuildInitializeUserParams {
4
+ user: PublicKey;
5
+ config: LiquidConfig;
6
+ }
7
+ /**
8
+ * Builds an initializeUser instruction.
9
+ * Creates the user properties account in liquid-state.
10
+ *
11
+ * @param params - {@link BuildInitializeUserParams}
12
+ * @returns Transaction instruction
13
+ */
14
+ export declare function buildInitializeUser(params: BuildInitializeUserParams): Promise<TransactionInstruction>;
15
+ export interface BuildSetReferrerParams {
16
+ user: PublicKey;
17
+ referrer: PublicKey;
18
+ config: LiquidConfig;
19
+ }
20
+ /**
21
+ * Builds a setReferrer instruction.
22
+ * One-time operation — referrer cannot be changed once set.
23
+ *
24
+ * @param params - {@link BuildSetReferrerParams}
25
+ * @returns Transaction instruction
26
+ */
27
+ export declare function buildSetReferrer(params: BuildSetReferrerParams): Promise<TransactionInstruction>;
28
+ export interface BuildSetCashbackModeParams {
29
+ user: PublicKey;
30
+ config: LiquidConfig;
31
+ }
32
+ /**
33
+ * Builds a setCashbackMode instruction.
34
+ * Toggles user between earning mode (earn credits) and spending mode (spend credits).
35
+ *
36
+ * @param params - {@link BuildSetCashbackModeParams}
37
+ * @returns Transaction instruction
38
+ */
39
+ export declare function buildSetCashbackMode(params: BuildSetCashbackModeParams): Promise<TransactionInstruction>;
40
+ export interface BuildTransferAdminParams {
41
+ admin: PublicKey;
42
+ newAdmin: PublicKey;
43
+ config: LiquidConfig;
44
+ }
45
+ /**
46
+ * Builds a transferAdmin instruction.
47
+ * Proposes transfer of admin authority to a new pubkey (two-step).
48
+ * The new admin must call {@link buildAcceptAdmin} to complete the transfer.
49
+ *
50
+ * @param params - {@link BuildTransferAdminParams}
51
+ * @returns Transaction instruction
52
+ */
53
+ export declare function buildTransferAdmin(params: BuildTransferAdminParams): Promise<TransactionInstruction>;
54
+ export interface BuildAcceptAdminParams {
55
+ newAdmin: PublicKey;
56
+ config: LiquidConfig;
57
+ }
58
+ /**
59
+ * Builds an acceptAdmin instruction.
60
+ * Completes a pending admin transfer. Must be called by the pending admin.
61
+ *
62
+ * @param params - {@link BuildAcceptAdminParams}
63
+ * @returns Transaction instruction
64
+ */
65
+ export declare function buildAcceptAdmin(params: BuildAcceptAdminParams): Promise<TransactionInstruction>;
66
+ export interface BuildCancelAdminTransferParams {
67
+ authority: PublicKey;
68
+ config: LiquidConfig;
69
+ }
70
+ /**
71
+ * Builds a cancelAdminTransfer instruction.
72
+ * Cancels a pending admin transfer. Callable by either the current admin or the pending admin.
73
+ *
74
+ * @param params - {@link BuildCancelAdminTransferParams}
75
+ * @returns Transaction instruction
76
+ */
77
+ export declare function buildCancelAdminTransfer(params: BuildCancelAdminTransferParams): Promise<TransactionInstruction>;
78
+ export interface BuildCreateDealParams {
79
+ admin: PublicKey;
80
+ owner: PublicKey;
81
+ cashbackMultiplierBps: number;
82
+ payer: PublicKey;
83
+ config: LiquidConfig;
84
+ }
85
+ /**
86
+ * Builds a createDeal instruction.
87
+ * Admin creates an exclusive deal for a pubkey (typically a referrer/influencer).
88
+ *
89
+ * @param params - {@link BuildCreateDealParams}
90
+ * @returns Transaction instruction
91
+ */
92
+ export declare function buildCreateDeal(params: BuildCreateDealParams): Promise<TransactionInstruction>;
93
+ export interface BuildUpdateDealParams {
94
+ admin: PublicKey;
95
+ dealOwner: PublicKey;
96
+ newCashbackMultiplierBps: number;
97
+ config: LiquidConfig;
98
+ }
99
+ /**
100
+ * Builds an updateDeal instruction.
101
+ * Admin updates a deal's cashback multiplier.
102
+ *
103
+ * @param params - {@link BuildUpdateDealParams}
104
+ * @returns Transaction instruction
105
+ */
106
+ export declare function buildUpdateDeal(params: BuildUpdateDealParams): Promise<TransactionInstruction>;
107
+ export interface BuildCloseDealParams {
108
+ admin: PublicKey;
109
+ dealOwner: PublicKey;
110
+ config: LiquidConfig;
111
+ }
112
+ /**
113
+ * Builds a closeDeal instruction.
114
+ * Admin closes/deletes a deal, returning rent to admin.
115
+ *
116
+ * @param params - {@link BuildCloseDealParams}
117
+ * @returns Transaction instruction
118
+ */
119
+ export declare function buildCloseDeal(params: BuildCloseDealParams): Promise<TransactionInstruction>;
120
+ export interface BuildRedeemDealParams {
121
+ user: PublicKey;
122
+ dealOwner: PublicKey;
123
+ config: LiquidConfig;
124
+ }
125
+ /**
126
+ * Builds a redeemDeal instruction.
127
+ * User redeems their referrer's deal, copying the multiplier.
128
+ *
129
+ * @param params - {@link BuildRedeemDealParams}
130
+ * @returns Transaction instruction
131
+ */
132
+ export declare function buildRedeemDeal(params: BuildRedeemDealParams): Promise<TransactionInstruction>;
133
+ export interface BuildTakeSnapshotParams {
134
+ admin: PublicKey;
135
+ user: PublicKey;
136
+ payer: PublicKey;
137
+ snapshotIndex: number;
138
+ config: LiquidConfig;
139
+ }
140
+ /**
141
+ * Builds a takeSnapshot instruction.
142
+ * Admin takes a snapshot of a user's volume since last snapshot.
143
+ *
144
+ * The caller must provide the current `snapshotIndex` (from `user_properties.snapshot_count`)
145
+ * because the snapshot PDA seed depends on this value and cannot be resolved without a
146
+ * network fetch.
147
+ *
148
+ * @param params - {@link BuildTakeSnapshotParams}
149
+ * @returns Transaction instruction
150
+ */
151
+ export declare function buildTakeSnapshot(params: BuildTakeSnapshotParams): Promise<TransactionInstruction>;
152
+ export interface BuildAdminUpdateUserParams {
153
+ admin: PublicKey;
154
+ user: PublicKey;
155
+ payer: PublicKey;
156
+ newReferrer: PublicKey | null;
157
+ newCashbackMultiplierBps: number | null;
158
+ snapshotIndex: number;
159
+ config: LiquidConfig;
160
+ }
161
+ /**
162
+ * Builds an adminUpdateUser instruction.
163
+ * Admin updates a user's referrer/multiplier and always takes a snapshot.
164
+ *
165
+ * The caller must provide the current `snapshotIndex` (from `user_properties.snapshot_count`)
166
+ * because the snapshot PDA seed depends on this value and cannot be resolved without a
167
+ * network fetch.
168
+ *
169
+ * @param params - {@link BuildAdminUpdateUserParams}
170
+ * @returns Transaction instruction
171
+ */
172
+ export declare function buildAdminUpdateUser(params: BuildAdminUpdateUserParams): Promise<TransactionInstruction>;
173
+ //# sourceMappingURL=liquid-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liquid-state.d.ts","sourceRoot":"","sources":["../../src/instructions/liquid-state.ts"],"names":[],"mappings":"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"}