Surface technique SterlingDex
Cette vue sert de point d'appui pour transformer plus tard la couche technique du DEX en vraie interface utilisateur.
Explorer la structure du programme et la surface d'execution de SterlingDex.
Cette vue sert de point d'appui pour transformer plus tard la couche technique du DEX en vraie interface utilisateur.
{
"ok": true,
"name": "sterling_amm",
"programId": "7v9sLrk92NNLLUfXLJw3o7MycZNvwsTK6kLWfWb8vcVA",
"instructions": [
{
"name": "initialize_config",
"accounts": [
"config",
"admin",
"systemProgram"
],
"args": []
},
{
"name": "set_params",
"accounts": [
"config",
"admin"
],
"args": [
{
"name": "cashbackBps",
"type": "u16"
},
{
"name": "rewardInterval",
"type": "u64"
},
{
"name": "allowFallbackUsdt",
"type": "bool"
}
]
},
{
"name": "set_valuation",
"accounts": [
"config",
"admin"
],
"args": [
{
"name": "tokenValueUsdMicrosDefault",
"type": "u64"
},
{
"name": "treasuryValueUsdMicros",
"type": "u64"
}
]
},
{
"name": "set_mint_enabled",
"accounts": [
"config",
"admin"
],
"args": [
{
"name": "mint",
"type": "publicKey"
},
{
"name": "enabled",
"type": "bool"
}
]
},
{
"name": "init_value_registry",
"accounts": [
"config",
"admin",
"mint",
"valueRegistry",
"systemProgram"
],
"args": [
{
"name": "valueUsdMicros",
"type": "u64"
}
]
},
{
"name": "set_token_value",
"accounts": [
"config",
"admin",
"mint",
"valueRegistry"
],
"args": [
{
"name": "valueUsdMicros",
"type": "u64"
}
]
},
{
"name": "init_stake_vault",
"accounts": [
"config",
"admin",
"mint",
"stakeVault",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "init_reward_vault",
"accounts": [
"config",
"admin",
"mint",
"rewardVault",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "stake",
"accounts": [
"config",
"user",
"stakeMint",
"payoutMint",
"userStakeAta",
"stakeVault",
"position",
"systemProgram",
"tokenProgram"
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
},
{
"name": "claim",
"accounts": [
"config",
"user",
"stakeMint",
"payoutMint",
"position",
"rewardVault",
"userPayoutAta",
"usdtMainMint",
"usdtMainVault",
"userUsdtMainAta",
"usdtOldMint",
"usdtOldVault",
"userUsdtOldAta",
"tokenProgram"
],
"args": []
},
{
"name": "unstake",
"accounts": [
"config",
"user",
"stakeMint",
"payoutMint",
"position",
"userStakeAta",
"stakeVault",
"tokenProgram"
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
},
{
"name": "create_pool",
"accounts": [
"config",
"admin",
"baseMint",
"quoteMint",
"baseValueRegistry",
"quoteValueRegistry",
"pool",
"systemProgram"
],
"args": [
{
"name": "feeBps",
"type": "u16"
}
]
},
{
"name": "init_pool_base_vault",
"accounts": [
"config",
"admin",
"pool",
"baseMint",
"baseVault",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "init_pool_quote_vault",
"accounts": [
"config",
"admin",
"pool",
"quoteMint",
"quoteVault",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "init_pool_lp_mint",
"accounts": [
"config",
"admin",
"pool",
"lpMint",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "add_liquidity",
"accounts": [
"config",
"user",
"pool",
"userBaseAta",
"userQuoteAta",
"userLpAta",
"baseVault",
"quoteVault",
"lpMint",
"tokenProgram"
],
"args": [
{
"name": "amountBase",
"type": "u64"
},
{
"name": "amountQuote",
"type": "u64"
},
{
"name": "minLpOut",
"type": "u64"
}
]
},
{
"name": "remove_liquidity",
"accounts": [
"config",
"user",
"pool",
"userBaseAta",
"userQuoteAta",
"userLpAta",
"baseVault",
"quoteVault",
"lpMint",
"tokenProgram"
],
"args": [
{
"name": "lpAmount",
"type": "u64"
},
{
"name": "minBaseOut",
"type": "u64"
},
{
"name": "minQuoteOut",
"type": "u64"
}
]
},
{
"name": "swap_base_for_quote",
"accounts": [
"config",
"user",
"pool",
"userBaseAta",
"userQuoteAta",
"baseVault",
"quoteVault",
"tokenProgram"
],
"args": [
{
"name": "amountIn",
"type": "u64"
},
{
"name": "minOut",
"type": "u64"
}
]
},
{
"name": "swap_quote_for_base",
"accounts": [
"config",
"user",
"pool",
"userQuoteAta",
"userBaseAta",
"quoteVault",
"baseVault",
"tokenProgram"
],
"args": [
{
"name": "amountIn",
"type": "u64"
},
{
"name": "minOut",
"type": "u64"
}
]
},
{
"name": "init_bridge_vault",
"accounts": [
"config",
"admin",
"mint",
"valueRegistry",
"bridgeVault",
"systemProgram",
"tokenProgram",
"rent"
],
"args": []
},
{
"name": "bridge_lock",
"accounts": [
"config",
"user",
"mint",
"valueRegistry",
"userAta",
"bridgeVault",
"tokenProgram"
],
"args": [
{
"name": "amount",
"type": "u64"
},
{
"name": "destinationChain",
"type": "u16"
},
{
"name": "destinationAddress",
"type": {
"array": [
"u8",
32
]
}
}
]
},
{
"name": "bridge_release",
"accounts": [
"config",
"admin",
"mint",
"valueRegistry",
"bridgeVault",
"toAta",
"tokenProgram"
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
}
],
"events": [
{
"name": "BridgeLockEvent",
"fields": [
{
"name": "user",
"type": "publicKey",
"index": false
},
{
"name": "mint",
"type": "publicKey",
"index": false
},
{
"name": "amount",
"type": "u64",
"index": false
},
{
"name": "destinationChain",
"type": "u16",
"index": false
},
{
"name": "destinationAddress",
"type": {
"array": [
"u8",
32
]
},
"index": false
},
{
"name": "ts",
"type": "i64",
"index": false
}
]
}
]
}