Creates a ModularAccount V2 account, with the mode depending on the provided "mode" field. Possible modes include: "default", which is SMA Bytecode, and "7702", which is SMA 7702. Handles nonce generation, transaction encoding, and mode variant-specific behavior like initcode construction.
import { createModularAccountV2 } from "@account-kit/smart-contracts";
import { LocalAccountSigner } from "@aa-sdk/core";
import { alchemy, sepolia } from "@account-kit/infra";
const MNEMONIC = "...";
const RPC_URL = "...";
const signer = LocalAccountSigner.mnemonicToAccountSigner(MNEMONIC);
const chain = sepolia;
const transport = alchemy({ rpcUrl: RPC_URL });
const modularAccountV2 = await createModularAccountV2({
mode: "default", // or "7702"
chain,
signer,
transport,
});Configuration parameters for creating a Modular Account V2.
function createModularAccountV2<TTransport, TSigner>(
config,
): Promise<ModularAccountV2<TSigner>>;Defined in: account-kit/smart-contracts/src/ma-v2/account/modularAccountV2.ts:87
| Type Parameter | Default type |
|---|---|
|
|
|
|
| Parameter | Type |
|---|---|
|
|
Promise<ModularAccountV2<TSigner>>
function createModularAccountV2<TTransport>(
config,
): Promise<WebauthnModularAccountV2>;Defined in: account-kit/smart-contracts/src/ma-v2/account/modularAccountV2.ts:94
| Type Parameter | Default type |
|---|---|
|
|
| Parameter | Type |
|---|---|
|
|
Promise<WebauthnModularAccountV2>