import { MiningStatusE } from '@dodoex/api';
import BigNumber from 'bignumber.js';
import { useTokenStatus } from '../../../../hooks/Token/useTokenStatus';
import { MiningLpTokenI, MiningMiningI, TabMiningI } from '../../types';
import { useDepositOrWithdrawOrClaim } from '../hooks/useDepositOrWithdrawOrClaim';
export declare function StakeButton({ depositOrWithdrawOrClaimMutation, id, firstStartTime, source, version, miningContractAddress, lpTokenStatus, currentTokenAmount, lpTokenAccountBalance, submitApprove, goLpLink, optToken, approveTokenStatus, isApproving, isGetApproveLoading, chainId, currentChainId, lpTokenBalanceLoading, }: {
    depositOrWithdrawOrClaimMutation: ReturnType<typeof useDepositOrWithdrawOrClaim>['depositOrWithdrawOrClaimMutation'];
    id: TabMiningI['id'];
    firstStartTime: BigNumber | undefined;
    source: TabMiningI['source'];
    version: TabMiningI['version'];
    miningContractAddress: MiningMiningI['miningContractAddress'];
    lpTokenStatus: MiningStatusE;
    currentTokenAmount: string;
    lpTokenAccountBalance: BigNumber | undefined;
    submitApprove: () => Promise<void>;
    goLpLink: () => Promise<void>;
    optToken: MiningLpTokenI;
    approveTokenStatus: ReturnType<typeof useTokenStatus>;
    isApproving: boolean;
    isGetApproveLoading: boolean;
    chainId: number;
    currentChainId: number | undefined;
    lpTokenBalanceLoading: boolean;
}): JSX.Element;
