Skip to content

useKernelClient

Hook for getting kernel account client

Import

import { useKernelClient } from '@zerodev/waas'

Usage

import { useKernelClient } from '@zerodev/waas';
 
function App() {
  const { kernelClient } = useKernelClient();	
}

Parameters

import { type UseKernelClientParameters } from '@zerodev/waas';

paymaster

{type: "SPONSOR"} | {type: "ERC20", gasToken: string} | undefined

The paymaster type and gas token address.

type

SPONSOR | ERC20 The type of paymaster.

gasToken

string | undefined The symbol of erc20 token used for erc20 paymaster.

Return Types

import { type UseKernelClientReturnType } from '@zerodev/waas'

address

Address | undefined

The address of connected kernel account.

kernelAccount

KernelSmartAccount<EntryPoint> | undefined

The connected kernel account.

kernelClient

KernelAccountClient<EntryPoint> | undefined

The connected kernel account client.

isConnected

boolean

Will be true if the kernel client exists

error

Error | null

  • The error object for the query, if an error was thrown.
  • Defaults to null

isError / isPending / isSuccess

boolean

Boolean variables derived from status.

isFetched

boolean

Will be true if the query has been fetched.

isLoading

boolean

  • Is true whenever the first fetch for a query is in-flight
  • Is the same as isFetching && isPending

status

'error' | 'pending' | 'success'

  • pending if there's no cached data and no query attempt was finished yet.
  • error if the query attempt resulted in an error. The corresponding error property has the error received from the attempted fetch
  • success if the query has received a response with no errors and is ready to display its data. The corresponding data property on the query is the data received from the successful fetch or if the query's enabled property is set to false and has not been fetched yet data is the first initialData supplied to the query on initialization.

refetch

(options: { cancelRefetch?: boolean | undefined; throwOnError?: boolean | undefined }) => Promise<UseQueryResult>

  • A function to manually refetch the query.
  • throwOnError
    • When set to true, an error will be thrown if the query fails.
    • When set to false, an error will be logged if the query fails.
  • cancelRefetch
    • When set to true, a currently running request will be cancelled before a new request is made.
    • When set to false, no refetch will be made if there is already a request running.
    • Defaults to true