UNPKG

goosefx-ssl-sdk-prism

Version:

SDK for interacting with GooseFX Single-sided Liquidity pools

148 lines (147 loc) 4.01 kB
{ "version": "0.1.0", "name": "contract", "instructions": [ { "name": "createStakingAccount", "accounts": [ { "name": "controller", "isMut": false, "isSigner": false }, { "name": "stakingAccount", "isMut": true, "isSigner": false }, { "name": "userWallet", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "stake", "accounts": [ { "name": "controller", "isMut": true, "isSigner": false }, { "name": "stakingAccount", "isMut": true, "isSigner": false }, { "name": "vault", "isMut": true, "isSigner": false }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "userWallet", "isMut": false, "isSigner": true }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "unstake", "accounts": [ { "name": "controller", "isMut": true, "isSigner": false }, { "name": "stakingAccount", "isMut": true, "isSigner": false }, { "name": "vault", "isMut": true, "isSigner": false }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "feeCollectorAta", "isMut": true, "isSigner": false }, { "name": "userWallet", "isMut": false, "isSigner": true }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "unstakePercent", "type": "u64" } ] } ], "accounts": [], "errors": [ { "code": 6000, "name": "Suspended", "msg": "[G000] The pool is suspended" }, { "code": 6001, "name": "NotAdmin", "msg": "[G001] Not admin" }, { "code": 6002, "name": "PercentageOutOfRange", "msg": "[G002] Percentage out of range" }, { "code": 6003, "name": "NotEnoughRewardReserve", "msg": "[G003] Not enough reward reserve" } ] }