Files

30 lines
883 B
TypeScript

'use client';
import { useWallet } from '@session/wallet/hooks/useWallet';
import { arbitrum, arbitrumSepolia } from 'viem/chains';
import type { ReadContractData } from 'wagmi/query';
import type { RewardRatePoolAbi } from '../abis';
import { type ContractReadQueryProps, useContractReadQuery } from './useContractReadQuery';
type RewardRate = ReadContractData<typeof RewardRatePoolAbi, 'rewardRate', []>;
export type RewardRateQuery = ContractReadQueryProps & {
/** The reward rate */
rewardRate: RewardRate;
};
export function useRewardRateQuery(): RewardRateQuery {
const { chainId } = useWallet();
const { data: rewardRate, ...rest } = useContractReadQuery({
contract: 'RewardRatePool',
functionName: 'rewardRate',
chainIdOverride: chainId === arbitrumSepolia.id ? arbitrumSepolia.id : arbitrum.id,
});
return {
rewardRate,
...rest,
};
}