@coinbarrel/sdk 1.1.0 → 1.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.
package/dist/pool.js CHANGED
@@ -1,12 +1,19 @@
1
+ "use strict";
1
2
  /**
2
3
  * AMM Pool Operations
3
4
  * Swap tokens on graduated AMM pools
4
5
  */
5
- import { SystemProgram, TransactionInstruction, } from "@solana/web3.js";
6
- import { TOKEN_PROGRAM_ID, getAssociatedTokenAddressSync, createAssociatedTokenAccountInstruction, createCloseAccountInstruction, getAccount, } from "@solana/spl-token";
7
- import { DISCRIMINATORS, NATIVE_MINT } from "./constants.js";
8
- import { getPoolPda, getPoolAuthorityPda, getHolderRewardPda, } from "./pda.js";
9
- import { getPoolState, getPoolBalances } from "./accounts.js";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.getSwapSolToTokenQuote = getSwapSolToTokenQuote;
8
+ exports.getSwapTokenToSolQuote = getSwapTokenToSolQuote;
9
+ exports.buildSwapSolToTokenInstruction = buildSwapSolToTokenInstruction;
10
+ exports.buildSwapTokenToSolInstruction = buildSwapTokenToSolInstruction;
11
+ exports.buildSwapTokenToSolMaxInstruction = buildSwapTokenToSolMaxInstruction;
12
+ const web3_js_1 = require("@solana/web3.js");
13
+ const spl_token_1 = require("@solana/spl-token");
14
+ const constants_js_1 = require("./constants.js");
15
+ const pda_js_1 = require("./pda.js");
16
+ const accounts_js_1 = require("./accounts.js");
10
17
  // ============= Buffer Helpers =============
11
18
  function writeU64LE(n) {
12
19
  const b = Buffer.alloc(8);
@@ -17,9 +24,9 @@ function writeU64LE(n) {
17
24
  /**
18
25
  * Calculate swap quote for SOL -> Token
19
26
  */
20
- export async function getSwapSolToTokenQuote(connection, tokenMint, solIn, programId) {
21
- const balances = await getPoolBalances(connection, tokenMint, programId);
22
- const state = await getPoolState(connection, tokenMint, programId);
27
+ async function getSwapSolToTokenQuote(connection, tokenMint, solIn, programId) {
28
+ const balances = await (0, accounts_js_1.getPoolBalances)(connection, tokenMint, programId);
29
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
23
30
  if (!balances || !state)
24
31
  return null;
25
32
  const { solBalance, tokenBalance } = balances;
@@ -48,9 +55,9 @@ export async function getSwapSolToTokenQuote(connection, tokenMint, solIn, progr
48
55
  /**
49
56
  * Calculate swap quote for Token -> SOL
50
57
  */
51
- export async function getSwapTokenToSolQuote(connection, tokenMint, tokensIn, programId) {
52
- const balances = await getPoolBalances(connection, tokenMint, programId);
53
- const state = await getPoolState(connection, tokenMint, programId);
58
+ async function getSwapTokenToSolQuote(connection, tokenMint, tokensIn, programId) {
59
+ const balances = await (0, accounts_js_1.getPoolBalances)(connection, tokenMint, programId);
60
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
54
61
  if (!balances || !state)
55
62
  return null;
56
63
  const { solBalance, tokenBalance } = balances;
@@ -83,31 +90,31 @@ export async function getSwapTokenToSolQuote(connection, tokenMint, tokensIn, pr
83
90
  * IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
84
91
  * The program enforces that fees go to the correct recipients.
85
92
  */
86
- export async function buildSwapSolToTokenInstruction(connection, params, programId) {
93
+ async function buildSwapSolToTokenInstruction(connection, params, programId) {
87
94
  const { tokenMint, user, lamportsIn, minimumAmountOut } = params;
88
95
  // Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
89
- const state = await getPoolState(connection, tokenMint, programId);
96
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
90
97
  if (!state) {
91
98
  throw new Error("Pool not found for this token");
92
99
  }
93
100
  // Determine which vault is WSOL and which is the token based on stored mints
94
- const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
101
+ const isTokenANative = state.tokenAMint.equals(constants_js_1.NATIVE_MINT);
95
102
  const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
96
103
  const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
97
- const pool = getPoolPda(tokenMint, programId);
98
- const authority = getPoolAuthorityPda(pool, programId);
99
- const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
100
- const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
104
+ const pool = (0, pda_js_1.getPoolPda)(tokenMint, programId);
105
+ const authority = (0, pda_js_1.getPoolAuthorityPda)(pool, programId);
106
+ const userTokenAta = (0, spl_token_1.getAssociatedTokenAddressSync)(tokenMint, user);
107
+ const holderRewardAccount = (0, pda_js_1.getHolderRewardPda)(tokenMint, user, programId);
101
108
  const instructions = [];
102
109
  // Check if user's token ATA exists, create if needed
103
110
  try {
104
- await getAccount(connection, userTokenAta);
111
+ await (0, spl_token_1.getAccount)(connection, userTokenAta);
105
112
  }
106
113
  catch {
107
- instructions.push(createAssociatedTokenAccountInstruction(user, userTokenAta, user, tokenMint));
114
+ instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(user, userTokenAta, user, tokenMint));
108
115
  }
109
116
  // Build swap instruction
110
- const swapIx = new TransactionInstruction({
117
+ const swapIx = new web3_js_1.TransactionInstruction({
111
118
  programId,
112
119
  keys: [
113
120
  { pubkey: pool, isWritable: true, isSigner: false },
@@ -121,11 +128,11 @@ export async function buildSwapSolToTokenInstruction(connection, params, program
121
128
  // Holder reward account
122
129
  { pubkey: holderRewardAccount, isWritable: true, isSigner: false },
123
130
  { pubkey: user, isWritable: true, isSigner: true },
124
- { pubkey: TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
125
- { pubkey: SystemProgram.programId, isWritable: false, isSigner: false },
131
+ { pubkey: spl_token_1.TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
132
+ { pubkey: web3_js_1.SystemProgram.programId, isWritable: false, isSigner: false },
126
133
  ],
127
134
  data: Buffer.concat([
128
- DISCRIMINATORS.swap_sol_to_token,
135
+ constants_js_1.DISCRIMINATORS.swap_sol_to_token,
129
136
  writeU64LE(lamportsIn),
130
137
  writeU64LE(minimumAmountOut),
131
138
  ]),
@@ -138,32 +145,32 @@ export async function buildSwapSolToTokenInstruction(connection, params, program
138
145
  *
139
146
  * IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
140
147
  */
141
- export async function buildSwapTokenToSolInstruction(connection, params, programId) {
148
+ async function buildSwapTokenToSolInstruction(connection, params, programId) {
142
149
  const { tokenMint, user, amountIn, minimumLamportsOut } = params;
143
150
  // Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
144
- const state = await getPoolState(connection, tokenMint, programId);
151
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
145
152
  if (!state) {
146
153
  throw new Error("Pool not found for this token");
147
154
  }
148
155
  // Determine which vault is WSOL and which is the token based on stored mints
149
- const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
156
+ const isTokenANative = state.tokenAMint.equals(constants_js_1.NATIVE_MINT);
150
157
  const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
151
158
  const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
152
- const pool = getPoolPda(tokenMint, programId);
153
- const authority = getPoolAuthorityPda(pool, programId);
154
- const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
155
- const userWsolAta = getAssociatedTokenAddressSync(NATIVE_MINT, user);
156
- const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
159
+ const pool = (0, pda_js_1.getPoolPda)(tokenMint, programId);
160
+ const authority = (0, pda_js_1.getPoolAuthorityPda)(pool, programId);
161
+ const userTokenAta = (0, spl_token_1.getAssociatedTokenAddressSync)(tokenMint, user);
162
+ const userWsolAta = (0, spl_token_1.getAssociatedTokenAddressSync)(constants_js_1.NATIVE_MINT, user);
163
+ const holderRewardAccount = (0, pda_js_1.getHolderRewardPda)(tokenMint, user, programId);
157
164
  const instructions = [];
158
165
  // Create WSOL ATA if needed (for receiving output)
159
166
  try {
160
- await getAccount(connection, userWsolAta);
167
+ await (0, spl_token_1.getAccount)(connection, userWsolAta);
161
168
  }
162
169
  catch {
163
- instructions.push(createAssociatedTokenAccountInstruction(user, userWsolAta, user, NATIVE_MINT));
170
+ instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(user, userWsolAta, user, constants_js_1.NATIVE_MINT));
164
171
  }
165
172
  // Build swap instruction
166
- const swapIx = new TransactionInstruction({
173
+ const swapIx = new web3_js_1.TransactionInstruction({
167
174
  programId,
168
175
  keys: [
169
176
  { pubkey: pool, isWritable: true, isSigner: false },
@@ -178,49 +185,49 @@ export async function buildSwapTokenToSolInstruction(connection, params, program
178
185
  // Holder reward account
179
186
  { pubkey: holderRewardAccount, isWritable: true, isSigner: false },
180
187
  { pubkey: user, isWritable: true, isSigner: true },
181
- { pubkey: TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
182
- { pubkey: SystemProgram.programId, isWritable: false, isSigner: false },
188
+ { pubkey: spl_token_1.TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
189
+ { pubkey: web3_js_1.SystemProgram.programId, isWritable: false, isSigner: false },
183
190
  ],
184
191
  data: Buffer.concat([
185
- DISCRIMINATORS.swap_token_to_sol,
192
+ constants_js_1.DISCRIMINATORS.swap_token_to_sol,
186
193
  writeU64LE(amountIn),
187
194
  writeU64LE(minimumLamportsOut),
188
195
  ]),
189
196
  });
190
197
  instructions.push(swapIx);
191
198
  // Close WSOL account to unwrap to SOL
192
- instructions.push(createCloseAccountInstruction(userWsolAta, user, user));
199
+ instructions.push((0, spl_token_1.createCloseAccountInstruction)(userWsolAta, user, user));
193
200
  return instructions;
194
201
  }
195
202
  /**
196
203
  * Build swap_token_to_sol_max instruction (sell entire balance)
197
204
  */
198
- export async function buildSwapTokenToSolMaxInstruction(connection, params, programId) {
205
+ async function buildSwapTokenToSolMaxInstruction(connection, params, programId) {
199
206
  const { tokenMint, user } = params;
200
207
  // Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
201
- const state = await getPoolState(connection, tokenMint, programId);
208
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
202
209
  if (!state) {
203
210
  throw new Error("Pool not found for this token");
204
211
  }
205
212
  // Determine which vault is WSOL and which is the token based on stored mints
206
- const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
213
+ const isTokenANative = state.tokenAMint.equals(constants_js_1.NATIVE_MINT);
207
214
  const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
208
215
  const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
209
- const pool = getPoolPda(tokenMint, programId);
210
- const authority = getPoolAuthorityPda(pool, programId);
211
- const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
212
- const userWsolAta = getAssociatedTokenAddressSync(NATIVE_MINT, user);
213
- const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
216
+ const pool = (0, pda_js_1.getPoolPda)(tokenMint, programId);
217
+ const authority = (0, pda_js_1.getPoolAuthorityPda)(pool, programId);
218
+ const userTokenAta = (0, spl_token_1.getAssociatedTokenAddressSync)(tokenMint, user);
219
+ const userWsolAta = (0, spl_token_1.getAssociatedTokenAddressSync)(constants_js_1.NATIVE_MINT, user);
220
+ const holderRewardAccount = (0, pda_js_1.getHolderRewardPda)(tokenMint, user, programId);
214
221
  const instructions = [];
215
222
  // Create WSOL ATA if needed (for receiving output)
216
223
  try {
217
- await getAccount(connection, userWsolAta);
224
+ await (0, spl_token_1.getAccount)(connection, userWsolAta);
218
225
  }
219
226
  catch {
220
- instructions.push(createAssociatedTokenAccountInstruction(user, userWsolAta, user, NATIVE_MINT));
227
+ instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(user, userWsolAta, user, constants_js_1.NATIVE_MINT));
221
228
  }
222
229
  // Build swap max instruction
223
- const swapMaxIx = new TransactionInstruction({
230
+ const swapMaxIx = new web3_js_1.TransactionInstruction({
224
231
  programId,
225
232
  keys: [
226
233
  { pubkey: pool, isWritable: true, isSigner: false },
@@ -235,14 +242,13 @@ export async function buildSwapTokenToSolMaxInstruction(connection, params, prog
235
242
  // Holder reward account
236
243
  { pubkey: holderRewardAccount, isWritable: true, isSigner: false },
237
244
  { pubkey: user, isWritable: true, isSigner: true },
238
- { pubkey: TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
239
- { pubkey: SystemProgram.programId, isWritable: false, isSigner: false },
245
+ { pubkey: spl_token_1.TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
246
+ { pubkey: web3_js_1.SystemProgram.programId, isWritable: false, isSigner: false },
240
247
  ],
241
- data: DISCRIMINATORS.swap_token_to_sol_max,
248
+ data: constants_js_1.DISCRIMINATORS.swap_token_to_sol_max,
242
249
  });
243
250
  instructions.push(swapMaxIx);
244
251
  // Close WSOL account to unwrap to SOL
245
- instructions.push(createCloseAccountInstruction(userWsolAta, user, user));
252
+ instructions.push((0, spl_token_1.createCloseAccountInstruction)(userWsolAta, user, user));
246
253
  return instructions;
247
254
  }
248
- //# sourceMappingURL=pool.js.map
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ /**
3
+ * Holder Rewards
4
+ * Claim accumulated holder rewards from bonding curves and AMM pools
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.buildClaimHolderRewardsCurveInstruction = buildClaimHolderRewardsCurveInstruction;
8
+ exports.buildClaimHolderRewardsInstruction = buildClaimHolderRewardsInstruction;
9
+ const web3_js_1 = require("@solana/web3.js");
10
+ const spl_token_1 = require("@solana/spl-token");
11
+ const constants_js_1 = require("./constants.js");
12
+ const pda_js_1 = require("./pda.js");
13
+ const accounts_js_1 = require("./accounts.js");
14
+ // ============= Claim from Bonding Curve =============
15
+ /**
16
+ * Build claim_holder_rewards_curve instruction
17
+ *
18
+ * Claims accumulated holder rewards from a bonding curve.
19
+ * Rewards are paid in SOL directly to the holder's wallet.
20
+ */
21
+ async function buildClaimHolderRewardsCurveInstruction(connection, params, programId) {
22
+ const { tokenMint, holder } = params;
23
+ // Derive PDAs
24
+ const bondingCurve = (0, pda_js_1.getBondingCurvePda)(tokenMint, programId);
25
+ const solEscrow = (0, pda_js_1.getSolEscrowPda)(bondingCurve, programId);
26
+ const holderTokenAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(tokenMint, holder);
27
+ const holderRewardAccount = (0, pda_js_1.getHolderRewardPda)(tokenMint, holder, programId);
28
+ const claimIx = new web3_js_1.TransactionInstruction({
29
+ programId,
30
+ keys: [
31
+ { pubkey: bondingCurve, isWritable: true, isSigner: false },
32
+ { pubkey: tokenMint, isWritable: false, isSigner: false },
33
+ { pubkey: solEscrow, isWritable: true, isSigner: false },
34
+ { pubkey: holderTokenAccount, isWritable: false, isSigner: false },
35
+ { pubkey: holderRewardAccount, isWritable: true, isSigner: false },
36
+ { pubkey: holder, isWritable: true, isSigner: true },
37
+ { pubkey: web3_js_1.SystemProgram.programId, isWritable: false, isSigner: false },
38
+ ],
39
+ data: constants_js_1.DISCRIMINATORS.claim_holder_rewards_curve,
40
+ });
41
+ return [claimIx];
42
+ }
43
+ // ============= Claim from AMM Pool =============
44
+ /**
45
+ * Build claim_holder_rewards instruction
46
+ *
47
+ * Claims accumulated holder rewards from an AMM pool (post-graduation).
48
+ * Rewards are paid in WSOL which is then unwrapped to SOL.
49
+ */
50
+ async function buildClaimHolderRewardsInstruction(connection, params, programId) {
51
+ const { tokenMint, holder } = params;
52
+ // Fetch pool state
53
+ const state = await (0, accounts_js_1.getPoolState)(connection, tokenMint, programId);
54
+ if (!state) {
55
+ throw new Error('Pool not found for this token');
56
+ }
57
+ // Derive PDAs
58
+ const pool = (0, pda_js_1.getPoolPda)(tokenMint, programId);
59
+ const authority = (0, pda_js_1.getPoolAuthorityPda)(pool, programId);
60
+ const holderTokenAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(tokenMint, holder);
61
+ const holderRewardAccount = (0, pda_js_1.getHolderRewardPda)(tokenMint, holder, programId);
62
+ const holderWsolAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(constants_js_1.NATIVE_MINT, holder);
63
+ // Determine which vault is which
64
+ const isTokenANative = state.tokenAMint.equals(constants_js_1.NATIVE_MINT);
65
+ const solVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
66
+ const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
67
+ const instructions = [];
68
+ // Create WSOL ATA if needed
69
+ try {
70
+ await (0, spl_token_1.getAccount)(connection, holderWsolAccount);
71
+ }
72
+ catch {
73
+ instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(holder, holderWsolAccount, holder, constants_js_1.NATIVE_MINT));
74
+ }
75
+ const claimIx = new web3_js_1.TransactionInstruction({
76
+ programId,
77
+ keys: [
78
+ { pubkey: pool, isWritable: true, isSigner: false },
79
+ { pubkey: tokenMint, isWritable: false, isSigner: false },
80
+ { pubkey: state.lpMint, isWritable: false, isSigner: false },
81
+ { pubkey: tokenVault, isWritable: false, isSigner: false },
82
+ { pubkey: solVault, isWritable: true, isSigner: false },
83
+ { pubkey: holderTokenAccount, isWritable: false, isSigner: false },
84
+ { pubkey: holderWsolAccount, isWritable: true, isSigner: false },
85
+ { pubkey: holderRewardAccount, isWritable: true, isSigner: false },
86
+ { pubkey: authority, isWritable: false, isSigner: false },
87
+ { pubkey: holder, isWritable: true, isSigner: true },
88
+ { pubkey: spl_token_1.TOKEN_PROGRAM_ID, isWritable: false, isSigner: false },
89
+ { pubkey: web3_js_1.SystemProgram.programId, isWritable: false, isSigner: false },
90
+ ],
91
+ data: constants_js_1.DISCRIMINATORS.claim_holder_rewards,
92
+ });
93
+ instructions.push(claimIx);
94
+ // Close WSOL account to unwrap to SOL
95
+ instructions.push((0, spl_token_1.createCloseAccountInstruction)(holderWsolAccount, holder, holder));
96
+ return instructions;
97
+ }
package/dist/types.js CHANGED
@@ -1,5 +1,5 @@
1
+ "use strict";
1
2
  /**
2
3
  * CoinBarrel SDK Types
3
4
  */
4
- export {};
5
- //# sourceMappingURL=types.js.map
5
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,10 +1,9 @@
1
1
  {
2
2
  "name": "@coinbarrel/sdk",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "SDK for CoinBarrel AMM - bonding curves and liquidity pools on Solana",
5
5
  "author": "CoinBarrel",
6
6
  "license": "MIT",
7
- "type": "module",
8
7
  "main": "./dist/index.js",
9
8
  "module": "./dist/index.js",
10
9
  "types": "./dist/index.d.ts",
@@ -20,7 +19,7 @@
20
19
  "README.md"
21
20
  ],
22
21
  "scripts": {
23
- "build": "tsc -p tsconfig.build.json",
22
+ "build": "tsc -p tsconfig.json",
24
23
  "clean": "rm -rf dist",
25
24
  "prepublishOnly": "npm run clean && npm run build"
26
25
  },
@@ -1,36 +0,0 @@
1
- /**
2
- * Account Fetching and Parsing
3
- * Read on-chain account data for bonding curves and pools
4
- */
5
- import { Connection, PublicKey } from '@solana/web3.js';
6
- import type { BondingCurveState, PoolState, MarketInfo } from './types.js';
7
- /**
8
- * Fetch and parse bonding curve state
9
- */
10
- export declare function getBondingCurveState(connection: Connection, tokenMint: PublicKey, programId: PublicKey): Promise<BondingCurveState | null>;
11
- /**
12
- * Get SOL balance in bonding curve escrow
13
- */
14
- export declare function getCurveSolBalance(connection: Connection, tokenMint: PublicKey, programId: PublicKey): Promise<bigint>;
15
- /**
16
- * Fetch and parse pool state
17
- */
18
- export declare function getPoolState(connection: Connection, tokenMint: PublicKey, programId: PublicKey): Promise<PoolState | null>;
19
- /**
20
- * Get pool vault balances
21
- * Uses vault addresses stored in Pool state rather than deriving PDAs
22
- */
23
- export declare function getPoolBalances(connection: Connection, tokenMint: PublicKey, programId: PublicKey): Promise<{
24
- solBalance: bigint;
25
- tokenBalance: bigint;
26
- } | null>;
27
- /**
28
- * Get comprehensive market info for a token
29
- * Automatically detects if on bonding curve or AMM pool
30
- */
31
- export declare function getMarketInfo(connection: Connection, tokenMint: PublicKey, programId: PublicKey): Promise<MarketInfo | null>;
32
- /**
33
- * Get user's token balance
34
- */
35
- export declare function getUserTokenBalance(connection: Connection, tokenMint: PublicKey, user: PublicKey): Promise<bigint>;
36
- //# sourceMappingURL=accounts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA4B3E;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA4BnC;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC,CAKjB;AAID;;GAEG;AACH,wBAAsB,YAAY,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA0B3B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACpC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAyB9D;AAID;;;GAGG;AACH,wBAAsB,aAAa,CAClC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAgE5B;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,MAAM,CAAC,CAQjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"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"}
@@ -1,80 +0,0 @@
1
- /**
2
- * CoinBarrel SDK Constants
3
- * Network-specific program IDs and configuration
4
- */
5
- import { PublicKey } from '@solana/web3.js';
6
- export type Network = 'devnet' | 'mainnet';
7
- export declare const PROGRAM_IDS: Record<Network, PublicKey>;
8
- export declare const ADMIN_FEE_RECIPIENTS: Record<Network, PublicKey>;
9
- export declare const NATIVE_MINT: PublicKey;
10
- export declare const TOKEN_METADATA_PROGRAM_ID: PublicKey;
11
- export declare const SEEDS: {
12
- readonly BONDING: Buffer<ArrayBuffer>;
13
- readonly BONDING_AUTHORITY: Buffer<ArrayBuffer>;
14
- readonly BONDING_SOL: Buffer<ArrayBuffer>;
15
- readonly POOL: Buffer<ArrayBuffer>;
16
- readonly AUTHORITY: Buffer<ArrayBuffer>;
17
- readonly VAULT: Buffer<ArrayBuffer>;
18
- readonly LP_MINT: Buffer<ArrayBuffer>;
19
- readonly LP_VAULT: Buffer<ArrayBuffer>;
20
- readonly HOLDER_REWARD: Buffer<ArrayBuffer>;
21
- };
22
- export declare const DISCRIMINATORS: {
23
- readonly initialize_barrel_curve: Buffer<ArrayBuffer>;
24
- readonly buy_on_curve: Buffer<ArrayBuffer>;
25
- readonly sell_on_curve: Buffer<ArrayBuffer>;
26
- readonly sell_max_on_curve: Buffer<ArrayBuffer>;
27
- readonly configure_bonding_fees: Buffer<ArrayBuffer>;
28
- readonly configure_virtual_curve: Buffer<ArrayBuffer>;
29
- readonly initialize_pool: Buffer<ArrayBuffer>;
30
- readonly swap_sol_to_token: Buffer<ArrayBuffer>;
31
- readonly swap_token_to_sol: Buffer<ArrayBuffer>;
32
- readonly swap_token_to_sol_max: Buffer<ArrayBuffer>;
33
- readonly swap: Buffer<ArrayBuffer>;
34
- readonly add_liquidity: Buffer<ArrayBuffer>;
35
- readonly remove_liquidity: Buffer<ArrayBuffer>;
36
- readonly migrate_barrel: Buffer<ArrayBuffer>;
37
- readonly claim_holder_rewards: Buffer<ArrayBuffer>;
38
- readonly claim_holder_rewards_curve: Buffer<ArrayBuffer>;
39
- readonly init_holder_reward_account_curve: Buffer<ArrayBuffer>;
40
- readonly init_holder_reward_account_pool: Buffer<ArrayBuffer>;
41
- };
42
- export declare const BONDING_CURVE_OFFSETS: {
43
- readonly DISCRIMINATOR: 0;
44
- readonly TOKEN_MINT: 8;
45
- readonly TOKEN_VAULT: number;
46
- readonly ADMIN_FEE_RECIPIENT: number;
47
- readonly CREATOR_FEE_RECIPIENT: number;
48
- readonly FEE_BPS: number;
49
- readonly VARIANT: number;
50
- readonly BUMP: number;
51
- readonly V_TOKEN: number;
52
- readonly V_SOL: number;
53
- readonly AMP_BPS: number;
54
- readonly TRADER_REWARDS_SHARE_BPS: number;
55
- readonly MIN_PRICE: number;
56
- readonly MAX_SUPPLY: number;
57
- readonly TOTAL_SOLD: number;
58
- readonly PAUSED: number;
59
- };
60
- export declare const POOL_OFFSETS: {
61
- readonly DISCRIMINATOR: 0;
62
- readonly TOKEN_A_MINT: 8;
63
- readonly TOKEN_B_MINT: number;
64
- readonly TOKEN_A_VAULT: number;
65
- readonly TOKEN_B_VAULT: number;
66
- readonly LP_MINT: number;
67
- readonly FEE_RATE: number;
68
- readonly AUTHORITY: number;
69
- readonly BUMP: number;
70
- readonly IS_LOCKED: number;
71
- readonly POOL_TYPE: number;
72
- readonly TRADER_REWARDS_SHARE_BPS: number;
73
- readonly ADMIN_FEE_RECIPIENT: number;
74
- readonly CREATOR_FEE_RECIPIENT: number;
75
- };
76
- export declare const DEFAULT_DECIMALS = 6;
77
- export declare const DEFAULT_SLIPPAGE_BPS = 100;
78
- export declare const LAMPORTS_PER_SOL = 1000000000n;
79
- export declare const TOKEN_DECIMALS_MULTIPLIER = 1000000n;
80
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE3C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAGlD,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAG3D,CAAC;AAGF,eAAO,MAAM,WAAW,WAA+D,CAAC;AAGxF,eAAO,MAAM,yBAAyB,WAErC,CAAC;AAIF,eAAO,MAAM,KAAK;;;;;;;;;;CAUR,CAAC;AAKX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;CA0BjB,CAAC;AAKX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;CAiBxB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAef,CAAC;AAIX,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,gBAAgB,cAAiB,CAAC;AAC/C,eAAO,MAAM,yBAAyB,WAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/curve.d.ts DELETED
@@ -1,37 +0,0 @@
1
- /**
2
- * Bonding Curve Operations
3
- * Buy and sell tokens on the bonding curve
4
- */
5
- import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
6
- import type { BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, BuyQuote, SellQuote } from './types.js';
7
- /**
8
- * Calculate buy quote for bonding curve
9
- * Uses amplified constant product formula matching the program:
10
- * k = vSol_eff * vToken_eff where _eff = base * amp_bps / 10000
11
- */
12
- export declare function getBuyQuote(connection: Connection, tokenMint: PublicKey, solIn: bigint, programId: PublicKey): Promise<BuyQuote | null>;
13
- /**
14
- * Calculate sell quote for bonding curve
15
- * Uses amplified constant product formula matching the program
16
- */
17
- export declare function getSellQuote(connection: Connection, tokenMint: PublicKey, tokensIn: bigint, programId: PublicKey): Promise<SellQuote | null>;
18
- /**
19
- * Build buy_on_curve instruction
20
- *
21
- * IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
22
- * The program enforces that fees go to the correct recipients.
23
- */
24
- export declare function buildBuyOnCurveInstruction(connection: Connection, params: BuyOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
25
- /**
26
- * Build sell_on_curve instruction
27
- *
28
- * IMPORTANT: Fee recipients are read from on-chain state and cannot be modified.
29
- * Includes holder reward account in remaining_accounts for auto-payout.
30
- */
31
- export declare function buildSellOnCurveInstruction(connection: Connection, params: SellOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
32
- /**
33
- * Build sell_max_on_curve instruction (sell entire balance)
34
- * Includes holder reward account in remaining_accounts for auto-payout.
35
- */
36
- export declare function buildSellMaxOnCurveInstruction(connection: Connection, params: SellMaxOnCurveParams, programId: PublicKey): Promise<TransactionInstruction[]>;
37
- //# sourceMappingURL=curve.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAiB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAe/F,OAAO,KAAK,EACX,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,MAAM,YAAY,CAAC;AAYpB;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAiD1B;AAED;;;GAGG;AACH,wBAAsB,YAAY,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA+C3B;AAID;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC/C,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAmDnC;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAChD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwCnC;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CACnD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,oBAAoB,EAC5B,SAAS,EAAE,SAAS,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAwCnC"}
package/dist/curve.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"curve.js","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"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"}