@byreal-io/byreal-clmm-sdk 0.2.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 (181) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +341 -0
  3. package/dist/esm/client/chain.d.ts +227 -0
  4. package/dist/esm/client/chain.d.ts.map +1 -0
  5. package/dist/esm/client/chain.js +1123 -0
  6. package/dist/esm/client/chain.js.map +1 -0
  7. package/dist/esm/client/index.d.ts +4 -0
  8. package/dist/esm/client/index.d.ts.map +1 -0
  9. package/dist/esm/client/index.js +4 -0
  10. package/dist/esm/client/index.js.map +1 -0
  11. package/dist/esm/client/models.d.ts +160 -0
  12. package/dist/esm/client/models.d.ts.map +1 -0
  13. package/dist/esm/client/models.js +2 -0
  14. package/dist/esm/client/models.js.map +1 -0
  15. package/dist/esm/client/utils.d.ts +103 -0
  16. package/dist/esm/client/utils.d.ts.map +1 -0
  17. package/dist/esm/client/utils.js +238 -0
  18. package/dist/esm/client/utils.js.map +1 -0
  19. package/dist/esm/constants.d.ts +19 -0
  20. package/dist/esm/constants.d.ts.map +1 -0
  21. package/dist/esm/constants.js +27 -0
  22. package/dist/esm/constants.js.map +1 -0
  23. package/dist/esm/index.d.ts +5 -0
  24. package/dist/esm/index.d.ts.map +1 -0
  25. package/dist/esm/index.js +5 -0
  26. package/dist/esm/index.js.map +1 -0
  27. package/dist/esm/instructions/baseInstruction.d.ts +74 -0
  28. package/dist/esm/instructions/baseInstruction.d.ts.map +1 -0
  29. package/dist/esm/instructions/baseInstruction.js +577 -0
  30. package/dist/esm/instructions/baseInstruction.js.map +1 -0
  31. package/dist/esm/instructions/constants.d.ts +29 -0
  32. package/dist/esm/instructions/constants.d.ts.map +1 -0
  33. package/dist/esm/instructions/constants.js +32 -0
  34. package/dist/esm/instructions/constants.js.map +1 -0
  35. package/dist/esm/instructions/getRawData.d.ts +60 -0
  36. package/dist/esm/instructions/getRawData.d.ts.map +1 -0
  37. package/dist/esm/instructions/getRawData.js +105 -0
  38. package/dist/esm/instructions/getRawData.js.map +1 -0
  39. package/dist/esm/instructions/index.d.ts +9 -0
  40. package/dist/esm/instructions/index.d.ts.map +1 -0
  41. package/dist/esm/instructions/index.js +9 -0
  42. package/dist/esm/instructions/index.js.map +1 -0
  43. package/dist/esm/instructions/instruction.d.ts +137 -0
  44. package/dist/esm/instructions/instruction.d.ts.map +1 -0
  45. package/dist/esm/instructions/instruction.js +152 -0
  46. package/dist/esm/instructions/instruction.js.map +1 -0
  47. package/dist/esm/instructions/layout.d.ts +217 -0
  48. package/dist/esm/instructions/layout.d.ts.map +1 -0
  49. package/dist/esm/instructions/layout.js +203 -0
  50. package/dist/esm/instructions/layout.js.map +1 -0
  51. package/dist/esm/instructions/libs/marshmallow/bufferLayout.d.ts +107 -0
  52. package/dist/esm/instructions/libs/marshmallow/bufferLayout.d.ts.map +1 -0
  53. package/dist/esm/instructions/libs/marshmallow/bufferLayout.js +49 -0
  54. package/dist/esm/instructions/libs/marshmallow/bufferLayout.js.map +1 -0
  55. package/dist/esm/instructions/libs/marshmallow/index.d.ts +88 -0
  56. package/dist/esm/instructions/libs/marshmallow/index.d.ts.map +1 -0
  57. package/dist/esm/instructions/libs/marshmallow/index.js +256 -0
  58. package/dist/esm/instructions/libs/marshmallow/index.js.map +1 -0
  59. package/dist/esm/instructions/models.d.ts +39 -0
  60. package/dist/esm/instructions/models.d.ts.map +1 -0
  61. package/dist/esm/instructions/models.js +14 -0
  62. package/dist/esm/instructions/models.js.map +1 -0
  63. package/dist/esm/instructions/pda.d.ts +52 -0
  64. package/dist/esm/instructions/pda.d.ts.map +1 -0
  65. package/dist/esm/instructions/pda.js +47 -0
  66. package/dist/esm/instructions/pda.js.map +1 -0
  67. package/dist/esm/instructions/target/idl/byreal_amm_v3.json +7242 -0
  68. package/dist/esm/instructions/target/idl/byreal_amm_v3_test.json +7680 -0
  69. package/dist/esm/instructions/target/types/byreal_amm_v3.d.ts +5329 -0
  70. package/dist/esm/instructions/target/types/byreal_amm_v3.d.ts.map +1 -0
  71. package/dist/esm/instructions/target/types/byreal_amm_v3.js +2 -0
  72. package/dist/esm/instructions/target/types/byreal_amm_v3.js.map +1 -0
  73. package/dist/esm/instructions/target/types/raydium_amm_v3.d.ts +4149 -0
  74. package/dist/esm/instructions/target/types/raydium_amm_v3.d.ts.map +1 -0
  75. package/dist/esm/instructions/target/types/raydium_amm_v3.js +2 -0
  76. package/dist/esm/instructions/target/types/raydium_amm_v3.js.map +1 -0
  77. package/dist/esm/instructions/utils/binaryUtils.d.ts +11 -0
  78. package/dist/esm/instructions/utils/binaryUtils.d.ts.map +1 -0
  79. package/dist/esm/instructions/utils/binaryUtils.js +77 -0
  80. package/dist/esm/instructions/utils/binaryUtils.js.map +1 -0
  81. package/dist/esm/instructions/utils/fetchWalletTokenAccounts.d.ts +42 -0
  82. package/dist/esm/instructions/utils/fetchWalletTokenAccounts.d.ts.map +1 -0
  83. package/dist/esm/instructions/utils/fetchWalletTokenAccounts.js +63 -0
  84. package/dist/esm/instructions/utils/fetchWalletTokenAccounts.js.map +1 -0
  85. package/dist/esm/instructions/utils/getTickArrayBitmapExtension.d.ts +8 -0
  86. package/dist/esm/instructions/utils/getTickArrayBitmapExtension.d.ts.map +1 -0
  87. package/dist/esm/instructions/utils/getTickArrayBitmapExtension.js +22 -0
  88. package/dist/esm/instructions/utils/getTickArrayBitmapExtension.js.map +1 -0
  89. package/dist/esm/instructions/utils/getTickArrayInfo.d.ts +16 -0
  90. package/dist/esm/instructions/utils/getTickArrayInfo.d.ts.map +1 -0
  91. package/dist/esm/instructions/utils/getTickArrayInfo.js +75 -0
  92. package/dist/esm/instructions/utils/getTickArrayInfo.js.map +1 -0
  93. package/dist/esm/instructions/utils/index.d.ts +21 -0
  94. package/dist/esm/instructions/utils/index.d.ts.map +1 -0
  95. package/dist/esm/instructions/utils/index.js +21 -0
  96. package/dist/esm/instructions/utils/index.js.map +1 -0
  97. package/dist/esm/instructions/utils/liquidityMath.d.ts +30 -0
  98. package/dist/esm/instructions/utils/liquidityMath.d.ts.map +1 -0
  99. package/dist/esm/instructions/utils/liquidityMath.js +138 -0
  100. package/dist/esm/instructions/utils/liquidityMath.js.map +1 -0
  101. package/dist/esm/instructions/utils/mathUtils.d.ts +11 -0
  102. package/dist/esm/instructions/utils/mathUtils.d.ts.map +1 -0
  103. package/dist/esm/instructions/utils/mathUtils.js +36 -0
  104. package/dist/esm/instructions/utils/mathUtils.js.map +1 -0
  105. package/dist/esm/instructions/utils/models.d.ts +93 -0
  106. package/dist/esm/instructions/utils/models.d.ts.map +1 -0
  107. package/dist/esm/instructions/utils/models.js +13 -0
  108. package/dist/esm/instructions/utils/models.js.map +1 -0
  109. package/dist/esm/instructions/utils/poolStateUtils.d.ts +134 -0
  110. package/dist/esm/instructions/utils/poolStateUtils.d.ts.map +1 -0
  111. package/dist/esm/instructions/utils/poolStateUtils.js +137 -0
  112. package/dist/esm/instructions/utils/poolStateUtils.js.map +1 -0
  113. package/dist/esm/instructions/utils/poolUtils.d.ts +136 -0
  114. package/dist/esm/instructions/utils/poolUtils.d.ts.map +1 -0
  115. package/dist/esm/instructions/utils/poolUtils.js +219 -0
  116. package/dist/esm/instructions/utils/poolUtils.js.map +1 -0
  117. package/dist/esm/instructions/utils/position.d.ts +36 -0
  118. package/dist/esm/instructions/utils/position.d.ts.map +1 -0
  119. package/dist/esm/instructions/utils/position.js +86 -0
  120. package/dist/esm/instructions/utils/position.js.map +1 -0
  121. package/dist/esm/instructions/utils/sqrtPriceMath.d.ts +14 -0
  122. package/dist/esm/instructions/utils/sqrtPriceMath.d.ts.map +1 -0
  123. package/dist/esm/instructions/utils/sqrtPriceMath.js +168 -0
  124. package/dist/esm/instructions/utils/sqrtPriceMath.js.map +1 -0
  125. package/dist/esm/instructions/utils/swapMath.d.ts +48 -0
  126. package/dist/esm/instructions/utils/swapMath.d.ts.map +1 -0
  127. package/dist/esm/instructions/utils/swapMath.js +263 -0
  128. package/dist/esm/instructions/utils/swapMath.js.map +1 -0
  129. package/dist/esm/instructions/utils/tick.d.ts +106 -0
  130. package/dist/esm/instructions/utils/tick.d.ts.map +1 -0
  131. package/dist/esm/instructions/utils/tick.js +390 -0
  132. package/dist/esm/instructions/utils/tick.js.map +1 -0
  133. package/dist/esm/instructions/utils/tickArrayUtils.d.ts +50 -0
  134. package/dist/esm/instructions/utils/tickArrayUtils.d.ts.map +1 -0
  135. package/dist/esm/instructions/utils/tickArrayUtils.js +157 -0
  136. package/dist/esm/instructions/utils/tickArrayUtils.js.map +1 -0
  137. package/dist/esm/instructions/utils/tickMath.d.ts +18 -0
  138. package/dist/esm/instructions/utils/tickMath.d.ts.map +1 -0
  139. package/dist/esm/instructions/utils/tickMath.js +34 -0
  140. package/dist/esm/instructions/utils/tickMath.js.map +1 -0
  141. package/dist/esm/instructions/utils/tickarrayBitmap.d.ts +38 -0
  142. package/dist/esm/instructions/utils/tickarrayBitmap.d.ts.map +1 -0
  143. package/dist/esm/instructions/utils/tickarrayBitmap.js +157 -0
  144. package/dist/esm/instructions/utils/tickarrayBitmap.js.map +1 -0
  145. package/dist/esm/instructions/utils/transfer.d.ts +7 -0
  146. package/dist/esm/instructions/utils/transfer.d.ts.map +1 -0
  147. package/dist/esm/instructions/utils/transfer.js +78 -0
  148. package/dist/esm/instructions/utils/transfer.js.map +1 -0
  149. package/dist/esm/utils/accountInfo.d.ts +27 -0
  150. package/dist/esm/utils/accountInfo.d.ts.map +1 -0
  151. package/dist/esm/utils/accountInfo.js +80 -0
  152. package/dist/esm/utils/accountInfo.js.map +1 -0
  153. package/dist/esm/utils/checkV0TxSize.d.ts +8 -0
  154. package/dist/esm/utils/checkV0TxSize.d.ts.map +1 -0
  155. package/dist/esm/utils/checkV0TxSize.js +18 -0
  156. package/dist/esm/utils/checkV0TxSize.js.map +1 -0
  157. package/dist/esm/utils/estimateComputeUnits.d.ts +11 -0
  158. package/dist/esm/utils/estimateComputeUnits.d.ts.map +1 -0
  159. package/dist/esm/utils/estimateComputeUnits.js +48 -0
  160. package/dist/esm/utils/estimateComputeUnits.js.map +1 -0
  161. package/dist/esm/utils/generatePubKey.d.ts +10 -0
  162. package/dist/esm/utils/generatePubKey.d.ts.map +1 -0
  163. package/dist/esm/utils/generatePubKey.js +14 -0
  164. package/dist/esm/utils/generatePubKey.js.map +1 -0
  165. package/dist/esm/utils/index.d.ts +9 -0
  166. package/dist/esm/utils/index.d.ts.map +1 -0
  167. package/dist/esm/utils/index.js +11 -0
  168. package/dist/esm/utils/index.js.map +1 -0
  169. package/dist/esm/utils/token.d.ts +9 -0
  170. package/dist/esm/utils/token.d.ts.map +1 -0
  171. package/dist/esm/utils/token.js +16 -0
  172. package/dist/esm/utils/token.js.map +1 -0
  173. package/dist/esm/utils/transactionUtils.d.ts +84 -0
  174. package/dist/esm/utils/transactionUtils.d.ts.map +1 -0
  175. package/dist/esm/utils/transactionUtils.js +138 -0
  176. package/dist/esm/utils/transactionUtils.js.map +1 -0
  177. package/dist/esm/utils/validateAndParsePublicKey.d.ts +15 -0
  178. package/dist/esm/utils/validateAndParsePublicKey.d.ts.map +1 -0
  179. package/dist/esm/utils/validateAndParsePublicKey.js +42 -0
  180. package/dist/esm/utils/validateAndParsePublicKey.js.map +1 -0
  181. package/package.json +66 -0
@@ -0,0 +1,217 @@
1
+ /**
2
+ * @description Pool configuration layout
3
+ *
4
+ * @example https://solscan.io/account/EdPxg8QaeFSrTYqdWJn6Kezwy9McWncTYueD9eMGCuzR#anchorData
5
+ */
6
+ export declare const AmmConfigLayout: import("./libs/marshmallow/index.js").Structure<number | import("@solana/web3.js").PublicKey | Buffer<ArrayBufferLike>, "", {
7
+ bump: number;
8
+ index: number;
9
+ owner: import("@solana/web3.js").PublicKey;
10
+ protocolFeeRate: number;
11
+ tradeFeeRate: number;
12
+ tickSpacing: number;
13
+ fundFeeRate: number;
14
+ padding: number;
15
+ fundOwner: import("@solana/web3.js").PublicKey;
16
+ }>;
17
+ export type IAmmConfigLayout = ReturnType<typeof AmmConfigLayout.decode>;
18
+ /**
19
+ * @description Observation account layout
20
+ *
21
+ * @example https://solscan.io/account/AA5RaVvyGyZgtmAsJJHT5ZVBxVPtAXuYaMwfgeFJW4Mk#anchorData
22
+ */
23
+ export declare const ObservationLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
24
+ initialized: boolean;
25
+ recentEpoch: BN;
26
+ observationIndex: number;
27
+ poolId: import("@solana/web3.js").PublicKey;
28
+ observations: {
29
+ blockTimestamp: number;
30
+ tickCumulative: BN;
31
+ }[];
32
+ }>;
33
+ export type IObservationLayout = ReturnType<typeof ObservationLayout.decode>;
34
+ /**
35
+ * @description Pool information layout
36
+ *
37
+ * @example https://solscan.io/account/CYbD9RaToYMtWKA7QZyoLahnHdWq553Vm62Lh6qWtuxq#anchorData
38
+ */
39
+ export declare const PoolLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
40
+ bump: number;
41
+ tickSpacing: number;
42
+ recentEpoch: BN;
43
+ ammConfig: import("@solana/web3.js").PublicKey;
44
+ creator: import("@solana/web3.js").PublicKey;
45
+ mintA: import("@solana/web3.js").PublicKey;
46
+ mintB: import("@solana/web3.js").PublicKey;
47
+ vaultA: import("@solana/web3.js").PublicKey;
48
+ vaultB: import("@solana/web3.js").PublicKey;
49
+ observationId: import("@solana/web3.js").PublicKey;
50
+ mintDecimalsA: number;
51
+ mintDecimalsB: number;
52
+ liquidity: BN;
53
+ sqrtPriceX64: BN;
54
+ tickCurrent: number;
55
+ feeGrowthGlobalX64A: BN;
56
+ feeGrowthGlobalX64B: BN;
57
+ protocolFeesTokenA: BN;
58
+ protocolFeesTokenB: BN;
59
+ swapInAmountTokenA: BN;
60
+ swapOutAmountTokenB: BN;
61
+ swapInAmountTokenB: BN;
62
+ swapOutAmountTokenA: BN;
63
+ status: number;
64
+ openTime: BN;
65
+ rewardInfos: {
66
+ creator: import("@solana/web3.js").PublicKey;
67
+ rewardState: number;
68
+ openTime: BN;
69
+ endTime: BN;
70
+ lastUpdateTime: BN;
71
+ emissionsPerSecondX64: BN;
72
+ rewardTotalEmissioned: BN;
73
+ rewardClaimed: BN;
74
+ tokenMint: import("@solana/web3.js").PublicKey;
75
+ tokenVault: import("@solana/web3.js").PublicKey;
76
+ rewardGrowthGlobalX64: BN;
77
+ }[];
78
+ tickArrayBitmap: BN[];
79
+ totalFeesTokenA: BN;
80
+ totalFeesClaimedTokenA: BN;
81
+ totalFeesTokenB: BN;
82
+ totalFeesClaimedTokenB: BN;
83
+ fundFeesTokenA: BN;
84
+ fundFeesTokenB: BN;
85
+ decayFeeFlag: number;
86
+ decayFeeInitFeeRate: number;
87
+ decayFeeDecreaseRate: number;
88
+ decayFeeDecreaseInterval: number;
89
+ padding1_1: number[];
90
+ padding1: BN[];
91
+ padding2: BN[];
92
+ }>;
93
+ export type IPoolLayout = ReturnType<typeof PoolLayout.decode>;
94
+ /**
95
+ * @description Personal position information layout
96
+ *
97
+ * @example https://solscan.io/account/CLYRosA3oGsx6WjuebDYmEL3kukTCSsncmYU6at8nDsn#anchorData
98
+ */
99
+ export declare const PersonalPositionLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
100
+ bump: number;
101
+ poolId: import("@solana/web3.js").PublicKey;
102
+ liquidity: BN;
103
+ rewardInfos: {
104
+ growthInsideLastX64: BN;
105
+ rewardAmountOwed: BN;
106
+ }[];
107
+ nftMint: import("@solana/web3.js").PublicKey;
108
+ tickLower: number;
109
+ tickUpper: number;
110
+ feeGrowthInsideLastX64A: BN;
111
+ feeGrowthInsideLastX64B: BN;
112
+ tokenFeesOwedA: BN;
113
+ tokenFeesOwedB: BN;
114
+ }>;
115
+ export type IPersonalPositionLayout = ReturnType<typeof PersonalPositionLayout.decode>;
116
+ /**
117
+ * @description Protocol position information layout, used to track liquidity within specific price ranges
118
+ *
119
+ * @example https://solscan.io/account/38GUhmh7vPyWStAV3YKEEYPHrLk2Mnw5jvaUQkMGS1hb#anchorData
120
+ */
121
+ export declare const ProtocolPositionLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
122
+ bump: number;
123
+ poolId: import("@solana/web3.js").PublicKey;
124
+ liquidity: BN;
125
+ feeGrowthInsideLastX64A: BN;
126
+ feeGrowthInsideLastX64B: BN;
127
+ tokenFeesOwedA: BN;
128
+ tokenFeesOwedB: BN;
129
+ tickLowerIndex: number;
130
+ tickUpperIndex: number;
131
+ rewardGrowthInside: BN[];
132
+ }>;
133
+ /**
134
+ * @description Price tick array layout
135
+ *
136
+ * @example https://solscan.io/account/4vGLPwfohNUd2o4NwZPMx7q8AH98DQ9Eth5tS1p8dew1#anchorData
137
+ */
138
+ /**
139
+ * @description TickState layout (168 bytes)
140
+ */
141
+ export declare const TickStateLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
142
+ tick: number;
143
+ liquidityNet: BN;
144
+ liquidityGross: BN;
145
+ feeGrowthOutsideX64A: BN;
146
+ feeGrowthOutsideX64B: BN;
147
+ rewardGrowthsOutsideX64: BN[];
148
+ }>;
149
+ export type ITickStateLayout = ReturnType<typeof TickStateLayout.decode>;
150
+ export declare const TickArrayLayout: import("./libs/marshmallow/index.js").Structure<number | import("@solana/web3.js").PublicKey | Buffer<ArrayBufferLike> | {
151
+ tick: number;
152
+ liquidityNet: BN;
153
+ liquidityGross: BN;
154
+ feeGrowthOutsideX64A: BN;
155
+ feeGrowthOutsideX64B: BN;
156
+ rewardGrowthsOutsideX64: BN[];
157
+ }[], "", {
158
+ poolId: import("@solana/web3.js").PublicKey;
159
+ startTickIndex: number;
160
+ ticks: {
161
+ tick: number;
162
+ liquidityNet: BN;
163
+ liquidityGross: BN;
164
+ feeGrowthOutsideX64A: BN;
165
+ feeGrowthOutsideX64B: BN;
166
+ rewardGrowthsOutsideX64: BN[];
167
+ }[];
168
+ initializedTickCount: number;
169
+ }>;
170
+ export type ITickArrayLayout = ReturnType<typeof TickArrayLayout.decode>;
171
+ /**
172
+ * @description Dynamic Tick Array layout
173
+ *
174
+ * Dynamic tick arrays use a sparse storage model with a mapping table (tick_offset_index)
175
+ * to track which logical tick positions have allocated TickStates.
176
+ * This allows for more efficient memory usage compared to fixed tick arrays.
177
+ *
178
+ * Struct size: 208 bytes (32+4+4+60+1+1+2+8+96)
179
+ * Header size: 216 bytes (8 discriminator + 208 struct)
180
+ * Followed by dynamic number of TickStates (max 60, each 168 bytes)
181
+ */
182
+ export declare const DynTickArrayLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
183
+ recentEpoch: BN;
184
+ poolId: import("@solana/web3.js").PublicKey;
185
+ padding1: Buffer<ArrayBufferLike>;
186
+ padding2: Buffer<ArrayBufferLike>;
187
+ startTickIndex: number;
188
+ initializedTickCount: number;
189
+ padding0: Buffer<ArrayBufferLike>;
190
+ tickOffsetIndex: number[];
191
+ allocTickCount: number;
192
+ }>;
193
+ export type IDynTickArrayLayout = ReturnType<typeof DynTickArrayLayout.decode>;
194
+ /**
195
+ * @description Price tick array bitmap extension layout
196
+ *
197
+ * @example https://solscan.io/account/DoPuiZfJu7sypqwR4eiU7C5TMcmmiFoU4HaF5SoD8mRy#anchorData
198
+ */
199
+ export declare const TickArrayBitmapExtensionLayout: import("./libs/marshmallow/index.js").Structure<import("@solana/web3.js").PublicKey | Buffer<ArrayBufferLike> | BN[][], "", {
200
+ poolId: import("@solana/web3.js").PublicKey;
201
+ positiveTickArrayBitmap: BN[][];
202
+ negativeTickArrayBitmap: BN[][];
203
+ }>;
204
+ export declare const SPLTokenAccountLayout: import("./libs/marshmallow/index.js").Structure<any, "", {
205
+ owner: import("@solana/web3.js").PublicKey;
206
+ mint: import("@solana/web3.js").PublicKey;
207
+ amount: BN;
208
+ delegateOption: number;
209
+ delegate: import("@solana/web3.js").PublicKey;
210
+ state: number;
211
+ isNativeOption: number;
212
+ isNative: BN;
213
+ delegatedAmount: BN;
214
+ closeAuthorityOption: number;
215
+ closeAuthority: import("@solana/web3.js").PublicKey;
216
+ }>;
217
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/instructions/layout.ts"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;EAW1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;AAEzE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;EAO5B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAE7E;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoErB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;EAejC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAEvF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;EAYjC,CAAC;AAEH;;;;GAIG;AACH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;EAQ1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;AAEzE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;EAM1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;AAEzE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;EAW7B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;;EAKzC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAYhC,CAAC"}
@@ -0,0 +1,203 @@
1
+ import { TICK_ARRAY_SIZE, EXTENSION_TICKARRAY_BITMAP_SIZE } from '../constants.js';
2
+ import { blob, bool, i128, i64, publicKey, s32, seq, struct, u128, u16, u32, u64, u8, } from './libs/marshmallow/index.js';
3
+ /**
4
+ * @description Pool configuration layout
5
+ *
6
+ * @example https://solscan.io/account/EdPxg8QaeFSrTYqdWJn6Kezwy9McWncTYueD9eMGCuzR#anchorData
7
+ */
8
+ export const AmmConfigLayout = struct([
9
+ blob(8),
10
+ u8('bump'),
11
+ u16('index'),
12
+ publicKey('owner'),
13
+ u32('protocolFeeRate'),
14
+ u32('tradeFeeRate'),
15
+ u16('tickSpacing'),
16
+ u32('fundFeeRate'),
17
+ u32('padding'),
18
+ publicKey('fundOwner'),
19
+ ]);
20
+ /**
21
+ * @description Observation account layout
22
+ *
23
+ * @example https://solscan.io/account/AA5RaVvyGyZgtmAsJJHT5ZVBxVPtAXuYaMwfgeFJW4Mk#anchorData
24
+ */
25
+ export const ObservationLayout = struct([
26
+ blob(8),
27
+ bool('initialized'),
28
+ u64('recentEpoch'),
29
+ u16('observationIndex'),
30
+ publicKey('poolId'),
31
+ seq(struct([u32('blockTimestamp'), i64('tickCumulative'), seq(u64(), 4)]), 100, 'observations'),
32
+ ]);
33
+ /**
34
+ * @description Pool information layout
35
+ *
36
+ * @example https://solscan.io/account/CYbD9RaToYMtWKA7QZyoLahnHdWq553Vm62Lh6qWtuxq#anchorData
37
+ */
38
+ export const PoolLayout = struct([
39
+ blob(8),
40
+ u8('bump'),
41
+ publicKey('ammConfig'),
42
+ publicKey('creator'),
43
+ publicKey('mintA'),
44
+ publicKey('mintB'),
45
+ publicKey('vaultA'),
46
+ publicKey('vaultB'),
47
+ publicKey('observationId'),
48
+ u8('mintDecimalsA'),
49
+ u8('mintDecimalsB'),
50
+ u16('tickSpacing'),
51
+ u128('liquidity'),
52
+ u128('sqrtPriceX64'),
53
+ s32('tickCurrent'),
54
+ u32(),
55
+ u128('feeGrowthGlobalX64A'),
56
+ u128('feeGrowthGlobalX64B'),
57
+ u64('protocolFeesTokenA'),
58
+ u64('protocolFeesTokenB'),
59
+ u128('swapInAmountTokenA'),
60
+ u128('swapOutAmountTokenB'),
61
+ u128('swapInAmountTokenB'),
62
+ u128('swapOutAmountTokenA'),
63
+ u8('status'),
64
+ seq(u8(), 7, ''),
65
+ seq(struct([
66
+ u8('rewardState'),
67
+ u64('openTime'),
68
+ u64('endTime'),
69
+ u64('lastUpdateTime'),
70
+ u128('emissionsPerSecondX64'),
71
+ u64('rewardTotalEmissioned'),
72
+ u64('rewardClaimed'),
73
+ publicKey('tokenMint'),
74
+ publicKey('tokenVault'),
75
+ publicKey('creator'),
76
+ u128('rewardGrowthGlobalX64'),
77
+ ]), 3, 'rewardInfos'),
78
+ seq(u64(), 16, 'tickArrayBitmap'),
79
+ u64('totalFeesTokenA'),
80
+ u64('totalFeesClaimedTokenA'),
81
+ u64('totalFeesTokenB'),
82
+ u64('totalFeesClaimedTokenB'),
83
+ u64('fundFeesTokenA'),
84
+ u64('fundFeesTokenB'),
85
+ u64('openTime'),
86
+ u64('recentEpoch'),
87
+ u8('decayFeeFlag'),
88
+ u8('decayFeeInitFeeRate'),
89
+ u8('decayFeeDecreaseRate'),
90
+ u8('decayFeeDecreaseInterval'),
91
+ seq(u8(), 4, 'padding1_1'),
92
+ seq(u64(), 23, 'padding1'),
93
+ seq(u64(), 32, 'padding2'),
94
+ ]);
95
+ /**
96
+ * @description Personal position information layout
97
+ *
98
+ * @example https://solscan.io/account/CLYRosA3oGsx6WjuebDYmEL3kukTCSsncmYU6at8nDsn#anchorData
99
+ */
100
+ export const PersonalPositionLayout = struct([
101
+ blob(8),
102
+ u8('bump'),
103
+ publicKey('nftMint'),
104
+ publicKey('poolId'),
105
+ s32('tickLower'),
106
+ s32('tickUpper'),
107
+ u128('liquidity'),
108
+ u128('feeGrowthInsideLastX64A'),
109
+ u128('feeGrowthInsideLastX64B'),
110
+ u64('tokenFeesOwedA'),
111
+ u64('tokenFeesOwedB'),
112
+ seq(struct([u128('growthInsideLastX64'), u64('rewardAmountOwed')]), 3, 'rewardInfos'),
113
+ ]);
114
+ /**
115
+ * @description Protocol position information layout, used to track liquidity within specific price ranges
116
+ *
117
+ * @example https://solscan.io/account/38GUhmh7vPyWStAV3YKEEYPHrLk2Mnw5jvaUQkMGS1hb#anchorData
118
+ */
119
+ export const ProtocolPositionLayout = struct([
120
+ blob(8),
121
+ u8('bump'),
122
+ publicKey('poolId'),
123
+ s32('tickLowerIndex'),
124
+ s32('tickUpperIndex'),
125
+ u128('liquidity'),
126
+ u128('feeGrowthInsideLastX64A'),
127
+ u128('feeGrowthInsideLastX64B'),
128
+ u64('tokenFeesOwedA'),
129
+ u64('tokenFeesOwedB'),
130
+ seq(u128(), 3, 'rewardGrowthInside'),
131
+ ]);
132
+ /**
133
+ * @description Price tick array layout
134
+ *
135
+ * @example https://solscan.io/account/4vGLPwfohNUd2o4NwZPMx7q8AH98DQ9Eth5tS1p8dew1#anchorData
136
+ */
137
+ /**
138
+ * @description TickState layout (168 bytes)
139
+ */
140
+ export const TickStateLayout = struct([
141
+ s32('tick'),
142
+ i128('liquidityNet'),
143
+ u128('liquidityGross'),
144
+ u128('feeGrowthOutsideX64A'),
145
+ u128('feeGrowthOutsideX64B'),
146
+ seq(u128(), 3, 'rewardGrowthsOutsideX64'),
147
+ seq(u32(), 13, ''),
148
+ ]);
149
+ export const TickArrayLayout = struct([
150
+ blob(8),
151
+ publicKey('poolId'),
152
+ s32('startTickIndex'),
153
+ seq(TickStateLayout, TICK_ARRAY_SIZE, 'ticks'),
154
+ u8('initializedTickCount'),
155
+ ]);
156
+ /**
157
+ * @description Dynamic Tick Array layout
158
+ *
159
+ * Dynamic tick arrays use a sparse storage model with a mapping table (tick_offset_index)
160
+ * to track which logical tick positions have allocated TickStates.
161
+ * This allows for more efficient memory usage compared to fixed tick arrays.
162
+ *
163
+ * Struct size: 208 bytes (32+4+4+60+1+1+2+8+96)
164
+ * Header size: 216 bytes (8 discriminator + 208 struct)
165
+ * Followed by dynamic number of TickStates (max 60, each 168 bytes)
166
+ */
167
+ export const DynTickArrayLayout = struct([
168
+ blob(8), // discriminator (8 bytes)
169
+ publicKey('poolId'), // 32 bytes
170
+ s32('startTickIndex'), // 4 bytes
171
+ blob(4, 'padding0'), // 4 bytes
172
+ seq(u8(), TICK_ARRAY_SIZE, 'tickOffsetIndex'), // 60 bytes - Mapping table: offset -> physical position + 1
173
+ u8('allocTickCount'), // 1 byte - Number of allocated ticks
174
+ u8('initializedTickCount'), // 1 byte - Number of initialized ticks
175
+ blob(2, 'padding1'), // 2 bytes
176
+ u64('recentEpoch'), // 8 bytes
177
+ blob(96, 'padding2'), // 96 bytes
178
+ ]);
179
+ /**
180
+ * @description Price tick array bitmap extension layout
181
+ *
182
+ * @example https://solscan.io/account/DoPuiZfJu7sypqwR4eiU7C5TMcmmiFoU4HaF5SoD8mRy#anchorData
183
+ */
184
+ export const TickArrayBitmapExtensionLayout = struct([
185
+ blob(8),
186
+ publicKey('poolId'),
187
+ seq(seq(u64(), 8), EXTENSION_TICKARRAY_BITMAP_SIZE, 'positiveTickArrayBitmap'),
188
+ seq(seq(u64(), 8), EXTENSION_TICKARRAY_BITMAP_SIZE, 'negativeTickArrayBitmap'),
189
+ ]);
190
+ export const SPLTokenAccountLayout = struct([
191
+ publicKey('mint'),
192
+ publicKey('owner'),
193
+ u64('amount'),
194
+ u32('delegateOption'),
195
+ publicKey('delegate'),
196
+ u8('state'),
197
+ u32('isNativeOption'),
198
+ u64('isNative'),
199
+ u64('delegatedAmount'),
200
+ u32('closeAuthorityOption'),
201
+ publicKey('closeAuthority'),
202
+ ]);
203
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/instructions/layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ export interface Layout<T = any, P = ''> {
2
+ span: number;
3
+ property?: P;
4
+ decode(b: Buffer, offset?: number): T;
5
+ encode(src: T, b: Buffer, offset?: number): number;
6
+ getSpan(b: Buffer, offset?: number): number;
7
+ replicate<AP extends string>(name: AP): Layout<T, AP>;
8
+ }
9
+ export interface LayoutConstructor {
10
+ new <T, P>(): Layout<T, P>;
11
+ new <T, P>(span?: T, property?: P): Layout<T, P>;
12
+ readonly prototype: Layout;
13
+ }
14
+ export declare const Layout: LayoutConstructor;
15
+ export interface Structure<T = any, P = '', DecodeSchema extends {
16
+ [key: string]: any;
17
+ } = any> extends Layout<DecodeSchema, P> {
18
+ span: number;
19
+ decode(b: Buffer, offset?: number): DecodeSchema;
20
+ layoutFor<AP extends string>(property: AP): Layout<DecodeSchema[AP]>;
21
+ offsetOf<AP extends string>(property: AP): number;
22
+ }
23
+ interface StructureConstructor {
24
+ new <T = any, P = '', DecodeSchema extends {
25
+ [key: string]: any;
26
+ } = any>(): Structure<T, P, DecodeSchema>;
27
+ new <T = any, P = '', DecodeSchema extends {
28
+ [key: string]: any;
29
+ } = any>(fields: T, property?: P, decodePrefixes?: boolean): Structure<T, P, DecodeSchema>;
30
+ }
31
+ export declare const Structure: StructureConstructor;
32
+ export interface Union<UnionSchema extends {
33
+ [key: string]: any;
34
+ } = any> extends Layout {
35
+ registry: object;
36
+ decode(b: Buffer, offset?: number): Partial<UnionSchema>;
37
+ addVariant(variant: number, layout: Structure<any, any, Partial<UnionSchema>> | Layout<any, keyof UnionSchema>, property?: string): any;
38
+ }
39
+ interface UnionConstructor {
40
+ new <UnionSchema extends {
41
+ [key: string]: any;
42
+ } = any>(): Union<UnionSchema>;
43
+ new <UnionSchema extends {
44
+ [key: string]: any;
45
+ } = any>(discr: Layout<any, any>, defaultLayout: Layout<any, any>, property?: string): Union<UnionSchema>;
46
+ }
47
+ export declare const Union: UnionConstructor;
48
+ export type BitStructure<T = unknown, P = ''> = Layout<T, P>;
49
+ interface BitStructureConstructor {
50
+ new (...params: any[]): BitStructure;
51
+ }
52
+ export declare const BitStructure: BitStructureConstructor;
53
+ export type UInt<T = any, P = ''> = Layout<T, P>;
54
+ interface UIntConstructor {
55
+ new <T, P>(span?: T, property?: P): UInt<T, P>;
56
+ }
57
+ export declare const UInt: UIntConstructor;
58
+ export type Blob<P extends string = ''> = Layout<Buffer, P>;
59
+ interface BlobConstructor {
60
+ new (...params: ConstructorParameters<LayoutConstructor>): Blob;
61
+ }
62
+ export declare const Blob: BlobConstructor;
63
+ export declare const greedy: <P extends string = "">(elementSpan?: number, property?: P) => Layout<number, P>;
64
+ export declare const u8: <P extends string = "">(property?: P) => Layout<number, P>;
65
+ export declare const u16: <P extends string = "">(property?: P) => Layout<number, P>;
66
+ export declare const u24: <P extends string = "">(property?: P) => Layout<number, P>;
67
+ export declare const u32: <P extends string = "">(property?: P) => Layout<number, P>;
68
+ export declare const u40: <P extends string = "">(property?: P) => Layout<number, P>;
69
+ export declare const u48: <P extends string = "">(property?: P) => Layout<number, P>;
70
+ export declare const nu64: <P extends string = "">(property?: P) => Layout<number, P>;
71
+ export declare const u16be: <P extends string = "">(property?: P) => Layout<number, P>;
72
+ export declare const u24be: <P extends string = "">(property?: P) => Layout<number, P>;
73
+ export declare const u32be: <P extends string = "">(property?: P) => Layout<number, P>;
74
+ export declare const u40be: <P extends string = "">(property?: P) => Layout<number, P>;
75
+ export declare const u48be: <P extends string = "">(property?: P) => Layout<number, P>;
76
+ export declare const nu64be: <P extends string = "">(property?: P) => Layout<number, P>;
77
+ export declare const s8: <P extends string = "">(property?: P) => Layout<number, P>;
78
+ export declare const s16: <P extends string = "">(property?: P) => Layout<number, P>;
79
+ export declare const s24: <P extends string = "">(property?: P) => Layout<number, P>;
80
+ export declare const s32: <P extends string = "">(property?: P) => Layout<number, P>;
81
+ export declare const s40: <P extends string = "">(property?: P) => Layout<number, P>;
82
+ export declare const s48: <P extends string = "">(property?: P) => Layout<number, P>;
83
+ export declare const ns64: <P extends string = "">(property?: P) => Layout<number, P>;
84
+ export declare const s16be: <P extends string = "">(property?: P) => Layout<number, P>;
85
+ export declare const s24be: <P extends string = "">(property?: P) => Layout<number, P>;
86
+ export declare const s32be: <P extends string = "">(property?: P) => Layout<number, P>;
87
+ export declare const s40be: <P extends string = "">(property?: P) => Layout<number, P>;
88
+ export declare const s48be: <P extends string = "">(property?: P) => Layout<number, P>;
89
+ export declare const ns64be: <P extends string = "">(property?: P) => Layout<number, P>;
90
+ export declare const f32: <P extends string = "">(property?: P) => Layout<number, P>;
91
+ export declare const f32be: <P extends string = "">(property?: P) => Layout<number, P>;
92
+ export declare const f64: <P extends string = "">(property?: P) => Layout<number, P>;
93
+ export declare const f64be: <P extends string = "">(property?: P) => Layout<number, P>;
94
+ export declare const struct: <T, P extends string = "">(fields: T, property?: P, decodePrefixes?: boolean) => T extends Layout<infer Value, infer Property>[] ? Structure<Value, P, { [K in Exclude<Extract<Property, string>, "">]: Extract<T[number], Layout<any, K>> extends Layout<infer V, any> ? V : any; }> : any;
95
+ export declare const seq: <T, P>(elementLayout: Layout<T, string>, count: number | Layout<number, string>, property?: P) => Layout<T[]>;
96
+ export declare const union: <UnionSchema extends {
97
+ [key: string]: any;
98
+ } = any>(discr: Layout<any, any>, defaultLayout?: any, property?: string) => Union<UnionSchema>;
99
+ export declare const unionLayoutDiscriminator: <P extends string = "">(layout: Layout<any, P>, property?: P) => any;
100
+ export declare const blob: <P extends string = "">(length: number | Layout<number, P>, property?: P) => Blob<P>;
101
+ export declare const cstr: <P extends string = "">(property?: P) => Layout<string, P>;
102
+ export declare const utf8: <P extends string = "">(maxSpan: number, property?: P) => Layout<string, P>;
103
+ export declare const bits: <T, P extends string = "">(word: Layout<T>, msb?: boolean, property?: P) => BitStructure<T, P>;
104
+ export declare const offset: <T, P extends string = "">(layout: Layout<T, P>, offset?: number, property?: P) => Layout<T, P>;
105
+ export type GetStructureSchema<T extends Structure> = T extends Structure<any, any, infer S> ? S : unknown;
106
+ export {};
107
+ //# sourceMappingURL=bufferLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bufferLayout.d.ts","sourceRoot":"","sources":["../../../../../src/instructions/libs/marshmallow/bufferLayout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { bits as _bits, BitStructure as _BitStructure, blob as _blob, Blob as _Blob, cstr as _cstr, f32 as _f32, f32be as _f32be, f64 as _f64, f64be as _f64be, greedy as _greedy, Layout as _Layout, ns64 as _ns64, ns64be as _ns64be, nu64 as _nu64, nu64be as _nu64be, offset as _offset, s16 as _s16, s16be as _s16be, s24 as _s24, s24be as _s24be, s32 as _s32, s32be as _s32be, s40 as _s40, s40be as _s40be, s48 as _s48, s48be as _s48be, s8 as _s8, seq as _seq, struct as _struct, Structure as _Structure, u16 as _u16, u16be as _u16be, u24 as _u24, u24be as _u24be, u32 as _u32, u32be as _u32be, u40 as _u40, u40be as _u40be, u48 as _u48, u48be as _u48be, u8 as _u8, UInt as _UInt, union as _union, Union as _Union, unionLayoutDiscriminator as _unionLayoutDiscriminator, utf8 as _utf8, } from '@solana/buffer-layout';
2
+ export const Layout = _Layout;
3
+ export const Structure = _Structure;
4
+ export const Union = _Union;
5
+ export const BitStructure = _BitStructure;
6
+ export const UInt = _UInt;
7
+ export const Blob = _Blob;
8
+ //#endregion
9
+ export const greedy = _greedy;
10
+ export const u8 = _u8;
11
+ export const u16 = _u16;
12
+ export const u24 = _u24;
13
+ export const u32 = _u32;
14
+ export const u40 = _u40;
15
+ export const u48 = _u48;
16
+ export const nu64 = _nu64;
17
+ export const u16be = _u16be;
18
+ export const u24be = _u24be;
19
+ export const u32be = _u32be;
20
+ export const u40be = _u40be;
21
+ export const u48be = _u48be;
22
+ export const nu64be = _nu64be;
23
+ export const s8 = _s8;
24
+ export const s16 = _s16;
25
+ export const s24 = _s24;
26
+ export const s32 = _s32;
27
+ export const s40 = _s40;
28
+ export const s48 = _s48;
29
+ export const ns64 = _ns64;
30
+ export const s16be = _s16be;
31
+ export const s24be = _s24be;
32
+ export const s32be = _s32be;
33
+ export const s40be = _s40be;
34
+ export const s48be = _s48be;
35
+ export const ns64be = _ns64be;
36
+ export const f32 = _f32;
37
+ export const f32be = _f32be;
38
+ export const f64 = _f64;
39
+ export const f64be = _f64be;
40
+ export const struct = _struct;
41
+ export const seq = _seq;
42
+ export const union = _union;
43
+ export const unionLayoutDiscriminator = _unionLayoutDiscriminator;
44
+ export const blob = _blob;
45
+ export const cstr = _cstr;
46
+ export const utf8 = _utf8;
47
+ export const bits = _bits;
48
+ export const offset = _offset;
49
+ //# sourceMappingURL=bufferLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bufferLayout.js","sourceRoot":"","sources":["../../../../../src/instructions/libs/marshmallow/bufferLayout.ts"],"names":[],"mappings":"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"}