signMessageWith6492
signMessageWith6492
supports signing messages for deployed smart accounts, as well as undeployed accounts (counterfactual addresses) using ERC-6492.
Usage
ts
import { smartAccountClient } from "./smartAccountClient";
// sign message (works for undeployed and deployed accounts)
const signedMessageWith6492 = smartAccountClient.signMessageWith6492({
message: "test",
});
ts
import {
createLightAccount,
lightAccountClientActions,
} from "@alchemy/aa-accounts";
import {
LocalAccountSigner,
SmartAccountSigner,
createSmartAccountClient,
polygonMumbai,
} from "@alchemy/aa-core";
import { http } from "viem";
export const chain = polygonMumbai;
export const signer: SmartAccountSigner =
LocalAccountSigner.mnemonicToAccountSigner("YOUR_OWNER_MNEMONIC");
export const rpcTransport = http(
"https://polygon-mumbai.g.alchemy.com/v2/demo"
);
export const smartAccountClient = createSmartAccountClient({
transport: rpcTransport,
chain,
account: await createLightAccount({
transport: rpcTransport,
chain,
signer,
}),
}).extend(lightAccountClientActions);
Returns
Promise<Hash>
A Promise
containing the signature of the message, additionally wrapped in EIP-6492 format if the account is undeployed.