@coinbarrel/sdk 3.1.4 → 3.1.5
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/dist/index.d.ts +31 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -5
- package/dist/index.js.map +1 -1
- package/dist/rewards.d.ts +30 -1
- package/dist/rewards.d.ts.map +1 -1
- package/dist/rewards.js +158 -2
- package/dist/rewards.js.map +1 -1
- package/dist/types.d.ts +26 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ import { Connection, Keypair, PublicKey, TransactionInstruction } from '@solana/
|
|
|
30
30
|
import { type Network } from './constants.js';
|
|
31
31
|
import * as pda from './pda.js';
|
|
32
32
|
import * as metadata from './metadata.js';
|
|
33
|
-
import type { CoinBarrelConfig, BondingCurveState, PoolState, MarketInfo, BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, SwapSolToTokenParams, SwapTokenToSolParams, SwapTokenToSolMaxParams, CreateBarrelTokenParams, CreateInstantTokenParams, BuyQuote, SellQuote, SwapQuote } from './types.js';
|
|
33
|
+
import type { CoinBarrelConfig, BondingCurveState, PoolState, MarketInfo, BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, SwapSolToTokenParams, SwapTokenToSolParams, SwapTokenToSolMaxParams, CreateBarrelTokenParams, CreateInstantTokenParams, BuyQuote, SellQuote, SwapQuote, PendingHolderRewards } from './types.js';
|
|
34
34
|
export * from './constants.js';
|
|
35
35
|
export * from './types.js';
|
|
36
36
|
export * from './pda.js';
|
|
@@ -41,7 +41,7 @@ export type { MigrationPDAs, InstantTokenPDAs } from './pda.js';
|
|
|
41
41
|
export { getSwapSolToTokenQuote, getSwapTokenToSolQuote } from './pool.js';
|
|
42
42
|
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata, type TokenMetadata, type TokenMetadataJson, } from './metadata.js';
|
|
43
43
|
export { buildCreateBarrelTokenInstruction, buildCreateInstantTokenInstruction } from './create.js';
|
|
44
|
-
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, } from './rewards.js';
|
|
44
|
+
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, buildClaimCreatorTraderFeesInstruction, getPendingHolderRewards, } from './rewards.js';
|
|
45
45
|
export { buildConfigureBondingFeesInstruction, type ConfigureBondingFeesParams, } from './admin.js';
|
|
46
46
|
/**
|
|
47
47
|
* CoinBarrel SDK - Main entry point
|
|
@@ -156,12 +156,13 @@ export declare class CoinBarrel {
|
|
|
156
156
|
* Creates an instant token for direct Meteora DAMM V2 pool launch.
|
|
157
157
|
* Unlike bonding curve tokens, these launch directly to Meteora with no graduation phase.
|
|
158
158
|
*
|
|
159
|
-
* Returns instructions and
|
|
160
|
-
*
|
|
159
|
+
* Returns instructions and TWO keypairs that must sign the transaction:
|
|
160
|
+
* - mintKeypair: The new token mint
|
|
161
|
+
* - adminTokenAccountKeypair: The admin's token account that receives all tokens
|
|
161
162
|
*
|
|
162
163
|
* @example
|
|
163
164
|
* ```typescript
|
|
164
|
-
* const { instructions, mintKeypair,
|
|
165
|
+
* const { instructions, mintKeypair, adminTokenAccountKeypair } = sdk.buildCreateInstantTokenInstruction({
|
|
165
166
|
* payer: wallet.publicKey,
|
|
166
167
|
* creator: wallet.publicKey,
|
|
167
168
|
* name: "My Token",
|
|
@@ -171,20 +172,42 @@ export declare class CoinBarrel {
|
|
|
171
172
|
* traderRewardsShareBps: 2500, // 25% to holders
|
|
172
173
|
* });
|
|
173
174
|
*
|
|
174
|
-
* //
|
|
175
|
+
* // Both keypairs must sign the transaction
|
|
175
176
|
* ```
|
|
176
177
|
*/
|
|
177
178
|
buildCreateInstantTokenInstruction(params: CreateInstantTokenParams): {
|
|
178
179
|
instructions: TransactionInstruction[];
|
|
179
180
|
mintKeypair: Keypair;
|
|
180
|
-
/** @deprecated Use adminTokenAccount instead */
|
|
181
181
|
adminTokenAccountKeypair: Keypair;
|
|
182
|
-
adminTokenAccount: PublicKey;
|
|
183
182
|
};
|
|
184
183
|
/** Get instant token PDA */
|
|
185
184
|
getInstantTokenPda(mint: PublicKey): PublicKey;
|
|
186
185
|
/** Get all instant token PDAs */
|
|
187
186
|
getInstantTokenPDAs(mint: PublicKey): pda.InstantTokenPDAs;
|
|
187
|
+
/**
|
|
188
|
+
* Get pending holder rewards for a user
|
|
189
|
+
*
|
|
190
|
+
* Queries on-chain state and calculates the exact pending rewards using
|
|
191
|
+
* the cumulative reward model.
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```typescript
|
|
195
|
+
* const pending = await sdk.getPendingHolderRewards(tokenMint, holder);
|
|
196
|
+
* if (pending) {
|
|
197
|
+
* console.log(`Pending: ${pending.pendingLamports / 1e9} SOL`);
|
|
198
|
+
* // Build claim instructions directly from result
|
|
199
|
+
* const instructions = await sdk.buildClaimInstructions(pending);
|
|
200
|
+
* }
|
|
201
|
+
* ```
|
|
202
|
+
*/
|
|
203
|
+
getPendingHolderRewards(tokenMint: PublicKey, holder: PublicKey): Promise<PendingHolderRewards | null>;
|
|
204
|
+
/**
|
|
205
|
+
* Build claim instructions from pending rewards result
|
|
206
|
+
*
|
|
207
|
+
* Automatically selects the correct claim instruction (curve vs pool)
|
|
208
|
+
* based on the source in the pending rewards result.
|
|
209
|
+
*/
|
|
210
|
+
buildClaimInstructions(pending: PendingHolderRewards): Promise<TransactionInstruction[]>;
|
|
188
211
|
/**
|
|
189
212
|
* Build claim holder rewards instruction for bonding curve
|
|
190
213
|
*
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAqC,KAAK,OAAO,EAAoB,MAAM,gBAAgB,CAAC;AACnG,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAIhC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAG1C,OAAO,KAAK,EACX,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EAGxB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,MAAM,YAAY,CAAC;AAIpB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,OAAO,EACN,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,mBAAmB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,uCAAuC,GACvC,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AACjH,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iCAAiC,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,EACN,uCAAuC,EACvC,kCAAkC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAqC,KAAK,OAAO,EAAoB,MAAM,gBAAgB,CAAC;AACnG,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAIhC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAG1C,OAAO,KAAK,EACX,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EAGxB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,oBAAoB,EACpB,MAAM,YAAY,CAAC;AAIpB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,OAAO,EACN,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,mBAAmB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,uCAAuC,GACvC,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AACjH,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iCAAiC,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,EACN,uCAAuC,EACvC,kCAAkC,EAClC,sCAAsC,EACtC,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,oCAAoC,EACpC,KAAK,0BAA0B,GAC/B,MAAM,YAAY,CAAC;AAIpB;;;;;;;;;;;GAWG;AACH,qBAAa,UAAU;IACtB,4BAA4B;IAC5B,SAAgB,UAAU,EAAE,UAAU,CAAC;IACvC,kCAAkC;IAClC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,yCAAyC;IACzC,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,kDAAkD;IAClD,SAAgB,iBAAiB,EAAE,SAAS,CAAC;IAE7C,+BAA+B;IAC/B,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,0BAA0B;IAC1B,SAAgB,IAAI,EAAE,UAAU,CAAC;gBAErB,MAAM,EAAE,gBAAgB;IAYpC;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIrE;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAI5E;;;OAGG;IACG,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAavD;;OAEG;IACG,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAOtD;;;;;;;;OAQG;IACG,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;IAIpF;;;;;;;;OAQG;IACG,oBAAoB,CACzB,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAI7C;;;;;;;;OAQG;IACG,qBAAqB,CAC1B,KAAK,EAAE,SAAS,EAAE,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAMtD,wCAAwC;IACxC,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAInD,+BAA+B;IAC/B,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAI3C,+CAA+C;IAC/C,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS;IAItE,4CAA4C;IAC5C,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAM/C;;;;;;;;;;;;;;;;;;OAkBG;IACH,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,GAAG;QAC7D,YAAY,EAAE,sBAAsB,EAAE,CAAC;QACvC,WAAW,EAAE,OAAO,CAAC;KACrB;IAID;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,kCAAkC,CAAC,MAAM,EAAE,wBAAwB,GAAG;QACrE,YAAY,EAAE,sBAAsB,EAAE,CAAC;QACvC,WAAW,EAAE,OAAO,CAAC;QACrB,wBAAwB,EAAE,OAAO,CAAC;KAClC;IAID,4BAA4B;IAC5B,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAI9C,iCAAiC;IACjC,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,GAAG,CAAC,gBAAgB;IAM1D;;;;;;;;;;;;;;;OAeG;IACG,uBAAuB,CAC5B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,SAAS,GACf,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IASvC;;;;;OAKG;IACG,sBAAsB,CAC3B,OAAO,EAAE,oBAAoB,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAQpC;;;;OAIG;IACG,iCAAiC,CACtC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAQpC;;;;OAIG;IACG,gCAAgC,CACrC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,EAAE,CAAC;CAOpC;AAID;;;GAGG;AACH,cAAM,WAAW;IACJ,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,UAAU;IAEnC;;OAEG;IACG,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAIvE;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAIpF;;;;OAIG;IACG,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAIxF;;;;;;;OAOG;IACG,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAItF;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAIxF;;OAEG;IACG,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAI9F;;;;;;OAMG;IACG,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAStF;;OAEG;IACG,gCAAgC,CACrC,MAAM,EAAE,gBAAgB,GACtB,OAAO,CAAC,sBAAsB,EAAE,CAAC;CAGpC;AAID;;;GAGG;AACH,cAAM,UAAU;IACH,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,UAAU;IAEnC;;OAEG;IACG,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAI/D;;OAEG;IACG,WAAW,CAChB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAI/D;;OAEG;IACG,sBAAsB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAShG;;OAEG;IACG,sBAAsB,CAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAS5B;;;;OAIG;IACG,8BAA8B,CACnC,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAIpC;;OAEG;IACG,8BAA8B,CACnC,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAIpC;;OAEG;IACG,iCAAiC,CACtC,MAAM,EAAE,uBAAuB,GAC7B,OAAO,CAAC,sBAAsB,EAAE,CAAC;CAGpC;AAID;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAExE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAE1E"}
|
package/dist/index.js
CHANGED
|
@@ -45,7 +45,7 @@ export { getMigrationPDAs, getInstantTokenPDAs, getInstantTokenPda, getInstantMi
|
|
|
45
45
|
export { getSwapSolToTokenQuote, getSwapTokenToSolQuote } from './pool.js';
|
|
46
46
|
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata, } from './metadata.js';
|
|
47
47
|
export { buildCreateBarrelTokenInstruction, buildCreateInstantTokenInstruction } from './create.js';
|
|
48
|
-
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, } from './rewards.js';
|
|
48
|
+
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, buildClaimCreatorTraderFeesInstruction, getPendingHolderRewards, } from './rewards.js';
|
|
49
49
|
export { buildConfigureBondingFeesInstruction, } from './admin.js';
|
|
50
50
|
// ============= SDK Class =============
|
|
51
51
|
/**
|
|
@@ -197,12 +197,13 @@ export class CoinBarrel {
|
|
|
197
197
|
* Creates an instant token for direct Meteora DAMM V2 pool launch.
|
|
198
198
|
* Unlike bonding curve tokens, these launch directly to Meteora with no graduation phase.
|
|
199
199
|
*
|
|
200
|
-
* Returns instructions and
|
|
201
|
-
*
|
|
200
|
+
* Returns instructions and TWO keypairs that must sign the transaction:
|
|
201
|
+
* - mintKeypair: The new token mint
|
|
202
|
+
* - adminTokenAccountKeypair: The admin's token account that receives all tokens
|
|
202
203
|
*
|
|
203
204
|
* @example
|
|
204
205
|
* ```typescript
|
|
205
|
-
* const { instructions, mintKeypair,
|
|
206
|
+
* const { instructions, mintKeypair, adminTokenAccountKeypair } = sdk.buildCreateInstantTokenInstruction({
|
|
206
207
|
* payer: wallet.publicKey,
|
|
207
208
|
* creator: wallet.publicKey,
|
|
208
209
|
* name: "My Token",
|
|
@@ -212,7 +213,7 @@ export class CoinBarrel {
|
|
|
212
213
|
* traderRewardsShareBps: 2500, // 25% to holders
|
|
213
214
|
* });
|
|
214
215
|
*
|
|
215
|
-
* //
|
|
216
|
+
* // Both keypairs must sign the transaction
|
|
216
217
|
* ```
|
|
217
218
|
*/
|
|
218
219
|
buildCreateInstantTokenInstruction(params) {
|
|
@@ -227,6 +228,39 @@ export class CoinBarrel {
|
|
|
227
228
|
return pda.getInstantTokenPDAs(mint, this.programId);
|
|
228
229
|
}
|
|
229
230
|
// ============= Rewards =============
|
|
231
|
+
/**
|
|
232
|
+
* Get pending holder rewards for a user
|
|
233
|
+
*
|
|
234
|
+
* Queries on-chain state and calculates the exact pending rewards using
|
|
235
|
+
* the cumulative reward model.
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```typescript
|
|
239
|
+
* const pending = await sdk.getPendingHolderRewards(tokenMint, holder);
|
|
240
|
+
* if (pending) {
|
|
241
|
+
* console.log(`Pending: ${pending.pendingLamports / 1e9} SOL`);
|
|
242
|
+
* // Build claim instructions directly from result
|
|
243
|
+
* const instructions = await sdk.buildClaimInstructions(pending);
|
|
244
|
+
* }
|
|
245
|
+
* ```
|
|
246
|
+
*/
|
|
247
|
+
async getPendingHolderRewards(tokenMint, holder) {
|
|
248
|
+
return rewards.getPendingHolderRewards(this.connection, tokenMint, holder, this.programId);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Build claim instructions from pending rewards result
|
|
252
|
+
*
|
|
253
|
+
* Automatically selects the correct claim instruction (curve vs pool)
|
|
254
|
+
* based on the source in the pending rewards result.
|
|
255
|
+
*/
|
|
256
|
+
async buildClaimInstructions(pending) {
|
|
257
|
+
if (pending.source === 'curve') {
|
|
258
|
+
return this.buildClaimRewardsCurveInstruction(pending.tokenMint, pending.holder);
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
return this.buildClaimRewardsPoolInstruction(pending.tokenMint, pending.holder);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
230
264
|
/**
|
|
231
265
|
* Build claim holder rewards instruction for bonding curve
|
|
232
266
|
*
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAgB,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAgB,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAsBxC,yCAAyC;AAEzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,OAAO,EACN,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,mBAAmB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,uCAAuC,EAAE,mDAAmD;EAC5F,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAEjH,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,GAGrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iCAAiC,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,EACN,uCAAuC,EACvC,kCAAkC,EAClC,sCAAsC,EACtC,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,oCAAoC,GAEpC,MAAM,YAAY,CAAC;AAEpB,wCAAwC;AAExC;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,UAAU;IACtB,4BAA4B;IACZ,UAAU,CAAa;IACvC,kCAAkC;IAClB,OAAO,CAAU;IACjC,yCAAyC;IACzB,SAAS,CAAY;IACrC,kDAAkD;IAClC,iBAAiB,CAAY;IAE7C,+BAA+B;IACf,KAAK,CAAc;IACnC,0BAA0B;IACV,IAAI,CAAa;IAEjC,YAAY,MAAwB;QACnC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE9D,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,0CAA0C;IAE1C;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,SAAoB;QACvC,OAAO,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,SAAoB,EAAE,IAAe;QACzD,OAAO,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,SAAoB;QACnC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CACrD,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,SAAS,CACd,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9B,yDAAyD;QACzD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,OAAO,SAAS,KAAK,IAAI,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,OAAO,SAAS,KAAK,IAAI,CAAC;IAC3B,CAAC;IAED,6CAA6C;IAE7C;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAoB;QAC1C,OAAO,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,oBAAoB,CACzB,SAAoB,EACpB,OAAgC;QAEhC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,qBAAqB,CAC1B,KAAkB;QAElB,OAAO,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,0CAA0C;IAE1C,wCAAwC;IACxC,kBAAkB,CAAC,SAAoB;QACtC,OAAO,GAAG,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED,+BAA+B;IAC/B,UAAU,CAAC,SAAoB;QAC9B,OAAO,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,+CAA+C;IAC/C,kBAAkB,CAAC,SAAoB,EAAE,MAAiB;QACzD,OAAO,GAAG,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;IAED,4CAA4C;IAC5C,cAAc,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,6CAA6C;IAE7C;;;;;;;;;;;;;;;;;;OAkBG;IACH,2BAA2B,CAAC,MAA+B;QAI1D,OAAO,MAAM,CAAC,iCAAiC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,kCAAkC,CAAC,MAAgC;QAKlE,OAAO,MAAM,CAAC,kCAAkC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACxF,CAAC;IAED,4BAA4B;IAC5B,kBAAkB,CAAC,IAAe;QACjC,OAAO,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,iCAAiC;IACjC,mBAAmB,CAAC,IAAe;QAClC,OAAO,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;IAED,sCAAsC;IAEtC;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,uBAAuB,CAC5B,SAAoB,EACpB,MAAiB;QAEjB,OAAO,OAAO,CAAC,uBAAuB,CACrC,IAAI,CAAC,UAAU,EACf,SAAS,EACT,MAAM,EACN,IAAI,CAAC,SAAS,CACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,sBAAsB,CAC3B,OAA6B;QAE7B,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,iCAAiC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACP,OAAO,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACjF,CAAC;IACF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iCAAiC,CACtC,SAAoB,EACpB,MAAiB;QAEjB,OAAO,OAAO,CAAC,uCAAuC,CACrD,IAAI,CAAC,UAAU,EACf,EAAE,SAAS,EAAE,MAAM,EAAE,EACrB,IAAI,CAAC,SAAS,CACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gCAAgC,CACrC,SAAoB,EACpB,MAAiB;QAEjB,OAAO,OAAO,CAAC,kCAAkC,CAChD,IAAI,CAAC,UAAU,EACf,EAAE,SAAS,EAAE,MAAM,EAAE,EACrB,IAAI,CAAC,SAAS,CACd,CAAC;IACH,CAAC;CACD;AAED,2CAA2C;AAE3C;;;GAGG;AACH,MAAM,WAAW;IACI;IAApB,YAAoB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAAG,CAAC;IAEvC;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,SAAoB,EAAE,SAAiB;QACxD,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,SAAoB,EAAE,WAAmB;QAC3D,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAwB;QACjD,OAAO,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAAyB;QACnD,OAAO,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAAC,MAA4B;QACzD,OAAO,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAoB,EAAE,UAAkB;QAClE,OAAO,KAAK,CAAC,oBAAoB,CAChC,IAAI,CAAC,GAAG,CAAC,UAAU,EACnB,SAAS,EACT,UAAU,EACV,IAAI,CAAC,GAAG,CAAC,SAAS,CAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gCAAgC,CACrC,MAAwB;QAExB,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;CACD;AAED,0CAA0C;AAE1C;;;GAGG;AACH,MAAM,UAAU;IACK;IAApB,YAAoB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAAG,CAAC;IAEvC;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAoB;QAClC,OAAO,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAChB,SAAoB;QAEpB,OAAO,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,SAAoB,EAAE,SAAiB;QACnE,OAAO,IAAI,CAAC,sBAAsB,CACjC,IAAI,CAAC,GAAG,CAAC,UAAU,EACnB,SAAS,EACT,SAAS,EACT,IAAI,CAAC,GAAG,CAAC,SAAS,CAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAC3B,SAAoB,EACpB,WAAmB;QAEnB,OAAO,IAAI,CAAC,sBAAsB,CACjC,IAAI,CAAC,GAAG,CAAC,UAAU,EACnB,SAAS,EACT,WAAW,EACX,IAAI,CAAC,GAAG,CAAC,SAAS,CAClB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,8BAA8B,CACnC,MAA4B;QAE5B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,8BAA8B,CACnC,MAA4B;QAE5B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iCAAiC,CACtC,MAA+B;QAE/B,OAAO,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAChG,CAAC;CACD;AAED,gDAAgD;AAEhD;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACxC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,WAAmB,CAAC;IAC/D,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,WAAmB,CAAC;IACjE,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;AAC3C,CAAC"}
|
package/dist/rewards.d.ts
CHANGED
|
@@ -3,7 +3,28 @@
|
|
|
3
3
|
* Claim accumulated holder rewards from bonding curves and AMM pools
|
|
4
4
|
*/
|
|
5
5
|
import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
6
|
-
import type { ClaimHolderRewardsCurveParams, ClaimHolderRewardsParams } from './types.js';
|
|
6
|
+
import type { ClaimHolderRewardsCurveParams, ClaimHolderRewardsParams, ClaimCreatorTraderFeesParams, PendingHolderRewards } from './types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Get pending holder rewards for a user
|
|
9
|
+
*
|
|
10
|
+
* Queries on-chain state and calculates the exact pending rewards using
|
|
11
|
+
* the cumulative reward model: pending = balance * (stored - paid) / PRECISION + owed
|
|
12
|
+
*
|
|
13
|
+
* @param connection - Solana RPC connection
|
|
14
|
+
* @param tokenMint - Token mint address
|
|
15
|
+
* @param holder - Holder's wallet address
|
|
16
|
+
* @param programId - CoinBarrel program ID
|
|
17
|
+
* @returns Pending rewards info, or null if no rewards account exists
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const pending = await getPendingHolderRewards(connection, tokenMint, holder, programId);
|
|
22
|
+
* if (pending) {
|
|
23
|
+
* console.log(`Pending: ${pending.pendingLamports / 1e9} SOL`);
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function getPendingHolderRewards(connection: Connection, tokenMint: PublicKey, holder: PublicKey, programId: PublicKey): Promise<PendingHolderRewards | null>;
|
|
7
28
|
/**
|
|
8
29
|
* Build claim_holder_rewards_curve instruction
|
|
9
30
|
*
|
|
@@ -18,4 +39,12 @@ export declare function buildClaimHolderRewardsCurveInstruction(connection: Conn
|
|
|
18
39
|
* Rewards are paid in WSOL which is then unwrapped to SOL.
|
|
19
40
|
*/
|
|
20
41
|
export declare function buildClaimHolderRewardsInstruction(connection: Connection, params: ClaimHolderRewardsParams, programId: PublicKey): Promise<TransactionInstruction[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Build claim_creator_trader_fees instruction
|
|
44
|
+
*
|
|
45
|
+
* Claims accumulated creator/trader fees from an AMM pool (post-graduation).
|
|
46
|
+
* Only the creator_fee_recipient can claim these fees.
|
|
47
|
+
* Fees are paid in WSOL which is then unwrapped to SOL.
|
|
48
|
+
*/
|
|
49
|
+
export declare function buildClaimCreatorTraderFeesInstruction(connection: Connection, params: ClaimCreatorTraderFeesParams, programId: PublicKey): Promise<TransactionInstruction[]>;
|
|
21
50
|
//# sourceMappingURL=rewards.d.ts.map
|
package/dist/rewards.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewards.d.ts","sourceRoot":"","sources":["../src/rewards.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAC,UAAU,EAAE,SAAS,EAAiB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAY9F,OAAO,KAAK,EAAC,6BAA6B,EAAE,wBAAwB,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"rewards.d.ts","sourceRoot":"","sources":["../src/rewards.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAC,UAAU,EAAE,SAAS,EAAiB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAY9F,OAAO,KAAK,EAAC,6BAA6B,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,oBAAoB,EAAC,MAAM,YAAY,CAAC;AA+B5I;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,uBAAuB,CAC5C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAkEtC;AAID;;;;;GAKG;AACH,wBAAsB,uCAAuC,CAC5D,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,6BAA6B,EACrC,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwBnC;AAID;;;;;GAKG;AACH,wBAAsB,kCAAkC,CACvD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,wBAAwB,EAChC,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAyDnC;AAID;;;;;;GAMG;AACH,wBAAsB,sCAAsC,CAC3D,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,4BAA4B,EACpC,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAqDnC"}
|
package/dist/rewards.js
CHANGED
|
@@ -4,9 +4,114 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { SystemProgram, TransactionInstruction, } from '@solana/web3.js';
|
|
6
6
|
import { createAssociatedTokenAccountInstruction, createCloseAccountInstruction, getAccount, getAssociatedTokenAddressSync, NATIVE_MINT, TOKEN_PROGRAM_ID, } from "@solana/spl-token";
|
|
7
|
-
import { DISCRIMINATORS } from './constants.js';
|
|
7
|
+
import { DISCRIMINATORS, POOL_OFFSETS } from './constants.js';
|
|
8
8
|
import { getBondingCurvePda, getHolderRewardPda, getPoolAuthorityPda, getPoolPda, getSolEscrowPda, } from './pda.js';
|
|
9
|
-
import { getPoolState } from './accounts.js';
|
|
9
|
+
import { getBondingCurveState, getPoolState } from './accounts.js';
|
|
10
|
+
// ============= Constants =============
|
|
11
|
+
/** Precision factor for reward_per_token calculations (10^12) */
|
|
12
|
+
const REWARD_PRECISION = 1000000000000n;
|
|
13
|
+
/** HolderRewardAccount data offsets */
|
|
14
|
+
const HOLDER_REWARD_OFFSETS = {
|
|
15
|
+
DISCRIMINATOR: 0,
|
|
16
|
+
TOKEN_MINT: 8,
|
|
17
|
+
HOLDER: 8 + 32,
|
|
18
|
+
USER_REWARD_PER_TOKEN_PAID: 8 + 64,
|
|
19
|
+
REWARDS_OWED: 8 + 80,
|
|
20
|
+
BUMP: 8 + 88,
|
|
21
|
+
};
|
|
22
|
+
// ============= Buffer Helpers =============
|
|
23
|
+
function readU64LE(data, offset) {
|
|
24
|
+
return data.readBigUInt64LE(offset);
|
|
25
|
+
}
|
|
26
|
+
function readU128LE(data, offset) {
|
|
27
|
+
const low = data.readBigUInt64LE(offset);
|
|
28
|
+
const high = data.readBigUInt64LE(offset + 8);
|
|
29
|
+
return low + (high << 64n);
|
|
30
|
+
}
|
|
31
|
+
// ============= Get Pending Rewards =============
|
|
32
|
+
/**
|
|
33
|
+
* Get pending holder rewards for a user
|
|
34
|
+
*
|
|
35
|
+
* Queries on-chain state and calculates the exact pending rewards using
|
|
36
|
+
* the cumulative reward model: pending = balance * (stored - paid) / PRECISION + owed
|
|
37
|
+
*
|
|
38
|
+
* @param connection - Solana RPC connection
|
|
39
|
+
* @param tokenMint - Token mint address
|
|
40
|
+
* @param holder - Holder's wallet address
|
|
41
|
+
* @param programId - CoinBarrel program ID
|
|
42
|
+
* @returns Pending rewards info, or null if no rewards account exists
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const pending = await getPendingHolderRewards(connection, tokenMint, holder, programId);
|
|
47
|
+
* if (pending) {
|
|
48
|
+
* console.log(`Pending: ${pending.pendingLamports / 1e9} SOL`);
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export async function getPendingHolderRewards(connection, tokenMint, holder, programId) {
|
|
53
|
+
// Get user's token balance
|
|
54
|
+
const holderTokenAccount = getAssociatedTokenAddressSync(tokenMint, holder);
|
|
55
|
+
let tokenBalance;
|
|
56
|
+
try {
|
|
57
|
+
const account = await getAccount(connection, holderTokenAccount);
|
|
58
|
+
tokenBalance = account.amount;
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// No token account = no balance = no rewards
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
if (tokenBalance === 0n) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
// Get holder reward account
|
|
68
|
+
const holderRewardPda = getHolderRewardPda(tokenMint, holder, programId);
|
|
69
|
+
const holderRewardAccount = await connection.getAccountInfo(holderRewardPda);
|
|
70
|
+
let userRewardPerTokenPaid = 0n;
|
|
71
|
+
let rewardsOwed = 0n;
|
|
72
|
+
if (holderRewardAccount && holderRewardAccount.data.length >= 89) {
|
|
73
|
+
const data = holderRewardAccount.data;
|
|
74
|
+
userRewardPerTokenPaid = readU128LE(data, HOLDER_REWARD_OFFSETS.USER_REWARD_PER_TOKEN_PAID);
|
|
75
|
+
rewardsOwed = readU64LE(data, HOLDER_REWARD_OFFSETS.REWARDS_OWED);
|
|
76
|
+
}
|
|
77
|
+
// Check pool first (graduated), then curve
|
|
78
|
+
const poolState = await getPoolState(connection, tokenMint, programId);
|
|
79
|
+
let rewardPerTokenStored;
|
|
80
|
+
let source;
|
|
81
|
+
if (poolState) {
|
|
82
|
+
source = 'pool';
|
|
83
|
+
// Pool stores reward_per_token_stored at a different offset - need to fetch raw
|
|
84
|
+
const poolPda = getPoolPda(tokenMint, programId);
|
|
85
|
+
const poolAccount = await connection.getAccountInfo(poolPda);
|
|
86
|
+
if (!poolAccount)
|
|
87
|
+
return null;
|
|
88
|
+
rewardPerTokenStored = readU128LE(poolAccount.data, POOL_OFFSETS.REWARD_PER_TOKEN_STORED);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
// Check bonding curve
|
|
92
|
+
const curveState = await getBondingCurveState(connection, tokenMint, programId);
|
|
93
|
+
if (!curveState)
|
|
94
|
+
return null;
|
|
95
|
+
source = 'curve';
|
|
96
|
+
rewardPerTokenStored = curveState.rewardPerTokenStored;
|
|
97
|
+
}
|
|
98
|
+
// Calculate pending rewards
|
|
99
|
+
// Formula: pending = balance * (stored - paid) / PRECISION + owed
|
|
100
|
+
const rewardDelta = rewardPerTokenStored - userRewardPerTokenPaid;
|
|
101
|
+
const earnedSinceCheckpoint = (tokenBalance * rewardDelta) / REWARD_PRECISION;
|
|
102
|
+
const pendingLamports = earnedSinceCheckpoint + rewardsOwed;
|
|
103
|
+
return {
|
|
104
|
+
tokenMint,
|
|
105
|
+
holder,
|
|
106
|
+
source,
|
|
107
|
+
tokenBalance,
|
|
108
|
+
pendingLamports,
|
|
109
|
+
rewardsOwed,
|
|
110
|
+
earnedSinceCheckpoint,
|
|
111
|
+
rewardPerTokenStored,
|
|
112
|
+
userRewardPerTokenPaid,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
10
115
|
// ============= Claim from Bonding Curve =============
|
|
11
116
|
/**
|
|
12
117
|
* Build claim_holder_rewards_curve instruction
|
|
@@ -91,4 +196,55 @@ export async function buildClaimHolderRewardsInstruction(connection, params, pro
|
|
|
91
196
|
instructions.push(createCloseAccountInstruction(holderWsolAccount, holder, holder));
|
|
92
197
|
return instructions;
|
|
93
198
|
}
|
|
199
|
+
// ============= Claim Creator/Trader Fees from AMM Pool =============
|
|
200
|
+
/**
|
|
201
|
+
* Build claim_creator_trader_fees instruction
|
|
202
|
+
*
|
|
203
|
+
* Claims accumulated creator/trader fees from an AMM pool (post-graduation).
|
|
204
|
+
* Only the creator_fee_recipient can claim these fees.
|
|
205
|
+
* Fees are paid in WSOL which is then unwrapped to SOL.
|
|
206
|
+
*/
|
|
207
|
+
export async function buildClaimCreatorTraderFeesInstruction(connection, params, programId) {
|
|
208
|
+
const { tokenMint, creator } = params;
|
|
209
|
+
// Fetch pool state
|
|
210
|
+
const state = await getPoolState(connection, tokenMint, programId);
|
|
211
|
+
if (!state) {
|
|
212
|
+
throw new Error('Pool not found for this token');
|
|
213
|
+
}
|
|
214
|
+
// Verify creator matches pool's creator_fee_recipient
|
|
215
|
+
if (!state.creatorFeeRecipient.equals(creator)) {
|
|
216
|
+
throw new Error('Creator address does not match pool creator_fee_recipient');
|
|
217
|
+
}
|
|
218
|
+
// Derive PDAs
|
|
219
|
+
const pool = getPoolPda(tokenMint, programId);
|
|
220
|
+
const authority = getPoolAuthorityPda(pool, programId);
|
|
221
|
+
const creatorWsolAccount = getAssociatedTokenAddressSync(NATIVE_MINT, creator);
|
|
222
|
+
// Determine which vault is WSOL
|
|
223
|
+
const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
|
|
224
|
+
const solVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
|
|
225
|
+
const instructions = [];
|
|
226
|
+
// Create WSOL ATA if needed
|
|
227
|
+
try {
|
|
228
|
+
await getAccount(connection, creatorWsolAccount);
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
instructions.push(createAssociatedTokenAccountInstruction(creator, creatorWsolAccount, creator, NATIVE_MINT));
|
|
232
|
+
}
|
|
233
|
+
const claimIx = new TransactionInstruction({
|
|
234
|
+
programId,
|
|
235
|
+
keys: [
|
|
236
|
+
{ pubkey: pool, isWritable: true, isSigner: false },
|
|
237
|
+
{ pubkey: solVault, isWritable: true, isSigner: false },
|
|
238
|
+
{ pubkey: creatorWsolAccount, isWritable: true, isSigner: false },
|
|
239
|
+
{ pubkey: authority, isWritable: false, isSigner: false },
|
|
240
|
+
{ pubkey: creator, isWritable: true, isSigner: true },
|
|
241
|
+
{ pubkey: TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
|
|
242
|
+
],
|
|
243
|
+
data: DISCRIMINATORS.claim_creator_trader_fees,
|
|
244
|
+
});
|
|
245
|
+
instructions.push(claimIx);
|
|
246
|
+
// Close WSOL account to unwrap to SOL
|
|
247
|
+
instructions.push(createCloseAccountInstruction(creatorWsolAccount, creator, creator));
|
|
248
|
+
return instructions;
|
|
249
|
+
}
|
|
94
250
|
//# sourceMappingURL=rewards.js.map
|
package/dist/rewards.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../src/rewards.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAwB,aAAa,EAAE,sBAAsB,GAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EACN,uCAAuC,EACvC,6BAA6B,EAC7B,UAAU,EACV,6BAA6B,EAC7B,WAAW,EACX,gBAAgB,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../src/rewards.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -177,6 +177,12 @@ export interface ClaimHolderRewardsParams {
|
|
|
177
177
|
/** Holder's wallet address */
|
|
178
178
|
holder: PublicKey;
|
|
179
179
|
}
|
|
180
|
+
export interface ClaimCreatorTraderFeesParams {
|
|
181
|
+
/** Token mint address */
|
|
182
|
+
tokenMint: PublicKey;
|
|
183
|
+
/** Creator's wallet address (must match pool's creator_fee_recipient) */
|
|
184
|
+
creator: PublicKey;
|
|
185
|
+
}
|
|
180
186
|
export interface BuyQuote {
|
|
181
187
|
/** SOL input (lamports) */
|
|
182
188
|
solIn: bigint;
|
|
@@ -227,6 +233,26 @@ export interface InstructionResult {
|
|
|
227
233
|
/** Required signers (usually just the user) */
|
|
228
234
|
signers: PublicKey[];
|
|
229
235
|
}
|
|
236
|
+
export interface PendingHolderRewards {
|
|
237
|
+
/** Token mint address */
|
|
238
|
+
tokenMint: PublicKey;
|
|
239
|
+
/** Holder's wallet address */
|
|
240
|
+
holder: PublicKey;
|
|
241
|
+
/** Whether rewards are from curve or pool */
|
|
242
|
+
source: 'curve' | 'pool';
|
|
243
|
+
/** User's current token balance (raw) */
|
|
244
|
+
tokenBalance: bigint;
|
|
245
|
+
/** Pending rewards in lamports */
|
|
246
|
+
pendingLamports: bigint;
|
|
247
|
+
/** Banked rewards waiting to be claimed (already checkpointed) */
|
|
248
|
+
rewardsOwed: bigint;
|
|
249
|
+
/** Rewards earned since last checkpoint */
|
|
250
|
+
earnedSinceCheckpoint: bigint;
|
|
251
|
+
/** Current reward_per_token_stored on-chain */
|
|
252
|
+
rewardPerTokenStored: bigint;
|
|
253
|
+
/** User's last checkpointed value */
|
|
254
|
+
userRewardPerTokenPaid: bigint;
|
|
255
|
+
}
|
|
230
256
|
export interface MarketInfo {
|
|
231
257
|
/** Token mint address */
|
|
232
258
|
tokenMint: PublicKey;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|