The generator proxy contract interacts with the VKR LP staking contract (the Astroport dual rewards feature).
VKR LP Staking contract implementation: https://github.com/valkyrieprotocol/contracts/tree/main/contracts/lp_staking
The staking via proxy guide is here.
Inits with required contract addresses for depositing and reward distribution.
{
"generator_contract_addr": "terra...",
"pair_addr": "terra...",
"lp_token_addr": "terra...",
"reward_contract_addr": "terra...",
"reward_token_addr": "terra..."
}
CW20 receive msg.
{
"receive": {
"sender": "terra...",
"amount": "123",
"msg": "<base64_encoded_json_string>"
}
}
Updates token proxy rewards.
{
"update_rewards": {}
}
Sends token rewards amount for given address.
{
"send_rewards": {
"account": "terra...",
"amount": "123"
}
}
Withdraws token rewards amount for given address.
{
"withdraw": {
"account": "terra...",
"amount": "123"
}
}
Withdraws token rewards amount for given address.
{
"emergency_withdraw": {
"account": "terra...",
"amount": "123"
}
}
All query messages are described below. A custom struct is defined for each query response.
Returns deposited/staked token amount.
{
"deposit": {}
}
Gives token proxy reward amount.
{
"reward": {}
}
Gives token proxy reward pending amount.
{
"pending_token": {}
}