pub trait StakingApi: Send + Sync {
Show 13 methods
// Required methods
fn approve_terms_of_service_by_provider_id<'life0, 'async_trait>(
&'life0 self,
params: ApproveTermsOfServiceByProviderIdParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ApproveTermsOfServiceByProviderIdError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn claim_rewards<'life0, 'async_trait>(
&'life0 self,
params: ClaimRewardsParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ClaimRewardsError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_all_delegations<'life0, 'async_trait>(
&'life0 self,
params: GetAllDelegationsParams,
) -> Pin<Box<dyn Future<Output = Result<Vec<Delegation>, Error<GetAllDelegationsError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_chain_info<'life0, 'async_trait>(
&'life0 self,
params: GetChainInfoParams,
) -> Pin<Box<dyn Future<Output = Result<ChainInfoResponse, Error<GetChainInfoError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_chains<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ChainDescriptor>, Error<GetChainsError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_delegation_by_id<'life0, 'async_trait>(
&'life0 self,
params: GetDelegationByIdParams,
) -> Pin<Box<dyn Future<Output = Result<Delegation, Error<GetDelegationByIdError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_providers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Provider>, Error<GetProvidersError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_summary<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<DelegationSummary, Error<GetSummaryError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_summary_by_vault<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, DelegationSummary>, Error<GetSummaryByVaultError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn split<'life0, 'async_trait>(
&'life0 self,
params: SplitParams,
) -> Pin<Box<dyn Future<Output = Result<SplitResponse, Error<SplitError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn stake<'life0, 'async_trait>(
&'life0 self,
params: StakeParams,
) -> Pin<Box<dyn Future<Output = Result<StakeResponse, Error<StakeError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn unstake<'life0, 'async_trait>(
&'life0 self,
params: UnstakeParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<UnstakeError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn withdraw<'life0, 'async_trait>(
&'life0 self,
params: WithdrawParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<WithdrawError>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Required Methods§
Sourcefn approve_terms_of_service_by_provider_id<'life0, 'async_trait>(
&'life0 self,
params: ApproveTermsOfServiceByProviderIdParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ApproveTermsOfServiceByProviderIdError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn approve_terms_of_service_by_provider_id<'life0, 'async_trait>(
&'life0 self,
params: ApproveTermsOfServiceByProviderIdParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ApproveTermsOfServiceByProviderIdError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
POST /staking/providers/{providerId}/approveTermsOfService
Approve the terms of service of the staking provider. This must be called before performing a staking action for the first time with this provider. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn claim_rewards<'life0, 'async_trait>(
&'life0 self,
params: ClaimRewardsParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ClaimRewardsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn claim_rewards<'life0, 'async_trait>(
&'life0 self,
params: ClaimRewardsParams,
) -> Pin<Box<dyn Future<Output = Result<(), Error<ClaimRewardsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
POST /staking/chains/{chainDescriptor}/claim_rewards
Perform a chain-specific Claim Rewards.
Sourcefn get_all_delegations<'life0, 'async_trait>(
&'life0 self,
params: GetAllDelegationsParams,
) -> Pin<Box<dyn Future<Output = Result<Vec<Delegation>, Error<GetAllDelegationsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_delegations<'life0, 'async_trait>(
&'life0 self,
params: GetAllDelegationsParams,
) -> Pin<Box<dyn Future<Output = Result<Vec<Delegation>, Error<GetAllDelegationsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/positions
Return detailed information on all staking positions, including the staked amount, rewards, status and more. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_chain_info<'life0, 'async_trait>(
&'life0 self,
params: GetChainInfoParams,
) -> Pin<Box<dyn Future<Output = Result<ChainInfoResponse, Error<GetChainInfoError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_chain_info<'life0, 'async_trait>(
&'life0 self,
params: GetChainInfoParams,
) -> Pin<Box<dyn Future<Output = Result<ChainInfoResponse, Error<GetChainInfoError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/chains/{chainDescriptor}/chainInfo
Return chain-specific, staking-related information summary (e.g. epoch details, lockup durations, estimated rewards, etc.). Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_chains<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ChainDescriptor>, Error<GetChainsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_chains<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ChainDescriptor>, Error<GetChainsError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/chains
Return an alphabetical list of supported chains. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_delegation_by_id<'life0, 'async_trait>(
&'life0 self,
params: GetDelegationByIdParams,
) -> Pin<Box<dyn Future<Output = Result<Delegation, Error<GetDelegationByIdError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_delegation_by_id<'life0, 'async_trait>(
&'life0 self,
params: GetDelegationByIdParams,
) -> Pin<Box<dyn Future<Output = Result<Delegation, Error<GetDelegationByIdError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/positions/{id}
Return detailed information on a staking position, including the staked amount, rewards, status and more. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_providers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Provider>, Error<GetProvidersError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_providers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Provider>, Error<GetProvidersError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/providers
Return information on all the available staking providers. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_summary<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<DelegationSummary, Error<GetSummaryError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_summary<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<DelegationSummary, Error<GetSummaryError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/positions/summary
Return a summary of all vaults, categorized by their status (active, inactive), the total amounts staked and total rewards per-chain. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn get_summary_by_vault<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, DelegationSummary>, Error<GetSummaryByVaultError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_summary_by_vault<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, DelegationSummary>, Error<GetSummaryByVaultError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
GET /staking/positions/summary/vaults
Return a summary for each vault, categorized by their status (active, inactive), the total amounts staked and total rewards per-chain. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.
Sourcefn split<'life0, 'async_trait>(
&'life0 self,
params: SplitParams,
) -> Pin<Box<dyn Future<Output = Result<SplitResponse, Error<SplitError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn split<'life0, 'async_trait>(
&'life0 self,
params: SplitParams,
) -> Pin<Box<dyn Future<Output = Result<SplitResponse, Error<SplitError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
POST /staking/chains/{chainDescriptor}/split
Perform a SOL/SOL_TEST Split on a stake account.
Sourcefn stake<'life0, 'async_trait>(
&'life0 self,
params: StakeParams,
) -> Pin<Box<dyn Future<Output = Result<StakeResponse, Error<StakeError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stake<'life0, 'async_trait>(
&'life0 self,
params: StakeParams,
) -> Pin<Box<dyn Future<Output = Result<StakeResponse, Error<StakeError>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
POST /staking/chains/{chainDescriptor}/stake
Perform a chain-specific Stake.