deactivateDelinquent static method
Deactivate stake delegated to a vote account that has been delinquent for at least
MINIMUM_DELINQUENT_EPOCHS_FOR_DEACTIVATION epochs.
No signer is required for this instruction as it is a common good to deactivate abandoned stake.
Keys:
- [w]- delegatedStakeAccount- Delegated stake account.
- []- delinquentVoteAccount- Delinquent vote account for the delegated stake account.
- []- referenceVoteAccount- Reference vote account that has voted at least once in the last- MINIMUM_DELINQUENT_EPOCHS_FOR_DEACTIVATIONepochs
Implementation
static TransactionInstruction deactivateDelinquent({
  required final Pubkey delegatedStakeAccount,
  required final Pubkey delinquentVoteAccount,
  required final Pubkey referenceVoteAccount,
}) {
  // 0. `[w]` Delegated stake account
  // 1. `[]` Delinquent vote account for the delegated stake account
  // 2. `[]` Reference vote account that has voted at least once in the last
  //    `MINIMUM_DELINQUENT_EPOCHS_FOR_DEACTIVATION` epochs
  final List<AccountMeta> keys = [
    AccountMeta.writable(delegatedStakeAccount),
    AccountMeta(delinquentVoteAccount),
    AccountMeta(referenceVoteAccount),
  ];
  return _instance.createTransactionIntruction(
    StakeInstruction.deactivateDelinquent,
    keys: keys,
  );
}