Skip to content

dropAndReplaceUserOperation

Drops an existing user operation and replaces it with a new one while ensuring the appropriate fees and overrides are applied.

Import

import { dropAndReplaceUserOperation } from "@aa-sdk/core";

Usage

import {
createSmartAccountClient,
} from "@aa-sdk/core";
 
// smart account client is already extended with dropAndReplaceUserOperation
const client = createSmartAccountClient(...);
const { request } = await client.sendUserOperation(...);
const result = await client.dropAndReplaceUserOperation({
uoToDrop: request,
account, // only required if the client above is not connected to an account
});

Parameters

client

Client<TTransport, TChain, TAccount> The client instance with the transport, chain, and account information

args

DropAndReplaceUserOperationParameters<TAccount, TContext> The parameters required for dropping and replacing the user operation including the account, operation to drop, overrides, and context

Returns

Promise<SendUserOperationResult<TEntryPointVersion>> A promise that resolves to the result of sending the new user operation