# alchemyActions | @account-kit/infra

> Provides a set of actions for interacting with the Alchemy Smart Account client, including the ability to simulate user operations.

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

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

```ts
const alchemyActions: <TTransport, TChain, TAccount, TContext>(
  client,
) => AlchemySmartAccountClientActions<TAccount, TContext, TChain>;
```

Defined in: [account-kit/infra/src/client/decorators/smartAccount.ts:72](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/infra/src/client/decorators/smartAccount.ts#L72)

Provides a set of actions for interacting with the Alchemy Smart Account client, including the ability to simulate user operations.

## Example

```ts
import { alchemyActions } from "@account-kit/infra";
import { createPublicClient } from "viem";

const client = createPublicClient(...);
const clientWithAlchemyActions = client.extend(alchemyActions);
```

## Type Parameters

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

  <tbody>
    <tr>
      <td>
        `TTransport` *extends* [`Transport`](https://viem.sh)
      </td>

      <td>
        [`Transport`](https://viem.sh)
      </td>
    </tr>

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

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

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

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

    <tr>
      <td>
        `TContext` *extends* `UserOperationContext` | `undefined`
      </td>

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

  </tbody>
</table>

## Parameters

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

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

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

  </tbody>
</table>

## Returns

[`AlchemySmartAccountClientActions`](../type-aliases/AlchemySmartAccountClientActions)\<`TAccount`, `TContext`, `TChain`>

An object containing Alchemy Smart Account client actions