Skip to content

cancelPool

Cancel a staking pool and recover any unused reward tokens. Only the pool creator can call this function.

Usage

example.ts
import { mintclub } from 'mint.club-v2-sdk'
import { useWalletClient } from 'wagmi'
import { base } from 'viem/chains'
 
function CancelPoolExample() {
  const { data: walletClient } = useWalletClient()
 
  const handleCancelPool = async () => {
    await mintclub
      .withWalletClient({
        ...walletClient,
        chain: base,
      } as any)
      .network('base')
      .stake
      .cancelPool({
        poolId: 0,
        onSuccess: (receipt) => {
          console.log('Pool cancelled successfully!', receipt)
        },
        onError: (error) => {
          console.error('Failed to cancel pool:', error)
        },
      })
  }
 
  return <button onClick={handleCancelPool}>Cancel Pool</button>
}

Return Value

Promise<TransactionReceipt>

Returns a promise that resolves to a TransactionReceipt object when the transaction is successful.

Parameters

poolId

  • Type: number

The ID of the staking pool to cancel.

await mintclub.network('base').stake.cancelPool({
  poolId: 0, 
})

onSignatureRequest (optional)

  • Type: onSignatureRequest?: () => void;
  • Default: undefined

Callback function for when the user is requested to sign the transaction.

await mintclub.network('base').stake.cancelPool({
  poolId: 0,
  onSignatureRequest: () => {
    console.log('Please sign the transaction')
  }, 
})

onSigned (optional)

  • Type: onSigned?: (txHash: '0x${string}') => void;
  • Default: undefined

Callback function for when the user signs the transaction.

await mintclub.network('base').stake.cancelPool({
  poolId: 0,
  onSigned: (txHash) => {
    console.log('Transaction signed:', txHash)
  }, 
})

onSuccess (optional)

  • Type: onSuccess?: (receipt: TransactionReceipt) => void;
  • Default: undefined

Callback function for when the transaction is successful.

await mintclub.network('base').stake.cancelPool({
  poolId: 0,
  onSuccess: (receipt) => {
    console.log('Pool cancelled successfully!', receipt)
  }, 
})

onError (optional)

  • Type: onError?: (error: unknown) => void;
  • Default: undefined

Callback function for when the transaction fails. This also includes when the user rejects the transaction.

await mintclub.network('base').stake.cancelPool({
  poolId: 0,
  onError: (error) => {
    console.error('Failed to cancel pool:', error)
  }, 
})