import { type GetEntryPointFromAccount, type SendTransactionsParameters, type SendUserOperationParameters, type SendUserOperationResult, type SmartContractAccount, type UserOperationContext, type UserOperationOverrides } from "@aa-sdk/core"; import type { Chain, Client, Hex, SendTransactionParameters, Transport } from "viem"; import type { SimulateUserOperationAssetChangesResponse } from "../../actions/types.js"; export type AlchemySmartAccountClientActions = GetEntryPointFromAccount> = { simulateUserOperation: (args: SendUserOperationParameters) => Promise; sendUserOperation: (args: SendUserOperationParameters>) => Promise>; sendTransaction: (args: SendTransactionParameters, overrides?: UserOperationOverrides, context?: TContext) => Promise; sendTransactions: (args: SendTransactionsParameters) => Promise; }; /** * 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); * ``` * * @param {Client} client_ The client instance used to perform actions * @returns {AlchemySmartAccountClientActions} An object containing Alchemy Smart Account client actions */ export declare const alchemyActions: (client: Client) => AlchemySmartAccountClientActions;