@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.
- package/README.md +776 -0
- package/dist/accounts/index.d.ts +5 -0
- package/dist/accounts/index.d.ts.map +1 -0
- package/dist/accounts/index.js +5 -0
- package/dist/accounts/index.js.map +1 -0
- package/dist/accounts/liquid-fees.d.ts +63 -0
- package/dist/accounts/liquid-fees.d.ts.map +1 -0
- package/dist/accounts/liquid-fees.js +27 -0
- package/dist/accounts/liquid-fees.js.map +1 -0
- package/dist/accounts/liquid-state.d.ts +112 -0
- package/dist/accounts/liquid-state.d.ts.map +1 -0
- package/dist/accounts/liquid-state.js +92 -0
- package/dist/accounts/liquid-state.js.map +1 -0
- package/dist/accounts/liquid-swap.d.ts +97 -0
- package/dist/accounts/liquid-swap.d.ts.map +1 -0
- package/dist/accounts/liquid-swap.js +54 -0
- package/dist/accounts/liquid-swap.js.map +1 -0
- package/dist/accounts/liquid.d.ts +175 -0
- package/dist/accounts/liquid.d.ts.map +1 -0
- package/dist/accounts/liquid.js +66 -0
- package/dist/accounts/liquid.js.map +1 -0
- package/dist/client.d.ts +621 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +511 -0
- package/dist/client.js.map +1 -0
- package/dist/config.d.ts +56 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +44 -0
- package/dist/config.js.map +1 -0
- package/dist/errors.d.ts +39 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +63 -0
- package/dist/errors.js.map +1 -0
- package/dist/events/index.d.ts +4 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +2 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/parser.d.ts +40 -0
- package/dist/events/parser.d.ts.map +1 -0
- package/dist/events/parser.js +67 -0
- package/dist/events/parser.js.map +1 -0
- package/dist/events/types.d.ts +286 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/events/types.js +2 -0
- package/dist/events/types.js.map +1 -0
- package/dist/helpers/index.d.ts +4 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/index.js +3 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/helpers/preview.d.ts +259 -0
- package/dist/helpers/preview.d.ts.map +1 -0
- package/dist/helpers/preview.js +458 -0
- package/dist/helpers/preview.js.map +1 -0
- package/dist/helpers/user.d.ts +11 -0
- package/dist/helpers/user.d.ts.map +1 -0
- package/dist/helpers/user.js +20 -0
- package/dist/helpers/user.js.map +1 -0
- package/dist/idl/index.d.ts +53 -0
- package/dist/idl/index.d.ts.map +1 -0
- package/dist/idl/index.js +64 -0
- package/dist/idl/index.js.map +1 -0
- package/dist/idl/liquid.d.ts +10523 -0
- package/dist/idl/liquid.d.ts.map +1 -0
- package/dist/idl/liquid.js +2 -0
- package/dist/idl/liquid.js.map +1 -0
- package/dist/idl/liquid.json +10516 -0
- package/dist/idl/liquid_fees.d.ts +1520 -0
- package/dist/idl/liquid_fees.d.ts.map +1 -0
- package/dist/idl/liquid_fees.js +2 -0
- package/dist/idl/liquid_fees.js.map +1 -0
- package/dist/idl/liquid_fees.json +1513 -0
- package/dist/idl/liquid_state.d.ts +2936 -0
- package/dist/idl/liquid_state.d.ts.map +1 -0
- package/dist/idl/liquid_state.js +2 -0
- package/dist/idl/liquid_state.js.map +1 -0
- package/dist/idl/liquid_state.json +2929 -0
- package/dist/idl/liquid_swap.d.ts +5849 -0
- package/dist/idl/liquid_swap.d.ts.map +1 -0
- package/dist/idl/liquid_swap.js +2 -0
- package/dist/idl/liquid_swap.js.map +1 -0
- package/dist/idl/liquid_swap.json +5842 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/instructions/index.d.ts +9 -0
- package/dist/instructions/index.d.ts.map +1 -0
- package/dist/instructions/index.js +9 -0
- package/dist/instructions/index.js.map +1 -0
- package/dist/instructions/liquid-fees.d.ts +111 -0
- package/dist/instructions/liquid-fees.d.ts.map +1 -0
- package/dist/instructions/liquid-fees.js +169 -0
- package/dist/instructions/liquid-fees.js.map +1 -0
- package/dist/instructions/liquid-state.d.ts +173 -0
- package/dist/instructions/liquid-state.d.ts.map +1 -0
- package/dist/instructions/liquid-state.js +194 -0
- package/dist/instructions/liquid-state.js.map +1 -0
- package/dist/instructions/liquid-swap.d.ts +122 -0
- package/dist/instructions/liquid-swap.d.ts.map +1 -0
- package/dist/instructions/liquid-swap.js +167 -0
- package/dist/instructions/liquid-swap.js.map +1 -0
- package/dist/instructions/liquid.d.ts +297 -0
- package/dist/instructions/liquid.d.ts.map +1 -0
- package/dist/instructions/liquid.js +483 -0
- package/dist/instructions/liquid.js.map +1 -0
- package/dist/instructions/program-cache.d.ts +35 -0
- package/dist/instructions/program-cache.d.ts.map +1 -0
- package/dist/instructions/program-cache.js +68 -0
- package/dist/instructions/program-cache.js.map +1 -0
- package/dist/math/amm.d.ts +42 -0
- package/dist/math/amm.d.ts.map +1 -0
- package/dist/math/amm.js +109 -0
- package/dist/math/amm.js.map +1 -0
- package/dist/math/bonding-curve.d.ts +34 -0
- package/dist/math/bonding-curve.d.ts.map +1 -0
- package/dist/math/bonding-curve.js +80 -0
- package/dist/math/bonding-curve.js.map +1 -0
- package/dist/math/constants.d.ts +14 -0
- package/dist/math/constants.d.ts.map +1 -0
- package/dist/math/constants.js +14 -0
- package/dist/math/constants.js.map +1 -0
- package/dist/math/fees.d.ts +88 -0
- package/dist/math/fees.d.ts.map +1 -0
- package/dist/math/fees.js +135 -0
- package/dist/math/fees.js.map +1 -0
- package/dist/math/index.d.ts +8 -0
- package/dist/math/index.d.ts.map +1 -0
- package/dist/math/index.js +6 -0
- package/dist/math/index.js.map +1 -0
- package/dist/math/tiered-fees.d.ts +80 -0
- package/dist/math/tiered-fees.d.ts.map +1 -0
- package/dist/math/tiered-fees.js +129 -0
- package/dist/math/tiered-fees.js.map +1 -0
- package/dist/oracle.d.ts +53 -0
- package/dist/oracle.d.ts.map +1 -0
- package/dist/oracle.js +70 -0
- package/dist/oracle.js.map +1 -0
- package/dist/pda/index.d.ts +89 -0
- package/dist/pda/index.d.ts.map +1 -0
- package/dist/pda/index.js +127 -0
- package/dist/pda/index.js.map +1 -0
- package/dist/pda/liquid-fees.d.ts +27 -0
- package/dist/pda/liquid-fees.d.ts.map +1 -0
- package/dist/pda/liquid-fees.js +36 -0
- package/dist/pda/liquid-fees.js.map +1 -0
- package/dist/pda/liquid-state.d.ts +56 -0
- package/dist/pda/liquid-state.d.ts.map +1 -0
- package/dist/pda/liquid-state.js +79 -0
- package/dist/pda/liquid-state.js.map +1 -0
- package/dist/pda/liquid-swap.d.ts +76 -0
- package/dist/pda/liquid-swap.d.ts.map +1 -0
- package/dist/pda/liquid-swap.js +103 -0
- package/dist/pda/liquid-swap.js.map +1 -0
- package/dist/pda/liquid.d.ts +67 -0
- package/dist/pda/liquid.d.ts.map +1 -0
- package/dist/pda/liquid.js +91 -0
- package/dist/pda/liquid.js.map +1 -0
- package/dist/provider.d.ts +26 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +47 -0
- package/dist/provider.js.map +1 -0
- package/dist/transaction/builder.d.ts +30 -0
- package/dist/transaction/builder.d.ts.map +1 -0
- package/dist/transaction/builder.js +48 -0
- package/dist/transaction/builder.js.map +1 -0
- package/dist/transaction/index.d.ts +3 -0
- package/dist/transaction/index.d.ts.map +1 -0
- package/dist/transaction/index.js +3 -0
- package/dist/transaction/index.js.map +1 -0
- package/dist/transaction/send.d.ts +25 -0
- package/dist/transaction/send.d.ts.map +1 -0
- package/dist/transaction/send.js +52 -0
- package/dist/transaction/send.js.map +1 -0
- package/dist/types.d.ts +311 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +46 -0
- package/dist/types.js.map +1 -0
- package/package.json +112 -0
- package/src/accounts/index.ts +26 -0
- package/src/accounts/liquid-fees.ts +38 -0
- package/src/accounts/liquid-state.ts +134 -0
- package/src/accounts/liquid-swap.ts +79 -0
- package/src/accounts/liquid.ts +100 -0
- package/src/client.ts +1001 -0
- package/src/config.ts +91 -0
- package/src/errors.ts +94 -0
- package/src/events/index.ts +42 -0
- package/src/events/parser.ts +90 -0
- package/src/events/types.ts +310 -0
- package/src/helpers/index.ts +23 -0
- package/src/helpers/preview.ts +798 -0
- package/src/helpers/user.ts +24 -0
- package/src/idl/index.ts +94 -0
- package/src/idl/liquid.json +10516 -0
- package/src/idl/liquid.ts +10522 -0
- package/src/idl/liquid_fees.json +1513 -0
- package/src/idl/liquid_fees.ts +1519 -0
- package/src/idl/liquid_state.json +2929 -0
- package/src/idl/liquid_state.ts +2935 -0
- package/src/idl/liquid_swap.json +5842 -0
- package/src/idl/liquid_swap.ts +5848 -0
- package/src/index.ts +98 -0
- package/src/instructions/index.ts +109 -0
- package/src/instructions/liquid-fees.ts +289 -0
- package/src/instructions/liquid-state.ts +336 -0
- package/src/instructions/liquid-swap.ts +414 -0
- package/src/instructions/liquid.ts +884 -0
- package/src/instructions/program-cache.ts +106 -0
- package/src/math/amm.ts +146 -0
- package/src/math/bonding-curve.ts +122 -0
- package/src/math/constants.ts +19 -0
- package/src/math/fees.ts +191 -0
- package/src/math/index.ts +40 -0
- package/src/math/tiered-fees.ts +165 -0
- package/src/oracle.ts +97 -0
- package/src/pda/index.ts +331 -0
- package/src/pda/liquid-fees.ts +58 -0
- package/src/pda/liquid-state.ts +123 -0
- package/src/pda/liquid-swap.ts +162 -0
- package/src/pda/liquid.ts +152 -0
- package/src/provider.ts +60 -0
- package/src/transaction/builder.ts +80 -0
- package/src/transaction/index.ts +6 -0
- package/src/transaction/send.ts +72 -0
- package/src/types.ts +354 -0
|
@@ -0,0 +1,1513 @@
|
|
|
1
|
+
{
|
|
2
|
+
"address": "FeesZQLb1xTeZbvaFRGnqzrZYzzmQtwhTYKQphbNGQru",
|
|
3
|
+
"metadata": {
|
|
4
|
+
"name": "liquid_fees",
|
|
5
|
+
"version": "0.1.0",
|
|
6
|
+
"spec": "0.1.0",
|
|
7
|
+
"description": "Unified creator fee configuration for liquid programs"
|
|
8
|
+
},
|
|
9
|
+
"instructions": [
|
|
10
|
+
{
|
|
11
|
+
"name": "claim_fees",
|
|
12
|
+
"docs": [
|
|
13
|
+
"Claim accumulated SOL fees from a recipient's vault PDA.",
|
|
14
|
+
"",
|
|
15
|
+
"# Arguments",
|
|
16
|
+
"The recipient must sign the transaction. The vault PDA is derived",
|
|
17
|
+
"from the fee_config and recipient pubkey, ensuring only the rightful",
|
|
18
|
+
"recipient can claim."
|
|
19
|
+
],
|
|
20
|
+
"discriminator": [
|
|
21
|
+
82,
|
|
22
|
+
251,
|
|
23
|
+
233,
|
|
24
|
+
156,
|
|
25
|
+
12,
|
|
26
|
+
52,
|
|
27
|
+
184,
|
|
28
|
+
202
|
|
29
|
+
],
|
|
30
|
+
"accounts": [
|
|
31
|
+
{
|
|
32
|
+
"name": "recipient",
|
|
33
|
+
"docs": [
|
|
34
|
+
"The recipient claiming their fees (must match vault PDA derivation)"
|
|
35
|
+
],
|
|
36
|
+
"writable": true,
|
|
37
|
+
"signer": true
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "recipient_vault",
|
|
41
|
+
"docs": [
|
|
42
|
+
"The recipient's vault PDA holding accumulated SOL fees."
|
|
43
|
+
],
|
|
44
|
+
"writable": true,
|
|
45
|
+
"pda": {
|
|
46
|
+
"seeds": [
|
|
47
|
+
{
|
|
48
|
+
"kind": "const",
|
|
49
|
+
"value": [
|
|
50
|
+
114,
|
|
51
|
+
101,
|
|
52
|
+
99,
|
|
53
|
+
105,
|
|
54
|
+
112,
|
|
55
|
+
105,
|
|
56
|
+
101,
|
|
57
|
+
110,
|
|
58
|
+
116,
|
|
59
|
+
95,
|
|
60
|
+
118,
|
|
61
|
+
97,
|
|
62
|
+
117,
|
|
63
|
+
108,
|
|
64
|
+
116
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"kind": "account",
|
|
69
|
+
"path": "fee_config"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"kind": "account",
|
|
73
|
+
"path": "recipient"
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "fee_config",
|
|
80
|
+
"docs": [
|
|
81
|
+
"The fee configuration this vault belongs to.",
|
|
82
|
+
"only the correct fee_config will produce a vault PDA that has funds."
|
|
83
|
+
]
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name": "system_program",
|
|
87
|
+
"address": "11111111111111111111111111111111"
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
"args": []
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "claim_token_fees",
|
|
94
|
+
"docs": [
|
|
95
|
+
"Claim accumulated token fees from a recipient's vault ATA.",
|
|
96
|
+
"",
|
|
97
|
+
"# Arguments",
|
|
98
|
+
"The recipient must sign the transaction. After claiming, the vault",
|
|
99
|
+
"ATA is closed and rent is returned to the recipient."
|
|
100
|
+
],
|
|
101
|
+
"discriminator": [
|
|
102
|
+
205,
|
|
103
|
+
136,
|
|
104
|
+
215,
|
|
105
|
+
209,
|
|
106
|
+
62,
|
|
107
|
+
196,
|
|
108
|
+
69,
|
|
109
|
+
182
|
|
110
|
+
],
|
|
111
|
+
"accounts": [
|
|
112
|
+
{
|
|
113
|
+
"name": "recipient",
|
|
114
|
+
"docs": [
|
|
115
|
+
"The recipient claiming their fees (must match vault PDA derivation)"
|
|
116
|
+
],
|
|
117
|
+
"writable": true,
|
|
118
|
+
"signer": true
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"name": "recipient_vault_token_account",
|
|
122
|
+
"docs": [
|
|
123
|
+
"The vault PDA's token account holding accumulated quote tokens."
|
|
124
|
+
],
|
|
125
|
+
"writable": true,
|
|
126
|
+
"pda": {
|
|
127
|
+
"seeds": [
|
|
128
|
+
{
|
|
129
|
+
"kind": "account",
|
|
130
|
+
"path": "recipient_vault"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"kind": "const",
|
|
134
|
+
"value": [
|
|
135
|
+
6,
|
|
136
|
+
221,
|
|
137
|
+
246,
|
|
138
|
+
225,
|
|
139
|
+
215,
|
|
140
|
+
101,
|
|
141
|
+
161,
|
|
142
|
+
147,
|
|
143
|
+
217,
|
|
144
|
+
203,
|
|
145
|
+
225,
|
|
146
|
+
70,
|
|
147
|
+
206,
|
|
148
|
+
235,
|
|
149
|
+
121,
|
|
150
|
+
172,
|
|
151
|
+
28,
|
|
152
|
+
180,
|
|
153
|
+
133,
|
|
154
|
+
237,
|
|
155
|
+
95,
|
|
156
|
+
91,
|
|
157
|
+
55,
|
|
158
|
+
145,
|
|
159
|
+
58,
|
|
160
|
+
140,
|
|
161
|
+
245,
|
|
162
|
+
133,
|
|
163
|
+
126,
|
|
164
|
+
255,
|
|
165
|
+
0,
|
|
166
|
+
169
|
|
167
|
+
]
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"kind": "account",
|
|
171
|
+
"path": "quote_mint"
|
|
172
|
+
}
|
|
173
|
+
],
|
|
174
|
+
"program": {
|
|
175
|
+
"kind": "const",
|
|
176
|
+
"value": [
|
|
177
|
+
140,
|
|
178
|
+
151,
|
|
179
|
+
37,
|
|
180
|
+
143,
|
|
181
|
+
78,
|
|
182
|
+
36,
|
|
183
|
+
137,
|
|
184
|
+
241,
|
|
185
|
+
187,
|
|
186
|
+
61,
|
|
187
|
+
16,
|
|
188
|
+
41,
|
|
189
|
+
20,
|
|
190
|
+
142,
|
|
191
|
+
13,
|
|
192
|
+
131,
|
|
193
|
+
11,
|
|
194
|
+
90,
|
|
195
|
+
19,
|
|
196
|
+
153,
|
|
197
|
+
218,
|
|
198
|
+
255,
|
|
199
|
+
16,
|
|
200
|
+
132,
|
|
201
|
+
4,
|
|
202
|
+
142,
|
|
203
|
+
123,
|
|
204
|
+
216,
|
|
205
|
+
219,
|
|
206
|
+
233,
|
|
207
|
+
248,
|
|
208
|
+
89
|
|
209
|
+
]
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"name": "recipient_token_account",
|
|
215
|
+
"docs": [
|
|
216
|
+
"The recipient's own token account to receive claimed fees."
|
|
217
|
+
],
|
|
218
|
+
"writable": true,
|
|
219
|
+
"pda": {
|
|
220
|
+
"seeds": [
|
|
221
|
+
{
|
|
222
|
+
"kind": "account",
|
|
223
|
+
"path": "recipient"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"kind": "const",
|
|
227
|
+
"value": [
|
|
228
|
+
6,
|
|
229
|
+
221,
|
|
230
|
+
246,
|
|
231
|
+
225,
|
|
232
|
+
215,
|
|
233
|
+
101,
|
|
234
|
+
161,
|
|
235
|
+
147,
|
|
236
|
+
217,
|
|
237
|
+
203,
|
|
238
|
+
225,
|
|
239
|
+
70,
|
|
240
|
+
206,
|
|
241
|
+
235,
|
|
242
|
+
121,
|
|
243
|
+
172,
|
|
244
|
+
28,
|
|
245
|
+
180,
|
|
246
|
+
133,
|
|
247
|
+
237,
|
|
248
|
+
95,
|
|
249
|
+
91,
|
|
250
|
+
55,
|
|
251
|
+
145,
|
|
252
|
+
58,
|
|
253
|
+
140,
|
|
254
|
+
245,
|
|
255
|
+
133,
|
|
256
|
+
126,
|
|
257
|
+
255,
|
|
258
|
+
0,
|
|
259
|
+
169
|
|
260
|
+
]
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"kind": "account",
|
|
264
|
+
"path": "quote_mint"
|
|
265
|
+
}
|
|
266
|
+
],
|
|
267
|
+
"program": {
|
|
268
|
+
"kind": "const",
|
|
269
|
+
"value": [
|
|
270
|
+
140,
|
|
271
|
+
151,
|
|
272
|
+
37,
|
|
273
|
+
143,
|
|
274
|
+
78,
|
|
275
|
+
36,
|
|
276
|
+
137,
|
|
277
|
+
241,
|
|
278
|
+
187,
|
|
279
|
+
61,
|
|
280
|
+
16,
|
|
281
|
+
41,
|
|
282
|
+
20,
|
|
283
|
+
142,
|
|
284
|
+
13,
|
|
285
|
+
131,
|
|
286
|
+
11,
|
|
287
|
+
90,
|
|
288
|
+
19,
|
|
289
|
+
153,
|
|
290
|
+
218,
|
|
291
|
+
255,
|
|
292
|
+
16,
|
|
293
|
+
132,
|
|
294
|
+
4,
|
|
295
|
+
142,
|
|
296
|
+
123,
|
|
297
|
+
216,
|
|
298
|
+
219,
|
|
299
|
+
233,
|
|
300
|
+
248,
|
|
301
|
+
89
|
|
302
|
+
]
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"name": "fee_config",
|
|
308
|
+
"docs": [
|
|
309
|
+
"The fee configuration this vault belongs to.",
|
|
310
|
+
"only the correct fee_config will produce a vault PDA that has funds."
|
|
311
|
+
]
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"name": "quote_mint",
|
|
315
|
+
"docs": [
|
|
316
|
+
"The quote token mint of the fees to claim (SPL Token only)."
|
|
317
|
+
]
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"name": "recipient_vault",
|
|
321
|
+
"docs": [
|
|
322
|
+
"The recipient's vault PDA."
|
|
323
|
+
],
|
|
324
|
+
"pda": {
|
|
325
|
+
"seeds": [
|
|
326
|
+
{
|
|
327
|
+
"kind": "const",
|
|
328
|
+
"value": [
|
|
329
|
+
114,
|
|
330
|
+
101,
|
|
331
|
+
99,
|
|
332
|
+
105,
|
|
333
|
+
112,
|
|
334
|
+
105,
|
|
335
|
+
101,
|
|
336
|
+
110,
|
|
337
|
+
116,
|
|
338
|
+
95,
|
|
339
|
+
118,
|
|
340
|
+
97,
|
|
341
|
+
117,
|
|
342
|
+
108,
|
|
343
|
+
116
|
|
344
|
+
]
|
|
345
|
+
},
|
|
346
|
+
{
|
|
347
|
+
"kind": "account",
|
|
348
|
+
"path": "fee_config"
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
"kind": "account",
|
|
352
|
+
"path": "recipient"
|
|
353
|
+
}
|
|
354
|
+
]
|
|
355
|
+
}
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"name": "token_program",
|
|
359
|
+
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
"name": "system_program",
|
|
363
|
+
"address": "11111111111111111111111111111111"
|
|
364
|
+
}
|
|
365
|
+
],
|
|
366
|
+
"args": []
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"name": "distribute_fees",
|
|
370
|
+
"docs": [
|
|
371
|
+
"Distribute accumulated SOL fees to recipient vault PDAs.",
|
|
372
|
+
"",
|
|
373
|
+
"This is permissionless and can be called by anyone when there",
|
|
374
|
+
"are fees to distribute in the vault. Only valid for configurations",
|
|
375
|
+
"in Recipients mode. Recipients claim from their vaults separately."
|
|
376
|
+
],
|
|
377
|
+
"discriminator": [
|
|
378
|
+
120,
|
|
379
|
+
56,
|
|
380
|
+
27,
|
|
381
|
+
7,
|
|
382
|
+
53,
|
|
383
|
+
176,
|
|
384
|
+
113,
|
|
385
|
+
186
|
|
386
|
+
],
|
|
387
|
+
"accounts": [
|
|
388
|
+
{
|
|
389
|
+
"name": "payer",
|
|
390
|
+
"docs": [
|
|
391
|
+
"Anyone can trigger distribution (permissionless)"
|
|
392
|
+
],
|
|
393
|
+
"writable": true,
|
|
394
|
+
"signer": true
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"name": "fee_vault",
|
|
398
|
+
"docs": [
|
|
399
|
+
"The fee vault holding accumulated fees"
|
|
400
|
+
],
|
|
401
|
+
"writable": true,
|
|
402
|
+
"pda": {
|
|
403
|
+
"seeds": [
|
|
404
|
+
{
|
|
405
|
+
"kind": "const",
|
|
406
|
+
"value": [
|
|
407
|
+
102,
|
|
408
|
+
101,
|
|
409
|
+
101,
|
|
410
|
+
95,
|
|
411
|
+
118,
|
|
412
|
+
97,
|
|
413
|
+
117,
|
|
414
|
+
108,
|
|
415
|
+
116
|
|
416
|
+
]
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
"kind": "account",
|
|
420
|
+
"path": "fee_config"
|
|
421
|
+
}
|
|
422
|
+
]
|
|
423
|
+
}
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
"name": "token_mint",
|
|
427
|
+
"docs": [
|
|
428
|
+
"The token mint this fee configuration is for"
|
|
429
|
+
]
|
|
430
|
+
},
|
|
431
|
+
{
|
|
432
|
+
"name": "fee_config",
|
|
433
|
+
"docs": [
|
|
434
|
+
"The fee configuration"
|
|
435
|
+
],
|
|
436
|
+
"pda": {
|
|
437
|
+
"seeds": [
|
|
438
|
+
{
|
|
439
|
+
"kind": "const",
|
|
440
|
+
"value": [
|
|
441
|
+
102,
|
|
442
|
+
101,
|
|
443
|
+
101,
|
|
444
|
+
95,
|
|
445
|
+
99,
|
|
446
|
+
111,
|
|
447
|
+
110,
|
|
448
|
+
102,
|
|
449
|
+
105,
|
|
450
|
+
103
|
|
451
|
+
]
|
|
452
|
+
},
|
|
453
|
+
{
|
|
454
|
+
"kind": "account",
|
|
455
|
+
"path": "token_mint"
|
|
456
|
+
}
|
|
457
|
+
]
|
|
458
|
+
}
|
|
459
|
+
},
|
|
460
|
+
{
|
|
461
|
+
"name": "system_program",
|
|
462
|
+
"address": "11111111111111111111111111111111"
|
|
463
|
+
}
|
|
464
|
+
],
|
|
465
|
+
"args": []
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
"name": "distribute_token_fees",
|
|
469
|
+
"docs": [
|
|
470
|
+
"Distribute accumulated token fees to recipient vault ATAs.",
|
|
471
|
+
"",
|
|
472
|
+
"This is permissionless and can be called by anyone when there",
|
|
473
|
+
"are token fees to distribute. Only valid for configurations",
|
|
474
|
+
"in Recipients mode. Recipients claim from their vaults separately."
|
|
475
|
+
],
|
|
476
|
+
"discriminator": [
|
|
477
|
+
44,
|
|
478
|
+
145,
|
|
479
|
+
241,
|
|
480
|
+
189,
|
|
481
|
+
121,
|
|
482
|
+
74,
|
|
483
|
+
228,
|
|
484
|
+
210
|
|
485
|
+
],
|
|
486
|
+
"accounts": [
|
|
487
|
+
{
|
|
488
|
+
"name": "payer",
|
|
489
|
+
"docs": [
|
|
490
|
+
"Anyone can trigger distribution (permissionless)."
|
|
491
|
+
],
|
|
492
|
+
"writable": true,
|
|
493
|
+
"signer": true
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
"name": "fee_vault_token_account",
|
|
497
|
+
"docs": [
|
|
498
|
+
"The fee vault's token account holding accumulated quote tokens."
|
|
499
|
+
],
|
|
500
|
+
"writable": true,
|
|
501
|
+
"pda": {
|
|
502
|
+
"seeds": [
|
|
503
|
+
{
|
|
504
|
+
"kind": "account",
|
|
505
|
+
"path": "fee_vault"
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
"kind": "const",
|
|
509
|
+
"value": [
|
|
510
|
+
6,
|
|
511
|
+
221,
|
|
512
|
+
246,
|
|
513
|
+
225,
|
|
514
|
+
215,
|
|
515
|
+
101,
|
|
516
|
+
161,
|
|
517
|
+
147,
|
|
518
|
+
217,
|
|
519
|
+
203,
|
|
520
|
+
225,
|
|
521
|
+
70,
|
|
522
|
+
206,
|
|
523
|
+
235,
|
|
524
|
+
121,
|
|
525
|
+
172,
|
|
526
|
+
28,
|
|
527
|
+
180,
|
|
528
|
+
133,
|
|
529
|
+
237,
|
|
530
|
+
95,
|
|
531
|
+
91,
|
|
532
|
+
55,
|
|
533
|
+
145,
|
|
534
|
+
58,
|
|
535
|
+
140,
|
|
536
|
+
245,
|
|
537
|
+
133,
|
|
538
|
+
126,
|
|
539
|
+
255,
|
|
540
|
+
0,
|
|
541
|
+
169
|
|
542
|
+
]
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
"kind": "account",
|
|
546
|
+
"path": "quote_mint"
|
|
547
|
+
}
|
|
548
|
+
],
|
|
549
|
+
"program": {
|
|
550
|
+
"kind": "const",
|
|
551
|
+
"value": [
|
|
552
|
+
140,
|
|
553
|
+
151,
|
|
554
|
+
37,
|
|
555
|
+
143,
|
|
556
|
+
78,
|
|
557
|
+
36,
|
|
558
|
+
137,
|
|
559
|
+
241,
|
|
560
|
+
187,
|
|
561
|
+
61,
|
|
562
|
+
16,
|
|
563
|
+
41,
|
|
564
|
+
20,
|
|
565
|
+
142,
|
|
566
|
+
13,
|
|
567
|
+
131,
|
|
568
|
+
11,
|
|
569
|
+
90,
|
|
570
|
+
19,
|
|
571
|
+
153,
|
|
572
|
+
218,
|
|
573
|
+
255,
|
|
574
|
+
16,
|
|
575
|
+
132,
|
|
576
|
+
4,
|
|
577
|
+
142,
|
|
578
|
+
123,
|
|
579
|
+
216,
|
|
580
|
+
219,
|
|
581
|
+
233,
|
|
582
|
+
248,
|
|
583
|
+
89
|
|
584
|
+
]
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"name": "token_mint",
|
|
590
|
+
"docs": [
|
|
591
|
+
"The token mint this fee configuration is for."
|
|
592
|
+
]
|
|
593
|
+
},
|
|
594
|
+
{
|
|
595
|
+
"name": "quote_mint",
|
|
596
|
+
"docs": [
|
|
597
|
+
"The quote token mint of the accumulated fees (SPL Token only)."
|
|
598
|
+
],
|
|
599
|
+
"relations": [
|
|
600
|
+
"fee_config"
|
|
601
|
+
]
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
"name": "fee_config",
|
|
605
|
+
"docs": [
|
|
606
|
+
"The fee configuration."
|
|
607
|
+
],
|
|
608
|
+
"pda": {
|
|
609
|
+
"seeds": [
|
|
610
|
+
{
|
|
611
|
+
"kind": "const",
|
|
612
|
+
"value": [
|
|
613
|
+
102,
|
|
614
|
+
101,
|
|
615
|
+
101,
|
|
616
|
+
95,
|
|
617
|
+
99,
|
|
618
|
+
111,
|
|
619
|
+
110,
|
|
620
|
+
102,
|
|
621
|
+
105,
|
|
622
|
+
103
|
|
623
|
+
]
|
|
624
|
+
},
|
|
625
|
+
{
|
|
626
|
+
"kind": "account",
|
|
627
|
+
"path": "token_mint"
|
|
628
|
+
}
|
|
629
|
+
]
|
|
630
|
+
}
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"name": "fee_vault",
|
|
634
|
+
"docs": [
|
|
635
|
+
"The fee vault PDA (authority for the token account)."
|
|
636
|
+
],
|
|
637
|
+
"pda": {
|
|
638
|
+
"seeds": [
|
|
639
|
+
{
|
|
640
|
+
"kind": "const",
|
|
641
|
+
"value": [
|
|
642
|
+
102,
|
|
643
|
+
101,
|
|
644
|
+
101,
|
|
645
|
+
95,
|
|
646
|
+
118,
|
|
647
|
+
97,
|
|
648
|
+
117,
|
|
649
|
+
108,
|
|
650
|
+
116
|
|
651
|
+
]
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
"kind": "account",
|
|
655
|
+
"path": "fee_config"
|
|
656
|
+
}
|
|
657
|
+
]
|
|
658
|
+
}
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"name": "token_program",
|
|
662
|
+
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
"name": "associated_token_program",
|
|
666
|
+
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
|
|
667
|
+
},
|
|
668
|
+
{
|
|
669
|
+
"name": "system_program",
|
|
670
|
+
"address": "11111111111111111111111111111111"
|
|
671
|
+
}
|
|
672
|
+
],
|
|
673
|
+
"args": []
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"name": "initialize_fee_config",
|
|
677
|
+
"docs": [
|
|
678
|
+
"Initialize a new fee configuration for a token.",
|
|
679
|
+
"",
|
|
680
|
+
"This should be called when creating a new bonding curve.",
|
|
681
|
+
"The fee configuration is keyed by token_mint, so it persists",
|
|
682
|
+
"across migration from bonding curve to AMM."
|
|
683
|
+
],
|
|
684
|
+
"discriminator": [
|
|
685
|
+
62,
|
|
686
|
+
162,
|
|
687
|
+
20,
|
|
688
|
+
133,
|
|
689
|
+
121,
|
|
690
|
+
65,
|
|
691
|
+
145,
|
|
692
|
+
27
|
|
693
|
+
],
|
|
694
|
+
"accounts": [
|
|
695
|
+
{
|
|
696
|
+
"name": "creator",
|
|
697
|
+
"docs": [
|
|
698
|
+
"The creator who will own this fee configuration"
|
|
699
|
+
],
|
|
700
|
+
"writable": true,
|
|
701
|
+
"signer": true
|
|
702
|
+
},
|
|
703
|
+
{
|
|
704
|
+
"name": "cpi_authority",
|
|
705
|
+
"docs": [
|
|
706
|
+
"CPI authority PDA from the calling program (must be liquid or liquid-swap).",
|
|
707
|
+
"Only the owning program can produce a valid signature for its PDA."
|
|
708
|
+
],
|
|
709
|
+
"signer": true
|
|
710
|
+
},
|
|
711
|
+
{
|
|
712
|
+
"name": "fee_config",
|
|
713
|
+
"docs": [
|
|
714
|
+
"The unified fee configuration account to create"
|
|
715
|
+
],
|
|
716
|
+
"writable": true,
|
|
717
|
+
"pda": {
|
|
718
|
+
"seeds": [
|
|
719
|
+
{
|
|
720
|
+
"kind": "const",
|
|
721
|
+
"value": [
|
|
722
|
+
102,
|
|
723
|
+
101,
|
|
724
|
+
101,
|
|
725
|
+
95,
|
|
726
|
+
99,
|
|
727
|
+
111,
|
|
728
|
+
110,
|
|
729
|
+
102,
|
|
730
|
+
105,
|
|
731
|
+
103
|
|
732
|
+
]
|
|
733
|
+
},
|
|
734
|
+
{
|
|
735
|
+
"kind": "account",
|
|
736
|
+
"path": "token_mint"
|
|
737
|
+
}
|
|
738
|
+
]
|
|
739
|
+
}
|
|
740
|
+
},
|
|
741
|
+
{
|
|
742
|
+
"name": "fee_vault",
|
|
743
|
+
"docs": [
|
|
744
|
+
"The fee vault for accumulating fees (for Recipients mode).",
|
|
745
|
+
"This is a SystemAccount that will hold SOL fees before distribution."
|
|
746
|
+
],
|
|
747
|
+
"writable": true,
|
|
748
|
+
"pda": {
|
|
749
|
+
"seeds": [
|
|
750
|
+
{
|
|
751
|
+
"kind": "const",
|
|
752
|
+
"value": [
|
|
753
|
+
102,
|
|
754
|
+
101,
|
|
755
|
+
101,
|
|
756
|
+
95,
|
|
757
|
+
118,
|
|
758
|
+
97,
|
|
759
|
+
117,
|
|
760
|
+
108,
|
|
761
|
+
116
|
|
762
|
+
]
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"kind": "account",
|
|
766
|
+
"path": "fee_config"
|
|
767
|
+
}
|
|
768
|
+
]
|
|
769
|
+
}
|
|
770
|
+
},
|
|
771
|
+
{
|
|
772
|
+
"name": "token_mint",
|
|
773
|
+
"docs": [
|
|
774
|
+
"The token mint this fee configuration is for.",
|
|
775
|
+
"Validated as a real SPL Token or Token-2022 mint via InterfaceAccount."
|
|
776
|
+
]
|
|
777
|
+
},
|
|
778
|
+
{
|
|
779
|
+
"name": "quote_mint",
|
|
780
|
+
"docs": [
|
|
781
|
+
"The quote token mint for fee accumulation (SPL Token only)."
|
|
782
|
+
]
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
"name": "system_program",
|
|
786
|
+
"address": "11111111111111111111111111111111"
|
|
787
|
+
}
|
|
788
|
+
],
|
|
789
|
+
"args": [
|
|
790
|
+
{
|
|
791
|
+
"name": "args",
|
|
792
|
+
"type": {
|
|
793
|
+
"defined": {
|
|
794
|
+
"name": "InitializeFeeConfigArgs"
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
]
|
|
799
|
+
},
|
|
800
|
+
{
|
|
801
|
+
"name": "revoke_fee_config",
|
|
802
|
+
"docs": [
|
|
803
|
+
"Permanently revoke creator fees for a token.",
|
|
804
|
+
"",
|
|
805
|
+
"Once revoked, creator fees will trigger buy-and-burn instead",
|
|
806
|
+
"of being distributed. This action cannot be undone."
|
|
807
|
+
],
|
|
808
|
+
"discriminator": [
|
|
809
|
+
37,
|
|
810
|
+
222,
|
|
811
|
+
206,
|
|
812
|
+
127,
|
|
813
|
+
248,
|
|
814
|
+
204,
|
|
815
|
+
199,
|
|
816
|
+
186
|
|
817
|
+
],
|
|
818
|
+
"accounts": [
|
|
819
|
+
{
|
|
820
|
+
"name": "authority",
|
|
821
|
+
"docs": [
|
|
822
|
+
"The current update authority (must be the one who can revoke)"
|
|
823
|
+
],
|
|
824
|
+
"signer": true
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
"name": "fee_config",
|
|
828
|
+
"docs": [
|
|
829
|
+
"The fee configuration to revoke"
|
|
830
|
+
],
|
|
831
|
+
"writable": true,
|
|
832
|
+
"pda": {
|
|
833
|
+
"seeds": [
|
|
834
|
+
{
|
|
835
|
+
"kind": "const",
|
|
836
|
+
"value": [
|
|
837
|
+
102,
|
|
838
|
+
101,
|
|
839
|
+
101,
|
|
840
|
+
95,
|
|
841
|
+
99,
|
|
842
|
+
111,
|
|
843
|
+
110,
|
|
844
|
+
102,
|
|
845
|
+
105,
|
|
846
|
+
103
|
|
847
|
+
]
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
"kind": "account",
|
|
851
|
+
"path": "token_mint"
|
|
852
|
+
}
|
|
853
|
+
]
|
|
854
|
+
}
|
|
855
|
+
},
|
|
856
|
+
{
|
|
857
|
+
"name": "token_mint",
|
|
858
|
+
"docs": [
|
|
859
|
+
"The token mint this fee configuration is for"
|
|
860
|
+
]
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
"name": "fee_vault",
|
|
864
|
+
"docs": [
|
|
865
|
+
"The fee vault holding accumulated fees — must be drained before revocation."
|
|
866
|
+
],
|
|
867
|
+
"pda": {
|
|
868
|
+
"seeds": [
|
|
869
|
+
{
|
|
870
|
+
"kind": "const",
|
|
871
|
+
"value": [
|
|
872
|
+
102,
|
|
873
|
+
101,
|
|
874
|
+
101,
|
|
875
|
+
95,
|
|
876
|
+
118,
|
|
877
|
+
97,
|
|
878
|
+
117,
|
|
879
|
+
108,
|
|
880
|
+
116
|
|
881
|
+
]
|
|
882
|
+
},
|
|
883
|
+
{
|
|
884
|
+
"kind": "account",
|
|
885
|
+
"path": "fee_config"
|
|
886
|
+
}
|
|
887
|
+
]
|
|
888
|
+
}
|
|
889
|
+
},
|
|
890
|
+
{
|
|
891
|
+
"name": "token_fee_vault",
|
|
892
|
+
"docs": [
|
|
893
|
+
"The fee vault's token ATA for quote_mint — must be empty or non-existent before revocation."
|
|
894
|
+
]
|
|
895
|
+
}
|
|
896
|
+
],
|
|
897
|
+
"args": []
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
"name": "update_fee_config",
|
|
901
|
+
"docs": [
|
|
902
|
+
"Update an existing fee configuration.",
|
|
903
|
+
"",
|
|
904
|
+
"Can update recipients or transfer update authority.",
|
|
905
|
+
"Cannot be used to revoke - use `revoke_fee_config` instead.",
|
|
906
|
+
"Cannot be called on revoked configurations."
|
|
907
|
+
],
|
|
908
|
+
"discriminator": [
|
|
909
|
+
104,
|
|
910
|
+
184,
|
|
911
|
+
103,
|
|
912
|
+
242,
|
|
913
|
+
88,
|
|
914
|
+
151,
|
|
915
|
+
107,
|
|
916
|
+
20
|
|
917
|
+
],
|
|
918
|
+
"accounts": [
|
|
919
|
+
{
|
|
920
|
+
"name": "authority",
|
|
921
|
+
"docs": [
|
|
922
|
+
"The current update authority"
|
|
923
|
+
],
|
|
924
|
+
"signer": true
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
"name": "fee_config",
|
|
928
|
+
"docs": [
|
|
929
|
+
"The fee configuration to update"
|
|
930
|
+
],
|
|
931
|
+
"writable": true,
|
|
932
|
+
"pda": {
|
|
933
|
+
"seeds": [
|
|
934
|
+
{
|
|
935
|
+
"kind": "const",
|
|
936
|
+
"value": [
|
|
937
|
+
102,
|
|
938
|
+
101,
|
|
939
|
+
101,
|
|
940
|
+
95,
|
|
941
|
+
99,
|
|
942
|
+
111,
|
|
943
|
+
110,
|
|
944
|
+
102,
|
|
945
|
+
105,
|
|
946
|
+
103
|
|
947
|
+
]
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
"kind": "account",
|
|
951
|
+
"path": "token_mint"
|
|
952
|
+
}
|
|
953
|
+
]
|
|
954
|
+
}
|
|
955
|
+
},
|
|
956
|
+
{
|
|
957
|
+
"name": "token_mint",
|
|
958
|
+
"docs": [
|
|
959
|
+
"The token mint this fee configuration is for"
|
|
960
|
+
]
|
|
961
|
+
},
|
|
962
|
+
{
|
|
963
|
+
"name": "fee_vault",
|
|
964
|
+
"docs": [
|
|
965
|
+
"The fee vault — must be drained before changing recipients."
|
|
966
|
+
],
|
|
967
|
+
"pda": {
|
|
968
|
+
"seeds": [
|
|
969
|
+
{
|
|
970
|
+
"kind": "const",
|
|
971
|
+
"value": [
|
|
972
|
+
102,
|
|
973
|
+
101,
|
|
974
|
+
101,
|
|
975
|
+
95,
|
|
976
|
+
118,
|
|
977
|
+
97,
|
|
978
|
+
117,
|
|
979
|
+
108,
|
|
980
|
+
116
|
|
981
|
+
]
|
|
982
|
+
},
|
|
983
|
+
{
|
|
984
|
+
"kind": "account",
|
|
985
|
+
"path": "fee_config"
|
|
986
|
+
}
|
|
987
|
+
]
|
|
988
|
+
}
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
"name": "token_fee_vault",
|
|
992
|
+
"docs": [
|
|
993
|
+
"The token fee vault ATA for the fee vault.",
|
|
994
|
+
"Required when updating recipients to verify token fees have been drained."
|
|
995
|
+
],
|
|
996
|
+
"optional": true
|
|
997
|
+
}
|
|
998
|
+
],
|
|
999
|
+
"args": [
|
|
1000
|
+
{
|
|
1001
|
+
"name": "args",
|
|
1002
|
+
"type": {
|
|
1003
|
+
"defined": {
|
|
1004
|
+
"name": "UpdateFeeConfigArgs"
|
|
1005
|
+
}
|
|
1006
|
+
}
|
|
1007
|
+
}
|
|
1008
|
+
]
|
|
1009
|
+
}
|
|
1010
|
+
],
|
|
1011
|
+
"accounts": [
|
|
1012
|
+
{
|
|
1013
|
+
"name": "UnifiedFeeConfiguration",
|
|
1014
|
+
"discriminator": [
|
|
1015
|
+
88,
|
|
1016
|
+
134,
|
|
1017
|
+
79,
|
|
1018
|
+
0,
|
|
1019
|
+
82,
|
|
1020
|
+
145,
|
|
1021
|
+
69,
|
|
1022
|
+
108
|
|
1023
|
+
]
|
|
1024
|
+
}
|
|
1025
|
+
],
|
|
1026
|
+
"events": [
|
|
1027
|
+
{
|
|
1028
|
+
"name": "FeeConfigRevoked",
|
|
1029
|
+
"discriminator": [
|
|
1030
|
+
200,
|
|
1031
|
+
213,
|
|
1032
|
+
93,
|
|
1033
|
+
81,
|
|
1034
|
+
46,
|
|
1035
|
+
208,
|
|
1036
|
+
148,
|
|
1037
|
+
28
|
|
1038
|
+
]
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
"name": "FeesClaimed",
|
|
1042
|
+
"discriminator": [
|
|
1043
|
+
22,
|
|
1044
|
+
104,
|
|
1045
|
+
110,
|
|
1046
|
+
222,
|
|
1047
|
+
38,
|
|
1048
|
+
157,
|
|
1049
|
+
14,
|
|
1050
|
+
62
|
|
1051
|
+
]
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
"name": "FeesDistributed",
|
|
1055
|
+
"discriminator": [
|
|
1056
|
+
209,
|
|
1057
|
+
24,
|
|
1058
|
+
174,
|
|
1059
|
+
200,
|
|
1060
|
+
236,
|
|
1061
|
+
90,
|
|
1062
|
+
154,
|
|
1063
|
+
55
|
|
1064
|
+
]
|
|
1065
|
+
}
|
|
1066
|
+
],
|
|
1067
|
+
"errors": [
|
|
1068
|
+
{
|
|
1069
|
+
"code": 6000,
|
|
1070
|
+
"name": "ArithmeticOverflow",
|
|
1071
|
+
"msg": "Arithmetic overflow"
|
|
1072
|
+
},
|
|
1073
|
+
{
|
|
1074
|
+
"code": 6001,
|
|
1075
|
+
"name": "InvalidFeeConfiguration",
|
|
1076
|
+
"msg": "Invalid fee configuration: recipients must sum to 10,000 basis points"
|
|
1077
|
+
},
|
|
1078
|
+
{
|
|
1079
|
+
"code": 6002,
|
|
1080
|
+
"name": "TooManyFeeRecipients",
|
|
1081
|
+
"msg": "Too many fee recipients: maximum is 10"
|
|
1082
|
+
},
|
|
1083
|
+
{
|
|
1084
|
+
"code": 6003,
|
|
1085
|
+
"name": "DuplicateFeeRecipient",
|
|
1086
|
+
"msg": "Duplicate fee recipient"
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
"code": 6004,
|
|
1090
|
+
"name": "ConfigurationLocked",
|
|
1091
|
+
"msg": "Fee configuration is locked and cannot be modified"
|
|
1092
|
+
},
|
|
1093
|
+
{
|
|
1094
|
+
"code": 6005,
|
|
1095
|
+
"name": "AlreadyRevoked",
|
|
1096
|
+
"msg": "Creator fees are already revoked"
|
|
1097
|
+
},
|
|
1098
|
+
{
|
|
1099
|
+
"code": 6006,
|
|
1100
|
+
"name": "CannotUnrevoke",
|
|
1101
|
+
"msg": "Cannot un-revoke creator fees"
|
|
1102
|
+
},
|
|
1103
|
+
{
|
|
1104
|
+
"code": 6007,
|
|
1105
|
+
"name": "Unauthorized",
|
|
1106
|
+
"msg": "Unauthorized: only update authority can perform this action"
|
|
1107
|
+
},
|
|
1108
|
+
{
|
|
1109
|
+
"code": 6008,
|
|
1110
|
+
"name": "FeesMustBeWithdrawn",
|
|
1111
|
+
"msg": "Fee vault has undistributed fees that must be withdrawn first"
|
|
1112
|
+
},
|
|
1113
|
+
{
|
|
1114
|
+
"code": 6009,
|
|
1115
|
+
"name": "NotRecipientsMode",
|
|
1116
|
+
"msg": "Not in multi-recipient mode"
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
"code": 6010,
|
|
1120
|
+
"name": "InvalidRemainingAccounts",
|
|
1121
|
+
"msg": "Invalid remaining accounts count"
|
|
1122
|
+
},
|
|
1123
|
+
{
|
|
1124
|
+
"code": 6011,
|
|
1125
|
+
"name": "InvalidRecipientVault",
|
|
1126
|
+
"msg": "Invalid recipient vault"
|
|
1127
|
+
},
|
|
1128
|
+
{
|
|
1129
|
+
"code": 6012,
|
|
1130
|
+
"name": "ConfigurationAlreadyExists",
|
|
1131
|
+
"msg": "Fee configuration already exists for this token"
|
|
1132
|
+
},
|
|
1133
|
+
{
|
|
1134
|
+
"code": 6013,
|
|
1135
|
+
"name": "UnauthorizedCaller",
|
|
1136
|
+
"msg": "Unauthorized caller: only the liquid program can initialize fee configs"
|
|
1137
|
+
},
|
|
1138
|
+
{
|
|
1139
|
+
"code": 6014,
|
|
1140
|
+
"name": "NothingToClaim",
|
|
1141
|
+
"msg": "Nothing to claim"
|
|
1142
|
+
},
|
|
1143
|
+
{
|
|
1144
|
+
"code": 6015,
|
|
1145
|
+
"name": "TokenFeeVaultRequired",
|
|
1146
|
+
"msg": "Token fee vault must be provided and match expected ATA"
|
|
1147
|
+
},
|
|
1148
|
+
{
|
|
1149
|
+
"code": 6016,
|
|
1150
|
+
"name": "InvalidQuoteMint",
|
|
1151
|
+
"msg": "Invalid quote mint"
|
|
1152
|
+
}
|
|
1153
|
+
],
|
|
1154
|
+
"types": [
|
|
1155
|
+
{
|
|
1156
|
+
"name": "FeeConfigRevoked",
|
|
1157
|
+
"docs": [
|
|
1158
|
+
"Event emitted when a fee configuration is permanently revoked (enabling buy-and-burn)."
|
|
1159
|
+
],
|
|
1160
|
+
"type": {
|
|
1161
|
+
"kind": "struct",
|
|
1162
|
+
"fields": [
|
|
1163
|
+
{
|
|
1164
|
+
"name": "fee_config",
|
|
1165
|
+
"docs": [
|
|
1166
|
+
"The fee configuration PDA."
|
|
1167
|
+
],
|
|
1168
|
+
"type": "pubkey"
|
|
1169
|
+
},
|
|
1170
|
+
{
|
|
1171
|
+
"name": "token_mint",
|
|
1172
|
+
"docs": [
|
|
1173
|
+
"The token mint this configuration applies to."
|
|
1174
|
+
],
|
|
1175
|
+
"type": "pubkey"
|
|
1176
|
+
},
|
|
1177
|
+
{
|
|
1178
|
+
"name": "revoker",
|
|
1179
|
+
"docs": [
|
|
1180
|
+
"The authority who revoked the configuration."
|
|
1181
|
+
],
|
|
1182
|
+
"type": "pubkey"
|
|
1183
|
+
},
|
|
1184
|
+
{
|
|
1185
|
+
"name": "timestamp",
|
|
1186
|
+
"docs": [
|
|
1187
|
+
"Timestamp of the revocation."
|
|
1188
|
+
],
|
|
1189
|
+
"type": "i64"
|
|
1190
|
+
}
|
|
1191
|
+
]
|
|
1192
|
+
}
|
|
1193
|
+
},
|
|
1194
|
+
{
|
|
1195
|
+
"name": "FeeMode",
|
|
1196
|
+
"repr": {
|
|
1197
|
+
"kind": "rust"
|
|
1198
|
+
},
|
|
1199
|
+
"type": {
|
|
1200
|
+
"kind": "enum",
|
|
1201
|
+
"variants": [
|
|
1202
|
+
{
|
|
1203
|
+
"name": "Recipients"
|
|
1204
|
+
},
|
|
1205
|
+
{
|
|
1206
|
+
"name": "Revoked"
|
|
1207
|
+
}
|
|
1208
|
+
]
|
|
1209
|
+
}
|
|
1210
|
+
},
|
|
1211
|
+
{
|
|
1212
|
+
"name": "FeeRecipient",
|
|
1213
|
+
"repr": {
|
|
1214
|
+
"kind": "c"
|
|
1215
|
+
},
|
|
1216
|
+
"type": {
|
|
1217
|
+
"kind": "struct",
|
|
1218
|
+
"fields": [
|
|
1219
|
+
{
|
|
1220
|
+
"name": "pubkey",
|
|
1221
|
+
"type": "pubkey"
|
|
1222
|
+
},
|
|
1223
|
+
{
|
|
1224
|
+
"name": "basis_points",
|
|
1225
|
+
"type": "u16"
|
|
1226
|
+
},
|
|
1227
|
+
{
|
|
1228
|
+
"name": "_padding",
|
|
1229
|
+
"type": {
|
|
1230
|
+
"array": [
|
|
1231
|
+
"u8",
|
|
1232
|
+
6
|
|
1233
|
+
]
|
|
1234
|
+
}
|
|
1235
|
+
}
|
|
1236
|
+
]
|
|
1237
|
+
}
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
"name": "FeesClaimed",
|
|
1241
|
+
"docs": [
|
|
1242
|
+
"Event emitted when a recipient claims accumulated fees from their vault."
|
|
1243
|
+
],
|
|
1244
|
+
"type": {
|
|
1245
|
+
"kind": "struct",
|
|
1246
|
+
"fields": [
|
|
1247
|
+
{
|
|
1248
|
+
"name": "fee_config",
|
|
1249
|
+
"docs": [
|
|
1250
|
+
"The fee configuration PDA."
|
|
1251
|
+
],
|
|
1252
|
+
"type": "pubkey"
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1255
|
+
"name": "mint",
|
|
1256
|
+
"docs": [
|
|
1257
|
+
"The mint of the claimed tokens. `Pubkey::default()` for native SOL."
|
|
1258
|
+
],
|
|
1259
|
+
"type": "pubkey"
|
|
1260
|
+
},
|
|
1261
|
+
{
|
|
1262
|
+
"name": "amount",
|
|
1263
|
+
"docs": [
|
|
1264
|
+
"Amount claimed."
|
|
1265
|
+
],
|
|
1266
|
+
"type": "u64"
|
|
1267
|
+
},
|
|
1268
|
+
{
|
|
1269
|
+
"name": "recipient",
|
|
1270
|
+
"docs": [
|
|
1271
|
+
"The recipient who claimed."
|
|
1272
|
+
],
|
|
1273
|
+
"type": "pubkey"
|
|
1274
|
+
},
|
|
1275
|
+
{
|
|
1276
|
+
"name": "timestamp",
|
|
1277
|
+
"docs": [
|
|
1278
|
+
"Timestamp of the claim."
|
|
1279
|
+
],
|
|
1280
|
+
"type": "i64"
|
|
1281
|
+
}
|
|
1282
|
+
]
|
|
1283
|
+
}
|
|
1284
|
+
},
|
|
1285
|
+
{
|
|
1286
|
+
"name": "FeesDistributed",
|
|
1287
|
+
"docs": [
|
|
1288
|
+
"Event emitted when accumulated fees are distributed to recipients."
|
|
1289
|
+
],
|
|
1290
|
+
"type": {
|
|
1291
|
+
"kind": "struct",
|
|
1292
|
+
"fields": [
|
|
1293
|
+
{
|
|
1294
|
+
"name": "fee_config",
|
|
1295
|
+
"docs": [
|
|
1296
|
+
"The fee configuration PDA."
|
|
1297
|
+
],
|
|
1298
|
+
"type": "pubkey"
|
|
1299
|
+
},
|
|
1300
|
+
{
|
|
1301
|
+
"name": "mint",
|
|
1302
|
+
"docs": [
|
|
1303
|
+
"The mint of the distributed tokens. `Pubkey::default()` for native SOL."
|
|
1304
|
+
],
|
|
1305
|
+
"type": "pubkey"
|
|
1306
|
+
},
|
|
1307
|
+
{
|
|
1308
|
+
"name": "total_amount",
|
|
1309
|
+
"docs": [
|
|
1310
|
+
"Total amount distributed across all recipients."
|
|
1311
|
+
],
|
|
1312
|
+
"type": "u64"
|
|
1313
|
+
},
|
|
1314
|
+
{
|
|
1315
|
+
"name": "recipients_count",
|
|
1316
|
+
"docs": [
|
|
1317
|
+
"Number of recipients that received fees."
|
|
1318
|
+
],
|
|
1319
|
+
"type": "u8"
|
|
1320
|
+
},
|
|
1321
|
+
{
|
|
1322
|
+
"name": "distributor",
|
|
1323
|
+
"docs": [
|
|
1324
|
+
"The address that triggered the distribution."
|
|
1325
|
+
],
|
|
1326
|
+
"type": "pubkey"
|
|
1327
|
+
},
|
|
1328
|
+
{
|
|
1329
|
+
"name": "timestamp",
|
|
1330
|
+
"docs": [
|
|
1331
|
+
"Timestamp of the distribution."
|
|
1332
|
+
],
|
|
1333
|
+
"type": "i64"
|
|
1334
|
+
}
|
|
1335
|
+
]
|
|
1336
|
+
}
|
|
1337
|
+
},
|
|
1338
|
+
{
|
|
1339
|
+
"name": "InitFeeRecipient",
|
|
1340
|
+
"type": {
|
|
1341
|
+
"kind": "struct",
|
|
1342
|
+
"fields": [
|
|
1343
|
+
{
|
|
1344
|
+
"name": "pubkey",
|
|
1345
|
+
"type": "pubkey"
|
|
1346
|
+
},
|
|
1347
|
+
{
|
|
1348
|
+
"name": "basis_points",
|
|
1349
|
+
"type": "u16"
|
|
1350
|
+
}
|
|
1351
|
+
]
|
|
1352
|
+
}
|
|
1353
|
+
},
|
|
1354
|
+
{
|
|
1355
|
+
"name": "InitializeFeeConfigArgs",
|
|
1356
|
+
"type": {
|
|
1357
|
+
"kind": "enum",
|
|
1358
|
+
"variants": [
|
|
1359
|
+
{
|
|
1360
|
+
"name": "Recipients",
|
|
1361
|
+
"fields": [
|
|
1362
|
+
{
|
|
1363
|
+
"name": "recipients",
|
|
1364
|
+
"type": {
|
|
1365
|
+
"vec": {
|
|
1366
|
+
"defined": {
|
|
1367
|
+
"name": "InitFeeRecipient"
|
|
1368
|
+
}
|
|
1369
|
+
}
|
|
1370
|
+
}
|
|
1371
|
+
}
|
|
1372
|
+
]
|
|
1373
|
+
},
|
|
1374
|
+
{
|
|
1375
|
+
"name": "Revoked"
|
|
1376
|
+
}
|
|
1377
|
+
]
|
|
1378
|
+
}
|
|
1379
|
+
},
|
|
1380
|
+
{
|
|
1381
|
+
"name": "UnifiedFeeConfiguration",
|
|
1382
|
+
"serialization": "bytemuckunsafe",
|
|
1383
|
+
"repr": {
|
|
1384
|
+
"kind": "c",
|
|
1385
|
+
"packed": true
|
|
1386
|
+
},
|
|
1387
|
+
"type": {
|
|
1388
|
+
"kind": "struct",
|
|
1389
|
+
"fields": [
|
|
1390
|
+
{
|
|
1391
|
+
"name": "creator",
|
|
1392
|
+
"docs": [
|
|
1393
|
+
"The creator who owns this fee configuration"
|
|
1394
|
+
],
|
|
1395
|
+
"type": "pubkey"
|
|
1396
|
+
},
|
|
1397
|
+
{
|
|
1398
|
+
"name": "token_mint",
|
|
1399
|
+
"docs": [
|
|
1400
|
+
"The token mint this configuration applies to.",
|
|
1401
|
+
"This is the key identifier that persists across migration from bonding curve to AMM."
|
|
1402
|
+
],
|
|
1403
|
+
"type": "pubkey"
|
|
1404
|
+
},
|
|
1405
|
+
{
|
|
1406
|
+
"name": "quote_mint",
|
|
1407
|
+
"docs": [
|
|
1408
|
+
"The quote token mint used for fee accumulation (e.g., WSOL for native curves, USDC for stable).",
|
|
1409
|
+
"`Pubkey::default()` indicates no token fee vault (Revoked-only configs)."
|
|
1410
|
+
],
|
|
1411
|
+
"type": "pubkey"
|
|
1412
|
+
},
|
|
1413
|
+
{
|
|
1414
|
+
"name": "fee_mode",
|
|
1415
|
+
"docs": [
|
|
1416
|
+
"Current fee mode"
|
|
1417
|
+
],
|
|
1418
|
+
"type": {
|
|
1419
|
+
"defined": {
|
|
1420
|
+
"name": "FeeMode"
|
|
1421
|
+
}
|
|
1422
|
+
}
|
|
1423
|
+
},
|
|
1424
|
+
{
|
|
1425
|
+
"name": "recipients_count",
|
|
1426
|
+
"docs": [
|
|
1427
|
+
"Number of active recipients in the recipients array"
|
|
1428
|
+
],
|
|
1429
|
+
"type": "u8"
|
|
1430
|
+
},
|
|
1431
|
+
{
|
|
1432
|
+
"name": "recipients",
|
|
1433
|
+
"docs": [
|
|
1434
|
+
"Recipients for Recipients mode (fixed array, use recipients_count for active length)"
|
|
1435
|
+
],
|
|
1436
|
+
"type": {
|
|
1437
|
+
"array": [
|
|
1438
|
+
{
|
|
1439
|
+
"defined": {
|
|
1440
|
+
"name": "FeeRecipient"
|
|
1441
|
+
}
|
|
1442
|
+
},
|
|
1443
|
+
10
|
|
1444
|
+
]
|
|
1445
|
+
}
|
|
1446
|
+
},
|
|
1447
|
+
{
|
|
1448
|
+
"name": "update_authority",
|
|
1449
|
+
"docs": [
|
|
1450
|
+
"Authority that can modify this configuration (initially creator)"
|
|
1451
|
+
],
|
|
1452
|
+
"type": "pubkey"
|
|
1453
|
+
},
|
|
1454
|
+
{
|
|
1455
|
+
"name": "bump",
|
|
1456
|
+
"docs": [
|
|
1457
|
+
"Bump seed for PDA derivation"
|
|
1458
|
+
],
|
|
1459
|
+
"type": "u8"
|
|
1460
|
+
}
|
|
1461
|
+
]
|
|
1462
|
+
}
|
|
1463
|
+
},
|
|
1464
|
+
{
|
|
1465
|
+
"name": "UpdateFeeConfigArgs",
|
|
1466
|
+
"type": {
|
|
1467
|
+
"kind": "struct",
|
|
1468
|
+
"fields": [
|
|
1469
|
+
{
|
|
1470
|
+
"name": "recipients",
|
|
1471
|
+
"docs": [
|
|
1472
|
+
"New recipients (optional, only valid for Recipients mode)"
|
|
1473
|
+
],
|
|
1474
|
+
"type": {
|
|
1475
|
+
"option": {
|
|
1476
|
+
"vec": {
|
|
1477
|
+
"defined": {
|
|
1478
|
+
"name": "UpdateFeeRecipient"
|
|
1479
|
+
}
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1482
|
+
}
|
|
1483
|
+
},
|
|
1484
|
+
{
|
|
1485
|
+
"name": "new_update_authority",
|
|
1486
|
+
"docs": [
|
|
1487
|
+
"New update authority (optional)"
|
|
1488
|
+
],
|
|
1489
|
+
"type": {
|
|
1490
|
+
"option": "pubkey"
|
|
1491
|
+
}
|
|
1492
|
+
}
|
|
1493
|
+
]
|
|
1494
|
+
}
|
|
1495
|
+
},
|
|
1496
|
+
{
|
|
1497
|
+
"name": "UpdateFeeRecipient",
|
|
1498
|
+
"type": {
|
|
1499
|
+
"kind": "struct",
|
|
1500
|
+
"fields": [
|
|
1501
|
+
{
|
|
1502
|
+
"name": "pubkey",
|
|
1503
|
+
"type": "pubkey"
|
|
1504
|
+
},
|
|
1505
|
+
{
|
|
1506
|
+
"name": "basis_points",
|
|
1507
|
+
"type": "u16"
|
|
1508
|
+
}
|
|
1509
|
+
]
|
|
1510
|
+
}
|
|
1511
|
+
}
|
|
1512
|
+
]
|
|
1513
|
+
}
|