@coinbarrel/sdk 3.1.7 → 3.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/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +12 -0
- package/dist/constants.js.map +1 -1
- package/dist/create.d.ts +49 -1
- package/dist/create.d.ts.map +1 -1
- package/dist/create.js +211 -2
- package/dist/create.js.map +1 -1
- package/dist/fees.d.ts +58 -0
- package/dist/fees.d.ts.map +1 -0
- package/dist/fees.js +138 -0
- package/dist/fees.js.map +1 -0
- package/dist/index.d.ts +98 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +103 -3
- package/dist/index.js.map +1 -1
- package/dist/metadata.d.ts +70 -0
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.js +246 -1
- package/dist/metadata.js.map +1 -1
- package/dist/pda.d.ts +12 -0
- package/dist/pda.d.ts.map +1 -1
- package/dist/pda.js +19 -0
- package/dist/pda.js.map +1 -1
- package/dist/types.d.ts +70 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/fees.js
ADDED
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fee Extension & Distribution Instructions
|
|
3
|
+
* For setting up burn fees and multi-recipient fee distribution on bonding curve tokens
|
|
4
|
+
*/
|
|
5
|
+
import { SystemProgram, TransactionInstruction, } from '@solana/web3.js';
|
|
6
|
+
import { DISCRIMINATORS } from './constants.js';
|
|
7
|
+
import { getBondingCurvePda, getFeeExtensionPda, getFeeConfigPda } from './pda.js';
|
|
8
|
+
// ============= Buffer Helpers =============
|
|
9
|
+
function writeU16LE(n) {
|
|
10
|
+
const b = Buffer.alloc(2);
|
|
11
|
+
b.writeUInt16LE(n);
|
|
12
|
+
return b;
|
|
13
|
+
}
|
|
14
|
+
function writeU8(n) {
|
|
15
|
+
const b = Buffer.alloc(1);
|
|
16
|
+
b.writeUInt8(n);
|
|
17
|
+
return b;
|
|
18
|
+
}
|
|
19
|
+
// ============= Instruction Builders =============
|
|
20
|
+
/**
|
|
21
|
+
* Build init_fee_extension instruction
|
|
22
|
+
*
|
|
23
|
+
* Initializes a fee extension account for a bonding curve token.
|
|
24
|
+
* This allows setting burn_fee_bps (0-5000 = 0-50% of TOTAL fee).
|
|
25
|
+
*
|
|
26
|
+
* Requirements:
|
|
27
|
+
* - Token must be on bonding curve (not yet graduated)
|
|
28
|
+
* - Creator must be the creator_fee_recipient of the bonding curve
|
|
29
|
+
* - burn_fee_bps + trader_rewards_share_bps must be <= 5000
|
|
30
|
+
*
|
|
31
|
+
* @param params - Fee extension parameters
|
|
32
|
+
* @param programId - CoinBarrel program ID
|
|
33
|
+
* @returns Transaction instruction
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const ix = buildInitFeeExtensionInstruction({
|
|
38
|
+
* tokenMint: new PublicKey('...'),
|
|
39
|
+
* creator: wallet.publicKey,
|
|
40
|
+
* burnFeeBps: 1000, // 10% burn (of TOTAL fee)
|
|
41
|
+
* }, programId);
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export function buildInitFeeExtensionInstruction(params, programId) {
|
|
45
|
+
const { tokenMint, creator, burnFeeBps } = params;
|
|
46
|
+
// Validate burn fee range - See Agent.md "Fee Architecture"
|
|
47
|
+
if (burnFeeBps < 0 || burnFeeBps > 5000) {
|
|
48
|
+
throw new Error('Burn fee must be between 0 (0%) and 5000 (50%) bps');
|
|
49
|
+
}
|
|
50
|
+
// Derive PDAs
|
|
51
|
+
const bondingCurve = getBondingCurvePda(tokenMint, programId);
|
|
52
|
+
const feeExtension = getFeeExtensionPda(tokenMint, programId);
|
|
53
|
+
// Build instruction data: discriminator + burn_fee_bps (u16)
|
|
54
|
+
const data = Buffer.concat([
|
|
55
|
+
DISCRIMINATORS.init_fee_extension,
|
|
56
|
+
writeU16LE(burnFeeBps),
|
|
57
|
+
]);
|
|
58
|
+
// Account order matches InitFeeExtension struct:
|
|
59
|
+
// 0. bonding_curve
|
|
60
|
+
// 1. token_mint
|
|
61
|
+
// 2. fee_extension (init)
|
|
62
|
+
// 3. creator (signer, payer)
|
|
63
|
+
// 4. system_program
|
|
64
|
+
return new TransactionInstruction({
|
|
65
|
+
programId,
|
|
66
|
+
keys: [
|
|
67
|
+
{ pubkey: bondingCurve, isWritable: false, isSigner: false },
|
|
68
|
+
{ pubkey: tokenMint, isWritable: false, isSigner: false },
|
|
69
|
+
{ pubkey: feeExtension, isWritable: true, isSigner: false },
|
|
70
|
+
{ pubkey: creator, isWritable: true, isSigner: true },
|
|
71
|
+
{ pubkey: SystemProgram.programId, isWritable: false, isSigner: false },
|
|
72
|
+
],
|
|
73
|
+
data,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Build initialize_fee_config instruction
|
|
78
|
+
*
|
|
79
|
+
* Initializes a fee distribution config for multi-recipient creator fees.
|
|
80
|
+
* Uses a merkle tree to allow multiple recipients to claim their share.
|
|
81
|
+
*
|
|
82
|
+
* Requirements:
|
|
83
|
+
* - Token must be on bonding curve (not yet graduated)
|
|
84
|
+
* - Creator must be the creator_fee_recipient of the bonding curve
|
|
85
|
+
* - This is LOCKED after creation - recipients cannot be changed
|
|
86
|
+
*
|
|
87
|
+
* @param params - Fee config parameters
|
|
88
|
+
* @param programId - CoinBarrel program ID
|
|
89
|
+
* @returns Transaction instruction
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```typescript
|
|
93
|
+
* const ix = buildInitFeeDistributionConfigInstruction({
|
|
94
|
+
* tokenMint: new PublicKey('...'),
|
|
95
|
+
* creator: wallet.publicKey,
|
|
96
|
+
* merkleRoot: new Uint8Array(32), // Computed from recipients
|
|
97
|
+
* recipientCount: 3,
|
|
98
|
+
* }, programId);
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
export function buildInitFeeDistributionConfigInstruction(params, programId) {
|
|
102
|
+
const { tokenMint, creator, merkleRoot, recipientCount } = params;
|
|
103
|
+
// Validate recipient count
|
|
104
|
+
if (recipientCount < 1 || recipientCount > 100) {
|
|
105
|
+
throw new Error('Recipient count must be between 1 and 100');
|
|
106
|
+
}
|
|
107
|
+
// Validate merkle root length
|
|
108
|
+
if (merkleRoot.length !== 32) {
|
|
109
|
+
throw new Error('Merkle root must be 32 bytes');
|
|
110
|
+
}
|
|
111
|
+
// Derive PDAs
|
|
112
|
+
const bondingCurve = getBondingCurvePda(tokenMint, programId);
|
|
113
|
+
const feeConfig = getFeeConfigPda(tokenMint, programId);
|
|
114
|
+
// Build instruction data: discriminator + merkle_root (32 bytes) + recipient_count (u8)
|
|
115
|
+
const data = Buffer.concat([
|
|
116
|
+
DISCRIMINATORS.initialize_fee_config,
|
|
117
|
+
Buffer.from(merkleRoot),
|
|
118
|
+
writeU8(recipientCount),
|
|
119
|
+
]);
|
|
120
|
+
// Account order matches InitializeFeeConfig struct:
|
|
121
|
+
// 0. bonding_curve
|
|
122
|
+
// 1. token_mint
|
|
123
|
+
// 2. fee_config (init)
|
|
124
|
+
// 3. creator (signer, payer)
|
|
125
|
+
// 4. system_program
|
|
126
|
+
return new TransactionInstruction({
|
|
127
|
+
programId,
|
|
128
|
+
keys: [
|
|
129
|
+
{ pubkey: bondingCurve, isWritable: false, isSigner: false },
|
|
130
|
+
{ pubkey: tokenMint, isWritable: false, isSigner: false },
|
|
131
|
+
{ pubkey: feeConfig, isWritable: true, isSigner: false },
|
|
132
|
+
{ pubkey: creator, isWritable: true, isSigner: true },
|
|
133
|
+
{ pubkey: SystemProgram.programId, isWritable: false, isSigner: false },
|
|
134
|
+
],
|
|
135
|
+
data,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=fees.js.map
|
package/dist/fees.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fees.js","sourceRoot":"","sources":["../src/fees.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -30,19 +30,20 @@ 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, PendingHolderRewards } from './types.js';
|
|
33
|
+
import type { CoinBarrelConfig, BondingCurveState, PoolState, MarketInfo, BuyOnCurveParams, SellOnCurveParams, SellMaxOnCurveParams, SwapSolToTokenParams, SwapTokenToSolParams, SwapTokenToSolMaxParams, CreateBarrelTokenParams, CreateInstantTokenParams, CreateBarrelTokenV2Params, CreateInstantTokenV2Params, 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';
|
|
37
37
|
export { getBondingCurveState, getPoolState, getMarketInfo, getUserTokenBalance, } from './accounts.js';
|
|
38
38
|
export { getBuyQuote, getSellQuote, willTriggerMigration, MIGRATION_THRESHOLDS, buildBuyOnCurveInstruction, buildBuyOnCurveWithMigrationInstruction, } from './curve.js';
|
|
39
|
-
export { getMigrationPDAs, getInstantTokenPDAs, getInstantTokenPda, getInstantMintAuthorityPda } from './pda.js';
|
|
39
|
+
export { getMigrationPDAs, getInstantTokenPDAs, getInstantTokenPda, getInstantMintAuthorityPda, getFeeExtensionPda, getFeeConfigPda, getBondingCurvePda, getBondingAuthorityPda, getSolEscrowPda, getPoolPda, getPoolAuthorityPda, getHolderRewardPda, } from './pda.js';
|
|
40
40
|
export type { MigrationPDAs, InstantTokenPDAs } from './pda.js';
|
|
41
41
|
export { getSwapSolToTokenQuote, getSwapTokenToSolQuote } from './pool.js';
|
|
42
|
-
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata, type TokenMetadata, type TokenMetadataJson, } from './metadata.js';
|
|
43
|
-
export { buildCreateBarrelTokenInstruction, buildCreateInstantTokenInstruction } from './create.js';
|
|
42
|
+
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata, isToken2022Mint, getToken2022Metadata, getToken2022MetadataJson, parseToken2022Metadata, getUniversalTokenMetadata, getUniversalTokenMetadataJson, type TokenMetadata, type TokenMetadataJson, } from './metadata.js';
|
|
43
|
+
export { buildCreateBarrelTokenInstruction, buildCreateInstantTokenInstruction, buildCreateBarrelTokenV2Instruction, buildCreateInstantTokenV2Instruction, } from './create.js';
|
|
44
44
|
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, buildClaimCreatorTraderFeesInstruction, getPendingHolderRewards, } from './rewards.js';
|
|
45
45
|
export { buildConfigureBondingFeesInstruction, type ConfigureBondingFeesParams, } from './admin.js';
|
|
46
|
+
export { buildInitFeeExtensionInstruction, buildInitFeeDistributionConfigInstruction, } from './fees.js';
|
|
46
47
|
/**
|
|
47
48
|
* CoinBarrel SDK - Main entry point
|
|
48
49
|
*
|
|
@@ -119,6 +120,39 @@ export declare class CoinBarrel {
|
|
|
119
120
|
* ```
|
|
120
121
|
*/
|
|
121
122
|
batchGetTokenMetadata(mints: PublicKey[]): Promise<Map<string, metadata.TokenMetadata | null>>;
|
|
123
|
+
/**
|
|
124
|
+
* Check if a token mint is a Token2022 token
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```typescript
|
|
128
|
+
* const isToken2022 = await sdk.isToken2022Mint(tokenMint);
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
isToken2022Mint(tokenMint: PublicKey): Promise<boolean>;
|
|
132
|
+
/**
|
|
133
|
+
* Get token metadata (universal - works with both Metaplex and Token2022)
|
|
134
|
+
*
|
|
135
|
+
* Automatically detects Token2022 vs SPL Token and fetches metadata accordingly.
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* const meta = await sdk.getUniversalTokenMetadata(tokenMint);
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
getUniversalTokenMetadata(tokenMint: PublicKey): Promise<metadata.TokenMetadata | null>;
|
|
143
|
+
/**
|
|
144
|
+
* Get full token metadata including off-chain JSON (universal)
|
|
145
|
+
*
|
|
146
|
+
* Automatically detects Token2022 vs SPL Token and fetches metadata accordingly.
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const meta = await sdk.getUniversalTokenMetadataJson(tokenMint);
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
getUniversalTokenMetadataJson(tokenMint: PublicKey, options?: {
|
|
154
|
+
timeoutMs?: number;
|
|
155
|
+
}): Promise<metadata.TokenMetadataJson | null>;
|
|
122
156
|
/** Get bonding curve PDA for a token */
|
|
123
157
|
getBondingCurvePda(tokenMint: PublicKey): PublicKey;
|
|
124
158
|
/** Get pool PDA for a token */
|
|
@@ -180,6 +214,66 @@ export declare class CoinBarrel {
|
|
|
180
214
|
mintKeypair: Keypair;
|
|
181
215
|
adminTokenAccountKeypair: Keypair;
|
|
182
216
|
};
|
|
217
|
+
/**
|
|
218
|
+
* Build create barrel token V2 instruction (Token2022)
|
|
219
|
+
*
|
|
220
|
+
* Creates a new token using Token2022 with native metadata extension:
|
|
221
|
+
* - Mint authority: revoked immediately after minting 1B tokens
|
|
222
|
+
* - Freeze authority: null from creation
|
|
223
|
+
* - Metadata stored directly on mint (no Metaplex)
|
|
224
|
+
*
|
|
225
|
+
* Returns the instruction and a mint keypair that must sign the transaction.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```typescript
|
|
229
|
+
* const { instructions, mintKeypair } = sdk.buildCreateTokenV2Instruction({
|
|
230
|
+
* payer: wallet.publicKey,
|
|
231
|
+
* name: "My Token",
|
|
232
|
+
* symbol: "MTK",
|
|
233
|
+
* uri: "https://...",
|
|
234
|
+
* creatorFeeRecipient: wallet.publicKey,
|
|
235
|
+
* });
|
|
236
|
+
*
|
|
237
|
+
* // Add mintKeypair as signer when sending transaction
|
|
238
|
+
* ```
|
|
239
|
+
*/
|
|
240
|
+
buildCreateTokenV2Instruction(params: CreateBarrelTokenV2Params): {
|
|
241
|
+
instructions: TransactionInstruction[];
|
|
242
|
+
mintKeypair: Keypair;
|
|
243
|
+
};
|
|
244
|
+
/**
|
|
245
|
+
* Build create instant token V2 instruction (Token2022)
|
|
246
|
+
*
|
|
247
|
+
* Creates an instant token using Token2022 for direct Meteora DAMM V2 pool launch.
|
|
248
|
+
* Unlike bonding curve tokens, these launch directly to Meteora with no graduation phase.
|
|
249
|
+
*
|
|
250
|
+
* Key differences from V1:
|
|
251
|
+
* - Uses Token2022 with native metadata extension (no Metaplex)
|
|
252
|
+
* - Reduced creation fee: 0.03 SOL (vs 0.05 SOL for V1)
|
|
253
|
+
*
|
|
254
|
+
* Returns instructions and mint keypair that must sign the transaction.
|
|
255
|
+
* The adminTokenAccount is a Token2022 ATA (derived, not a keypair).
|
|
256
|
+
*
|
|
257
|
+
* @example
|
|
258
|
+
* ```typescript
|
|
259
|
+
* const { instructions, mintKeypair, adminTokenAccount } = sdk.buildCreateInstantTokenV2Instruction({
|
|
260
|
+
* payer: wallet.publicKey,
|
|
261
|
+
* creator: wallet.publicKey,
|
|
262
|
+
* name: "My Token",
|
|
263
|
+
* symbol: "MTK",
|
|
264
|
+
* uri: "https://...",
|
|
265
|
+
* variant: InstantTokenVariant.Standard,
|
|
266
|
+
* traderRewardsShareBps: 2500, // 25% to holders
|
|
267
|
+
* });
|
|
268
|
+
*
|
|
269
|
+
* // Only mintKeypair needs to sign
|
|
270
|
+
* ```
|
|
271
|
+
*/
|
|
272
|
+
buildCreateInstantTokenV2Instruction(params: CreateInstantTokenV2Params): {
|
|
273
|
+
instructions: TransactionInstruction[];
|
|
274
|
+
mintKeypair: Keypair;
|
|
275
|
+
adminTokenAccount: PublicKey;
|
|
276
|
+
};
|
|
183
277
|
/** Get instant token PDA */
|
|
184
278
|
getInstantTokenPda(mint: PublicKey): PublicKey;
|
|
185
279
|
/** Get all instant token PDAs */
|
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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -41,12 +41,17 @@ export * from './pda.js';
|
|
|
41
41
|
export { getBondingCurveState, getPoolState, getMarketInfo, getUserTokenBalance, } from './accounts.js';
|
|
42
42
|
export { getBuyQuote, getSellQuote, willTriggerMigration, MIGRATION_THRESHOLDS, buildBuyOnCurveInstruction, buildBuyOnCurveWithMigrationInstruction, // deprecated, alias for buildBuyOnCurveInstruction
|
|
43
43
|
} from './curve.js';
|
|
44
|
-
export { getMigrationPDAs, getInstantTokenPDAs, getInstantTokenPda, getInstantMintAuthorityPda } from './pda.js';
|
|
44
|
+
export { getMigrationPDAs, getInstantTokenPDAs, getInstantTokenPda, getInstantMintAuthorityPda, getFeeExtensionPda, getFeeConfigPda, getBondingCurvePda, getBondingAuthorityPda, getSolEscrowPda, getPoolPda, getPoolAuthorityPda, getHolderRewardPda, } from './pda.js';
|
|
45
45
|
export { getSwapSolToTokenQuote, getSwapTokenToSolQuote } from './pool.js';
|
|
46
|
-
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata,
|
|
47
|
-
|
|
46
|
+
export { getTokenMetadata, getTokenMetadataJson, batchGetTokenMetadata, getMetadataPda, parseMetaplexMetadata,
|
|
47
|
+
// Token2022 metadata
|
|
48
|
+
isToken2022Mint, getToken2022Metadata, getToken2022MetadataJson, parseToken2022Metadata, getUniversalTokenMetadata, getUniversalTokenMetadataJson, } from './metadata.js';
|
|
49
|
+
export { buildCreateBarrelTokenInstruction, buildCreateInstantTokenInstruction,
|
|
50
|
+
// Token2022 V2 instruction builders
|
|
51
|
+
buildCreateBarrelTokenV2Instruction, buildCreateInstantTokenV2Instruction, } from './create.js';
|
|
48
52
|
export { buildClaimHolderRewardsCurveInstruction, buildClaimHolderRewardsInstruction, buildClaimCreatorTraderFeesInstruction, getPendingHolderRewards, } from './rewards.js';
|
|
49
53
|
export { buildConfigureBondingFeesInstruction, } from './admin.js';
|
|
54
|
+
export { buildInitFeeExtensionInstruction, buildInitFeeDistributionConfigInstruction, } from './fees.js';
|
|
50
55
|
// ============= SDK Class =============
|
|
51
56
|
/**
|
|
52
57
|
* CoinBarrel SDK - Main entry point
|
|
@@ -151,6 +156,43 @@ export class CoinBarrel {
|
|
|
151
156
|
async batchGetTokenMetadata(mints) {
|
|
152
157
|
return metadata.batchGetTokenMetadata(this.connection, mints);
|
|
153
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* Check if a token mint is a Token2022 token
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* const isToken2022 = await sdk.isToken2022Mint(tokenMint);
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
async isToken2022Mint(tokenMint) {
|
|
168
|
+
return metadata.isToken2022Mint(this.connection, tokenMint);
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Get token metadata (universal - works with both Metaplex and Token2022)
|
|
172
|
+
*
|
|
173
|
+
* Automatically detects Token2022 vs SPL Token and fetches metadata accordingly.
|
|
174
|
+
*
|
|
175
|
+
* @example
|
|
176
|
+
* ```typescript
|
|
177
|
+
* const meta = await sdk.getUniversalTokenMetadata(tokenMint);
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
async getUniversalTokenMetadata(tokenMint) {
|
|
181
|
+
return metadata.getUniversalTokenMetadata(this.connection, tokenMint);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Get full token metadata including off-chain JSON (universal)
|
|
185
|
+
*
|
|
186
|
+
* Automatically detects Token2022 vs SPL Token and fetches metadata accordingly.
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* const meta = await sdk.getUniversalTokenMetadataJson(tokenMint);
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
async getUniversalTokenMetadataJson(tokenMint, options) {
|
|
194
|
+
return metadata.getUniversalTokenMetadataJson(this.connection, tokenMint, options);
|
|
195
|
+
}
|
|
154
196
|
// ============= PDA Helpers =============
|
|
155
197
|
/** Get bonding curve PDA for a token */
|
|
156
198
|
getBondingCurvePda(tokenMint) {
|
|
@@ -219,6 +261,64 @@ export class CoinBarrel {
|
|
|
219
261
|
buildCreateInstantTokenInstruction(params) {
|
|
220
262
|
return create.buildCreateInstantTokenInstruction(params, this.programId, this.network);
|
|
221
263
|
}
|
|
264
|
+
// ============= Token2022 V2 Token Creation =============
|
|
265
|
+
/**
|
|
266
|
+
* Build create barrel token V2 instruction (Token2022)
|
|
267
|
+
*
|
|
268
|
+
* Creates a new token using Token2022 with native metadata extension:
|
|
269
|
+
* - Mint authority: revoked immediately after minting 1B tokens
|
|
270
|
+
* - Freeze authority: null from creation
|
|
271
|
+
* - Metadata stored directly on mint (no Metaplex)
|
|
272
|
+
*
|
|
273
|
+
* Returns the instruction and a mint keypair that must sign the transaction.
|
|
274
|
+
*
|
|
275
|
+
* @example
|
|
276
|
+
* ```typescript
|
|
277
|
+
* const { instructions, mintKeypair } = sdk.buildCreateTokenV2Instruction({
|
|
278
|
+
* payer: wallet.publicKey,
|
|
279
|
+
* name: "My Token",
|
|
280
|
+
* symbol: "MTK",
|
|
281
|
+
* uri: "https://...",
|
|
282
|
+
* creatorFeeRecipient: wallet.publicKey,
|
|
283
|
+
* });
|
|
284
|
+
*
|
|
285
|
+
* // Add mintKeypair as signer when sending transaction
|
|
286
|
+
* ```
|
|
287
|
+
*/
|
|
288
|
+
buildCreateTokenV2Instruction(params) {
|
|
289
|
+
return create.buildCreateBarrelTokenV2Instruction(params, this.programId, this.network);
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Build create instant token V2 instruction (Token2022)
|
|
293
|
+
*
|
|
294
|
+
* Creates an instant token using Token2022 for direct Meteora DAMM V2 pool launch.
|
|
295
|
+
* Unlike bonding curve tokens, these launch directly to Meteora with no graduation phase.
|
|
296
|
+
*
|
|
297
|
+
* Key differences from V1:
|
|
298
|
+
* - Uses Token2022 with native metadata extension (no Metaplex)
|
|
299
|
+
* - Reduced creation fee: 0.03 SOL (vs 0.05 SOL for V1)
|
|
300
|
+
*
|
|
301
|
+
* Returns instructions and mint keypair that must sign the transaction.
|
|
302
|
+
* The adminTokenAccount is a Token2022 ATA (derived, not a keypair).
|
|
303
|
+
*
|
|
304
|
+
* @example
|
|
305
|
+
* ```typescript
|
|
306
|
+
* const { instructions, mintKeypair, adminTokenAccount } = sdk.buildCreateInstantTokenV2Instruction({
|
|
307
|
+
* payer: wallet.publicKey,
|
|
308
|
+
* creator: wallet.publicKey,
|
|
309
|
+
* name: "My Token",
|
|
310
|
+
* symbol: "MTK",
|
|
311
|
+
* uri: "https://...",
|
|
312
|
+
* variant: InstantTokenVariant.Standard,
|
|
313
|
+
* traderRewardsShareBps: 2500, // 25% to holders
|
|
314
|
+
* });
|
|
315
|
+
*
|
|
316
|
+
* // Only mintKeypair needs to sign
|
|
317
|
+
* ```
|
|
318
|
+
*/
|
|
319
|
+
buildCreateInstantTokenV2Instruction(params) {
|
|
320
|
+
return create.buildCreateInstantTokenV2Instruction(params, this.programId, this.network);
|
|
321
|
+
}
|
|
222
322
|
/** Get instant token PDA */
|
|
223
323
|
getInstantTokenPda(mint) {
|
|
224
324
|
return pda.getInstantTokenPda(mint, this.programId);
|
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;AAwBxC,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,EACN,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,0BAA0B,EAC1B,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,UAAU,EACV,mBAAmB,EACnB,kBAAkB,GAClB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB;AACrB,qBAAqB;AACrB,eAAe,EACf,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,6BAA6B,GAG7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,iCAAiC,EACjC,kCAAkC;AAClC,oCAAoC;AACpC,mCAAmC,EACnC,oCAAoC,GACpC,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,uCAAuC,EACvC,kCAAkC,EAClC,sCAAsC,EACtC,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,oCAAoC,GAEpC,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,gCAAgC,EAChC,yCAAyC,GACzC,MAAM,WAAW,CAAC;AAEnB,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;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CAAC,SAAoB;QACzC,OAAO,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,yBAAyB,CAAC,SAAoB;QACnD,OAAO,QAAQ,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,6BAA6B,CAClC,SAAoB,EACpB,OAAgC;QAEhC,OAAO,QAAQ,CAAC,6BAA6B,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACpF,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,0DAA0D;IAE1D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,6BAA6B,CAAC,MAAiC;QAI9D,OAAO,MAAM,CAAC,mCAAmC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACzF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,oCAAoC,CAAC,MAAkC;QAKtE,OAAO,MAAM,CAAC,oCAAoC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1F,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/metadata.d.ts
CHANGED
|
@@ -91,4 +91,74 @@ export declare function getTokenMetadataJson(connection: Connection, mint: Publi
|
|
|
91
91
|
* ```
|
|
92
92
|
*/
|
|
93
93
|
export declare function batchGetTokenMetadata(connection: Connection, mints: PublicKey[]): Promise<Map<string, TokenMetadata | null>>;
|
|
94
|
+
/**
|
|
95
|
+
* Check if a token mint is a Token2022 token
|
|
96
|
+
*
|
|
97
|
+
* @param connection - Solana RPC connection
|
|
98
|
+
* @param mint - Token mint address
|
|
99
|
+
* @returns true if the token is a Token2022 token
|
|
100
|
+
*/
|
|
101
|
+
export declare function isToken2022Mint(connection: Connection, mint: PublicKey): Promise<boolean>;
|
|
102
|
+
/**
|
|
103
|
+
* Parse Token2022 metadata from mint account data with TokenMetadata extension.
|
|
104
|
+
*
|
|
105
|
+
* Token2022 stores metadata directly on the mint account via the TokenMetadata extension.
|
|
106
|
+
* Layout (after base mint data):
|
|
107
|
+
* - Base mint: 82 bytes
|
|
108
|
+
* - Account type: 1 byte (should be 1 for Mint)
|
|
109
|
+
* - Extensions follow...
|
|
110
|
+
*
|
|
111
|
+
* TokenMetadata extension layout:
|
|
112
|
+
* - Extension type: 2 bytes (0x12 = MetadataPointer, need to find TokenMetadata)
|
|
113
|
+
* - Extension length: 2 bytes
|
|
114
|
+
* - Extension data:
|
|
115
|
+
* - update_authority: 32 bytes
|
|
116
|
+
* - mint: 32 bytes
|
|
117
|
+
* - name: 4 byte length + string
|
|
118
|
+
* - symbol: 4 byte length + string
|
|
119
|
+
* - uri: 4 byte length + string
|
|
120
|
+
* - additional_metadata: 4 byte length + vec entries
|
|
121
|
+
*/
|
|
122
|
+
export declare function parseToken2022Metadata(data: Buffer): TokenMetadata | null;
|
|
123
|
+
/**
|
|
124
|
+
* Fetch Token2022 metadata from the mint account directly.
|
|
125
|
+
*
|
|
126
|
+
* Token2022 stores metadata via the TokenMetadata extension on the mint,
|
|
127
|
+
* rather than in a separate Metaplex account.
|
|
128
|
+
*
|
|
129
|
+
* @param connection - Solana RPC connection
|
|
130
|
+
* @param mint - Token mint address
|
|
131
|
+
* @returns Token metadata or null if not found
|
|
132
|
+
*/
|
|
133
|
+
export declare function getToken2022Metadata(connection: Connection, mint: PublicKey): Promise<TokenMetadata | null>;
|
|
134
|
+
/**
|
|
135
|
+
* Fetch Token2022 metadata and then fetch the off-chain JSON.
|
|
136
|
+
*
|
|
137
|
+
* @param connection - Solana RPC connection
|
|
138
|
+
* @param mint - Token mint address
|
|
139
|
+
* @param options - Optional timeout configuration
|
|
140
|
+
* @returns Full metadata with off-chain JSON or null
|
|
141
|
+
*/
|
|
142
|
+
export declare function getToken2022MetadataJson(connection: Connection, mint: PublicKey, options?: {
|
|
143
|
+
timeoutMs?: number;
|
|
144
|
+
}): Promise<TokenMetadataJson | null>;
|
|
145
|
+
/**
|
|
146
|
+
* Universal metadata fetcher - automatically detects Token2022 vs SPL Token/Metaplex
|
|
147
|
+
*
|
|
148
|
+
* @param connection - Solana RPC connection
|
|
149
|
+
* @param mint - Token mint address
|
|
150
|
+
* @returns Token metadata (from Token2022 or Metaplex) or null
|
|
151
|
+
*/
|
|
152
|
+
export declare function getUniversalTokenMetadata(connection: Connection, mint: PublicKey): Promise<TokenMetadata | null>;
|
|
153
|
+
/**
|
|
154
|
+
* Universal metadata JSON fetcher - automatically detects Token2022 vs SPL Token/Metaplex
|
|
155
|
+
*
|
|
156
|
+
* @param connection - Solana RPC connection
|
|
157
|
+
* @param mint - Token mint address
|
|
158
|
+
* @param options - Optional timeout configuration
|
|
159
|
+
* @returns Full metadata with off-chain JSON or null
|
|
160
|
+
*/
|
|
161
|
+
export declare function getUniversalTokenMetadataJson(connection: Connection, mint: PublicKey, options?: {
|
|
162
|
+
timeoutMs?: number;
|
|
163
|
+
}): Promise<TokenMetadataJson | null>;
|
|
94
164
|
//# sourceMappingURL=metadata.d.ts.map
|
package/dist/metadata.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMxD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACvD,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAMzD;AAmBD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA0BxE;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,gBAAgB,CACrC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAa/B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA4DnC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,SAAS,EAAE,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC,CAAC,CAuC5C;AAID;;;;;;GAMG;AACH,wBAAsB,eAAe,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,OAAO,CAAC,CAQlB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAuCzE;AAuDD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAiB/B;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC7C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA2DnC;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC9C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,GACb,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAO/B;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CAClD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAOnC"}
|