# isAlchemySmartAccountClient | @account-kit/infra

> Overview of the isAlchemySmartAccountClient function from @account-kit/infra

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

{/* This file is auto-generated by TypeDoc. Do not edit manually. */}

```ts
function isAlchemySmartAccountClient<TChain, TAccount>(
  client,
): client is AlchemySmartAccountClient<TChain, TAccount>;
```

Defined in: [account-kit/infra/src/client/isAlchemySmartAccountClient.ts:20](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/infra/src/client/isAlchemySmartAccountClient.ts#L20)

Checks if a given client is an Alchemy Smart Account Client. The goal of this check is to ensure that the client supports certain RPC methods.

## Example

```ts
import { isAlchemySmartAccountClient } from "@account-kit/infra";

if (isAlchemySmartAccountClient(client)) {
  // do things with the client as an Alchemy Smart Account Client
}
```

## Type Parameters

<table>
  <thead>
    <tr>
      <th align="left">Type Parameter</th>
      <th align="left">Default type</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `TChain` *extends* `undefined` | [`Chain`](https://viem.sh)
      </td>

      <td>
        `undefined` | [`Chain`](https://viem.sh)
      </td>
    </tr>

    <tr>
      <td>
        `TAccount` *extends* `undefined` | `SmartContractAccount`
      </td>

      <td>
        `undefined` | `SmartContractAccount`
      </td>
    </tr>

  </tbody>
</table>

## Parameters

<table>
  <thead>
    <tr>
      <th align="left">Parameter</th>
      <th align="left">Type</th>
      <th align="left">Description</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `client`
      </td>

      <td>
        [`Client`](https://viem.sh)\<[`Transport`](https://viem.sh), `TChain`, `TAccount`>
      </td>

      <td>
        The client instance to be checked
      </td>
    </tr>

  </tbody>
</table>

## Returns

`client is AlchemySmartAccountClient<TChain, TAccount>`

`true` if the client is an Alchemy Smart Account Client, otherwise `false`