Importar

import { useIndexerGatewayClient } from '@0xsequence/hooks'

Uso

import { useIndexerGatewayClient } from '@0xsequence/hooks'
import { useAccount } from 'wagmi'

function MultiChainBalances() {
  const { address } = useAccount()
  const indexerGatewayClient = useIndexerGatewayClient()
  
  // Example: Fetch token balances across chains
  const fetchBalances = async () => {
    const response = await indexerGatewayClient.getTokenBalancesSummary({
      chainIds: [1, 137], // Ethereum and Polygon
      filter: {
        accountAddresses: [address || ''],
        omitNativeBalances: false
      }
    })
    
    return response
  }

  return (
    <div>
      {/* ... */}
    </div>
  )
}

Tipo de retorno: SequenceIndexerGateway

El hook retorna una instancia de SequenceIndexerGateway configurada con la configuración de su proyecto. Este cliente ofrece métodos para consultar datos de tokens a través de varias redes en una sola solicitud.

Métodos disponibles

El cliente retornado incluye los siguientes métodos:

interface SequenceIndexerGateway {
  // Token Balance Methods
  getNativeTokenBalance(args: GetNativeTokenBalanceArgs): Promise<GetNativeTokenBalanceReturn>
  getTokenBalances(args: GetTokenBalancesArgs): Promise<GetTokenBalancesReturn>
  getTokenBalancesSummary(args: GetTokenBalancesSummaryArgs): Promise<GetTokenBalancesSummaryReturn>
  getTokenBalancesDetails(args: GetTokenBalancesDetailsArgs): Promise<GetTokenBalancesDetailsReturn>
  getTokenBalancesByContract(args: GetTokenBalancesByContractArgs): Promise<GetTokenBalancesByContractReturn>
  
  // Balance Updates
  getBalanceUpdates(args: GetBalanceUpdatesArgs): Promise<GetBalanceUpdatesReturn>
  
  // Service Status Methods
  ping(): Promise<PingReturn>
  version(): Promise<VersionReturn>
  runtimeStatus(): Promise<RuntimeStatusReturn>
}

Parámetros

El hook no acepta parámetros, pero utiliza la configuración del hook useConfig:

interface Config {
  projectAccessKey: string
  env: {
    indexerGatewayUrl: string
    // ... other environment settings
  }
}

La configuración determina:

  • La URL del gateway para solicitudes API
  • La clave de acceso del proyecto para autenticación
  • Ajustes específicos del entorno

El cliente se memoriza en función de projectAccessKey para evitar reinstanciaciones innecesarias.