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)
},
})