/** * @name perps/adrena/adrena-constants * @description Canonical constants for the Adrena protocol on Solana mainnet. * * All values are pinned to the official Adrena release/39 ABI and the on-chain * program at `13gDzEXCdocbj8iAiqrScGo47NiSuYENGsRqi3SEAwet`. * * @module perps/adrena/adrena-constants */ /** Adrena program ID on Solana mainnet. */ export declare const ADRENA_PROGRAM_ID = "13gDzEXCdocbj8iAiqrScGo47NiSuYENGsRqi3SEAwet"; /** Adrena Cortex PDA seed. */ export declare const CORTEX_SEED: Buffer; /** Adrena Pool PDA seed. */ export declare const POOL_SEED: Buffer; /** Adrena Custody PDA seed. */ export declare const CUSTODY_SEED: Buffer; /** Adrena custody token account PDA seed. */ export declare const CUSTODY_TOKEN_ACCOUNT_SEED: Buffer; /** Adrena Oracle PDA seed. */ export declare const ORACLE_SEED: Buffer; /** Adrena transfer authority PDA seed. */ export declare const TRANSFER_AUTHORITY_SEED: Buffer; /** Adrena user profile PDA seed. */ export declare const USER_PROFILE_SEED: Buffer; /** Adrena limit order book PDA seed. */ export declare const LIMIT_ORDER_BOOK_SEED: Buffer; /** Adrena collateral escrow PDA seed. */ export declare const ESCROW_ACCOUNT_SEED: Buffer; /** Adrena LP token mint PDA seed. */ export declare const LP_TOKEN_MINT_SEED: Buffer; /** Adrena staking PDA seed. */ export declare const STAKING_SEED: Buffer; /** Adrena user staking PDA seed. */ export declare const USER_STAKING_SEED: Buffer; /** Adrena genesis lock PDA seed. */ export declare const GENESIS_LOCK_SEED: Buffer; /** Adrena LM token treasury PDA seed. */ export declare const LM_TOKEN_TREASURY_SEED: Buffer; /** Adrena LM token mint PDA seed. */ export declare const LM_TOKEN_MINT_SEED: Buffer; /** Adrena governance token mint PDA seed. */ export declare const GOVERNANCE_TOKEN_MINT_SEED: Buffer; /** Adrena staking staked token vault PDA seed. */ export declare const STAKING_STAKED_TOKEN_VAULT_SEED: Buffer; /** Adrena staking reward token vault PDA seed. */ export declare const STAKING_REWARD_TOKEN_VAULT_SEED: Buffer; /** Adrena staking LM reward token vault PDA seed. */ export declare const STAKING_LM_REWARD_TOKEN_VAULT_SEED: Buffer; /** Solana Token Program ID. */ export declare const TOKEN_PROGRAM_ID = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; /** Solana System Program ID. */ export declare const SYSTEM_PROGRAM_ID = "11111111111111111111111111111111"; /** Solana Associated Token Program ID. */ export declare const ASSOCIATED_TOKEN_PROGRAM_ID = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"; /** Solana Governance Program ID (Adrena uses SPL Governance). */ export declare const GOVERNANCE_PROGRAM_ID = "GovER5Lthms3bLBqWub97yVrMmEogzX7xNjdXpPPCVZw"; /** Adrena main pool address on Solana mainnet. */ export declare const ADRENA_MAIN_POOL_ADDRESS = "4bQRutgDJs6vuh6ZcWaPVXiQaBzbHketjbCDjL4oRN34"; /** Adrena main pool name (used in Pool PDA derivation for named pools). */ export declare const ADRENA_MAIN_POOL_NAME = "main-pool"; /** Adrena commodities pool address on Solana mainnet. */ export declare const ADRENA_COMMODITIES_POOL_ADDRESS = "GN2hyBVHcUitWETeDfAoeXDMqow1x8StqdRFnGaUB2vb"; /** Adrena commodities pool name. */ export declare const ADRENA_COMMODITIES_POOL_NAME = "commodities-pool"; /** Adrena USD decimals (used for size/collateral USD values). */ export declare const ADRENA_USD_DECIMALS = 6; /** Adrena price decimals (used for oracle prices). */ export declare const ADRENA_PRICE_DECIMALS = 10; /** Adrena BPS decimals. */ export declare const ADRENA_BPS_DECIMALS = 4; /** * Adrena mainnet custody addresses by token symbol. * Each custody is a PDA derived from [CUSTODY_SEED, pool, seed]. */ export declare const ADRENA_CUSTODIES: { readonly USDC: { readonly address: "Dk523LZeDQbZtUwPEBjFXCd2Au1tD7mWZBJJmcgHktNk"; readonly pool: "4bQRutgDJs6vuh6ZcWaPVXiQaBzbHketjbCDjL4oRN34"; readonly symbol: "USDC"; readonly decimals: 6; readonly kind: "collateral"; }; readonly JITOSOL: { readonly address: "GZ9XfWwgTRhkma2Y91Q9r1XKotNXYjBnKKabj19rhT71"; readonly pool: "4bQRutgDJs6vuh6ZcWaPVXiQaBzbHketjbCDjL4oRN34"; readonly symbol: "JITOSOL"; readonly decimals: 9; readonly kind: "perp"; }; readonly WBTC: { readonly address: "GFu3qS22mo6bAjg4Lr5R7L8pPgHq6GvbjJPKEHkbbs2c"; readonly pool: "4bQRutgDJs6vuh6ZcWaPVXiQaBzbHketjbCDjL4oRN34"; readonly symbol: "WBTC"; readonly decimals: 8; readonly kind: "perp"; }; readonly BONK: { readonly address: "8aJuzsgjxBnvRhDcfQBD7z4CUj7QoPEpaNwVd7KqsSk5"; readonly pool: "4bQRutgDJs6vuh6ZcWaPVXiQaBzbHketjbCDjL4oRN34"; readonly symbol: "BONK"; readonly decimals: 5; readonly kind: "perp"; }; readonly USDC_COMMODITIES: { readonly address: "woVG8fmrUzFJhWa6mRjiYC2qFCY73oAnQeioYK1m1JX"; readonly pool: "GN2hyBVHcUitWETeDfAoeXDMqow1x8StqdRFnGaUB2vb"; readonly symbol: "USDC"; readonly decimals: 6; readonly kind: "collateral"; }; readonly XAU: { readonly address: "JB86ouHXGYgF4UbPs8yxYdaHudrdsintf5EbBfMydzYt"; readonly pool: "GN2hyBVHcUitWETeDfAoeXDMqow1x8StqdRFnGaUB2vb"; readonly symbol: "XAU"; readonly decimals: 6; readonly kind: "synthetic-perp"; }; readonly XAG: { readonly address: "PexsCkkxpVmY4HNxUjT3U9PEg69kYScc8GukUwn6Q3Q"; readonly pool: "GN2hyBVHcUitWETeDfAoeXDMqow1x8StqdRFnGaUB2vb"; readonly symbol: "XAG"; readonly decimals: 6; readonly kind: "synthetic-perp"; }; readonly WTI: { readonly address: "De21TFyUPHkvFsWAt6xJLBBXGp636VuL5cKk2DvfbHiR"; readonly pool: "GN2hyBVHcUitWETeDfAoeXDMqow1x8StqdRFnGaUB2vb"; readonly symbol: "WTI"; readonly decimals: 6; readonly kind: "synthetic-perp"; }; }; /** * Adrena token mint addresses by symbol. * These are read directly from the on-chain custody accounts (mint field at * byte offset 48) — NOT hardcoded guesses. Synthetic commodities (XAU, XAG, * WTI) use the System Program address (111...111) because they have no SPL * token; they are price-oracle-only assets. * * Verified on 2025-07-27 against mainnet custody accounts. */ export declare const ADRENA_TOKEN_MINTS: Record; /** * Adrena fee redistribution mint (ADX — governance token). * This is the PDA-derived governance token mint: [Buffer.from("governance_token_mint")]. * Verified on-chain: supply 1.53B, 6 decimals, mint authority = Adrena program. * * Was previously a hardcoded placeholder with non-base58 characters that caused * "Non-base58 character" errors in PublicKey construction. */ export declare const ADRENA_FEE_REDISTRIBUTION_MINT = "G3T7ZLw2UHLejCQe3LxdUgme7kqRrNq379sLd95iJdEv"; /** Adrena Data API base URL. */ export declare const ADRENA_DATA_API_BASE_URL = "https://datapi.adrena.trade"; /** * Adrena default referrer profile account observed when Anchor materializes a * nullable `referrerProfile` optional account for open-position instructions. * When SAP MCP is building a no-referrer transaction, this account must not be * included in the final instruction metas: Adrena rejects it with a privilege * escalation error because the protocol expects the optional referrer to be * absent, not writable. */ export declare const ADRENA_DEFAULT_REFERRER_PROFILE = "Dhz8Ta79hgyUbaRcu7qHMnqMfY47kQHfHt2s42D9dC4e"; /** * Adrena lookup table address for Jito bundles. * This is NOT required for unsigned transaction building — the builder * constructs standard legacy transactions. If Jito bundle support is needed * in the future, fetch the real LUT address from the Adrena program at * runtime rather than hardcoding a placeholder. */ export declare const ADRENA_LOOKUP_TABLE_ADDRESS: string | null; //# sourceMappingURL=adrena-constants.d.ts.map