pyaver.constants
1from solana.publickey import PublicKey 2from .enums import SolanaNetwork 3 4 5##### SHARED DEVNET AND MAINNET CONSTANTS 6AVER_PROGRAM_ID = PublicKey('6q5ZGhEj6kkmEjuyCXuH4x8493bpi9fNzvy9L8hX83HQ') 7AVER_TOKEN = PublicKey('AVERsCxn9wr9YZ4WVavPbjm13hrLTPAkdnu1QqK9ZL1y') 8AVER_MARKET_AUTHORITY = PublicKey('EEg375Q8wEsPTyaQ4jG4hmNsMojmMHs6gB58iVWUXSwF') 9AVER_HOST_ACCOUNT = PublicKey('5xhmqK1Dh48TiqvHxoZi6WWWKL6THtsUjh3GoiVEbbR8') 10AVER_COMMUNITY_REWARDS_NFT = PublicKey( 11 'AVERojzZ8649E1oLPvcgG2SSbVECxs8PcG5JkpuK2Dvq' 12) 13 14 15 16##### DEVNET ONLY CONSTANTS 17AVER_API_ENDPOINT_DEVNET = 'https://dev.api.aver.exchange' 18SOLANA_ENDPOINT_DEVNET = 'https://api.devnet.solana.com' 19USDC_DEVNET = PublicKey('BWvbxUTAxevm1NG8RHe1LhKmca9nz5ym2xqafTxr6ybj') 20 21# ATA for market authority with USDC 22AVER_MARKET_AUTHORITY_VAULT_DEVNET = PublicKey( 23 'TxyectLDHmkzidS6RCat6uuZ385xaNbxg7R7vrfhTAD' 24) 25 26# PDA derivation of 'third-party-token-vault' + USDC + AVER_PROGRAM_ID 27AVER_THIRD_PARTY_REWARD_VAULT_AUTHORITY_DEVNET = PublicKey( 28 'Gb6DFbnMUdA1ReJqzfN7oeBpTNtz347bzgKUXgzzA58F' 29) 30 31# ATA of vault authority PDA with USDC 32AVER_THIRD_PARTY_REWARD_VAULT_DEVNET = PublicKey( 33 'DrWWingQnsb46bJg6ms5xPhnFz2YCuc9sihqeFFqGVXK' 34) 35 36# bump of third party vault authority PDA 37AVER_THIRD_PARTY_REWARD_VAULT_BUMP_DEVNET = 253 38 39AVER_MAINNET_LAUNCH_NFT_DEVNET = PublicKey( 40 '4QwFUyLKtHZqbHvxZQqLGPz8eMjXBgedaWvuQTdKwKJx' 41) 42 43 44 45##### MAINNET ONLY CONSTANTS 46AVER_API_ENDPOINT_MAINNET = 'https://api.aver.exchange' 47SOLANA_ENDPOINT_MAINET = 'https://api.mainnet-beta.solana.com/' 48USDC_MAINNET = PublicKey('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v') # (USDC) 49 50AVER_MARKET_AUTHORITY_VAULT_MAINNET = PublicKey( 51 '8M33TSnT9qDnTS2nSiECtfn7uhxNYZ9oJRVumYqgo2NX' 52) 53 54AVER_THIRD_PARTY_REWARD_VAULT_MAINNET = PublicKey( 55 '2FMt5pb8oJGAyvSN6Ytw1nD3Np6MUJ2jRZrv63Zy4nqT' 56) 57 58AVER_THIRD_PARTY_REWARD_VAULT_AUTHORITY_MAINNET = PublicKey( 59 '5sRuNV4LqvroWF1EiUmPuUYAzti4Biikou8jRYMuxVaR' 60) 61 62AVER_THIRD_PARTY_REWARD_VAULT_BUMP_MAINNET = 250 63 64AVER_MAINNET_LAUNCH_NFT_MAINNET = PublicKey( 65 'BqSFP5CbfBfZeQqGbzYEipfzTDptTYHFL9AzZA8TBXjn' 66) 67 68##### OTHER CONSTANTS 69 70SYS_VAR_CLOCK = PublicKey('SysvarC1ock11111111111111111111111111111111') 71 72MAX_ITERATIONS_FOR_CONSUME_EVENTS = 5 73 74CALLBACK_INFO_LEN = 33 75 76CANCEL_ALL_ORDERS_INSTRUCTION_CHUNK_SIZE = 5 77 78 79###### HELPER FUNCTIONS 80def get_aver_api_endpoint(solanaNetwork: SolanaNetwork): 81 """ 82 Returns URL for Aver API based on solana network 83 84 Args: 85 solanaNetwork (SolanaNetwork): Solana network 86 87 Returns: 88 string: URL 89 """ 90 return AVER_API_ENDPOINT_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else AVER_API_ENDPOINT_MAINNET 91def get_solana_endpoint(solanaNetwork: SolanaNetwork): 92 """ 93 Returns URL for solana endpoint based on solana network 94 95 Args: 96 solanaNetwork (SolanaNetwork): Solana network 97 98 Returns: 99 string: URL 100 """ 101 return SOLANA_ENDPOINT_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else SOLANA_ENDPOINT_MAINNET 102def get_quote_token(solanaNetwork: SolanaNetwork): 103 """ 104 Returns default quote token public key based on solana network 105 106 Args: 107 solanaNetwork (SolanaNetwork): _description_ 108 109 Returns: 110 PublicKey: Quote token public key 111 """ 112 return USDC_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else USDC_MAINNET
81def get_aver_api_endpoint(solanaNetwork: SolanaNetwork): 82 """ 83 Returns URL for Aver API based on solana network 84 85 Args: 86 solanaNetwork (SolanaNetwork): Solana network 87 88 Returns: 89 string: URL 90 """ 91 return AVER_API_ENDPOINT_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else AVER_API_ENDPOINT_MAINNET
Returns URL for Aver API based on solana network
Args
- solanaNetwork (SolanaNetwork): Solana network
Returns
string: URL
92def get_solana_endpoint(solanaNetwork: SolanaNetwork): 93 """ 94 Returns URL for solana endpoint based on solana network 95 96 Args: 97 solanaNetwork (SolanaNetwork): Solana network 98 99 Returns: 100 string: URL 101 """ 102 return SOLANA_ENDPOINT_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else SOLANA_ENDPOINT_MAINNET
Returns URL for solana endpoint based on solana network
Args
- solanaNetwork (SolanaNetwork): Solana network
Returns
string: URL
103def get_quote_token(solanaNetwork: SolanaNetwork): 104 """ 105 Returns default quote token public key based on solana network 106 107 Args: 108 solanaNetwork (SolanaNetwork): _description_ 109 110 Returns: 111 PublicKey: Quote token public key 112 """ 113 return USDC_DEVNET if solanaNetwork == SolanaNetwork.DEVNET else USDC_MAINNET
Returns default quote token public key based on solana network
Args
- solanaNetwork (SolanaNetwork): _description_
Returns
PublicKey: Quote token public key