UNPKG

@zebec-network/zebec-stake-sdk

Version:

An SDK for zebec network stake solana program

1,126 lines (1,125 loc) 37.8 kB
{ "address": "zSTKzGLiN6T6EVzhBiL6sjULXMahDavAS2p4R62afGv", "metadata": { "name": "zebec_stake", "version": "0.1.0", "spec": "0.1.0", "description": "Created with Anchor" }, "instructions": [ { "name": "init_lockup", "discriminator": [6, 96, 207, 185, 103, 62, 239, 168], "accounts": [ { "name": "creator", "writable": true, "signer": true }, { "name": "lockup", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [122, 101, 98, 101, 99, 95, 108, 111, 99, 107, 117, 112] }, { "kind": "arg", "path": "args.name" } ] } }, { "name": "stake_vault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116] }, { "kind": "account", "path": "lockup" } ] } }, { "name": "reward_vault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [114, 101, 119, 97, 114, 100, 95, 118, 97, 117, 108, 116] }, { "kind": "account", "path": "lockup" } ] } }, { "name": "stake_token" }, { "name": "reward_token" }, { "name": "system_program", "address": "11111111111111111111111111111111" }, { "name": "token_program", "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" }, { "name": "associated_token_program", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [ { "name": "params", "type": { "defined": { "name": "InitConfigParams" } } } ] }, { "name": "stake_zbcn", "discriminator": [93, 162, 156, 54, 43, 11, 15, 122], "accounts": [ { "name": "staker", "writable": true, "signer": true }, { "name": "fee_payer", "writable": true, "signer": true }, { "name": "lockup", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [122, 101, 98, 101, 99, 95, 108, 111, 99, 107, 117, 112] }, { "kind": "account", "path": "lockup.stake_info.name", "account": "Lockup" } ] } }, { "name": "stake_pda", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "account", "path": "lockup" }, { "kind": "arg", "path": "args.nonce" } ] } }, { "name": "user_nonce", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "account", "path": "lockup" } ] } }, { "name": "stake_token" }, { "name": "staker_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "stake_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "stake_vault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116] }, { "kind": "account", "path": "lockup" } ] } }, { "name": "stake_vault_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "stake_vault" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "stake_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "system_program", "address": "11111111111111111111111111111111" }, { "name": "token_program", "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" }, { "name": "associated_token_program", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [ { "name": "params", "type": { "defined": { "name": "StakeParams" } } } ] }, { "name": "unstake_zbcn", "discriminator": [90, 202, 101, 187, 218, 99, 244, 1], "accounts": [ { "name": "staker", "writable": true, "signer": true }, { "name": "fee_payer", "writable": true, "signer": true }, { "name": "lockup", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [122, 101, 98, 101, 99, 95, 108, 111, 99, 107, 117, 112] }, { "kind": "account", "path": "lockup.stake_info.name", "account": "Lockup" } ] } }, { "name": "stake_pda", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "account", "path": "lockup" }, { "kind": "arg", "path": "_nonce" } ] } }, { "name": "reward_token" }, { "name": "stake_token" }, { "name": "staker_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "stake_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "staker_reward_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "reward_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "stake_vault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116] }, { "kind": "account", "path": "lockup" } ] } }, { "name": "reward_vault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [114, 101, 119, 97, 114, 100, 95, 118, 97, 117, 108, 116] }, { "kind": "account", "path": "lockup" } ] } }, { "name": "stake_vault_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "stake_vault" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "stake_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "reward_vault_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "reward_vault" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "reward_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "fee_vault" }, { "name": "fee_vault_token_account", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "lockup.fee_info.fee_vault", "account": "Lockup" }, { "kind": "const", "value": [ 6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235, 121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133, 126, 255, 0, 169 ] }, { "kind": "account", "path": "stake_token" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "token_program", "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" }, { "name": "associated_token_program", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" }, { "name": "system_program", "address": "11111111111111111111111111111111" } ], "args": [ { "name": "nonce", "type": "u64" } ] }, { "name": "whitelist_staker", "discriminator": [13, 211, 22, 179, 35, 177, 63, 155], "accounts": [ { "name": "admin", "writable": true, "signer": true }, { "name": "lockup", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [122, 101, 98, 101, 99, 95, 108, 111, 99, 107, 117, 112] }, { "kind": "account", "path": "lockup.stake_info.name", "account": "Lockup" } ] } }, { "name": "user_nonce", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "account", "path": "lockup" } ] } }, { "name": "staker" }, { "name": "stake_pda", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "staker" }, { "kind": "account", "path": "lockup" }, { "kind": "arg", "path": "args.nonce" } ] } }, { "name": "stake_token" }, { "name": "system_program", "address": "11111111111111111111111111111111" } ], "args": [ { "name": "params", "type": { "defined": { "name": "WhitelistStakerParams" } } } ] } ], "accounts": [ { "name": "Lockup", "discriminator": [1, 45, 32, 32, 57, 81, 88, 67] }, { "name": "UserNonce", "discriminator": [235, 133, 1, 243, 18, 135, 88, 224] }, { "name": "UserStakeData", "discriminator": [105, 207, 3, 141, 114, 114, 232, 147] } ], "events": [ { "name": "LockupInitialized", "discriminator": [137, 25, 165, 219, 184, 142, 188, 33] }, { "name": "Staked", "discriminator": [11, 146, 45, 205, 230, 58, 213, 240] }, { "name": "StakerWhitelisted", "discriminator": [76, 149, 219, 17, 46, 17, 132, 62] }, { "name": "Unstaked", "discriminator": [27, 179, 156, 215, 47, 71, 195, 7] } ], "errors": [ { "code": 6000, "name": "InvalidTime", "msg": "Invalid Time" }, { "code": 6001, "name": "InvalidStakeToken", "msg": "Invalid Stake Token" }, { "code": 6002, "name": "InvalidRewardToken", "msg": "Invalid Reward Token" }, { "code": 6003, "name": "InvalidStakePeriod", "msg": "Invalid Stake Period" }, { "code": 6004, "name": "InvalidStaker", "msg": "Invalid Staker" }, { "code": 6005, "name": "InvaildNonce", "msg": "Invalid Nonce" }, { "code": 6006, "name": "UnAuthorized", "msg": "UnAuthorized" }, { "code": 6007, "name": "InvalidLockPeriod", "msg": "Invalid Lock Period" }, { "code": 6008, "name": "InvalidAmount", "msg": "Invalid Amount" }, { "code": 6009, "name": "RewardAlreadyClaimed", "msg": "Reward Already Claimed" }, { "code": 6010, "name": "StakeRewardNotClaimable", "msg": "Stake Reward Not Claimable" }, { "code": 6011, "name": "RewardIsZero", "msg": "Reward Is Zero" }, { "code": 6012, "name": "StakeAlreadyClaimed", "msg": "Stake Already Claimed" }, { "code": 6013, "name": "StakeNotClaimable", "msg": "Stake Not Claimable" }, { "code": 6014, "name": "MinimumStakeNotMet", "msg": "Minimum Stake Not Met" } ], "types": [ { "name": "DurationMap", "type": { "kind": "struct", "fields": [ { "name": "duration", "type": "u64" }, { "name": "reward", "type": "u64" } ] } }, { "name": "FeeInfo", "type": { "kind": "struct", "fields": [ { "name": "fee", "type": "u64" }, { "name": "fee_vault", "type": "pubkey" } ] } }, { "name": "InitConfigParams", "type": { "kind": "struct", "fields": [ { "name": "name", "type": "string" }, { "name": "fee", "type": "u64" }, { "name": "fee_vault", "type": "pubkey" }, { "name": "minimum_stake", "type": "u64" }, { "name": "duration_map", "type": { "vec": { "defined": { "name": "DurationMap" } } } } ] } }, { "name": "Lockup", "type": { "kind": "struct", "fields": [ { "name": "stake_info", "type": { "defined": { "name": "StakeInfo" } } }, { "name": "reward_token", "type": { "defined": { "name": "RewardToken" } } }, { "name": "staked_token", "type": { "defined": { "name": "StakedToken" } } }, { "name": "fee_info", "type": { "defined": { "name": "FeeInfo" } } } ] } }, { "name": "LockupInitialized", "type": { "kind": "struct", "fields": [ { "name": "name", "type": "string" }, { "name": "creator", "type": "pubkey" }, { "name": "lockup", "type": "pubkey" }, { "name": "fee_vault", "type": "pubkey" }, { "name": "reward_vault", "type": "pubkey" }, { "name": "duration_map", "type": { "vec": { "defined": { "name": "DurationMap" } } } } ] } }, { "name": "RewardToken", "type": { "kind": "struct", "fields": [ { "name": "token_address", "type": "pubkey" } ] } }, { "name": "StakeInfo", "type": { "kind": "struct", "fields": [ { "name": "name", "type": "string" }, { "name": "creator", "type": "pubkey" }, { "name": "minimum_stake", "type": "u64" }, { "name": "duration_map", "type": { "vec": { "defined": { "name": "DurationMap" } } } } ] } }, { "name": "StakeParams", "type": { "kind": "struct", "fields": [ { "name": "amount", "type": "u64" }, { "name": "lock_period", "type": "i64" }, { "name": "nonce", "type": "u64" } ] } }, { "name": "Staked", "type": { "kind": "struct", "fields": [ { "name": "staker", "type": "pubkey" }, { "name": "stake_amount", "type": "u64" }, { "name": "nonce", "type": "u64" }, { "name": "lock_period", "type": "i64" } ] } }, { "name": "StakedToken", "type": { "kind": "struct", "fields": [ { "name": "token_address", "type": "pubkey" }, { "name": "total_staked", "type": "u64" } ] } }, { "name": "StakerWhitelisted", "type": { "kind": "struct", "fields": [ { "name": "staker", "type": "pubkey" }, { "name": "amount", "type": "u64" }, { "name": "nonce", "type": "u64" }, { "name": "lock_period", "type": "i64" }, { "name": "claimed", "type": "bool" }, { "name": "created_time", "type": "i64" } ] } }, { "name": "Unstaked", "type": { "kind": "struct", "fields": [ { "name": "staker", "type": "pubkey" }, { "name": "unstake_amount", "type": "u64" }, { "name": "reward_amount", "type": "u64" }, { "name": "lock_period", "type": "i64" } ] } }, { "name": "UserNonce", "type": { "kind": "struct", "fields": [ { "name": "nonce", "type": "u64" } ] } }, { "name": "UserStakeData", "type": { "kind": "struct", "fields": [ { "name": "nonce", "type": "u64" }, { "name": "created_time", "type": "i64" }, { "name": "staked_amount", "type": "u64" }, { "name": "reward_amount", "type": "u64" }, { "name": "stake_claimed", "type": "bool" }, { "name": "lock_period", "type": "i64" }, { "name": "staker", "type": "pubkey" }, { "name": "lockup", "type": "pubkey" } ] } }, { "name": "WhitelistStakerParams", "type": { "kind": "struct", "fields": [ { "name": "amount", "type": "u64" }, { "name": "nonce", "type": "u64" }, { "name": "lock_period", "type": "i64" }, { "name": "created_time", "type": "i64" }, { "name": "claimed", "type": "bool" } ] } } ], "constants": [ { "name": "LOCKUP", "type": "string", "value": "\"zebec_lockup\"" }, { "name": "REWARD_VAULT", "type": "string", "value": "\"reward_vault\"" }, { "name": "STAKE_VAULT", "type": "string", "value": "\"stake_vault\"" } ] }