Skip to content

Latest commit

 

History

History
122 lines (88 loc) · 1.74 KB

File metadata and controls

122 lines (88 loc) · 1.74 KB

Generator Proxy to VKR LP Staking Rewards

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.


InstantiateMsg

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..."
}

ExecuteMsg

receive

CW20 receive msg.

{
  "receive": {
    "sender": "terra...",
    "amount": "123",
    "msg": "<base64_encoded_json_string>"
  }
}

update_rewards

Updates token proxy rewards.

{
  "update_rewards": {}
}

send_rewards

Sends token rewards amount for given address.

{
  "send_rewards": {
    "account": "terra...",
    "amount": "123"
  }
}

withdraw

Withdraws token rewards amount for given address.

{
  "withdraw": {
    "account": "terra...",
    "amount": "123"
  }
}

emergency_withdraw

Withdraws token rewards amount for given address.

{
  "emergency_withdraw": {
    "account": "terra...",
    "amount": "123"
  }
}

QueryMsg

All query messages are described below. A custom struct is defined for each query response.

deposit

Returns deposited/staked token amount.

{
  "deposit": {}
}

reward

Gives token proxy reward amount.

{
  "reward": {}
}

pending_token

Gives token proxy reward pending amount.

{
  "pending_token": {}
}